/* Illustrated immediate choices. Background and controls remain separate. */
.flow-scene.route-scene{padding:0 4vw 22px;background:#0d0d15;min-height:100dvh;display:flex;flex-direction:column;overflow:hidden}
.route-scene:before,.route-scene:after{display:none}
.route-landscape,.route-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2;object-fit:cover;object-position:35% center;pointer-events:none}
.route-shade{z-index:-1;background:linear-gradient(90deg,#0c0b1520 0%,#0c0b1508 34%,#0c0b1545 55%,#0c0b1540),linear-gradient(180deg,#07071040,transparent 35%,#08081180)}
.route-scene .flow-hud{background:linear-gradient(180deg,#080811a8,#0b0a1466);border-bottom:1px solid #cbbbd32e;margin:0 -4vw;padding-left:4vw;padding-right:4vw;flex-shrink:0}
.route-composition{display:grid;grid-template-columns:34% minmax(0,1fr);gap:4%;flex:1;min-height:650px;align-items:center;padding:35px 0 28px}
.route-context{align-self:stretch;display:flex;flex-direction:column;padding:22px 0 0;text-shadow:0 2px 9px #000}
.route-overline{font:10px/1.8 Georgia,serif;letter-spacing:4px;color:#d0bcd6}
.route-context h1{font:clamp(24px,2.4vw,38px)/1.7 'SimSun',serif;letter-spacing:5px;margin:12px 0 6px;color:#eee6ef}
.route-context>p{font-size:12px;line-height:2;max-width:300px;margin:0;color:#d1c5d7}
.route-progress{display:grid;grid-template-columns:1fr auto;gap:9px 20px;width:185px;margin-top:24px;font-size:10px;letter-spacing:2px;color:#c5b6cc}
.route-progress>b{font:20px Georgia;color:#e4d3ea}.route-progress>b small{font-size:12px;color:#a995b6}
.route-progress>div{grid-column:1/-1;height:2px;background:#c1a9c83b}.route-progress i{display:block;height:100%;background:var(--route-tint);box-shadow:0 0 8px var(--route-tint)}
.route-progress>small{grid-column:1/-1;font-size:9px;letter-spacing:1px}
.route-context blockquote{margin:auto 0 12px;padding-top:130px;max-width:340px;font:14px/2 'SimSun',serif;color:#d9cbdc;letter-spacing:1px}
.route-context blockquote small{display:block;font:9px Georgia;letter-spacing:4px;margin-top:14px;color:#b59ec4}
.route-destinations{min-width:0;width:100%;max-width:1000px;justify-self:center}
.route-heading{text-align:center;margin:0 0 25px}.route-heading h2{font:clamp(24px,2.4vw,36px)/1.6 'SimSun',serif;letter-spacing:4px;margin:9px 0;color:#f0e7f3;text-shadow:0 2px 12px #000}
.route-heading p{font-size:12px;line-height:1.8;color:#bfb1ca;margin:0}
.route-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;align-items:stretch;padding:9px 0}
.route-card{position:relative;display:block;min-width:0;width:100%;height:clamp(355px,48vh,510px);padding:0;border:0;background:transparent;color:#e8e0eb;font:inherit;cursor:pointer;text-align:center;transition:transform .2s,filter .2s;isolation:isolate;filter:drop-shadow(0 10px 12px #08061070)}
.route-card-surface{position:absolute;inset:3% 4% 3%;overflow:hidden;clip-path:polygon(50% 0,64% 3%,92% 4%,100% 7%,100% 95%,81% 97%,61% 98%,50% 100%,39% 98%,19% 97%,0 95%,0 7%,8% 4%,36% 3%);background:#100e18;display:block}
.route-card-art{position:absolute;inset:0;width:100%;height:64%;object-fit:cover;object-position:58% center;opacity:.9;transition:transform .35s,opacity .2s}
.route-card.type-normal .route-card-art,.route-card.type-elite .route-card-art,.route-card.type-boss .route-card-art{opacity:.48}
.route-art-shade{position:absolute;inset:0;background:linear-gradient(180deg,#110d1a08 16%,#110d1a00 30%,#110d1ad6 53%,#100d17 72%);pointer-events:none}
.route-frame{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;fill:none;stroke:#b9a4c0;stroke-width:1.1;vector-effect:non-scaling-stroke;transition:filter .2s}
.route-frame path:nth-child(2){stroke-width:.6;opacity:.5}.route-frame path:nth-child(3){fill:#16101f;stroke:var(--route-tint)}
.route-card-copy{position:absolute;inset:46% 9% 6%;display:flex;flex-direction:column;align-items:center;z-index:1}
.route-type{display:flex;align-items:center;justify-content:center;gap:6px;font-size:10px;letter-spacing:3px;color:var(--route-tint)}
.route-type .ui-icon{width:21px;height:23px}
.route-card-copy strong{font:clamp(15px,1.3vw,21px)/1.6 'SimSun',serif;letter-spacing:2px;margin:10px 0 5px;color:#f1e8f2}
.route-risk{font-size:9px;color:#bda9cb;letter-spacing:1px}.type-elite .route-risk,.type-boss .route-risk{color:#eca6b2}
.route-description{font-size:11px;line-height:1.9;margin:13px 0 9px;max-width:225px;color:#c4b6cf}
.route-enter{margin-top:auto;border-top:1px solid #b8a0c238;padding-top:12px;width:90%;font-size:11px;letter-spacing:2px;color:#e5cbed}.route-enter i{font-style:normal;display:inline-block;transition:transform .2s}
.route-card:hover,.route-card:focus-visible{transform:translateY(-8px);filter:drop-shadow(0 0 10px #bc83e74d)}
.route-card:hover .route-frame,.route-card:focus-visible .route-frame{stroke:#eed0ff;filter:drop-shadow(0 0 4px #b684f4)}
.route-card:hover .route-card-art{transform:scale(1.04)}.route-card:hover .route-enter i{transform:translateX(4px)}
.route-creatures{position:absolute;top:5%;left:5%;width:90%;height:43%;display:flex;align-items:flex-end;justify-content:center;z-index:1;pointer-events:none}
.route-creatures img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 9px #baa0ef40)}.route-creatures.count-2 img{width:58%;margin:0 -4%}.route-creatures.count-3 img{width:40%;margin:0 -3.3%}
.route-sealed-star{position:absolute;top:15%;left:25%;width:50%;height:23%;color:#dcc8f3;filter:drop-shadow(0 0 18px #c89aff);z-index:1}.route-sealed-star .ui-icon{width:100%;height:100%}
.route-cards.is-boss{grid-template-columns:minmax(0,310px);justify-content:center}.is-boss .route-card{height:clamp(390px,53vh,530px)}
.route-decision-note{font-size:11px;line-height:2;text-align:center;color:#bca8c6;letter-spacing:1px;margin-top:22px}.route-decision-note>span{color:#d7b2ee;margin-right:10px}
.route-footer{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:10px;color:#b29ec0;border-top:1px solid #bda6c52e;padding:15px 0 0}
.route-footer button{background:none;border:0;padding:4px 0;color:#cebad8;display:flex;align-items:center;gap:9px;font:inherit;letter-spacing:2px;cursor:pointer}.route-footer .ui-icon{width:18px;height:20px}
@media(min-width:701px) and (max-height:800px){.route-composition{min-height:520px;padding:15px 0}.route-context{padding-top:15px}.route-card{height:360px}.route-cards.is-boss .route-card{height:375px}.route-heading{margin-bottom:8px}.route-heading h2{font-size:27px}.route-heading .route-overline{font-size:8px}.route-decision-note{margin-top:8px}.route-description{font-size:10px;margin:8px 0}.route-card-copy strong{font-size:17px;margin:7px 0 4px}.route-enter{padding-top:8px}.route-progress{margin-top:15px}.route-context blockquote{padding-top:70px;font-size:12px}}
@media(min-width:701px) and (max-width:1100px){.route-composition{grid-template-columns:28% minmax(0,1fr);gap:3%}.route-cards{gap:8px}.route-card-copy strong{font-size:16px;letter-spacing:1px}.route-context h1{font-size:26px}.route-overline{letter-spacing:2px}.route-context>p{font-size:11px}.route-description{font-size:10px}.route-type{letter-spacing:1px}}
@media(max-width:700px){
 .flow-scene.route-scene{padding:0 18px 18px}.route-scene .flow-hud{margin:0 -18px;padding-left:16px;padding-right:16px;height:auto;min-height:96px}.route-landscape{object-position:30% top}.route-shade{background:linear-gradient(180deg,#0c0b1520,#0c0b1530 23%,#0c0b15d9 62%,#0c0b15ee)}
 .route-composition{display:block;min-height:0;padding:24px 0 20px}.route-context{min-height:225px;padding:0}.route-context h1{font-size:27px;letter-spacing:4px;margin:7px 0}.route-context>p{max-width:220px;font-size:10px}.route-overline{font-size:8px;letter-spacing:2px}.route-progress{width:155px;margin-top:14px;gap:5px;font-size:9px}.route-progress>b{font-size:17px}.route-progress>small{font-size:8px}.route-context blockquote{display:none}
 .route-heading{margin:0 0 13px}.route-heading h2{font-size:24px;letter-spacing:2px;margin:6px 0}.route-heading p{font-size:10px;max-width:300px;margin:0 auto}.route-cards{grid-template-columns:1fr;gap:14px;padding:0}.route-card{height:204px;filter:none}.route-card:hover,.route-card:focus-visible{transform:translateY(-2px)}.route-card-surface{inset:5% 3%;clip-path:polygon(0 8%,8% 2%,43% 2%,50% 0,57% 2%,92% 2%,100% 8%,100% 92%,92% 98%,57% 98%,50% 100%,43% 98%,8% 98%,0 92%)}
 .route-card-art{width:47%;height:100%;object-position:50% center}.route-art-shade{background:linear-gradient(90deg,#100d1700 12%,#100d1780 35%,#100d17 49%)}.route-card-copy{inset:10% 7% 9% 45%;align-items:flex-start;text-align:left}.route-card-copy strong{font-size:17px;margin:6px 0 4px;letter-spacing:1px}.route-type{font-size:9px;letter-spacing:1px}.route-type .ui-icon{width:16px;height:18px}.route-risk{font-size:8px}.route-description{font-size:10px;line-height:1.65;margin:7px 0}.route-enter{font-size:10px;padding-top:7px;letter-spacing:1px}.route-creatures{left:3%;top:10%;width:40%;height:80%}.route-sealed-star{left:12%;top:24%;width:20%;height:43%}
 .route-cards.is-boss{grid-template-columns:1fr;max-width:310px;margin:auto}.route-cards.is-boss .route-card{height:415px}.is-boss .route-card-surface{inset:3% 4%;clip-path:polygon(50% 0,92% 4%,100% 7%,100% 95%,50% 100%,0 95%,0 7%,8% 4%)}.is-boss .route-card-art{width:100%;height:65%}.is-boss .route-card-copy{inset:49% 10% 7%;align-items:center;text-align:center}.is-boss .route-art-shade{background:linear-gradient(180deg,transparent 30%,#100d17 65%)}.is-boss .route-creatures{top:5%;left:5%;width:90%;height:44%}.is-boss .route-card-copy strong{font-size:21px}
 .route-decision-note{font-size:9px;margin-top:17px;letter-spacing:0}.route-footer{font-size:9px;gap:6px}.route-footer button{font-size:9px;letter-spacing:0}
}
@media(prefers-reduced-motion:reduce){.route-scene *{animation:none!important;transition:none!important}}
