@font-face{font-family:Cinzel;src:url(/assets/fonts/Cinzel/Cinzel-VariableFont_wght.ttf)format("truetype");font-weight:400 900;font-display:swap}:root{--ink:#e9e4da;--ink-dim:#e9e4da99;--ink-faint:#e9e4da59;--gold:#f0c77a;--night:#0d1016;--panel:#0a0d14d1;--title:"Cinzel", "Cormorant Garamond", Georgia, serif;--serif:"Cormorant Garamond", Georgia, serif;--sans:"Inter", system-ui, sans-serif}*{box-sizing:border-box}html,body{background:var(--night);height:100%;color:var(--ink);font-family:var(--sans);margin:0;overflow:hidden}#renderCanvas{touch-action:none;outline:none;width:100%;height:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.key{border:1px solid var(--gold);min-width:26px;height:26px;color:var(--gold);white-space:nowrap;background:#00000059;border-radius:4px;place-items:center;padding:0 7px;font-size:13px;font-weight:600;display:inline-grid}#loading,.startup-surface{background:radial-gradient(at 50% 45%,#17202a 0%,#0d111a 38%,#07090e 78%)}#loading{z-index:50;text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:24px;padding:24px;transition:opacity .8s;display:flex;position:fixed;inset:0}#loading.done{opacity:0;pointer-events:none}.loading-logo{width:min(360px,70vw);height:auto;margin-bottom:20px}.startup-eyebrow{font:10px var(--sans);color:#b7b1a8;letter-spacing:.28em;text-transform:uppercase;margin:0}.loading-bar{background:#ffffff12;width:min(320px,70vw);height:2px;overflow:hidden}.loading-fill{background:linear-gradient(90deg,#799baa,#d8c29b);width:0;height:100%;transition:width .5s}.loading-stage{font:12px var(--sans);letter-spacing:.06em;color:#c2beb6}.loading-tip{max-width:440px;min-height:2.5em;font:italic 19px/1.5 var(--serif);color:#a8a7aa}#loading.failed .loading-bar{display:none}.loading-retry{color:var(--ink);font:14px var(--sans);border:1px solid #baa481;padding:12px 28px}.loading-retry:hover{background:#baa48118}.screen{opacity:0;visibility:hidden;transition:opacity .8s,visibility 0s linear .8s;display:flex;position:fixed;inset:0}.screen.visible{opacity:1;visibility:visible;transition:opacity .8s,visibility}#gate,#intro{justify-content:center;align-items:center}#gate{z-index:40;overflow:hidden}.gate-content{z-index:1;text-align:center;flex-direction:column;align-items:center;padding:32px 24px;display:flex;position:relative}.gate-caption{font:italic 24px var(--serif);color:#b9bdc2;margin:0 0 48px}.gate-cta{min-width:220px;font:16px var(--title);letter-spacing:.18em;color:var(--ink);background:#c6b38b08;border:1px solid #c6b38b77;padding:16px 32px;transition:background .2s,border-color .2s}.gate-cta:hover{background:#c6b38b18;border-color:#d5c19b}.gate-hint{font:12px var(--sans);color:#a3a5ac;margin:20px 0 0}.startup-bottom{color:#92949d;font:10px var(--sans);letter-spacing:.16em;text-transform:uppercase;justify-content:space-between;display:flex;position:absolute;bottom:30px;left:40px;right:40px}.startup-orbit{aspect-ratio:1;opacity:.4;pointer-events:none;width:min(740px,90vw);animation:50s linear infinite startup-drift;position:absolute}.startup-orbit i{border:1px solid #8fbac31b;border-radius:50%;position:absolute;inset:0}.startup-orbit i:nth-child(3){border-style:dashed;border-color:#8fbac328;inset:13%}.startup-orbit:after{content:"";background:#c6b38b;width:1px;height:16px;position:absolute;top:0;left:50%;box-shadow:0 0 12px #799baa66}@keyframes startup-drift{to{transform:rotate(360deg)}}#intro{z-index:30}.intro-card{opacity:0;transition:opacity var(--intro-fade,.8s), transform 2s ease-out;text-align:center;transform:translateY(8px)}.intro-card.show{opacity:1;transform:translateY(0)}.studio-logo{object-fit:contain;width:min(360px,65vw);height:auto;max-height:40vh}.studio-text{font:500 clamp(34px, 6vw, 60px) var(--title);letter-spacing:.3em}.studio-text span{font:12px var(--sans);letter-spacing:.6em;color:var(--ink-dim);margin-top:10px;display:block}.disclaimer{max-width:580px;padding:24px}.disclaimer p{margin:0}.disclaimer-title{color:#c8b38d;font:11px var(--sans);letter-spacing:.25em;text-transform:uppercase}.disclaimer-lead{font:32px/1.25 var(--serif);color:var(--ink);margin-top:24px!important}.intro-divider{background:#c8b38d70;width:48px;height:1px;margin:28px auto;display:block}.disclaimer-note{font:14px/1.7 var(--sans);color:#adb0b9;max-width:380px;margin:auto!important}.intro-skip{font:11px var(--sans);color:#b9b4ac;border-bottom:1px solid #c8b38d55;padding:10px 0;position:absolute;bottom:28px;right:32px}#intro{background:#070a10;overflow:hidden}#gate:not(.visible){pointer-events:none}#intro:before,#intro:after{content:"";pointer-events:none;opacity:0;transition:opacity var(--intro-fade,.8s) ease;position:absolute;inset:0}#intro[data-phase=studio]:before,#intro[data-phase=prototype]:after{opacity:1}#intro .intro-card{z-index:1;position:relative}#intro .intro-skip{z-index:2}.studio-reveal{aspect-ratio:1;place-items:center;width:min(480px,88vw,75vh);display:grid;position:relative}.studio-reveal .studio-logo{width:72%;max-height:none;position:relative}.studio-reveal .studio-text{font-size:clamp(26px,5vw,48px);position:relative}.intro-seal{aspect-ratio:1;pointer-events:none;width:85%;position:absolute;top:38%;left:50%;transform:translate(-50%,-50%)}.intro-seal i{opacity:.55;border:1px solid #c7a56b4d;border-radius:50%;position:absolute;inset:0}.intro-seal i:nth-child(2){border-color:#d4bb883b;inset:10%}.intro-seal i:nth-child(3){border-style:dashed;border-color:#c7a56b2e;inset:20%}.intro-seal b{opacity:.4;border-top:1px solid #e2c68b66;border-bottom:1px solid #e2c68b33;position:absolute;inset:-3%;transform:scaleX(.09)}#intro[data-motion=full] .show .intro-seal i{animation:intro-ring var(--intro-align) cubic-bezier(.16, 1, .3, 1) both}.intro-seal i:first-child{--ring-turn:-65deg;--ring-width:.35}.intro-seal i:nth-child(2){--ring-turn:75deg;--ring-width:.4}.intro-seal i:nth-child(3){--ring-turn:-120deg;--ring-width:.6}#intro[data-motion=full] .show .studio-logo,#intro[data-motion=full] .show .studio-text{animation:intro-brand var(--intro-align) ease-out both}#intro.aligned .intro-seal b{opacity:.85;transition:opacity .3s}#intro[data-phase=prototype][data-motion=full][data-effects=true] .intro-card:before{content:"";z-index:-1;aspect-ratio:1;pointer-events:none;border:1px solid #a6d9ed;border-radius:50%;width:min(680px,90vw);animation:1.2s ease-out both intro-cold-wave;position:absolute;top:50%;left:50%}@keyframes intro-ring{0%{transform:rotate(var(--ring-turn)) scaleX(var(--ring-width)) scale(.88);opacity:0}to{opacity:.55;transform:rotate(0)scaleX(1)scale(1)}}@keyframes intro-brand{0%{opacity:0;transform:scale(.95)}35%{opacity:.4}to{opacity:1;transform:scale(1)}}@keyframes intro-cold-wave{0%{opacity:.16;transform:translate(-50%,-50%)scale(.65)}to{opacity:0;transform:translate(-50%,-50%)scale(1.2)}}@media (prefers-reduced-motion:reduce){#intro:before,#intro:after,#intro.aligned .intro-seal b{transition:none}#intro .intro-seal i,#intro .studio-logo,#intro .studio-text,#intro .intro-card:before{animation:none!important}#intro .intro-card:before{display:none}}#opening{z-index:28;pointer-events:none}#opening.visible{pointer-events:auto}.opening-bar{background:#000;height:10vh;position:absolute;left:0;right:0}.opening-bar.top{top:0}.opening-bar.bottom{bottom:0}.opening-black{opacity:1;background:#000;position:absolute;inset:0}.opening-caption{text-align:center;width:min(760px,86vw);font:italic clamp(20px, 2.4vw, 30px)/1.4 var(--serif);color:var(--ink);text-shadow:0 2px 18px #000c;opacity:0;margin:0;transition:opacity 1s,transform 2.4s ease-out;position:absolute;bottom:15vh;left:50%;transform:translate(-50%,6px)}.opening-caption.show{opacity:1;transform:translate(-50%)}.opening-skip{z-index:1}#gate button:focus-visible,#intro button:focus-visible,#opening button:focus-visible,#menu button:focus-visible,.loading-retry:focus-visible{outline-offset:6px;outline:1px solid #e1cfae}nav{flex-direction:column;align-items:flex-start;gap:6px;display:flex}nav.hidden{display:none}nav button{font-family:var(--title);letter-spacing:.12em;color:var(--ink-dim);padding:4px 0;font-size:22px;font-weight:500;transition:color .2s,padding-left .25s;position:relative}nav button:before{content:"";background:var(--gold);width:0;height:1px;transition:width .25s;position:absolute;top:50%;left:0}nav button:hover,nav button:focus-visible{color:var(--ink);outline:none;padding-left:30px}nav button:hover:before,nav button:focus-visible:before{width:20px}#menu{z-index:20;background:linear-gradient(90deg,#05080ff5,#080e18df 30%,#080e1870 57%,#05070b12 85%),linear-gradient(#0000 70%,#05080eb0)}.menu-side{scrollbar-color:#b9aa8b66 transparent;flex-direction:column;justify-content:center;gap:clamp(22px,4vh,44px);width:min(580px,100%);height:100%;padding:60px 42px 48px clamp(28px,6vw,92px);display:flex;overflow-y:auto}.brand-title{font:600 clamp(44px, 6.5vw, 80px)/1 var(--title);letter-spacing:.2em;margin:0}.game-logo{width:min(380px,75vw);height:auto;display:block}.brand .startup-eyebrow{margin-bottom:28px}.brand-subtitle{font:italic 23px var(--serif);color:#c9bca8;align-items:center;gap:14px;margin-top:26px;display:flex}.brand-subtitle:before{content:"";background:#c9bca877;width:36px;height:1px}.menu-caption{max-width:320px;font:18px/1.5 var(--serif);color:#adb4bd;margin:16px 0 0}#menu nav{align-items:stretch;gap:6px;width:min(340px,100%)}#menu nav button{text-align:left;font:13px var(--sans);letter-spacing:.04em;color:#bbc0c6;border:1px solid #0000;padding:12px 18px}#menu nav button:before{left:0}#menu nav button:hover,#menu nav button:focus-visible{color:var(--ink);background:#bccad207;padding-left:30px}#menu nav button[data-action=play]{font:20px var(--title);letter-spacing:.08em;color:var(--ink);background:linear-gradient(110deg,#c9bca81c,#c9bca804);border-color:#c9bca870;padding:19px 24px}#menu nav button[data-action=play]:before{display:none}#menu nav button[data-action=play]:after{content:"→";float:right;color:#cdbb9c}#menu nav button[data-action=play]:hover{background:#c9bca828;border-color:#c9bca8bb}.menu-start-note{font:11px/1.5 var(--sans);color:#a7a8aa;margin:4px 0 12px 24px}.menu-footer{border-top:1px solid #c9bca826;max-width:360px;padding-top:20px}.menu-tag{color:#919ba7;font:10px/1.7 var(--sans);margin:12px 0 0}.menu-utilities{position:absolute;top:28px;right:36px}.menu-utilities button{color:#d0c6b7;font:11px var(--sans);letter-spacing:.06em;background:#090d1580;border:1px solid #c9bca83b;padding:8px 12px}.menu-scene-label{text-align:right;color:#c9bca8;font:italic 21px var(--serif);pointer-events:none;flex-direction:column;gap:8px;display:flex;position:absolute;bottom:30px;right:36px}.menu-scene-label span:first-child{font:9px var(--sans);letter-spacing:.2em;opacity:.7}#menu.has-panel .menu-side{background:linear-gradient(90deg,#090f18f5,#090f18e8);border-right:1px solid #c9bca826;justify-content:flex-start;gap:24px;width:min(740px,100%);padding-block:36px 24px}#menu.has-panel .brand{align-items:center;gap:24px;display:flex}#menu.has-panel .game-logo{width:180px;max-width:50%}#menu.has-panel .brand .startup-eyebrow,#menu.has-panel .menu-caption,#menu.has-panel .menu-footer{display:none}#menu.has-panel .brand-subtitle{white-space:nowrap;margin:0;font-size:18px}#menu.has-panel .brand-subtitle:before,#menu.has-panel .menu-scene-label{display:none}#menu.has-panel .panel-host{flex:1;min-height:0}#menu .panel{border-top:1px solid #c9bca849;max-width:none;height:100%;padding-top:24px}#menu .panel h2:focus{outline:none}#menu .panel-body{color:#c1c0bc;scrollbar-color:#b9aa8b66 transparent;min-height:0;padding:4px 6px 4px 2px;overflow-y:auto}#menu .panel .back{flex-shrink:0;margin-top:auto;padding:10px 0}.studio-link{color:#cbbda5;font:11px/1.6 var(--sans);letter-spacing:.04em;padding:6px 0;text-decoration:none}.studio-link:hover{color:#f0e4d0;text-underline-offset:5px;text-decoration:underline}.studio-link:focus-visible{outline-offset:5px;outline:2px solid #d7c299}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.credits-studio-logo{object-fit:contain;width:min(230px,65%);max-height:140px;margin-bottom:28px;display:block}#gate{background:radial-gradient(#17293680,#0000 56%),linear-gradient(135deg,#101823,#070a10 70%)}#gate:before{content:"";pointer-events:none;border:1px solid #c9bca821;position:absolute;inset:18px}.gate-content{padding:76px 24px}.gate-caption{margin-bottom:38px;font-size:clamp(22px,3vw,30px)}.gate-cta{background:linear-gradient(110deg,#c6b38b16,#c6b38b04)}.gate-cta:after{content:"→";color:#cbbda5;margin-left:24px}.gate-hint{margin-top:24px;font-size:11px}.startup-orbit{opacity:.75;width:min(780px,92vw)}.startup-orbit i{border-color:#97b6c42c}.startup-orbit i:nth-child(2){border-color:#c6b38b42;inset:9%;transform:rotate(-28deg)scaleX(.64)}.startup-orbit i:nth-child(3){border:1px solid #8fbac337;inset:19%;transform:rotate(34deg)scaleX(.58)}.startup-orbit b{border:1px dashed #c6b38b30;border-radius:50%;position:absolute;inset:4%}.gate-coordinate{font:10px var(--sans);color:#b7c2cb;letter-spacing:.18em;position:absolute;top:40px;left:44px}.gate-coordinate span{color:#7d929f;margin-top:10px;font-size:8px;display:block}.startup-bottom{align-items:center;gap:16px}.startup-bottom .studio-link{font-size:10px}@media (height<=700px){#menu .menu-side{gap:22px;padding-top:26px;padding-bottom:24px}#menu .game-logo{width:min(300px,68vw)}#menu .brand .startup-eyebrow{margin-bottom:16px}#menu .brand-subtitle{margin-top:16px}#menu.has-panel .brand-subtitle{margin:0}#menu.has-panel .game-logo{width:150px}#menu nav button{padding-block:9px}#menu nav button[data-action=play]{padding-block:15px}.menu-caption{margin-top:10px}.gate-logo{width:min(360px,65vw);margin-top:28px}.gate-caption{margin-bottom:28px}}@media (width<=680px){#menu{background:linear-gradient(90deg,#060911ed,#060911b8)}#menu .menu-side{width:100%;padding:70px 24px 24px}#menu.has-panel .menu-side{padding:68px 24px 20px}.menu-scene-label{display:none}.menu-utilities{top:18px;right:24px}.startup-bottom{flex-wrap:wrap;font-size:8px;bottom:24px;left:30px;right:30px}.startup-bottom>:last-child{display:none}.gate-coordinate{top:30px;left:30px}}@media (height<=480px){#gate{overflow-y:auto}.gate-content{margin-block:auto;padding:84px 24px}.gate-logo{width:230px;margin:18px 0 12px}.gate-caption{margin-bottom:16px;font-size:20px}.gate-hint{margin-top:16px}.gate-coordinate,.startup-bottom{position:fixed}}@media (prefers-reduced-motion:reduce){.startup-orbit{animation:none}#loading,#gate,#intro,#menu,.intro-card{transition:none}.intro-card{transform:none}}#pause{z-index:25;-webkit-backdrop-filter:blur(5px);background:#04070cc2;justify-content:center;align-items:center;padding:24px;transition:opacity .15s,visibility 0s linear .15s}#pause.visible{transition:opacity .15s,visibility}body[data-lightweight-ui=true] #pause{-webkit-backdrop-filter:none;background:#070b12ed}.pause-box{background:linear-gradient(125deg,#151b24fa,#080c14fa);border:1px solid #b9aa8b42;grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:250px minmax(0,1fr);width:min(1060px,100%);height:min(660px,100dvh - 48px);display:grid;box-shadow:0 24px 80px #0006}.pause-header{border-bottom:1px solid #b9aa8b2a;grid-column:1/-1;justify-content:space-between;align-items:center;gap:20px;padding:24px 30px;display:flex}.pause-header img{width:170px;height:auto}.pause-header span{font:10px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:#aaa9a7}.pause-sidebar{border-right:1px solid #b9aa8b2a;padding:30px 22px;overflow-y:auto}.pause-title{font:26px var(--title);letter-spacing:.08em;color:var(--ink);margin:0 0 28px}#pause nav{align-items:stretch;gap:6px}#pause nav button{font:13px var(--sans);letter-spacing:.01em;text-align:left;border:1px solid #0000;border-radius:3px;padding:13px 12px}#pause nav button:before{display:none}#pause nav button:hover,#pause nav button[aria-expanded=true]{color:var(--ink);background:#d4c09a0b;border-color:#d4c09a36;padding-left:12px}#pause nav button[data-action=resume]{color:#f2e6d0;background:#c7ab6e13;border-color:#ccb58a75;margin-bottom:8px;padding:16px 12px}.pause-nav-divider{background:#b9aa8b23;height:1px;margin:16px 12px}.pause-content{scrollbar-color:#b9aa8b66 transparent;min-width:0;padding:30px 34px;overflow-y:auto}.pause-context{text-align:center;max-width:450px;margin:auto;padding:14px 10px}.pause-orbit{place-items:center;width:140px;height:140px;margin:0 auto 28px;display:grid;position:relative}.pause-orbit i{border:1px solid #a7bac145;border-radius:50%;position:absolute;inset:12px;transform:rotate(-25deg)scaleX(.62)}.pause-orbit i:nth-child(2){border-color:#c5ae8559;transform:rotate(35deg)scaleX(.8)}.pause-orbit b{color:#bccbd0;font:48px var(--serif);font-weight:400}.pause-objective{color:#ded8ce;font:28px/1.35 var(--serif);margin:20px 0}.pause-context-note{color:#a1a7ad;font:12px/1.8 var(--sans);margin:0}#pause.has-panel .pause-context{display:none}.pause-footer{color:#a1a5ac;font:10px/1.4 var(--sans);border-top:1px solid #b9aa8b2a;grid-column:1/-1;justify-content:space-between;gap:12px;padding:18px 30px;display:flex}#pause .panel{max-width:none}#pause .panel h2{letter-spacing:.08em;color:var(--ink);font-size:20px}#pause button:focus-visible,#pause input:focus-visible,#pause select:focus-visible,#pause summary:focus-visible,.settings-panel button:focus-visible,.settings-panel input:focus-visible,.settings-panel select:focus-visible,.settings-panel summary:focus-visible{outline-offset:4px;outline:2px solid #d7c299}.menu-confirm-text{font:16px/1.8 var(--sans);color:#bdc1c5}.menu-confirm-actions{flex-direction:column;align-items:flex-start;gap:20px;display:flex}.menu-confirm-actions button{font:13px var(--sans);padding:10px 0}.menu-confirm-actions .menu-confirm-primary{background:#c7ab6e13;border:1px solid #ccb58a75;padding:14px 20px}@media (width<=900px){#pause{padding:12px}.pause-box{grid-template-columns:200px minmax(0,1fr);height:calc(100dvh - 24px)}.pause-sidebar{padding:22px 14px}.pause-content{padding:24px 20px}.pause-header{padding:18px 20px}.pause-header img{width:140px}.pause-footer{flex-wrap:wrap;padding:14px 20px}.pause-orbit{width:100px;height:100px}}@media (width<=540px){.pause-box{flex-direction:column;display:flex;overflow-y:auto}.pause-header span{display:none}.pause-sidebar{border-bottom:1px solid #b9aa8b2a;border-right:0;overflow:visible}.pause-title{margin-bottom:14px;font-size:21px}#pause nav{grid-template-columns:1fr 1fr;gap:8px;display:grid}#pause nav button[data-action=resume]{grid-column:1/-1;margin-bottom:0}.pause-nav-divider{display:none}#pause nav button{padding:10px;font-size:12px}.pause-content{padding:24px 18px;overflow:visible}.pause-footer{margin-top:auto}}@media (height<=560px) and (width>=541px){.pause-header{padding:14px 24px}.pause-header img{width:130px}.pause-sidebar{padding:18px}.pause-title{margin-bottom:14px;font-size:21px}#pause nav button{padding-block:9px}.pause-content{padding:20px 26px}.pause-orbit{display:none}}.panel-host:empty{display:none}.panel{flex-direction:column;gap:22px;max-width:440px;display:flex}.panel h2{font-family:var(--title);letter-spacing:.35em;text-transform:uppercase;color:var(--gold);margin:0;font-size:16px;font-weight:600}.panel .back{letter-spacing:.25em;text-transform:uppercase;color:var(--ink-dim);border-bottom:1px solid var(--ink-faint);align-self:flex-start;padding-bottom:3px;font-size:12px}.panel .back:hover{color:var(--ink);border-color:var(--gold)}.controls-grid{color:var(--ink-dim);grid-template-columns:auto 1fr;align-items:center;gap:12px 18px;font-size:15px;display:grid}.controls-grid .key{justify-self:start}.setting{color:var(--ink-dim);grid-template-columns:1fr auto;align-items:center;gap:8px 14px;margin-bottom:18px;font-size:15px;display:grid}.setting input[type=range]{accent-color:var(--gold);grid-column:1;width:100%}.setting output{font-variant-numeric:tabular-nums;color:var(--ink);text-align:right;grid-column:2;min-width:52px}.setting input[type=checkbox]{accent-color:var(--gold);width:18px;height:18px}.setting select{font:inherit;color:var(--ink);border:1px solid var(--ink-faint);background:#0006;border-radius:4px;padding:4px 8px;font-size:14px}.credits{font-family:var(--serif);color:var(--ink-dim);font-size:19px;line-height:1.5}.credits p{margin:0 0 12px}.credits strong{color:var(--ink);font-weight:600}.credits-title{font-family:var(--title);letter-spacing:.25em;color:var(--ink);font-size:26px}.credits-note{color:#a4aeb9;font-size:17px;font-style:italic}.frost{z-index:5;pointer-events:none;opacity:0;background-position:50%;background-size:cover;transition:opacity .6s linear;position:fixed;inset:0}#frost-light{--clear:62%;-webkit-mask-image:radial-gradient(ellipse at center, transparent var(--clear), black calc(var(--clear) + 30%));-webkit-mask-image:radial-gradient(ellipse at center, transparent var(--clear), black calc(var(--clear) + 30%));mask-image:radial-gradient(ellipse at center, transparent var(--clear), black calc(var(--clear) + 30%))}#frost-heavy{--clear:38%;-webkit-mask-image:radial-gradient(ellipse at center, transparent var(--clear), black calc(var(--clear) + 40%));-webkit-mask-image:radial-gradient(ellipse at center, transparent var(--clear), black calc(var(--clear) + 40%));mask-image:radial-gradient(ellipse at center, transparent var(--clear), black calc(var(--clear) + 40%));box-shadow:inset 0 0 22vw 6vw #040810d9}#frost-heavy.frozen{animation:1.1s ease-in-out infinite heartbeat}@keyframes heartbeat{0%,to{filter:brightness()}15%{filter:brightness(1.35)hue-rotate(-10deg)}30%{filter:brightness()}}#cold-bite{z-index:5;pointer-events:none;position:fixed;inset:0}#cold-bite>div{pointer-events:none;position:absolute;inset:0}.cold-breath{opacity:0;filter:blur(6px);background:radial-gradient(70% 45% at 50% 108%,#e1ecf8d9,#e1ecf800 70%)}.cold-drips{opacity:0;mix-blend-mode:screen;background-repeat:repeat-x;background-size:34vw 70vh;-webkit-mask-image:radial-gradient(#0000 38%,#000 75%);mask-image:radial-gradient(#0000 38%,#000 75%)}#hud{z-index:6;opacity:0;pointer-events:none;flex-direction:column;gap:9px;transition:opacity .6s;display:flex;position:fixed;bottom:max(16px,3vh);left:max(16px,2.5vw)}#hud.visible{opacity:1}.gauge{grid-template-columns:16px 96px 190px 14px;align-items:center;gap:10px;transition:opacity .6s;display:grid}.gauge.hidden{display:none}.g-icon{width:16px;height:16px;color:var(--ink-dim)}.g-icon svg{width:100%;height:100%;display:block}[data-gauge=cold] .g-icon{color:#9cc7f5}[data-gauge=health] .g-icon{color:#e0707e}[data-gauge=energy] .g-icon{color:#ffb347}[data-gauge=convergence] .g-icon{color:#c9a2ff}.g-label{font-family:var(--title);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-dim);font-size:11px;font-weight:600}.bar{background:#ffffff1a;border-radius:3px;height:5px;overflow:hidden;box-shadow:0 0 0 1px #00000040}.fill{transform-origin:0;border-radius:3px;width:100%;height:100%;transition:transform .15s linear}[data-gauge=cold] .fill{background:linear-gradient(90deg,#7fb0e6,#d6ecff);box-shadow:0 0 8px #a0cdff99}[data-gauge=health] .fill{background:linear-gradient(90deg,#8e1f2a,#d9485a);box-shadow:0 0 8px #dc465a80}[data-gauge=energy] .fill{background:linear-gradient(90deg,#d4591c,#ffb347);box-shadow:0 0 8px #ff963c99}[data-gauge=convergence] .fill{background:linear-gradient(90deg,#7a4bd8,#f0c77a);box-shadow:0 0 8px #aa78ff99}[data-gauge=convergence].ready .g-label{color:#d9c2ff;animation:1.2s ease-in-out infinite breathe}[data-gauge=convergence].ready .bar{box-shadow:0 0 10px #be8cffcc}[data-gauge=convergence].active .fill{background:linear-gradient(90deg,#f0c77a,#fff3d6)}.trend{color:var(--ink-faint);font-size:9px}.trend[data-trend=up]{color:#ffb347}.trend[data-trend=down]{color:#9cc7f5}.gauge.danger .g-label{color:#ff9aa6;animation:.9s ease-in-out infinite breathe}[data-gauge=cold].danger .g-label{color:#bfe0ff}#powers{z-index:6;pointer-events:none;opacity:0;align-items:flex-end;gap:12px;transition:opacity .6s;display:flex;position:fixed;bottom:max(16px,3vh);right:max(16px,2.5vw)}#powers.visible{opacity:1}.power{--cd:0;--fill:1;flex-direction:column;align-items:center;gap:6px;transition:opacity .4s,transform .3s;display:flex}.power.locked{display:none}.power-ring{width:46px;height:46px;color:var(--ink);background:#080b1299;border:1px solid #e9e4da47;border-radius:50%;place-items:center;display:grid;position:relative}.power-ring:after{content:"";background:conic-gradient(#0000009e calc(var(--cd) * 360deg), transparent 0);border-radius:50%;position:absolute;inset:0}.power-icon{width:24px;height:24px}.power-icon svg{width:100%;height:100%;display:block}.power-key{letter-spacing:.05em;color:var(--gold);white-space:nowrap;background:#00000059;border:1px solid #f0c77a80;border-radius:3px;padding:1px 6px;font-size:10px;font-weight:600}.power.low .power-ring{color:#8a6f6f;border-color:#c8505066}.power.active .power-ring{color:#ffd08a;border-color:#ffb347;box-shadow:0 0 16px #ff963cb3}[title^=Pacte] .power-ring{background:conic-gradient(#a06eff59 calc(var(--fill) * 360deg), #080b1299 0)}.power[data-power=ancre].active .power-ring{color:#c8f1ff;border-color:#5fd0ff;box-shadow:0 0 16px #50c8ffb3}.power[data-power=ancre].ready .power-ring{background:conic-gradient(#aa78ff73 calc(var(--fill) * 360deg), #080b1299 0)}.power.ready .power-ring{color:#efd2ff;border-color:#c9a2ff;animation:1.3s ease-in-out infinite breathe;box-shadow:0 0 18px #aa78ffcc}#bossbar{z-index:6;pointer-events:none;opacity:0;flex-direction:column;align-items:center;gap:8px;width:min(560px,100% - 32px);transition:opacity .6s;display:flex;position:fixed;top:4.5vh;left:50%;transform:translate(-50%)}#bossbar.visible{opacity:1}.boss-name{font-family:var(--title);letter-spacing:.35em;text-transform:uppercase;color:var(--ink);text-shadow:0 1px 8px #000c;font-size:14px;font-weight:600}.boss-status{color:#c5d9e3;min-height:16px;font:12px/1.4 var(--sans);text-align:center;background:#050911a6;padding:2px 9px}#bossbar[data-status=boss_beam] .boss-status,#bossbar[data-status=boss_slam] .boss-status{color:#ffb1a5}#bossbar[data-status=boss_opening] .boss-status,#bossbar[data-status=boss_exposed] .boss-status{color:#f1d3a2}.boss-bars{flex-direction:column;gap:3px;width:100%;display:flex}.boss-track{background:#ffffff1a;border-radius:3px;height:5px;overflow:hidden;box-shadow:0 0 0 1px #0000004d}.boss-armor,.boss-health{transform-origin:0;height:100%;transition:transform .15s linear}.boss-armor{background:linear-gradient(90deg,#7fb0e6,#d6ecff);box-shadow:0 0 8px #a0cdff99}.boss-health{background:linear-gradient(90deg,#8e1f2a,#d9485a)}#reticle{z-index:6;pointer-events:none;opacity:0;background:#fff0dcbf;border-radius:50%;width:6px;height:6px;margin:-3px 0 0 -3px;transition:opacity .3s;position:fixed;top:50%;left:50%;box-shadow:0 0 0 2px #00000040,0 0 6px #ffc88c99}#reticle.visible{opacity:1}#stase-target{z-index:6;pointer-events:none;color:#dbcefa;width:44px;height:44px;display:none;position:fixed;top:0;left:0}#stase-target.visible{display:block}#stase-target svg{width:100%;height:100%;overflow:visible}#stase-target path{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linecap:square}#stase-target kbd{box-sizing:border-box;color:#eee6fa;min-width:17px;font:10px var(--sans);text-align:center;background:#141222d9;border:1px solid #a49ab980;padding:2px 5px;line-height:1.2;position:absolute;top:calc(100% + 3px);left:50%;transform:translate(-50%)}#dodge-hint{z-index:7;pointer-events:none;color:#f0a394;font:500 12px/1.3 var(--sans);white-space:nowrap;background:#10141de6;border:1px solid #c77b714d;border-radius:4px;align-items:center;gap:10px;padding:6px 11px;display:flex;position:fixed;top:63%;left:50%;transform:translate(-50%);box-shadow:0 3px 15px #0006}#dodge-hint[data-phase=hidden]{display:none}#dodge-hint svg{fill:none;stroke:currentColor;stroke-width:1.5px;flex-shrink:0;width:31px;height:31px}#dodge-hint .dodge-warning{stroke-width:2.5px}#dodge-hint .dodge-ready,#dodge-hint kbd{display:none}#dodge-hint[data-phase=perfect]{color:#d2f3f7;background:#12252ced;border-color:#b8edf3b3}#dodge-hint[data-phase=perfect] .dodge-warning{display:none}#dodge-hint[data-phase=perfect] .dodge-ready{display:initial;stroke-width:2px}#dodge-hint[data-phase=perfect] kbd{font:600 12px var(--sans);border:1px solid;border-radius:3px;padding:4px 7px;display:inline-block}#callout{z-index:7;font-family:var(--title);letter-spacing:.3em;text-transform:uppercase;pointer-events:none;opacity:0;white-space:nowrap;font-size:clamp(20px,2.6vw,30px);font-weight:600;position:fixed;top:36%;left:50%;transform:translate(-50%,-50%)scale(.9)}#callout[data-variant=fire]{color:#ffc27a;text-shadow:0 0 18px #ff7828cc}#callout[data-variant=time]{color:#d9c2ff;text-shadow:0 0 18px #9664ffcc}#callout.visible{animation:1.1s ease-out forwards callout}@keyframes callout{0%{opacity:0;transform:translate(-50%,-50%)scale(1.25)}15%{opacity:1;transform:translate(-50%,-50%)scale(1)}75%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(.97)}}#hurt{z-index:6;pointer-events:none;opacity:0;background:radial-gradient(#0000 45%,#aa141e8c 100%);position:fixed;inset:0}#hurt.flash{animation:.45s ease-out hurt}@keyframes hurt{0%{opacity:1}to{opacity:0}}#toast{z-index:7;text-align:center;pointer-events:none;opacity:0;transition:opacity .6s,transform .6s;position:fixed;top:11vh;left:50%;transform:translate(-50%,-8px)}#toast.visible{opacity:1;transform:translate(-50%)}.toast-title{font-family:var(--title);letter-spacing:.35em;text-transform:uppercase;color:var(--gold);text-shadow:0 0 18px #f0a05080;font-size:15px;font-weight:600}.toast-sub{max-width:min(760px,92vw);font-family:var(--serif);color:var(--ink);text-shadow:0 1px 8px #000c;margin-top:6px;font-size:19px;font-style:italic}#location{z-index:7;text-align:center;pointer-events:none;opacity:0;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed;top:16vh;left:50%;transform:translate(-50%)}#location.visible{animation:4.2s ease-in-out forwards locationIn}.location-line{background:linear-gradient(90deg, transparent, var(--gold), transparent);width:0;height:1px;animation:4.2s ease-out forwards locationLine}.location-title{font-family:var(--title);letter-spacing:.32em;text-transform:uppercase;color:var(--ink);text-shadow:0 2px 14px #000000d9;padding-left:.32em;font-size:clamp(22px,3vw,34px);font-weight:500}.location-sub{font-family:var(--serif);color:var(--ink-dim);text-shadow:0 1px 8px #000c;font-size:17px;font-style:italic}@keyframes locationIn{0%{opacity:0;transform:translate(-50%,6px)}15%{opacity:1;transform:translate(-50%)}80%{opacity:1}to{opacity:0}}@keyframes locationLine{0%{width:0}30%{width:min(360px,70vw)}to{width:min(360px,70vw)}}#objective{z-index:6;pointer-events:none;opacity:0;max-width:min(360px,60vw);transition:opacity .4s,transform .4s;position:fixed;top:max(16px,3vh);left:max(16px,2.5vw);transform:translate(-6px)}#objective.visible{opacity:1;transform:none}.objective-label{font-family:var(--title);letter-spacing:.35em;text-transform:uppercase;color:var(--gold);font-size:10px;font-weight:600}.objective-text{font-family:var(--serif);color:var(--ink);text-shadow:0 1px 8px #000c;margin-top:4px;font-size:19px;font-style:italic}#game-messages{z-index:7;pointer-events:none;flex-direction:column;align-items:center;gap:12px;width:min(760px,100vw - 48px);display:flex;position:fixed;bottom:max(16vh,128px);left:50%;transform:translate(-50%)}body:has(#card.visible,#power-unlock.visible,#memory-sacrifice.visible,#choice.visible,#pause.visible,#menu.visible,#ending.visible) :is(#game-messages,#prompt,#hint){visibility:hidden}#hint{z-index:7;box-sizing:border-box;max-width:min(320px,42vw);color:var(--ink);border-left:2px solid var(--gold);pointer-events:none;opacity:0;visibility:hidden;background:linear-gradient(90deg,#080b12d1,#080b128c);border-radius:0 4px 4px 0;padding:10px 16px 12px;font-size:14.5px;line-height:1.55;transition:opacity .35s,transform .35s,visibility 0s .35s;position:fixed;top:40vh;left:max(16px,2.5vw);transform:translate(-10px)}#hint.visible{opacity:1;visibility:visible;transition:opacity .35s,transform .35s,visibility;transform:none}#hint .hint-label{font-family:var(--title);letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin-bottom:4px;font-size:10px;font-weight:600}#hint p{margin:0}#hint p+p{margin-top:6px}#hint .key{vertical-align:1px;margin:0 2px}#card{z-index:18;opacity:0;visibility:hidden;cursor:pointer;background:radial-gradient(#06080ee6,#020306f7);flex-direction:column;justify-content:center;align-items:center;padding:0 16px;transition:opacity .7s,visibility 0s linear .7s;display:flex;position:fixed;inset:0}#card.visible{opacity:1;visibility:visible;transition:opacity .7s,visibility}.card-inner{text-align:center;max-width:620px;animation:1.2s ease-out cardIn}.card-title{font-family:var(--title);letter-spacing:.3em;text-transform:uppercase;color:var(--gold);margin:0 0 30px;font-size:clamp(18px,2.4vw,24px);font-weight:600}.card-inner p{font-family:var(--serif);color:var(--ink);margin:0 0 18px;font-size:clamp(19px,2vw,23px);line-height:1.6}.card-inner p em{color:var(--ink-dim)}.card-glyph{vertical-align:middle;color:#d8c497;width:3em;height:3em;margin:0 .5em;display:inline-block}.card-inner .key{font-family:var(--sans);font-size:13px}.card-continue{letter-spacing:.25em;text-transform:uppercase;color:var(--ink-faint);opacity:0;font-size:11px;transition:opacity .6s;position:absolute;bottom:7vh}#card.ready .card-continue{opacity:1;animation:2.4s ease-in-out infinite breathe}@keyframes cardIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.card-inner.has-paper{width:100%;max-width:640px}.paper-defs{width:0;height:0;position:absolute}.paper-wrap{max-width:540px;transform:rotate(var(--tilt));filter:drop-shadow(0 18px 26px #0009)drop-shadow(0 2px 3px #00000080);margin:6px auto 26px;animation:1.1s cubic-bezier(.2,.8,.3,1) paperIn}@keyframes paperIn{0%{opacity:0;transform:translateY(26px) rotate(calc(var(--tilt) * 3))}to{opacity:1;transform:rotate(var(--tilt))}}.paper{--paper-ink:#2f2217;text-align:left;background-color:#d9c8a1;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='220' height='220'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.32  0 0 0 0 0.22  0 0 0 0 0.1  0 0 0 0.22 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>"),radial-gradient(circle at 78% 72%,#7a4e2233,#0000 16%),radial-gradient(circle at 18% 86%,#7a4e2221,#0000 12%),radial-gradient(at 35% 25%,#fff8e159,#0000 60%),radial-gradient(#0000 50%,#5c3c1861 100%);padding:46px 46px 34px;position:relative}.card-inner .paper p{color:var(--paper-ink);margin:0 0 14px;font-family:La Belle Aurore,Segoe Script,cursive;font-size:clamp(21px,2.1vw,25px);line-height:1.55}.card-inner .paper p em{color:var(--paper-ink);font-style:normal}.paper p:has(>.card-glyph){text-align:center;margin:4px 0 18px}.paper .card-glyph{color:var(--paper-ink);filter:url(#paper-ink);opacity:.88;width:3.2em;height:3.2em;margin:0 .6em}.paper .card-glyph *{stroke-width:7px}.paper .card-fragment{opacity:.7}.paper-page:after{content:"";pointer-events:none;background:linear-gradient(118deg,#0000 48.6%,#fff5dc4d 49.4%,#462d122e 50.2%,#0000 51.5%);position:absolute;inset:0}.paper-carnet{background-color:#ddd0ad;background-image:radial-gradient(circle at 20px 28px,#1e160ebf 5px,#0000 6px),linear-gradient(90deg,#0000 54px,#a0342873 54px 56px,#0000 56px),repeating-linear-gradient(#0000 0 37px,#465a7847 37px 38px),radial-gradient(#0000 55%,#5c3c1852 100%);background-repeat:repeat-y,no-repeat,repeat,no-repeat;background-size:100% 70px,auto,auto,auto;padding-left:74px}.paper-carnet p{line-height:38px}.paper-carte{background-color:#d6cba9;padding-top:196px}.paper-carte:before{content:"";opacity:.75;background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 480 150'><g fill='none' stroke='%235b4a33' stroke-width='1.2' opacity='0.55'><path d='M0 40 C120 30 200 60 480 45'/><path d='M0 95 C140 110 260 80 480 100'/><path d='M60 0 L90 150'/><path d='M180 0 C170 60 200 100 190 150'/><path d='M300 0 L330 150'/><path d='M410 0 C400 70 430 110 420 150'/><path d='M0 130 L480 120'/></g><path d='M0 70 C110 62 230 84 480 68' stroke='%237d93a3' stroke-width='9' fill='none' opacity='0.45'/><path d='M70 120 C120 105 150 70 200 66 S300 40 395 32' fill='none' stroke='%238a2a1f' stroke-width='3' stroke-dasharray='8 6'/><circle cx='70' cy='120' r='5' fill='%232f2217'/><g stroke='%238a2a1f' stroke-width='3.5'><path d='M386 23 L404 41 M404 23 L386 41'/></g><circle cx='395' cy='32' r='16' fill='none' stroke='%238a2a1f' stroke-width='1.5'/></svg>") 50%/contain no-repeat;height:160px;position:absolute;inset:22px 26px auto}.paper-carte:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000 49.7%,#46301438 50%,#fff8e640 50.3%,#0000 50.6%),linear-gradient(#0000 49.7%,#46301433 50%,#fff8e638 50.3%,#0000 50.6%);position:absolute;inset:0}.paper-lettre:after{content:"";pointer-events:none;background:linear-gradient(#0000 33%,#46301438 33.3%,#fff8e640 33.6%,#0000 34%),linear-gradient(#0000 66.3%,#46301438 66.6%,#fff8e640 66.9%,#0000 67.3%);position:absolute;inset:0}@media (width<=560px){.paper{padding:38px 24px 26px}.paper-carnet{padding-left:60px}}@media (prefers-reduced-motion:reduce){.paper-wrap{animation:none}}#power-unlock{--unlock-accent:#e9b679;--unlock-glow:#e3793121;z-index:19;background:radial-gradient(ellipse at 32% 48%, var(--unlock-glow), transparent 40%), linear-gradient(115deg, #040406f2, #050508e0 56%, #040406f2);-webkit-backdrop-filter:blur(6px)saturate(.45);opacity:0;visibility:hidden;place-items:center;padding:30px 22px;transition:opacity .45s,visibility 0s linear .45s;display:grid;position:fixed;inset:0;overflow:auto}#power-unlock[data-family=echo]{--unlock-accent:#cdb3f2;--unlock-glow:#8453dc24}#power-unlock.visible{opacity:1;visibility:visible;transition:opacity .45s,visibility}.unlock-defs{width:0;height:0;position:absolute}.unlock-frame{border:1px solid color-mix(in srgb, var(--unlock-accent), transparent 72%);width:min(930px,100%);box-shadow:0 30px 100px #0009, 0 0 40px var(--unlock-glow), inset 0 0 0 5px #ffffff04;background:linear-gradient(160deg,#110e0df7,#09090bf5);grid-template-columns:minmax(210px,300px) minmax(0,1fr);align-items:center;gap:18px 48px;padding:38px clamp(24px,4vw,60px) 30px;animation:.7s ease-out both unlockAppear;display:grid}.unlock-heading{color:var(--unlock-accent);font:600 11px var(--title);letter-spacing:.35em;text-transform:uppercase;white-space:nowrap;grid-column:1/-1;align-items:center;gap:18px;margin-bottom:8px;display:flex}.unlock-rule{background:linear-gradient(90deg, transparent, var(--unlock-accent));opacity:.5;flex:1;height:1px}.unlock-rule:last-child{transform:rotate(180deg)}.unlock-emblem{aspect-ratio:1;border:1px solid color-mix(in srgb, var(--unlock-accent), transparent 55%);width:min(260px,100%);box-shadow:inset 0 2px 10px #000c, inset 0 -1px 0 #ffdcaa0f, 0 0 30px var(--unlock-glow);background:radial-gradient(circle at 50% 42%,#1d1915 0%,#110f0d 62%,#0b0a09 100%);border-radius:50%;place-items:center;margin:0 auto;display:grid;position:relative}.unlock-emblem:before,.unlock-emblem:after{content:"";border:1px solid color-mix(in srgb, var(--unlock-accent), transparent 72%);border-radius:50%;position:absolute}.unlock-emblem:before{inset:10px}.unlock-emblem:after{border-color:color-mix(in srgb, var(--unlock-accent), transparent 82%);inset:34px}.unlock-emblem-inner{color:var(--unlock-accent);width:112px;height:112px;filter:url(#unlock-engrave) drop-shadow(0 -1px 0 #000000e6) drop-shadow(0 1px 0 #ffe1af38) drop-shadow(0 0 9px var(--unlock-glow));animation:3.4s ease-in-out infinite unlockPulse}.unlock-emblem-inner svg{stroke-width:1.5px;width:100%;height:100%}.unlock-copy h2{color:var(--ink);font:600 clamp(31px, 4vw, 52px)/1.1 var(--title);letter-spacing:.055em;margin:0 0 15px}.unlock-description{max-width:460px;color:var(--ink-dim);font:24px/1.3 var(--serif);margin:0 0 28px}.unlock-use{border-top:1px solid color-mix(in srgb, var(--unlock-accent), transparent 75%);border-bottom:1px solid color-mix(in srgb, var(--unlock-accent), transparent 88%);align-items:center;gap:18px;padding:16px 0;display:flex}.unlock-control{border:1px solid color-mix(in srgb, var(--unlock-accent), transparent 35%);min-width:74px;color:var(--unlock-accent);text-align:center;font:600 12px var(--sans);letter-spacing:.04em;background:#ffffff08;flex:none;padding:8px 12px}.unlock-use p{color:var(--ink);font:21px/1.4 var(--serif);margin:0}.unlock-cost{color:#e8b4c5;font:italic 19px/1.4 var(--serif);border-left:2px solid #c98aa2;margin:13px 0 0;padding-left:14px}.unlock-pact{background:#09080c80;border:1px solid #4d3d52;margin-top:17px;padding:14px 17px}.unlock-pact h3{color:var(--unlock-accent);font:600 12px var(--sans);letter-spacing:.08em;margin:0 0 10px}.unlock-pact dl{grid-template-columns:1fr 1fr;gap:10px 20px;margin:0;display:grid}.unlock-pact dl div{flex-direction:column;gap:3px;display:flex}.unlock-pact dt{color:var(--ink-dim);font:11px/1.4 var(--sans)}.unlock-pact dd{color:var(--ink);font:600 19px var(--sans);margin:0}.unlock-pact p{color:#e8b4c5;font:12px/1.45 var(--sans);margin:12px 0 0}.unlock-continue{text-align:center;color:var(--ink-faint);font:11px var(--sans);letter-spacing:.25em;text-transform:uppercase;opacity:0;grid-column:1/-1;justify-self:center;margin-top:14px;transition:opacity .6s}#power-unlock.ready .unlock-continue{opacity:1;animation:2.4s ease-in-out infinite breathe}@keyframes unlockAppear{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:none}}@keyframes unlockPulse{50%{opacity:.82}}@media (height<=650px) and (width>=681px){#power-unlock{padding:12px}.unlock-frame{grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:9px 25px;padding:18px 28px}.unlock-heading{margin-bottom:0}.unlock-emblem{width:min(185px,100%);box-shadow:inset 0 2px 10px #000c, 0 0 20px var(--unlock-glow)}.unlock-emblem-inner{width:70px;height:70px}.unlock-copy h2{font-size:34px}.unlock-description{margin-bottom:16px;font-size:20px}.unlock-use{padding:12px 0}.unlock-continue{margin-top:0}}@media (width<=680px){#power-unlock{padding:12px}.unlock-frame{grid-template-columns:1fr;gap:15px;padding:20px}.unlock-emblem{width:120px;box-shadow:inset 0 2px 10px #000c, 0 0 20px var(--unlock-glow)}.unlock-emblem:before{inset:9px}.unlock-emblem:after{inset:20px}.unlock-emblem-inner{width:54px;height:54px}.unlock-copy h2{font-size:30px}.unlock-description{margin-bottom:16px;font-size:20px}.unlock-continue{margin-top:0}}@media (prefers-reduced-motion:reduce){.unlock-frame,.unlock-emblem-inner{animation:none}}#whisper,.choice-whisper,.ending-whisper{font-family:var(--serif);color:#f2b8d8;text-shadow:0 0 14px #be286ebf,0 0 2px #000000e6;font-style:italic}#whisper{z-index:8;text-align:center;letter-spacing:.02em;pointer-events:none;opacity:0;filter:blur(3px);max-width:min(680px,90vw);font-size:clamp(19px,2.1vw,25px);transition:opacity 1.2s,filter 1.2s;position:fixed;top:22vh;left:50%;transform:translate(-50%)}#whisper.visible{opacity:1;filter:blur()}#whisper span,.choice-whisper span{animation:3.2s ease-in-out infinite whisperShiver;display:inline-block}@keyframes whisperShiver{0%,to{letter-spacing:.02em;transform:translate(0)}25%{letter-spacing:.035em;transform:translate(.6px,-.4px)}50%{transform:translate(-.5px,.3px)}75%{letter-spacing:.01em;transform:translate(.3px,.5px)}}.choice-whisper{opacity:0;text-align:center;min-height:1.6em;font-size:clamp(20px,2.3vw,27px);transition:opacity .6s,color .6s}.choice-whisper.visible{opacity:1}.choice-whisper[data-mood=angry]{color:#ffa3b0;text-shadow:0 0 16px #ff283ccc}.choice-whisper[data-mood=pleased]{color:#efd2ff;text-shadow:0 0 16px #a03cffcc}.ending-whisper{opacity:0;margin-top:18px;font-size:18px;animation:2s ease-out 5s forwards cardIn}#pact{z-index:9;pointer-events:none;opacity:0;background:radial-gradient(#e6d2ffd9,#783cdc80 45%,#14002800 75%);position:fixed;inset:0}#pact.flash{animation:1.1s ease-out pactFlash}@keyframes pactFlash{0%{opacity:1}to{opacity:0}}[data-gauge=health].pact .bar{animation:1.2s ease-out pactCrack}@keyframes pactCrack{0%{transform:scaleY(2.4);box-shadow:0 0 0 1px #fff,0 0 18px #c9a2ff}30%{transform:translate(-3px)scaleY(1.6)}60%{transform:translate(3px)}to{transform:none;box-shadow:0 0 0 1px #00000040}}#choice{z-index:19;opacity:0;visibility:hidden;background:radial-gradient(#2814468c,#030208eb);flex-direction:column;justify-content:center;align-items:center;gap:42px;padding:0 16px;transition:opacity .8s,visibility 0s linear .8s;display:flex;position:fixed;inset:0}#choice.visible{opacity:1;visibility:visible;transition:opacity .8s,visibility}.choice-question{font-family:var(--serif);color:var(--ink);text-align:center;font-size:clamp(22px,2.6vw,30px);font-style:italic}.choice-options{flex-wrap:wrap;justify-content:center;gap:28px;display:flex}.choice-option{width:min(300px,86vw);font-family:var(--title);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);background:#0a061480;border:1px solid #c8aaff40;border-radius:6px;padding:22px 20px;font-size:17px;transition:color .3s,border-color .3s,box-shadow .3s,transform .3s}.choice-option span{font-family:var(--serif);letter-spacing:0;text-transform:none;color:var(--ink-faint);margin-top:10px;font-size:16px;font-style:italic;display:block}.choice-option:hover{color:var(--ink);border-color:#dcbeffcc;transform:translateY(-2px);box-shadow:0 0 30px #a06eff73}.choice-reaction{min-height:1.6em;font-family:var(--serif);color:#d9c2ff;opacity:0;text-align:center;font-size:20px;font-style:italic;transition:opacity .6s .2s}#choice.reacted .choice-reaction{opacity:1}#choice.reacted .choice-options{pointer-events:none;animation:.6s ease-in-out 2 choiceShake}#choice.reacted .choice-option{opacity:.35}@keyframes choiceShake{0%,to{transform:translate(0)}20%{transform:translate(-10px)rotate(-.6deg)}40%{transform:translate(9px)rotate(.5deg)}60%{transform:translate(-6px)}80%{transform:translate(4px)}}#ending{z-index:26;background:#000;display:none;position:fixed;inset:0}#ending.visible{justify-content:center;align-items:center;display:flex}.ending-flash{pointer-events:none;background:#f4eeff;animation:2.8s ease-out forwards endingFlash;position:absolute;inset:0}@keyframes endingFlash{0%{opacity:1}35%{opacity:1;background:#d9c8ff}to{opacity:0}}.ending-content{text-align:center;opacity:0;flex-direction:column;align-items:center;gap:18px;padding:0 16px;animation:1.6s ease-out 2.6s forwards cardIn;display:flex}.ending-title{font-family:var(--title);letter-spacing:.3em;color:var(--ink);padding-left:.3em;font-size:clamp(40px,7vw,76px);font-weight:600}.ending-tagline{font-family:var(--serif);color:var(--ink);font-size:clamp(20px,2.4vw,28px);font-style:italic}.ending-note{letter-spacing:.06em;max-width:520px;color:var(--ink-faint);font-size:13px}.ending-buttons{gap:28px;margin-top:28px;display:flex}.ending-buttons button{font-family:var(--title);letter-spacing:.15em;color:var(--ink-dim);border-bottom:1px solid #0000;padding-bottom:4px;font-size:18px;transition:color .2s,border-color .2s}.ending-buttons button:hover{color:var(--gold);border-color:var(--gold)}#death{z-index:15;pointer-events:none;place-items:center;display:grid;position:fixed;inset:0}#death:before,#death:after{content:"";opacity:0;position:absolute;inset:0}#death:before{background:radial-gradient(#eaf4ff 0%,#b9d3f0 70%,#8fb0d8 100%);transition:opacity .8s}#death:after{background:#000;transition:opacity .8s}#death.fading:before{opacity:1;transition:opacity 1.2s ease-in}#death.black:after{opacity:1;transition:opacity .35s ease-in}.death-text{z-index:1;font-family:var(--title);letter-spacing:.3em;color:var(--ink);opacity:0;font-size:clamp(22px,3.5vw,36px);transition:opacity .6s;position:relative}#death.black .death-text{opacity:.85;transition-delay:.3s}#prompt{z-index:7;box-sizing:border-box;white-space:nowrap;pointer-events:none;background:#080b12c7;border:1px solid #f0c77a73;border-radius:4px;flex-direction:column;align-items:center;gap:6px;padding:6px 12px 7px;display:none;position:fixed;top:60vh;left:50%;transform:translate(-50%,-100%);box-shadow:0 2px 14px #00000080}#prompt.docked{top:auto;bottom:22vh;transform:translate(-50%)}#prompt.visible{display:flex}#prompt .row{letter-spacing:.04em;color:var(--ink);align-items:center;gap:8px;font-size:14px;line-height:1.4;display:flex}#prompt .key{flex-shrink:0}#prompt .progress{background:#ffffff26;border-radius:2px;width:100%;min-width:120px;height:3px;overflow:hidden}#prompt .progress>div{background:var(--gold);width:0;height:100%;box-shadow:0 0 8px var(--gold)}#fps{z-index:60;color:#9f9;background:#00000080;padding:2px 6px;font:12px monospace;display:none;position:fixed;top:8px;left:8px}@keyframes breathe{50%{opacity:.45}}@media (width<=640px){.menu-side{background:#05070ccc}nav button{font-size:23px}}#dimension-transition{z-index:24;pointer-events:none;--frame:0;--warp:0;--flash:0;display:none;position:fixed;inset:0}#observatory-transition{z-index:24;pointer-events:none;--black:0;background:rgba(8, 10, 12, var(--black));box-sizing:border-box;border-block:4vh solid #080a0c;display:none;position:fixed;inset:0}#observatory-transition.visible{display:block}#dimension-transition.visible{background:rgba(209, 239, 255, var(--flash));display:block}#dimension-transition:before{content:"";border-block:calc(var(--frame) * 6vh) solid #08060e;background:radial-gradient(ellipse, transparent 38%, rgba(16, 48, 88, calc(var(--warp) * .32)) 100%);position:absolute;inset:0}#dimension-transition:after{content:"";opacity:calc(var(--warp) * .14);transform:translateX(var(--slit));background:repeating-linear-gradient(0deg,#0000 0 37px,#bd9dec 38px 39px,#0000 40px 90px);position:absolute;inset:0}#memory-trace{color:#b8aaca;max-width:245px;font-family:var(--serif);text-align:right;text-shadow:0 2px 5px #000;z-index:6;pointer-events:none;font-size:15px;font-style:italic;display:none;position:fixed;top:28px;right:30px}#memory-trace.visible{display:block}.ending-result{color:#c7c1d2;font-family:var(--serif);max-width:600px;font-size:21px;line-height:1.45}.ending-memory{color:#bfaecc;border-top:1px solid #6b5c7b;max-width:560px;padding-top:16px;font-size:13px;line-height:1.6}#ending[data-path=seal] .ending-flash{display:none}#ending[data-path=seal] .ending-content{animation-delay:.3s}body[data-game-paused] #whisper *,body[data-game-paused] #choice *{animation-play-state:paused}#sanctuary-transfer{z-index:25;pointer-events:none;background:0 0;display:none;position:fixed;inset:0}#sanctuary-transfer.visible{place-items:center;display:grid}#sanctuary-transfer span{color:#e3d2b4;font-family:var(--title);letter-spacing:.3em;text-shadow:0 0 18px #000,0 0 4px #000;font-size:17px}#sanctuary-prompt{width:max-content;max-width:85vw;color:var(--ink);font-family:var(--sans);text-align:center;z-index:7;pointer-events:none;background:#0a0916bf;border:1px solid #6e647b66;padding:12px 20px;font-size:14px;display:none;position:fixed;bottom:50px;left:50%;transform:translate(-50%)}#sanctuary-prompt.visible{display:block}#echo-status{box-sizing:border-box;color:#c4d4d8;width:250px;font-family:var(--sans);z-index:7;pointer-events:none;text-shadow:0 1px 3px #000;background:#080d18ba;border-left:1px solid #8abcc07a;padding:12px 14px;font-size:11px;display:none;position:fixed;top:24px;right:24px}#echo-status.visible{display:block}.echo-status-heading{font-family:var(--title);letter-spacing:.22em;align-items:center;gap:9px;display:flex}.echo-glyph{color:#9ccfdf;font-size:24px}.echo-status-state{justify-content:space-between;margin:5px 0;display:flex}.echo-stability-track{background:#ffffff15;height:3px}.echo-stability-track i{height:100%;width:var(--stability);background:#97c5d3;transition:width .8s;display:block}.echo-power-label{color:#c9bda7;margin:10px 0}.echo-memory-ledger{gap:6px;display:grid}.echo-memory-ledger span{border-top:1px solid #ffffff14;padding-top:5px}.echo-memory-ledger [data-memory=unoffered]{opacity:.5}.echo-memory-ledger [data-memory=lost]{color:#d1a3bd}.echo-memory-ledger small{color:#b9b7b4;margin-top:3px;font-size:10px;line-height:1.4;display:block}#echo-status[data-state=unstable],#echo-status[data-state=fractured]{border-color:#c078b2}#echo-status[data-state=unstable] .echo-glyph{color:#c5a0d8;animation:3s step-end infinite echo-flicker}#echo-status[data-state=fractured] .echo-glyph{color:#df8eb4;animation:1.4s step-end infinite echo-flicker}#echo-status[data-state=fractured] .echo-stability-track i{background:#df8eb4}@keyframes echo-flicker{0%,88%,95%,to{opacity:1;transform:translate(0)}90%,96%{opacity:.35;transform:translate(2px)}}body[data-game-paused] #echo-status *{transition:none;animation-play-state:paused!important}@media (width<=700px){#echo-status{width:190px;padding:8px;font-size:10px;top:12px;right:10px}.echo-memory-ledger small{font-size:9px}}#memory-sacrifice{z-index:20;color:var(--ink);background:linear-gradient(90deg,#070913d9,#08091466 60%,#08091422);display:none;position:fixed;inset:0;overflow:auto}#memory-sacrifice.visible{place-items:safe center start;display:grid}.sacrifice-frame{box-sizing:border-box;text-align:left;background:radial-gradient(at 0 0,#28374422,#0000 65%),#0b0e17ed;border:1px solid #9c8c7345;border-top-color:#c5b28e80;border-radius:6px;width:min(580px,48vw);margin:24px max(2.5vw,16px);padding:22px 26px;position:relative;box-shadow:0 16px 60px #0005}.sacrifice-frame:focus{outline:none}.sacrifice-eyebrow{font:10px var(--title);letter-spacing:.2em;color:#b8b0a4;align-items:center;gap:10px;display:flex}.sacrifice-emblem{color:#c8b99d;width:22px;height:22px;display:block}.sacrifice-emblem svg,.memory-emblem svg,.memory-route-emblem svg,.choice-emblem svg{width:100%;height:100%;display:block}.sacrifice-frame h2{font:500 clamp(23px, 2.15vw, 30px)/1.2 var(--title);color:#f0e7d5;margin:12px 0 14px}.sacrifice-dialogue{border-left:1px solid #8b7d6359;padding-left:14px}.sacrifice-speaker{font:10px/1.2 var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#bbae99;display:block}.sacrifice-frame p{margin:8px 0}.sacrifice-frame .sacrifice-intro{font:italic 18px/1.4 var(--serif);color:#d4cdbf;margin-bottom:0}.sacrifice-frame .sacrifice-greeting{font:italic 16px/1.4 var(--serif);color:#baa8c6}.memory-fragment{background:linear-gradient(90deg,#293e482b,#111b241a);border:0;border-left:2px solid #9ec6cd77;margin:16px 0;padding:12px 16px}.memory-heading{align-items:center;gap:11px;display:flex}.memory-emblem{color:#aeced3;flex:0 0 26px;width:26px;height:30px}.memory-heading>div{line-height:1}.memory-heading [data-memory-label]{font:9px var(--sans);letter-spacing:.15em;text-transform:uppercase;color:#b1c1c5;display:block}.memory-heading h3{font:500 15px/1.2 var(--title);color:#e0e5de;margin:3px 0 0}.memory-fragment p{font:17px/1.4 var(--serif);color:#d1d9d8;margin:8px 0 0}.sacrifice-section-title{font:10px var(--sans);letter-spacing:.16em;text-transform:uppercase;color:#b8ad99;margin:0 0 10px}.sacrifice-options{grid-template-columns:1fr 1fr;gap:12px;display:grid}.sacrifice-options button{--route:#aed6dc;text-align:left;min-width:0;color:var(--ink);cursor:pointer;background:linear-gradient(155deg,#1e323e66,#101721);border:1px solid #809ba44a;border-radius:4px;flex-direction:column;padding:14px;transition:border-color .15s,background .15s;display:flex}.sacrifice-options [data-sacrifice=accept]{--route:#d7accc;background:linear-gradient(155deg,#37233a66,#181320);border-color:#b789ab50}.memory-route-heading{width:100%;color:var(--route);align-items:center;gap:7px;display:flex}.memory-route-emblem{flex:0 0 20px;width:20px;height:22px}.memory-route-label{font:9px/1.4 var(--sans);letter-spacing:.06em;text-transform:uppercase}.memory-route-check{font:16px var(--sans);visibility:hidden;margin-left:auto}.sacrifice-options .memory-route-name{font:600 22px/1.2 var(--serif);color:#eee9e0;margin:10px 0 12px}.memory-benefits{gap:9px;width:100%;margin-bottom:14px;display:grid}.memory-benefit{font:12px/1.45 var(--sans);color:#ccd1d5;grid-template-columns:1fr auto;align-items:center;gap:10px;display:grid}.memory-benefit b{font:500 18px/1.2 var(--sans);color:var(--route,#c4d9de);font-variant-numeric:tabular-nums;white-space:nowrap}.memory-benefit:first-child b{font-size:23px}.memory-route-price{box-sizing:border-box;width:100%;color:var(--route);font:11px var(--sans);border-top:1px solid #ffffff15;margin-top:auto;padding-top:11px;display:block}.sacrifice-options button:hover{border-color:var(--route)}.sacrifice-options button[aria-checked=true]{border-color:var(--route);background:linear-gradient(155deg,#284852b8,#152431);box-shadow:inset 0 0 0 1px #aed6dc26}.sacrifice-options [data-sacrifice=accept][aria-checked=true]{background:linear-gradient(155deg,#533349a6,#251a30);box-shadow:inset 0 0 0 1px #d7accc26}.sacrifice-options [aria-checked=true] .memory-route-check{visibility:visible}.sacrifice-options button:focus-visible,.sacrifice-actions button:focus-visible,.sacrifice-rules summary:focus-visible,.choice-option:focus-visible{outline-offset:4px;outline:2px solid #e2d2b0}.sacrifice-preview{border-left:2px solid #938d8159;min-height:46px;margin:18px 0 0;padding:0 0 0 12px}.sacrifice-preview strong{font:10px var(--sans);letter-spacing:.08em;color:#c4b99f}.sacrifice-frame .sacrifice-preview p{font:12px/1.55 var(--sans);color:#d9d8d1;margin:6px 0 0}#memory-sacrifice[data-preview=clear] .sacrifice-preview{border-color:#aed6dc}#memory-sacrifice[data-preview=dark] .sacrifice-preview{border-color:#d7accc}.sacrifice-actions{margin-top:18px;display:flex}.sacrifice-actions button{color:#17181c;font:600 12px var(--title);cursor:pointer;background:linear-gradient(110deg,#b6a585,#d8c5a0);border:1px solid #c9b895a6;border-radius:3px;flex:1;padding:13px 18px}.sacrifice-actions button:hover:enabled{background:#e2d2b1}.sacrifice-actions button:disabled{color:#beb7a8;cursor:default;background:#201f24;border-color:#756d5b59}#memory-sacrifice[data-preview=dark] .sacrifice-actions button:enabled{background:linear-gradient(110deg,#baa2b4,#d9bccb);border-color:#d7accc}.sacrifice-footer{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-top:12px;display:flex}.sacrifice-rules{color:#b1aa9d;font:11px/1.5 var(--sans)}.sacrifice-rules summary{cursor:pointer;width:fit-content}.sacrifice-frame .sacrifice-rules p{font:12px/1.55 var(--sans);color:#c3beb5;margin-top:12px}.sacrifice-rules[open]{flex-basis:100%}.sacrifice-keyboard{font:10px/1.4 var(--sans);color:#b1b2bc}.sacrifice-frame .sacrifice-voice{font:italic 18px/1.4 var(--serif);color:#d2baca;margin:16px 0 0}.sacrifice-frame .sacrifice-price{gap:12px;margin:20px 0;display:grid}.sacrifice-price[hidden],.sacrifice-options[hidden],.sacrifice-preview[hidden],#memory-sacrifice:is([data-phase=offer],[data-phase=preview]) .sacrifice-voice:empty,#memory-sacrifice[data-result=lost] .memory-fragment p{display:none}#memory-sacrifice[data-result=lost] .memory-fragment{border-color:#b789ab}#memory-sacrifice[data-phase=dissolve]{background:linear-gradient(90deg,#08091444,#0000 50%);align-items:end}#memory-sacrifice[data-phase=dissolve] .sacrifice-frame{background:#0b0e1799;width:min(490px,48vw)}#memory-sacrifice[data-phase=dissolve] :is(.sacrifice-dialogue,.memory-fragment,.sacrifice-section-title,.sacrifice-footer,.sacrifice-actions),#memory-sacrifice[data-phase=receipt] :is(.sacrifice-dialogue,.sacrifice-section-title,.sacrifice-footer){display:none}#memory-sacrifice[data-phase=dissolve] .sacrifice-frame h2{margin-bottom:10px;font-size:22px}@media (width<=1050px){.sacrifice-frame{width:min(540px,62vw);padding:20px}}@media (width<=650px){.sacrifice-frame,#memory-sacrifice[data-phase=dissolve] .sacrifice-frame{width:calc(100vw - 28px);margin:14px;padding:18px}}@media (width<=450px){.sacrifice-options{grid-template-columns:1fr}.sacrifice-options .memory-route-name{margin-bottom:10px}}@media (prefers-reduced-motion:reduce){.sacrifice-options button{transition:none}}body[data-game-paused] #memory-sacrifice *{transition:none}#choice{background:radial-gradient(#181321cc,#070911e8)}.choice-question{color:#eee4cf;max-width:700px;line-height:1.35}.choice-option{text-align:left;letter-spacing:normal;background:linear-gradient(155deg,#1e323e99,#101721);border-color:#8ea8af59;border-radius:5px;width:min(330px,80vw);padding:26px}.choice-option[data-path=open]{background:linear-gradient(155deg,#37233a99,#181320);border-color:#ba91b15e}.choice-option .choice-emblem{color:#aed6dc;width:32px;height:36px;margin:0 0 18px}.choice-option[data-path=open] .choice-emblem{color:#d7accc}.choice-option b{font:500 21px var(--title);color:#ede4d3}.choice-option .choice-detail{font:15px/1.6 var(--sans);color:#c8c8d2;margin-top:14px}.choice-option:hover{border-color:#c9b895;transform:none;box-shadow:0 6px 24px #0004}@media (height<=860px){.sacrifice-frame{margin-block:14px}}#story-subtitle{text-align:center;max-width:100%;color:var(--ink);pointer-events:none;display:none}#story-subtitle.visible{animation:.35s ease-out subtitleIn;display:block}#story-subtitle strong{font:600 11px var(--title);letter-spacing:.26em;text-transform:uppercase;color:#d8c497;text-shadow:0 1px 6px #000;margin-bottom:4px;display:block}#story-subtitle p{font:23px/1.4 var(--serif);color:#f3ede2;text-shadow:0 0 2px #000,0 2px 6px #000,0 0 18px #000000e6;margin:0}#story-subtitle.thought p{font-style:italic}@keyframes subtitleIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@media (height<=640px){#game-messages{width:min(640px,100vw - 32px);bottom:112px}#story-subtitle p{font-size:18px}#hint{font-size:13.5px;top:34vh}#prompt .row{font-size:13px}}@media (prefers-reduced-motion:reduce){#story-subtitle{transition:none}}body[data-game-paused] #story-subtitle{transition:none}#echo-reality-ring{--beat:0;width:64px;height:64px;transform:translate(-50%, -50%) scale(calc(1 + var(--beat) * .05));color:#80bed1;opacity:calc(.22 + var(--beat) * .25);pointer-events:none;z-index:6;display:none;position:fixed;top:50%;left:50%}#echo-reality-ring.visible{display:block}#echo-reality-ring svg{width:100%;height:100%;overflow:visible}#echo-reality-ring circle{fill:none;stroke:currentColor;stroke-width:1px;stroke-dasharray:25 14;transform-origin:50%;transform:rotate(-90deg)}#echo-reality-ring[data-state=unstable]{color:#bc90c4}#echo-reality-ring[data-state=fractured]{color:#dc6688}#echo-reality-ring[data-state=fractured] circle{stroke-dasharray:9 5 20 7}.echo-form-label{color:#a8b9c0;margin-top:6px;font-size:10px}#echo-status[data-mode=pendant] .echo-glyph{transform:scaleY(.45)}#echo-status[data-mode=held] .echo-glyph{transform:rotate(90deg)}@media (prefers-reduced-motion:reduce){#echo-reality-ring{transform:translate(-50%,-50%)}}#boiler-transition{pointer-events:none;z-index:24;box-sizing:border-box;border-block:3vh solid #080a0c;display:none;position:fixed;inset:0}#boiler-transition.visible{display:block}#shard-transition{pointer-events:none;z-index:24;box-sizing:border-box;border-block:3vh solid #080a0c;display:none;position:fixed;inset:0}#shard-transition.visible{display:block}#choice{background:radial-gradient(at 50% 20%,#17242dbd,#080b13f5);gap:0;padding:24px;overflow:auto}.theatre-choice-panel{background:linear-gradient(140deg,#16212bec,#11121dec);border:1px solid #a6bac032;border-radius:12px;width:min(920px,100%);margin:auto;padding:28px;box-shadow:0 24px 90px #0009}.theatre-kicker{font:500 11px/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:#b8c4c9}.theatre-choice-panel h1{font:500 clamp(25px,3vw,36px)/1.2 var(--title);color:var(--ink);margin:8px 0 20px}.theatre-history{color:#b7c2ca;font:13px/1.5 var(--sans);border-top:1px solid #bacbd21f;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:12px 0;display:flex}.theatre-history strong{color:#c5dfe4;margin-left:5px}.theatre-choice-panel .choice-options{grid-template-columns:1fr 1fr;gap:16px;margin:8px 0 18px;display:grid}.theatre-choice-panel .choice-option{text-transform:none;border:1px solid #8ba7ad45;border-radius:8px;width:auto;padding:20px}.theatre-choice-panel .choice-option b{font-size:19px}.theatre-choice-panel .choice-option .choice-emblem{float:left;width:27px;height:29px;margin:0 12px 8px 0}.theatre-choice-panel .choice-detail{clear:both;font-size:14px;line-height:1.55}.theatre-choice-panel .choice-option[aria-pressed=true]{background:linear-gradient(140deg,#29444d,#17252f);border-color:#d9c49b;box-shadow:inset 0 0 0 1px #d9c49b55}.theatre-choice-panel .choice-option[data-path=open][aria-pressed=true]{background:linear-gradient(140deg,#4a2e49,#291b30)}.theatre-preview{background:#080e186e;border-left:2px solid #a9c5ce6b;min-height:108px;padding:15px 18px}.theatre-preview-label{font:500 11px var(--sans);color:#c6c7ba;letter-spacing:.15em;text-transform:uppercase;margin-bottom:8px}[data-preview]{font:14px/1.6 var(--sans);color:#d6dce1}.theatre-choice-panel .choice-whisper{text-align:left;min-height:0;text-shadow:none;margin-top:10px;font-size:20px}.theatre-choice-panel footer{justify-content:space-between;align-items:center;gap:16px;margin-top:18px;display:flex}.theatre-choice-panel footer p{max-width:450px;font:12px/1.5 var(--sans);color:#9fabba;margin:0}[data-confirm]{color:#171922;font:500 13px/1.3 var(--sans);background:#cfbea7;border:1px solid #cdbd9b;border-radius:5px;min-width:185px;padding:12px 18px}[data-confirm]:disabled{opacity:.38;cursor:default;color:#cdbd9b;background:0 0}[data-confirm]:focus-visible,.ending-buttons button:focus-visible{outline-offset:4px;outline:2px solid #e2d2b0}:is(body:has(#choice.visible,#ending.visible) #echo-status,body:has(#choice.visible,#ending.visible) #hud,body:has(#choice.visible,#ending.visible) #powers),body[data-theatre-scene] #hud,body[data-theatre-scene] #powers,body[data-theatre-scene] #echo-status,body[data-theatre-scene] #objective,body[data-theatre-scene] #location{visibility:hidden}#ending.visible{background:radial-gradient(at top,#15242b,#060a11 70%);padding:24px;overflow:auto}#ending[data-path=open]{background:radial-gradient(at top,#352034,#090a13 70%)}#ending .ending-content{text-align:left;background:#101823b8;border:1px solid #a7b9c82b;border-radius:12px;align-items:stretch;gap:22px;width:min(980px,100%);margin:auto;padding:28px}#ending .ending-title{letter-spacing:.15em;padding:0;font-size:clamp(32px,5vw,52px)}#ending .ending-tagline{color:#adbfca;margin-top:6px;font-size:21px}.ending-summary{grid-template-columns:1.1fr 1fr;gap:28px;display:grid}.ending-summary h2{font:500 21px/1.35 var(--title);color:#e4dccb;margin:8px 0 12px}#ending .ending-result{font:15px/1.65 var(--sans);color:#c3cbd3}.ending-result p{margin:0 0 12px}#ending .ending-whisper{opacity:1;color:#d9b4c9;text-shadow:none;font-size:20px;line-height:1.45;animation:none}.ending-journal{border-left:1px solid #94a9b82e;padding-left:26px}.ending-journal h2{margin:0 0 12px;font-size:17px}.ending-journal ul{margin:0;padding:0;list-style:none}.ending-journal li{border-bottom:1px solid #a3bfcc21;align-items:center;gap:12px;padding:11px 0;display:flex}.ending-memory-icon{color:#a7c7d0;flex-shrink:0;width:23px;height:27px}.ending-memory-icon svg{width:100%;height:100%}.ending-journal li[data-memory=lost],.ending-journal li[data-memory=lost] .ending-memory-icon{color:#d4a7c9}.ending-journal b{font:500 13px/1.5 var(--sans);color:#d7dce1}.ending-journal li div span{font:12px/1.6 var(--sans);color:#a8bdc9;display:block}.ending-journal li[data-memory=lost] div span{color:#d4a7c9}.ending-stability{font:12px var(--sans);color:#b7c7d1;grid-template-columns:1fr auto;gap:8px;margin-top:18px;display:grid}.ending-stability strong{color:#e4e5dd}.ending-stability meter{grid-column:1/-1;width:100%;height:9px}.ending-stability meter::-webkit-meter-bar{background:#24323d;border:0}.ending-stability meter::-webkit-meter-optimum-value{background:#a4c7d1}#ending[data-path=open] .ending-stability meter::-webkit-meter-optimum-value{background:#bd90b7}.ending-stability p{font:11px/1.5 var(--sans);color:#95a5b5;grid-column:1/-1;margin:0}#ending footer{border-top:1px solid #94a9b82e;padding-top:18px}#ending .ending-buttons{gap:16px;margin-top:18px}#ending .ending-buttons button{font:13px var(--sans);letter-spacing:normal;border:1px solid #9bada746;border-radius:5px;padding:10px 16px}#ending .ending-buttons button:first-child{color:#161b25;background:#cbbda2}#ending .ending-note{font:11px/1.5 var(--sans);letter-spacing:normal;max-width:none}@media (width<=650px){#choice,#ending.visible{padding:12px}.theatre-choice-panel,#ending .ending-content{padding:18px}.theatre-choice-panel .choice-options,.ending-summary{grid-template-columns:1fr}.theatre-choice-panel footer{flex-direction:column;align-items:stretch}.ending-journal{border:0;padding:0}.theatre-choice-panel .choice-whisper{font-size:18px}}#menu.has-panel:has(.settings-panel) .menu-side{width:min(820px,100%)}.panel.settings-panel{gap:16px;width:100%;max-width:none}.settings-panel .panel-body{min-width:0}.settings-intro{font:12px/1.6 var(--sans);color:#a4aab3;margin:0 0 18px}.settings-tabs{z-index:2;background:#111821;border-bottom:1px solid #b9aa8b36;gap:4px;margin-bottom:22px;display:flex;position:sticky;top:-4px}.settings-tabs button{font:12px var(--sans);color:#9fa8b4;border-bottom:2px solid #0000;padding:12px 14px}.settings-tabs button[aria-selected=true]{color:#e7d7bb;background:#c6af860a;border-color:#c6af86}.settings-panel [hidden]{display:none!important}.graphics-presets{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;grid-template-columns:1fr 1fr;gap:10px;display:grid}.graphics-preset{cursor:pointer;background:#10172280;border:1px solid #a3adb12b;border-radius:4px;align-items:flex-start;gap:12px;min-width:0;padding:16px 14px;display:flex;position:relative}.graphics-preset:hover{background:#19243180;border-color:#a3adb160}.graphics-preset.selected{background:#cdb98b10;border-color:#cdb98bba}.graphics-preset input{accent-color:#cdb98b;width:13px;height:13px;position:absolute;top:10px;right:10px}.preset-index{color:#8595a2;font:11px var(--sans);padding-top:3px}.graphics-preset strong{font:15px var(--title);color:#deddd5;margin:0 16px 6px 0;display:block}.graphics-preset small{color:#a1aab4;font:11px/1.55 var(--sans);display:block}.graphics-summary{font:11px/1.6 var(--sans);color:#aab6c1;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:16px 0 20px;display:flex}.graphics-summary strong{color:#dccbab;font-weight:600}.graphics-details{border-top:1px solid #b9aa8b2a}.settings-category{border-bottom:1px solid #b9aa8b2a}.settings-category summary{cursor:pointer;font:13px var(--sans);color:#ddd7cc;padding:18px 30px 18px 0;list-style:none;position:relative}.settings-category summary::-webkit-details-marker{display:none}.settings-category summary:after{content:"+";color:#c6af86;font-size:16px;position:absolute;top:20px;right:4px}.settings-category[open] summary:after{content:"−"}.settings-category summary small{color:#92a1b0;font:11px/1.5 var(--sans);margin-top:6px;display:block}.settings-category[open]{padding-bottom:8px}.settings-category[open] summary{border-bottom:1px solid #b9aa8b1a}.settings-section-footer{border-top:1px solid #b9aa8b2a;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding-top:18px;display:flex}.settings-section-footer span{font:10px/1.6 var(--sans);color:#91a0ae;max-width:260px}.settings-section-footer button{font:11px var(--sans);color:#d8c9b0;border:1px solid #b9aa8b42;flex-shrink:0;padding:10px 12px}.settings-section-footer button:hover{background:#c6af8610;border-color:#c6af86}.settings-disabled-note{font:11px/1.7 var(--sans);color:#d3bd97;background:#b9aa8b08;border-left:2px solid #b9aa8b66;padding:12px 16px}@media (width<=440px){.settings-section-footer{flex-direction:column;align-items:flex-start}.settings-panel .setting-select,.graphics-presets{grid-template-columns:1fr}}.settings-group{flex-direction:column;display:flex}.settings-panel .setting{color:#d0d5d9;border-bottom:1px solid #a4adb01a;gap:12px 18px;margin:0;padding:16px 0;font-size:13px}.settings-panel .setting:last-child{border-bottom:0}.settings-panel .setting small{color:#8e9ba9;font:11px/1.5 var(--sans);margin-top:5px;display:block}.settings-panel .setting-slider input{grid-column:1/-1;margin:0}.settings-panel .setting select{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;max-width:100%;padding:8px 10px}.settings-panel .setting-toggle input{width:18px;height:18px}.settings-panel .setting-disabled{opacity:.5}.settings-tip{color:#9ba8b7;font:11px/1.7 var(--sans);margin:20px 0 0}@media (width<=900px){.graphics-preset{gap:8px;padding:14px 10px}.preset-index{display:none}.graphics-preset strong{font-size:13px}.settings-tabs button{padding:12px 10px}}@media (prefers-reduced-motion:reduce){#pause,nav button{transition:none}}#dodge-qte{z-index:9;pointer-events:none;opacity:0;flex-direction:column;align-items:center;gap:12px;transition:opacity .25s;display:flex;position:fixed;top:56%;left:50%;transform:translate(-50%,-50%)}#dodge-qte.visible{opacity:1}body.dodge-qte-on #dodge-hint{display:none}#dodge-qte kbd{z-index:1;text-align:center;min-width:120px;font:700 30px/1 var(--title);letter-spacing:.08em;color:#ecfbff;text-shadow:0 0 10px #a0ebffe6;background:#040c14eb;border:3px solid #b8eeff;border-radius:10px;padding:14px 28px;animation:.9s ease-in-out infinite qtePulse;position:relative;box-shadow:0 0 26px #78dcffa6,inset 0 0 14px #78dcff40}#dodge-qte span{font:600 13px var(--title);letter-spacing:.32em;text-transform:uppercase;color:#c8f1ff;text-shadow:0 1px 6px #000}#dodge-qte .qte-ring{border:2px solid #a0e6ff8c;border-radius:50%;width:190px;height:190px;animation:1.15s ease-out infinite qteRing;position:absolute;top:32px;left:50%;transform:translate(-50%,-50%)}@keyframes qtePulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes qteRing{0%{opacity:.9;transform:translate(-50%,-50%)scale(.55)}to{opacity:0;transform:translate(-50%,-50%)scale(1.5)}}#dodge-qte-vignette{z-index:6;pointer-events:none;opacity:0;-webkit-backdrop-filter:saturate(.35);background:radial-gradient(#0000 32%,#040912c7 100%);transition:opacity .3s;position:fixed;inset:0}#rewind-film{z-index:8;pointer-events:none;opacity:0;-webkit-backdrop-filter:sepia(.65)contrast(1.25)brightness(.95);transition:opacity .2s;position:fixed;inset:0}#rewind-film.visible{opacity:1;animation:.12s steps(2,end) infinite filmFlicker}#rewind-film .film-scratches{opacity:.6;background:repeating-linear-gradient(90deg,#0000 0 173px,#fff6dc40 174px,#0000 176px),repeating-linear-gradient(90deg,#0000 0 311px,#1e140a59 312px,#0000 315px);animation:.18s steps(3,end) infinite filmScratch;position:absolute;inset:0}#rewind-film .film-frame{background:repeating-linear-gradient(#000000e6 0 18px,#e6dcc880 18px 30px,#000000e6 30px 48px) 0/26px 100% no-repeat,repeating-linear-gradient(#000000e6 0 18px,#e6dcc880 18px 30px,#000000e6 30px 48px) 100%/26px 100% no-repeat;animation:.25s linear infinite filmRoll;position:absolute;inset:0}@keyframes filmFlicker{0%{opacity:1}50%{opacity:.82}}@keyframes filmScratch{0%{transform:translate(0)}33%{transform:translate(-90px)}66%{transform:translate(57px)}}@keyframes filmRoll{0%{background-position:0 0,right 0}to{background-position:0 -48px,right -48px}}@media (prefers-reduced-motion:reduce){#rewind-film.visible,#rewind-film .film-scratches,#rewind-film .film-frame,#dodge-qte kbd,#dodge-qte .qte-ring{animation:none}}.menu-backdrop-fade{opacity:0;pointer-events:none;background:#04070b;position:absolute;inset:0}#menu .menu-side{z-index:1;position:relative}#menu .menu-chart,#menu .menu-utilities{z-index:1}#menu:not(.has-panel) .menu-side{gap:clamp(22px,3.2vh,38px);width:min(560px,45vw);min-width:380px;padding:38px 32px 32px clamp(34px,6.7vw,120px)}#menu:not(.has-panel) .game-logo{width:min(420px,100%)}#menu:not(.has-panel) .startup-eyebrow{letter-spacing:.24em;color:#c6bda9}#menu:not(.has-panel) .brand-subtitle{color:#dcc6a1;font-size:23px}#menu:not(.has-panel) .brand-subtitle:before{background:#b79560}#menu:not(.has-panel) .menu-caption{color:#ded7ca;max-width:380px;font-size:19px}#menu:not(.has-panel) nav{gap:0;width:calc(100% - 40px);margin-left:40px}#menu:not(.has-panel) nav button{font:24px/1.15 var(--serif);letter-spacing:.015em;color:#c5c1b8;background:0 0;border:none;padding:9px 0;transition:color .18s;position:relative}#menu:not(.has-panel) nav button:hover,#menu:not(.has-panel) nav button:focus-visible{color:#f0e1c7;background:0 0;padding-left:0}#menu:not(.has-panel) nav button[data-action=play]{font:34px/1.15 var(--serif);letter-spacing:.01em;color:#e5ded0;background:0 0;border:none;padding:12px 0 6px}#menu:not(.has-panel) nav button:before{content:"";opacity:0;background:0 0;border:1px solid #c3a06a;border-right-color:#0000;border-radius:50%;width:30px;height:30px;transition:opacity .2s,transform .45s ease-out;display:block;position:absolute;top:50%;left:-42px;transform:translateY(-50%)rotate(-80deg)}#menu:not(.has-panel) nav button:focus-visible{text-underline-offset:5px;outline:none;text-decoration:underline;text-decoration-thickness:1px}#menu:not(.has-panel) nav button:after{content:"";opacity:0;float:none;background:linear-gradient(90deg,#c3a06a99,#c3a06a22);height:1px;transition:opacity .2s;position:absolute;top:50%;left:145px;right:0}#menu:not(.has-panel) nav button[data-selected=true]{color:#f0e1c7}#menu:not(.has-panel) nav button[data-selected=true]:before{opacity:1;transform:translateY(-50%)rotate(-15deg)}#menu:not(.has-panel) nav button[data-selected=true]:after{opacity:1}#menu:not(.has-panel) .menu-start-note{color:#bcb6a9;font:15px/1.4 var(--serif);margin:0 0 18px}#menu:not(.has-panel) .menu-footer{border-color:#b7986542}#menu .menu-utilities button{font:16px var(--serif);color:#dfc9a5;background:#080d17a6;border-color:#b7986580}#menu .menu-scene-label{display:none}.menu-chart{aspect-ratio:1;color:#b798655c;pointer-events:none;width:290px;position:absolute}.menu-chart-top{top:-110px;left:-95px}.menu-chart-bottom{bottom:-160px;right:-160px;transform:rotate(180deg)}.menu-chart i{border:1px solid;border-radius:50%;position:absolute;inset:0}.menu-chart i:nth-child(2){border-style:dashed;inset:35%}.menu-chart:before,.menu-chart:after{content:"";background:linear-gradient(90deg,currentColor,#0000);width:230px;height:1px;position:absolute;top:50%;left:50%}.menu-chart:after{transform-origin:0;transform:rotate(90deg)}.menu-chart b{border:1px solid #c6a772;width:18px;height:18px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(45deg)}#menu.has-panel .menu-chart{display:none}#menu[data-departing=true] .menu-side,#menu[data-departing=true] .menu-chart,#menu[data-departing=true] .menu-utilities{opacity:0;pointer-events:none;transition:opacity var(--menu-departure,.5s)}@media (height<=700px){#menu:not(.has-panel) .menu-side{gap:20px;padding-block:24px}#menu:not(.has-panel) .game-logo{width:min(300px,100%)}#menu:not(.has-panel) .menu-caption{margin-top:12px;font-size:17px}#menu:not(.has-panel) nav button{padding-block:7px;font-size:22px}#menu:not(.has-panel) nav button[data-action=play]{font-size:29px}#menu:not(.has-panel) .menu-start-note{margin-bottom:10px}}@media (width<=760px){#menu{background:#04070ba8}#menu:not(.has-panel) .menu-side{width:100%;min-width:0;max-width:560px;padding:72px 32px 28px 54px}#menu:not(.has-panel) .game-logo{width:min(360px,100%)}.menu-chart-bottom{display:none}}@media (height<=500px){#menu:not(.has-panel) .menu-side{justify-content:flex-start;gap:18px}#menu:not(.has-panel) .game-logo{width:220px}#menu:not(.has-panel) .startup-eyebrow{margin-bottom:12px}#menu:not(.has-panel) .brand-subtitle{margin-top:12px}}@media (prefers-reduced-motion:reduce){#menu:not(.has-panel) nav button,#menu:not(.has-panel) nav button:before,#menu:not(.has-panel) nav button:after,#menu[data-departing=true] .menu-side,#menu[data-departing=true] .menu-chart,#menu[data-departing=true] .menu-utilities{transition:none}}#menu .menu-chart-top{transform:translate(var(--menu-parallax-x,0px), var(--menu-parallax-y,0px))}#menu .menu-chart-bottom{transform:translate(calc(var(--menu-parallax-x,0px) * -.45), calc(var(--menu-parallax-y,0px) * -.45)) rotate(180deg)}.menu-resonance{pointer-events:none;position:absolute;inset:0;overflow:hidden}.menu-resonance i{left:var(--menu-core-x,72%);top:var(--menu-core-y,50%);opacity:0;pointer-events:none;position:absolute}.menu-resonance-wave{aspect-ratio:1;border:1px solid #8bc6d980;border-radius:50%;width:clamp(100px,18vw,280px);transform:translate(-50%,-50%);box-shadow:0 0 14px #75b9d229,inset 0 0 12px #75b9d21a}.menu-resonance-flare{aspect-ratio:1;background:radial-gradient(#56b9da8c,#3c83af38 24%,#0000 66%);width:min(62vw,800px);transform:translate(-50%,-50%)}#menu:not(.has-panel) nav button:before{content:none}.menu-selection-ring{pointer-events:none;width:30px;height:30px;position:absolute;top:50%;left:-42px;overflow:visible;transform:translateY(-50%)rotate(-100deg)}.menu-selection-ring circle{fill:none;stroke:#c3a06a;stroke-width:1px;stroke-dasharray:76 88;stroke-dashoffset:88px;opacity:0;transition:stroke-dashoffset var(--menu-selection-duration,.42s) ease-out, opacity .18s}#menu:not(.has-panel) nav button:after{transform-origin:0;transition:transform var(--menu-selection-duration,.42s) cubic-bezier(.2,.7,.2,1), opacity .2s;background:linear-gradient(90deg,#c3a06abb,#8abfc580 45%,#0000);transform:scaleX(0)}#menu:not(.has-panel) nav button[data-selected=true]{text-shadow:0 0 14px #b89b623d}#menu:not(.has-panel) nav button[data-selected=true] .menu-selection-ring circle{stroke-dashoffset:0;opacity:1}#menu:not(.has-panel) nav button[data-selected=true]:after{transform:scaleX(1)}#menu[data-departing=true] .menu-side{transition:opacity var(--menu-departure,.8s), transform var(--menu-departure,.8s) ease-in;transform:translate(-12px)}#menu[data-menu-motion=false] .menu-chart{transform:none}#menu[data-menu-motion=false] .menu-resonance{display:none}#menu[data-menu-motion=false] .menu-selection-ring circle,#menu[data-menu-motion=false] nav button:after{transition:none}#menu[data-menu-motion=false][data-departing=true] .menu-side{transform:none}body[data-lightweight-ui=true] .menu-resonance-wave{box-shadow:none}body[data-lightweight-ui=true] .menu-resonance-flare{display:none}@media (prefers-reduced-motion:reduce){#menu .menu-chart{transform:none}#menu .menu-resonance{display:none}#menu .menu-selection-ring circle,#menu nav button:after{transition:none}#menu[data-departing=true] .menu-side{transition:none;transform:none}}#menu{background:linear-gradient(90deg,#04070be8,#05080bad 34%,#05080b20 53%,#0000 74%)}#menu:not(.has-panel) .menu-caption,#menu:not(.has-panel) nav{text-shadow:0 1px 5px #0009}#menu .menu-footer{max-width:380px}#menu .menu-footer .studio-link{color:#ded0b8;font-size:13px}#menu .menu-tag{color:#c5c8cb;font-size:12px;line-height:1.65}.menu-keyboard-help{font:11px/1.65 var(--sans);color:#b6b9bc;margin:12px 0 0}.controls-intro{color:#abb5bd;font:13px/1.7 var(--sans);margin:0 0 24px}.controls-groups{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:28px 30px;display:grid}.controls-section{min-width:0}.controls-section h3{font:15px/1.4 var(--serif);letter-spacing:.07em;text-transform:uppercase;color:#e2d4b9;border-bottom:1px solid #b7986547;align-items:center;gap:12px;margin:0 0 18px;padding-bottom:12px;display:flex}.controls-section h3>span{font:10px var(--sans);letter-spacing:.12em;color:#ad9270}.controls-section .controls-grid{font:14px/1.6 var(--sans);color:#d2d3d0;align-items:start;gap:14px 16px;margin:0}.controls-grid dt,.controls-grid dd{min-width:0;margin:0}.controls-grid kbd{white-space:nowrap;display:inline-block}@media (width<=760px){#menu{background:linear-gradient(90deg,#04070bea,#04070b9c)}}@media (height<=700px){#menu:not(.has-panel) .menu-side{gap:16px}#menu .menu-footer{padding-top:14px}.menu-keyboard-help{margin-top:8px}}#loading,#gate,#intro{--startup-fx:1;--startup-x:0px;--startup-y:0px;--startup-zoom:1;--startup-core-x:72%;--startup-core-y:48%;isolation:isolate;background:radial-gradient(at 73% 48%,#152a35 0%,#0b141d 36%,#06090f 78%)}#loading:after,#gate:after,#intro .startup-veil:after{content:"";pointer-events:none;background:radial-gradient(#0000 35%,#02040899 100%);position:absolute;inset:0}#loading:before,#gate:before{content:"";pointer-events:none;border:1px solid #c9bca82c;position:absolute;inset:24px}.loading-content{z-index:3;text-align:left;gap:18px;width:min(400px,42vw);margin-right:42vw}.loading-logo{width:100%;margin:0 0 20px}.loading-content .startup-eyebrow{letter-spacing:.24em;color:#c4b69b}.loading-progress{gap:18px;width:100%;margin:10px 0 2px}.loading-bar{background:#c9bca810;border-bottom:1px solid #c9bca824;flex:1;width:auto;height:3px}.loading-fill{background:linear-gradient(90deg,#42778b,#c6b38b)}.loading-percent{text-align:right;width:40px;font:11px var(--sans);color:#d1c4ae;font-variant-numeric:tabular-nums}.loading-stage{min-height:2em;font:12px/1.6 var(--sans);color:#bcc3c6;letter-spacing:.02em}.loading-tip{max-width:380px;min-height:4.5em;font:italic 21px/1.4 var(--serif);color:#aea99f;margin-top:18px}#loading.failed .loading-progress{display:none}.loading-retry{align-self:flex-start;min-height:44px}.startup-field{z-index:1;opacity:.9;width:min(650px,78vh,66vw);transform:translate(calc(-50% + var(--startup-x)), calc(-50% + var(--startup-y))) scale(var(--startup-zoom));will-change:transform;top:48%;left:72%}.startup-instrument{inset:0}.startup-instrument svg{width:100%;height:100%;overflow:visible}.startup-crown{transform-origin:320px 320px;animation:startup-crown var(--startup-orbit-duration) linear infinite}.startup-gyro,.startup-core,.startup-veins,.startup-wave{transform-origin:320px 320px}.startup-gyro-one{animation:startup-gyro-one var(--startup-orbit-duration) linear infinite}.startup-gyro-two{animation:startup-gyro-two var(--startup-orbit-duration) linear infinite}.startup-core{animation:startup-core var(--startup-pulse-duration) ease-in-out infinite}.startup-veins{animation:startup-veins var(--startup-orbit-duration) linear infinite}.startup-aura{opacity:calc(.35 + .6 * var(--startup-fx))}.startup-arcs{opacity:0;animation:startup-arcs var(--startup-arc-interval) ease-out infinite}.startup-progress-ring{stroke-dasharray:100;stroke-dashoffset:calc((1 - var(--startup-progress,0)) * 100);opacity:.5;transition:stroke-dashoffset .5s}#gate .startup-progress-ring{stroke-dasharray:1 4;stroke-dashoffset:0;opacity:.24}#intro .startup-progress-ring,.startup-wave,.startup-burst{opacity:0}.resonating .startup-wave{animation:startup-wave var(--startup-spark-duration) ease-out both}.resonating .startup-burst{animation:startup-burst var(--startup-spark-duration) ease-out both}.resonating .startup-instrument{animation:startup-fracture var(--startup-spark-duration) ease-out both}.startup-dust{transform:translate(calc(var(--startup-x) * .35), calc(var(--startup-y) * .35));position:absolute;inset:-18%}.startup-dust i{width:var(--mote-size);height:var(--mote-size);opacity:0;animation:startup-dust var(--mote-life) var(--mote-delay) linear infinite;background:#b5c7ce;border-radius:50%;position:absolute;box-shadow:0 0 9px #83bbca55}.startup-grain{z-index:2;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='128' height='128'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h128v128H0z'/%3E%3C/svg%3E");position:absolute;inset:0}.startup-chart{z-index:1;pointer-events:none;opacity:.45;width:110px;height:110px;position:absolute;bottom:50px;right:38px}.startup-chart i{border:1px dashed #c5b59455;border-radius:50%;position:absolute;inset:0}.startup-chart:before,.startup-chart:after{content:"";background:#c5b59477;position:absolute}.startup-chart:before{width:180px;height:1px;top:50%;right:40%}.startup-chart:after{width:1px;height:150px;top:-30px;left:50%}.startup-chart b{color:#c5b594;font:28px var(--serif);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#gate{justify-content:flex-start}.gate-content{text-align:left;z-index:3;align-items:flex-start;width:min(500px,48vw);margin-left:6vw;padding:70px 18px}.gate-logo{width:100%;margin:32px 0 28px}.gate-caption{color:#c3bdaf;margin-bottom:40px;font-size:clamp(23px,2.8vw,30px)}.gate-cta{letter-spacing:.08em;background:#c6b38b08;border-color:#c6b38b65;min-width:205px;padding:15px 28px 15px 48px;font-size:19px;position:relative}.gate-cta:before{content:"";border:1px solid #c6b38b;border-right-color:#0000;border-radius:50%;width:16px;height:16px;margin-top:-8px;transition:transform .35s;position:absolute;top:50%;left:17px;transform:rotate(-30deg)}.gate-cta:hover:before,.gate-cta:focus-visible:before{transform:rotate(45deg)}.gate-cta:hover,.gate-cta:focus-visible{background:#c6b38b18;border-color:#ddccab}.gate-hint{color:#a4adb1;max-width:320px;line-height:1.6}.gate-coordinate{z-index:3;top:40px;left:40px}.startup-bottom{z-index:3;letter-spacing:.1em;font-size:9px}#gate.entering .gate-content{transition:opacity var(--startup-entry-duration) ease;opacity:0}#intro{background:#06090f}#intro:before{background:radial-gradient(at 50% 46%,#53432b4a,#0000 68%)}#intro:after{background:radial-gradient(at 50% 46%,#23425455,#0000 68%)}#intro .startup-field{opacity:.38;width:min(590px,80vw,76vh);top:46%;left:50%}#intro[data-phase=prototype] .startup-field{opacity:.23}#intro .startup-chart{opacity:.25;bottom:70px}#intro .intro-card{z-index:4}#intro .intro-skip{z-index:6;min-height:44px}.studio-reveal{width:min(480px,78vw,68vh)}.studio-reveal .studio-logo{width:70%}.intro-seal{width:108%;top:50%}.intro-seal i{border-color:#c7a56b5c}.intro-seal b{border-color:#e2c68b88}#intro.aligned .intro-seal{filter:drop-shadow(0 0 5px #ba986333)}.disclaimer{background:radial-gradient(#06090fe6 35%,#06090f00 75%);padding:34px}.disclaimer-lead{max-width:480px;font-size:clamp(28px,4vw,38px)}.disclaimer-note{color:#b3b4b4}.intro-divider{background:linear-gradient(90deg,#0000,#c8b38d,#0000);width:90px}.startup-veil{z-index:3;pointer-events:none;display:none;position:absolute;inset:0}#intro[data-phase=reveal]{background:0 0;transition:opacity .1s}#intro[data-phase=reveal]:before,#intro[data-phase=reveal]:after{opacity:0}#intro[data-phase=reveal] .startup-field,#intro[data-phase=reveal] .startup-chart,#intro[data-phase=reveal] .intro-card{display:none}#intro[data-phase=reveal] .startup-veil{-webkit-mask-image:radial-gradient(circle at var(--startup-core-x) var(--startup-core-y), transparent var(--startup-aperture), #000 calc(var(--startup-aperture) + 7vmax));mask-image:radial-gradient(circle at var(--startup-core-x) var(--startup-core-y), transparent var(--startup-aperture), #000 calc(var(--startup-aperture) + 7vmax));-webkit-mask-image:radial-gradient(circle at var(--startup-core-x) var(--startup-core-y), transparent var(--startup-aperture), #000 calc(var(--startup-aperture) + 7vmax));background:#06090f;display:block}#intro[data-phase=reveal] .startup-grain{opacity:.02}#menu[data-arriving=true] .menu-side{animation:startup-menu-arrival var(--menu-arrival-duration) ease-out both}@keyframes startup-crown{to{transform:rotate(360deg)}}@keyframes startup-gyro-one{0%{transform:rotate(-25deg)}50%{transform:rotate(155deg)scaleY(.84)}to{transform:rotate(335deg)}}@keyframes startup-gyro-two{0%{transform:rotate(68deg)}50%{transform:rotate(-112deg)scaleY(.76)}to{transform:rotate(-292deg)}}@keyframes startup-core{50%{opacity:.8;transform:scale(1.035)}}@keyframes startup-veins{to{transform:rotate(-360deg)}}@keyframes startup-arcs{0%,4%,to{opacity:0}1%{opacity:calc(.7 * var(--startup-fx))}2.5%{opacity:calc(.25 * var(--startup-fx))}}@keyframes startup-wave{0%{opacity:calc(.6 * var(--startup-fx));transform:scale(.85)}to{opacity:0;transform:scale(3.1)}}@keyframes startup-burst{0%,65%,to{opacity:0}8%{opacity:calc(.8 * var(--startup-fx))}30%{opacity:calc(.3 * var(--startup-fx))}}@keyframes startup-fracture{0%,30%,to{filter:none;transform:none}9%{filter:drop-shadow(-3px 0 #417e9b88)drop-shadow(3px 0 #72659055);transform:translate(3px)skew(-1deg)}17%{transform:translate(-2px)skew(.7deg)}}@keyframes startup-dust{0%,to{opacity:0;transform:translateY(20px)}20%,75%{opacity:.3}95%{transform:translateY(-65px)}}@keyframes startup-menu-arrival{0%,25%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}[data-startup-active=false] .startup-field *,[data-startup-motion=false] .startup-field *{animation-play-state:paused!important}[data-startup-motion=false] .startup-arcs,[data-startup-motion=false] .startup-burst,[data-startup-motion=false] .startup-wave{display:none}[data-startup-motion=false] .startup-instrument{animation:none!important}[data-startup-motion=false] .startup-field{will-change:auto}[data-startup-grain=false] .startup-grain{display:none}[data-startup-motion=false] .startup-dust i{opacity:.12}body[data-lightweight-ui=true] .startup-grain,body[data-lightweight-ui=true] .startup-dust{display:none}body[data-lightweight-ui=true] .startup-aura{opacity:.25}@media (width<=760px){.loading-content{text-align:center;align-items:center;width:min(400px,82vw);margin:0}.loading-tip{font-size:20px}.loading-retry{align-self:center}.startup-field{opacity:.24;width:min(570px,100vw,78vh);top:42%;left:50%}#loading .startup-field,#gate .startup-field{opacity:.24}#gate{background:radial-gradient(at 50% 42%,#152a35,#06090f 80%);justify-content:center}.gate-content{text-align:center;align-items:center;width:min(460px,90vw);margin:0;padding:85px 24px}.gate-logo{width:min(370px,76vw)}.gate-caption{font-size:24px}.startup-chart{display:none}.gate-coordinate{font-size:9px;top:28px;left:28px}}@media (height<=650px){.loading-logo{width:min(310px,100%);margin-bottom:8px}.loading-content{gap:12px}.loading-tip{min-height:3em;margin-top:8px;font-size:18px}.gate-content{padding-block:68px}.gate-logo{width:min(330px,100%);margin:18px 0}.gate-caption{margin-bottom:24px;font-size:24px}.gate-hint{margin-top:16px}.startup-bottom{bottom:22px}.gate-coordinate{top:24px}}@media (height<=480px){#gate{align-items:flex-start}.gate-content{margin-block:auto;padding-block:75px}.gate-logo{width:220px}.loading-content{gap:8px}.loading-logo{width:220px;margin-bottom:0}.loading-tip{min-height:2.5em;font-size:16px}}@media (prefers-reduced-motion:reduce){.startup-field *,.resonating .startup-instrument,#menu[data-arriving=true] .menu-side{animation:none!important}.startup-arcs,.startup-burst,.startup-wave{display:none}#gate.entering .gate-content,.startup-progress-ring,#intro.aligned .intro-seal{transition:none}.startup-field{will-change:auto}}
