#aetheridge[hidden]{display:none!important}#aetheridge{position:fixed;inset:0;z-index:800;background:radial-gradient(ellipse at 50% 5%,color-mix(in srgb,var(--district) 22%,#191334),#17112d 65%);color:#fff;overflow-y:auto;font-family:inherit;min-height:100dvh}.aetheridge-active{overflow:hidden}.ae-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.5rem 4vw;border-bottom:1px solid color-mix(in srgb,var(--district) 35%,transparent);letter-spacing:.1em}.ae-header small{display:block;color:var(--district);font-size:.875rem;letter-spacing:.12em;margin-top:.4rem}.ae-header button,.ae-districts button{background:transparent;border:1px solid color-mix(in srgb,var(--district) 40%,transparent);padding:.8rem 1rem;color:#fff;border-radius:5px;font:inherit;font-size:.9rem;cursor:pointer}#ae-stage{max-width:1100px;margin:auto;padding:5vh 5vw 3rem}.ae-transition{min-height:35vh;display:flex;flex-direction:column;justify-content:center;max-width:680px;margin:auto}.ae-transition small,.ae-dialogue small,.ae-watch>small,.ae-result small{font-size:.875rem;color:var(--district);letter-spacing:.15em}.ae-transition h1,.ae-watch h1{font-size:clamp(2rem,5vw,4rem);line-height:1.15;margin:1rem 0;font-weight:500}.ae-transition p,.ae-dialogue p,.ae-result p,.ae-watch p{font-size:clamp(1rem,1.9vw,1.25rem);line-height:1.75;max-width:760px}.ae-dialogue{max-width:760px;margin:auto;padding:1.5rem;border-left:2px solid var(--district);background:color-mix(in srgb,var(--district) 6%,transparent)}.ae-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem;margin:5vh auto;max-width:900px}.ae-action{position:relative;text-align:left;padding:1.4rem 1.6rem;min-height:88px;font:inherit;font-size:1rem;line-height:1.5;color:#fff;border:1px solid #dce2ff55;background:linear-gradient(120deg,#c6d1ff0d,#f5ceff08);border-radius:7px;cursor:pointer;box-shadow:0 0 16px #d7d6ff08;transition:transform .22s,box-shadow .22s,border-color .22s;animation:ae-emerge .4s both;animation-delay:var(--delay)}.ae-action:last-child{grid-column:1/-1;max-width:600px;width:100%;justify-self:center}.ae-action:hover,.ae-action:focus-visible{transform:translateY(-6px);border-color:#fff;outline:2px solid #eeeeff;outline-offset:4px;box-shadow:0 0 30px #dddfff44,inset 0 0 22px #dddfff15;animation:ae-pulse 1.8s ease-in-out infinite}.ae-result{margin:2rem auto;max-width:760px;animation:ae-emerge .4s both}.ae-result p:first-of-type{color:#e8dfff}.ae-continue,.ae-launch,.ae-return{border:1px solid #cecaff66;background:#4b357b55;color:#fff;border-radius:5px;padding:1rem 1.4rem;font:inherit;font-size:1rem;cursor:pointer}.ae-continue{display:inline-block;margin:1rem .5rem 1rem 0}.ae-districts{margin-top:3rem;display:flex;flex-wrap:wrap;gap:.75rem}.ae-districts button:hover{border-color:var(--district);background:#ac9aea11}.ae-watch{max-width:800px;margin:auto}.ae-watch h2{font-size:1.25rem;color:var(--district);margin-top:2rem}.ae-watch details{border-top:1px solid #bdb4df33;padding:1rem 0;font-size:1rem;line-height:1.6}.ae-watch summary{cursor:pointer}.ae-return{position:fixed;right:1rem;top:1rem;z-index:500;font-size:.875rem}.aetheridge-active .ae-return,body[data-screen="prologue"] .ae-return{display:none}button:focus-visible{outline:2px solid #fff;outline-offset:4px}@keyframes ae-emerge{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes ae-pulse{0%,100%{box-shadow:0 0 20px #dddfff33}50%{box-shadow:0 0 40px #dddfff66}}@media(max-width:650px){.ae-actions{grid-template-columns:1fr;gap:.8rem;margin:2rem 0}.ae-action:last-child{grid-column:auto;max-width:none}.ae-action{min-height:70px;padding:1rem}#ae-stage{padding-top:3vh}.ae-header{padding:1rem}.ae-transition{min-height:30vh}.ae-return{top:auto;bottom:1rem;font-size:.8rem}}@media(prefers-reduced-motion:reduce){#aetheridge *{animation:none!important;transition:none!important}.ae-action:hover,.ae-action:focus-visible{transform:none}}

.ae-districts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem}.ae-districts .ae-route{display:flex;align-items:center;justify-content:space-between;gap:1rem;text-align:left;padding:1.3rem 1.5rem;min-height:98px;background:linear-gradient(120deg,#c6d1ff0d,#f5ceff08);border:1px solid #dce2ff55;border-radius:7px;position:relative;overflow:hidden;transition:transform .25s,border-color .25s,box-shadow .25s;animation:ae-route-breathe 5s ease-in-out infinite}.ae-route strong{display:block;font-weight:500;font-size:1rem;line-height:1.5}.ae-route small{display:block;color:#ded5f2;font-size:.85rem;margin-top:.4rem;line-height:1.5}.ae-route>span:last-child{font-size:1.4rem}.ae-route:before{content:'';position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,#e6dfff15 50%,transparent 75%);transform:translateX(-100%);transition:transform .8s;pointer-events:none}.ae-districts .ae-route:hover,.ae-districts .ae-route:focus-visible{transform:translateY(-3px);border-color:#eee5ff;box-shadow:0 0 24px #d9d0ff22;background:linear-gradient(120deg,#c6d1ff15,#f5ceff0d)}.ae-route:hover:before,.ae-route:focus-visible:before{transform:translateX(100%)}.ae-action:active{transform:translateY(-2px) scale(.98);box-shadow:0 0 50px #e8deff88}.ae-walking{animation:ae-walk-in 1.6s ease both}.ae-header small{line-height:1.6}.ae-map summary{font-size:1.1rem}.ae-map p{font-size:1rem}@keyframes ae-walk-in{0%{opacity:0;transform:translateY(8px)}30%,100%{opacity:1;transform:translateY(0)}}@keyframes ae-route-breathe{0%,100%{box-shadow:0 0 12px #d7d6ff08}50%{box-shadow:0 0 18px #d7d6ff18}}@media(max-width:650px){.ae-districts{grid-template-columns:1fr}.ae-districts .ae-route{min-height:85px;padding:1rem}.ae-header small{font-size:.75rem;letter-spacing:.05em}}

/* The city remains visible above a compact conversation and route panel. */
#aetheridge .ae-scene{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}
#ae-stage,.ae-header{position:relative;z-index:1}
.ae-scene img{width:100%;height:100%;object-fit:cover;object-position:center;opacity:1}
.ae-scene:not(.has-art){display:none}
.ae-scene:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,28,55,.17),transparent 38%,rgba(14,28,55,.35) 65%,rgba(14,28,55,.8))}
#aetheridge .ae-header{padding:.8rem 3vw;background:rgba(18,34,65,.7);backdrop-filter:blur(12px)}
#aetheridge #ae-stage{max-width:1100px;min-height:calc(100dvh - 85px);display:flex;flex-direction:column;justify-content:flex-end;padding:30vh 3vw 1.5rem}
#aetheridge .ae-transition{min-height:0;margin:0;max-width:760px;padding:1rem 1.4rem;border-radius:12px;background:rgba(18,34,65,.84);backdrop-filter:blur(12px)}
#aetheridge .ae-transition h1{font-size:clamp(1.4rem,3vw,2.2rem);margin:.35rem 0}
#aetheridge .ae-transition p{font-size:1rem;line-height:1.5;margin:.4rem 0}
#aetheridge .ae-districts{margin-top:.5rem;gap:.5rem}
#aetheridge .ae-districts .ae-route{min-height:0;padding:.65rem .9rem;background:rgba(18,34,65,.86);backdrop-filter:blur(12px);animation:none}
#aetheridge .ae-route strong{font-size:.9rem}
#aetheridge .ae-route small{font-size:.7rem;margin-top:.15rem}
#aetheridge .ae-dialogue,#aetheridge .ae-result,#aetheridge .ae-watch{background:rgba(18,34,65,.9);backdrop-filter:blur(16px);padding:1rem 1.4rem;border-radius:12px;width:100%}
#aetheridge .ae-dialogue p,#aetheridge .ae-result p{font-size:1.05rem;line-height:1.5}
#aetheridge .ae-actions{margin:1rem auto;gap:.6rem;width:100%}
#aetheridge .ae-action{min-height:60px;padding:.8rem 1rem;background:rgba(18,34,65,.9);backdrop-filter:blur(12px)}
#aetheridge .ae-continue{align-self:flex-start;background:rgba(18,34,65,.92);margin:.6rem 0}
#aetheridge:has(.ae-watch) #ae-stage{padding-top:3vh;justify-content:flex-start}
@media(max-width:650px){#aetheridge #ae-stage{padding:24vh 1rem 1rem}.ae-scene img{object-position:center}#aetheridge .ae-districts{grid-template-columns:1fr}#aetheridge .ae-actions{gap:.5rem}#aetheridge .ae-action{min-height:50px}}


/* First-person encounters: the city fills the lens and the cast occupies its foreground. */
body.aetheridge-active #prologue,body.aetheridge-active #system-boot{display:none!important}
#aetheridge[data-mode="cutscene"]{overflow:hidden}
#aetheridge[data-mode="cutscene"] .ae-header{position:absolute;inset:0 0 auto;z-index:5;background:linear-gradient(180deg,#152039bf,transparent);border:0;backdrop-filter:none;padding:1rem 3vw}
#aetheridge[data-mode="cutscene"] .ae-header>span{font-size:.8rem;opacity:.85}
#aetheridge[data-mode="cutscene"] .ae-header small{font-size:.75rem;letter-spacing:.05em}
#aetheridge[data-mode="cutscene"] .ae-header button{font-size:.85rem;background:#221c36b3;padding:.6rem .85rem}
#aetheridge[data-mode="cutscene"] .ae-scene:after{background:linear-gradient(180deg,#19254120,transparent 35%,transparent 58%,#1a173566)}
#aetheridge .ae-cast{position:absolute;inset:0;max-width:none;display:block;pointer-events:none;z-index:1;overflow:hidden}
#aetheridge .ae-actor{position:absolute;height:104dvh;width:auto;max-width:none;bottom:-18dvh;left:52%;transform:translateX(-50%);filter:drop-shadow(0 9px 14px #26163735);border-radius:0;animation:ae-actor-enter .32s ease-out both}
#aetheridge .ae-cast[data-count="2"] .ae-actor-primary{left:67%;height:100dvh}
#aetheridge .ae-cast[data-count="2"] .ae-actor-secondary{left:31%;height:91dvh;bottom:-14dvh}
#aetheridge[data-encounter="1"] .ae-actor{left:52%;height:108dvh;bottom:-22dvh}
#aetheridge[data-encounter="4"] .ae-actor,#aetheridge[data-encounter="9"] .ae-actor,#aetheridge[data-encounter="10"] .ae-actor{height:115dvh;bottom:-28dvh}
#aetheridge[data-encounter="7"] .ae-actor,#aetheridge[data-encounter="20"] .ae-actor{height:94dvh;bottom:-17dvh}
#aetheridge .ae-cutscene-shot{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:cover;object-position:center}
#aetheridge[data-mode="cutscene"] #ae-stage{position:absolute;inset:auto 0 0;z-index:3;width:min(1120px,100%);max-width:1120px;box-sizing:border-box;min-height:0;margin:0 auto;padding:1rem 2rem max(1rem,env(safe-area-inset-bottom));display:flex;flex-direction:column;justify-content:flex-end;gap:.5rem;max-height:58dvh;overflow-y:auto;background:linear-gradient(180deg,transparent,#19172c5e)}
#aetheridge[data-mode="cutscene"] .ae-dialogue{box-sizing:border-box;max-width:none;width:100%;margin:0;padding:.95rem 1.35rem;border:1px solid #bfa4e74a;border-left:3px solid var(--district);border-radius:4px;background:linear-gradient(100deg,#211c39f0,#24213bda);backdrop-filter:blur(12px)}
#aetheridge[data-mode="cutscene"] .ae-dialogue small{font-size:.8rem;letter-spacing:.12em}
#aetheridge[data-mode="cutscene"] .ae-dialogue p{font-size:clamp(1rem,1.25vw,1.125rem);max-width:none;line-height:1.55;margin:.4rem 0}
#aetheridge[data-mode="cutscene"] .ae-continue{align-self:flex-end;margin:0;padding:.65rem 1.1rem;border-radius:4px;background:#242039e8;min-height:44px}
#aetheridge[data-mode="cutscene"] .ae-actions{max-width:none;gap:.4rem;margin:0;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}
#aetheridge[data-mode="cutscene"] .ae-action{min-height:48px;padding:.65rem 1rem;font-size:1rem;line-height:1.35;border-radius:4px;background:#242039e8;animation:none;box-shadow:none}
#aetheridge[data-mode="cutscene"] .ae-action:last-child{max-width:none}
#aetheridge[data-mode="cutscene"] .ae-action:hover,#aetheridge[data-mode="cutscene"] .ae-action:focus-visible{transform:none;outline:2px solid var(--district);outline-offset:-2px;border-color:var(--district);background:#38304ae8;animation:none;box-shadow:none}
@keyframes ae-actor-enter{from{opacity:0}to{opacity:1}}
@media(max-width:650px){
 #aetheridge[data-mode="cutscene"] .ae-header{padding:.65rem .8rem}
 #aetheridge[data-mode="cutscene"] .ae-header>span{max-width:65%}
 #aetheridge[data-mode="cutscene"] #ae-stage{padding:.6rem .65rem max(.65rem,env(safe-area-inset-bottom));max-height:60dvh}
 #aetheridge[data-mode="cutscene"] .ae-dialogue{padding:.7rem .9rem}
 #aetheridge[data-mode="cutscene"] .ae-actions{grid-template-columns:1fr}
 #aetheridge[data-mode="cutscene"] .ae-action{padding:.6rem .8rem;min-height:44px}
 #aetheridge[data-mode="cutscene"] .ae-action:last-child{grid-column:auto}
 #aetheridge .ae-actor{left:50%;height:96dvh;bottom:-15dvh}
 #aetheridge .ae-cast[data-count="2"] .ae-actor-primary{left:74%;height:88dvh;bottom:-9dvh}
 #aetheridge .ae-cast[data-count="2"] .ae-actor-secondary{left:25%;height:81dvh;bottom:-7dvh}
 #aetheridge[data-encounter="1"] .ae-actor{height:96dvh;bottom:-16dvh}
 #aetheridge[data-encounter="4"] .ae-actor,#aetheridge[data-encounter="9"] .ae-actor,#aetheridge[data-encounter="10"] .ae-actor{height:101dvh;bottom:-22dvh}
}


/* The Watch brings the response into focus while the world recedes. */
#aetheridge .ae-scene,#aetheridge .ae-cast,#aetheridge .ae-cutscene-shot{transition:filter .5s ease,opacity .5s ease}
#aetheridge.ae-analysis-active .ae-scene,#aetheridge.ae-analysis-active .ae-cast,#aetheridge.ae-analysis-active .ae-cutscene-shot{filter:blur(14px) brightness(.48) saturate(.6)}
#aetheridge.ae-analysis-active #ae-stage,#aetheridge.ae-analysis-active .ae-header{opacity:0;pointer-events:none;transition:opacity .25s ease}
#aetheridge .ae-analysis{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:clamp(1rem,3vh,2rem);padding:clamp(1rem,4vw,4rem);box-sizing:border-box;overflow-y:auto;color:#fff;background:radial-gradient(ellipse at 50% 40%,#e9efff17,transparent 72%);isolation:isolate;animation:ae-analysis-in .45s ease-out both}
#aetheridge .ae-analysis:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(115deg,transparent 20%,#ffffff25 48%,transparent 72%);animation:ae-analysis-wave .9s ease-out both}
#aetheridge .ae-analysis h2{margin:0;font-size:clamp(.875rem,1.2vw,1rem);font-weight:400;letter-spacing:.32em;color:#fff;text-shadow:0 0 20px #ffffff80}
#aetheridge .ae-analysis-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.75rem,2vw,1.5rem);width:min(1160px,100%);align-content:center}
#aetheridge .ae-analysis-option{position:relative;box-sizing:border-box;min-height:clamp(105px,18dvh,180px);padding:clamp(1.1rem,2.5vw,2.5rem);font:inherit;font-size:clamp(1.05rem,1.8vw,1.5rem);line-height:1.45;font-weight:400;color:#fff;text-align:center;border:1px solid #ffffffab;border-radius:10px;background:linear-gradient(135deg,#ffffff29,#ffffff0b);box-shadow:0 0 24px #ffffff0c,inset 0 0 24px #ffffff09;backdrop-filter:blur(20px);cursor:pointer;text-shadow:0 1px 9px #15213b80;transition:background .22s ease,box-shadow .22s ease,border-color .22s ease,transform .22s ease;animation:ae-choice-arrive .5s ease-out both;animation-delay:var(--choice-delay)}
#aetheridge .ae-analysis-option:last-child{grid-column:1/-1}
#aetheridge .ae-analysis-option:hover,#aetheridge .ae-analysis-option:focus-visible{outline:2px solid #fff;outline-offset:4px;border-color:#fff;background:linear-gradient(135deg,#ffffff42,#ffffff20);transform:translateY(-3px);animation:ae-choice-glow 2.1s ease-in-out infinite;text-shadow:0 0 16px #ffffff6b}
#aetheridge .ae-analysis-option.is-selected{background:#ffffffd9;color:#19213c;border-color:#fff;text-shadow:none;box-shadow:0 0 65px #ffffff70;transform:scale(1.015);animation:none}
#aetheridge .ae-analysis-option:disabled{cursor:default}
#aetheridge .ae-analysis.is-resolving .ae-analysis-option:not(.is-selected){opacity:.2;transition:opacity .2s ease}
#aetheridge .ae-analysis.is-resolving{animation:ae-analysis-out .42s ease-in forwards}
#aetheridge .ae-analysis.is-resolving:after{content:'';position:absolute;inset:-25%;pointer-events:none;border:2px solid #ffffff9c;border-radius:50%;box-shadow:0 0 55px #ffffff50;animation:ae-selection-ripple .42s ease-out both}
@keyframes ae-analysis-in{from{opacity:0}to{opacity:1}}
@keyframes ae-analysis-out{0%,40%{opacity:1}100%{opacity:0}}
@keyframes ae-analysis-wave{from{transform:translateX(-80%);opacity:0}30%{opacity:1}to{transform:translateX(80%);opacity:0}}
@keyframes ae-choice-arrive{from{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes ae-choice-glow{0%,100%{box-shadow:0 0 25px #ffffff30,inset 0 0 25px #ffffff12}50%{box-shadow:0 0 45px #ffffff60,inset 0 0 35px #ffffff20}}
@keyframes ae-selection-ripple{from{transform:scale(.1);opacity:1}to{transform:scale(1.1);opacity:0}}
@media(max-width:650px){#aetheridge .ae-analysis{justify-content:safe center;padding:1rem 1rem max(1rem,env(safe-area-inset-bottom));gap:1rem}#aetheridge .ae-analysis-options{grid-template-columns:1fr;gap:.65rem}#aetheridge .ae-analysis-option{min-height:clamp(72px,12dvh,110px);padding:1rem;font-size:1.05rem}#aetheridge .ae-analysis-option:last-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){#aetheridge .ae-analysis,#aetheridge .ae-analysis:before,#aetheridge .ae-analysis:after,#aetheridge .ae-analysis-option{animation:none!important;transition:none!important}#aetheridge .ae-analysis-option:hover,#aetheridge .ae-analysis-option:focus-visible{transform:none}#aetheridge .ae-scene,#aetheridge .ae-cast,#aetheridge .ae-cutscene-shot{transition:none}}
