.stage-frame{pointer-events:none;background:var(--sky);border:none;border-radius:0;width:100%;height:100svh;margin:0;transition:background .4s,border-color .4s;position:relative;overflow:hidden}.camera{transform-origin:0 0;will-change:transform;height:100%;transition:transform .95s var(--ease-camera)}@media (prefers-reduced-motion:reduce){.camera{transition:none}}.grain-overlay{opacity:.12;pointer-events:none;background-image:url(/grain/grain-0.webp);background-repeat:repeat;position:absolute;inset:0}.stage-frame .f-sea,.stage-frame .f-wave{filter:url(#sea-shimmer)}@media (prefers-reduced-motion:reduce){.stage-frame .f-sea,.stage-frame .f-wave{filter:none}}.wind{pointer-events:none;position:absolute;inset:0;overflow:hidden}.mote{background:var(--mote);opacity:0;border-radius:50%;width:5px;height:5px;animation:linear infinite drift;position:absolute}@keyframes drift{0%{opacity:0;left:-4%;transform:translateY(0)}12%{opacity:var(--mote-op)}88%{opacity:var(--mote-op)}to{opacity:0;left:104%;transform:translateY(-38px)}}@media (prefers-reduced-motion:reduce){.wind{display:none}.mote{animation:none}}.approach-prompt{opacity:0;pointer-events:none;font-family:var(--serif);letter-spacing:.12em;color:var(--prompt-ink);cursor:pointer;text-shadow:0 1px 3px #07060e,0 0 12px #07060e,0 0 20px #07060eb3;background:0 0;border:none;min-height:44px;padding:.85rem 1rem;font-size:.95rem;font-variant-caps:small-caps;font-weight:600;position:absolute;bottom:38%;right:10%}.approach-prompt:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}.js-character-hit{fill:#0000;pointer-events:all;cursor:pointer}.fullscreen-toggle{pointer-events:auto;width:2.5rem;height:2.5rem;color:var(--text);cursor:pointer;backdrop-filter:blur(3px);background:#0a08168c;border:1px solid #e9e2cf38;border-radius:999px;justify-content:center;align-items:center;transition:color .15s,border-color .15s,background .15s;display:flex;position:absolute;bottom:1rem;right:1rem}.fullscreen-toggle[hidden]{display:none}.fullscreen-toggle:hover,.fullscreen-toggle:focus-visible{color:var(--btn-hover-text);border-color:var(--btn-hover-border);background:linear-gradient(var(--btn-hover-bg), var(--btn-hover-bg)), #0a08168c}.fullscreen-toggle:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}:root[data-time=day] .fullscreen-toggle{background:#fdfbf5a6;border-color:#25303838}:root[data-time=day] .fullscreen-toggle:hover,:root[data-time=day] .fullscreen-toggle:focus-visible{background:linear-gradient(var(--btn-hover-bg), var(--btn-hover-bg)), #fdfbf5a6}@media (prefers-reduced-motion:reduce){.fullscreen-toggle{transition:none}}@media (aspect-ratio<=4/5){.fullscreen-toggle{top:4rem;bottom:auto}}.stage-frame:fullscreen{border:none;border-radius:0;width:100vw;max-width:none;height:100vh;margin:0}.banner-plane{pointer-events:none;color:#fff;filter:drop-shadow(0 1px 1px #00000059);opacity:1;align-items:center;transition:opacity .4s;animation-name:plane-fly;animation-timing-function:linear;display:flex;position:absolute;top:14%;left:0}.banner-plane.plane-fade-out{opacity:0}@keyframes plane-fly{0%{transform:translate(-18vw)}to{transform:translate(118vw)}}.plane-icon{flex:none}.banner-tow{background:currentColor;flex:none;width:26px;height:2px}.banner-rect{color:#fff;font-family:var(--mono);letter-spacing:.1em;white-space:nowrap;background:#000;border-radius:2px;flex:none;padding:.25rem .7rem;font-size:.7rem;font-weight:600}.plane-hit{pointer-events:auto;cursor:pointer;justify-content:flex-start;align-items:center;min-width:44px;min-height:44px;display:inline-flex}.banner-plane.crashing{transform-origin:50%;animation-name:plane-crash;animation-timing-function:ease-in;animation-fill-mode:forwards}@keyframes plane-crash{0%{transform:translate(0)rotate(0)}12%{transform:translate(0)rotate(16deg)}24%{transform:translate(0)rotate(-16deg)}36%{transform:translate(0)rotate(12deg)}48%{transform:translate(0)rotate(-10deg)}60%{transform:translate(0)rotate(4deg)}to{transform:translate(-4vw, var(--dive-y,260px)) rotate(500deg)}}.banner-detached{pointer-events:none;color:#fff;align-items:center;animation-name:banner-flutter;animation-timing-function:ease-in;animation-fill-mode:forwards;display:flex;position:absolute}@keyframes banner-flutter{0%{opacity:1;transform:translateY(0)rotate(0)}40%{transform:translateY(calc(var(--dive-y,260px) * .5)) rotate(-12deg)}75%{transform:translateY(calc(var(--dive-y,260px) * .85)) rotate(9deg)}to{transform:translateY(var(--dive-y,260px)) rotate(-5deg);opacity:0}}.plane-splash{pointer-events:none;position:absolute}.plane-splash:before{content:"";background:var(--wave);border-radius:3px;width:34px;height:6px;animation:.2s ease-out forwards splash-pop;position:absolute;top:-3px;left:-17px}.plane-splash:after{content:"";border:2px solid var(--wave);opacity:0;border-radius:50%;width:16px;height:16px;animation:.35s ease-out .15s forwards splash-ripple;position:absolute;top:-8px;left:-8px;transform:scale(.3)}@keyframes splash-pop{0%{opacity:0;transform:scaleX(.2)}40%{opacity:1;transform:scaleX(1.3)}to{opacity:0;transform:scaleX(1)}}@keyframes splash-ripple{0%{opacity:.8;transform:scale(.3)}to{opacity:0;transform:scale(2.6)}}@media (aspect-ratio<=4/5){.banner-plane{display:none}}@media (prefers-reduced-motion:reduce){.banner-plane{display:none}}.end-dialogue{margin-top:.75rem}.end-dialogue[hidden]{display:none}@property --frame{syntax:"<color>";inherits:false;initial-value:#0000}@property --frame-faint{syntax:"<color>";inherits:false;initial-value:#0000}.card{pointer-events:auto;--frame:#d9a94e8c;--frame-faint:#e9e2cf2e;backdrop-filter:blur(3px);outline:1px solid var(--frame-faint);outline-offset:-8px;background:#0a0816bf;background-image:linear-gradient(var(--frame), var(--frame)), linear-gradient(var(--frame), var(--frame)), linear-gradient(var(--frame), var(--frame)), linear-gradient(var(--frame), var(--frame)), linear-gradient(var(--frame), var(--frame)), linear-gradient(var(--frame), var(--frame)), linear-gradient(var(--frame), var(--frame)), linear-gradient(var(--frame), var(--frame));background-position:8px 8px,8px 8px,right 8px top 8px,right 8px top 8px,left 8px bottom 8px,left 8px bottom 8px,right 8px bottom 8px,right 8px bottom 8px;background-repeat:no-repeat;background-size:14px 2px,2px 14px,14px 2px,2px 14px,14px 2px,2px 14px,14px 2px,2px 14px;border:2px solid #e9e2cf38;border-radius:4px;width:min(600px,88%);max-height:calc(100svh - 110px);padding:1.75rem 2rem 2rem;transition:background .4s,border-color .4s,opacity .38s .17s,transform .38s .17s,--frame .38s .17s,--frame-faint .38s .17s;position:absolute;bottom:3.5%;left:50%;overflow-y:auto;transform:translate(-50%)}:root[data-time=day] .card{--frame:#6f56208c;--frame-faint:#2530382e;background-color:#fdfbf5cf;border-color:#25303838}.card.card-entering{opacity:0;--frame:transparent;--frame-faint:transparent;transform:translate(-50%)translateY(6px)}:root[data-time=day] .card.card-entering{--frame:transparent;--frame-faint:transparent}.stage{color:var(--stage);margin:0 0 .75rem;font-size:.92rem;font-style:italic}.speech,.speech-stream{min-height:3.2em;margin:0 0 1.5rem;font-size:1.1rem}.speech{transition:opacity .25s}.speech.speech-clip{clip-path:inset(50%);position:absolute}.speech-stream .pending{visibility:hidden}.card.is-streaming .choices{opacity:.55}.choices{counter-reset:plate;flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.choices li{counter-increment:plate;position:relative}.choices li:before{content:counter(plate, upper-roman);font-family:var(--mono);letter-spacing:.15em;color:var(--gold);opacity:.8;font-size:.72rem;position:absolute;top:50%;left:1.2rem;translate:0 -50%}.choices button,.end-dialogue{text-align:left;width:100%;font-family:var(--serif);color:var(--text);border-radius:var(--r-sharp);cursor:pointer;transition:background var(--t-micro), color var(--t-micro);background:#ece4d40a;border:none;padding:.7rem 2.6rem .7rem 3.2rem;font-size:1.02rem;display:block;position:relative}.choices button:before,.end-dialogue:before{content:"";background:var(--gold);opacity:.35;width:2px;transition:width var(--t-micro), background var(--t-micro), opacity var(--t-micro);position:absolute;top:0;bottom:0;left:0}.choices button:after,.end-dialogue:after{content:"✦" / "";opacity:0;color:var(--gold-bright);transition:opacity var(--t-micro);position:absolute;top:50%;right:1.2rem;translate:0 -50%}.choices button:hover,:root.kb-focus .choices button:focus,.end-dialogue:hover,.end-dialogue:focus-visible{color:var(--plate-hover-text);background:#d9a94e1a}.choices button:hover:before,:root.kb-focus .choices button:focus:before,.end-dialogue:hover:before,.end-dialogue:focus-visible:before{background:var(--gold-bright);opacity:1;width:3px}.choices button:hover:after,:root.kb-focus .choices button:focus:after,.end-dialogue:hover:after,.end-dialogue:focus-visible:after{opacity:1}.choices button:focus-visible{outline:none}:root.kb-focus .choices button:focus,.end-dialogue:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}.noscript-note{font-family:var(--mono);margin-top:1rem;font-size:.85rem}.noscript-note a{color:var(--option)}.noscript-note a:hover,.noscript-note a:focus-visible{color:var(--btn-hover-text)}.noscript-note a:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}.page-foot{z-index:1;max-width:min(260px,48vw);font-family:var(--mono);letter-spacing:.06em;color:var(--text);backdrop-filter:blur(3px);background:#0a08168c;border:1px solid #e9e2cf38;border-radius:12px;padding:.5rem .85rem;font-size:.68rem;line-height:1.4;position:fixed;top:1rem;left:1rem}:root[data-time=day] .page-foot{background:#fdfbf5a6;border-color:#25303838}@media (width<=680px){.card{padding:1.4rem 1.3rem 1.5rem}}@media (prefers-reduced-motion:reduce){body,.card,.speech,.choices button,.end-dialogue,.choices button:before,.choices button:after,.end-dialogue:before,.end-dialogue:after{transition:none}}.threshold-cover[data-astro-cid-ylprcco5]{z-index:50;background:var(--sky);justify-content:center;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}@media (prefers-reduced-motion:reduce){.threshold-cover[data-astro-cid-ylprcco5]:not(.cover-gated){display:none}}.threshold-cover[data-astro-cid-ylprcco5].cover-undeveloping{pointer-events:none;transition:opacity var(--undevelop-photo-drain) ease;opacity:0}.threshold-cover[data-astro-cid-ylprcco5].cover-undeveloping .cover-content[data-astro-cid-ylprcco5]{transition:opacity var(--undevelop-title-fade) ease;opacity:0}:root[data-cover=skip] .threshold-cover[data-astro-cid-ylprcco5],.threshold-cover[data-astro-cid-ylprcco5][hidden]{display:none}.threshold-cover[data-astro-cid-ylprcco5].cover-forced-visible{display:flex!important}.threshold-cover[data-astro-cid-ylprcco5].cover-returning{opacity:0;transition:opacity .3s}.cover-filter-defs[data-astro-cid-ylprcco5]{width:0;height:0;position:absolute;overflow:hidden}.cover-photo-wrap[data-astro-cid-ylprcco5]{position:absolute;inset:0;overflow:hidden}.cover-photo[data-astro-cid-ylprcco5]{object-fit:cover;object-position:50% 0%;transform-origin:50% 0;filter:url(#threshold-duotone);width:100%;height:100%;display:block;transform:scale(1.22)}.cover-vignette[data-astro-cid-ylprcco5]{pointer-events:none;background:radial-gradient(at 50% 55%,#06080c00 30%,#06080c99 100%);position:absolute;inset:0}.cover-content[data-astro-cid-ylprcco5]{z-index:1;text-align:center;max-width:640px;padding:2rem 1.5rem;position:relative}.cover-name[data-astro-cid-ylprcco5],.cover-tagline[data-astro-cid-ylprcco5],.cover-btn-secondary[data-astro-cid-ylprcco5],.cover-coming-soon[data-astro-cid-ylprcco5]{color:var(--prompt-ink);text-shadow:0 1px 3px #07060e,0 0 12px #07060e,0 0 20px #07060eb3}.cover-name[data-astro-cid-ylprcco5]{font-family:var(--display);letter-spacing:.06em;margin:.6rem 0 .5rem;font-size:clamp(2rem,6vw,3.5rem)}.cover-tagline[data-astro-cid-ylprcco5]{font-family:var(--serif);margin-bottom:2.2rem;font-size:1.1rem;font-style:italic}.cover-coming-soon[data-astro-cid-ylprcco5]{font-family:var(--serif);margin-top:1.5rem;font-size:1rem;font-style:italic}.cover-menu[data-astro-cid-ylprcco5]{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}.cover-btn[data-astro-cid-ylprcco5]{min-height:44px;font-family:var(--mono);letter-spacing:.04em;cursor:pointer;border-radius:var(--r-pill);transition:background var(--t-micro), color var(--t-micro), translate var(--t-micro);border:none;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-flex}.cover-btn-primary[data-astro-cid-ylprcco5]{background:var(--gold);color:var(--btn-primary-ink)}.cover-btn-primary[data-astro-cid-ylprcco5]:hover,.cover-btn-primary[data-astro-cid-ylprcco5]:focus-visible{background:var(--gold-bright);translate:0 -1px}.cover-btn-secondary[data-astro-cid-ylprcco5]{background:0 0}.cover-btn-secondary[data-astro-cid-ylprcco5]:hover,.cover-btn-secondary[data-astro-cid-ylprcco5]:focus-visible{color:var(--gold-bright)}.cover-btn[data-astro-cid-ylprcco5]:disabled{filter:blur(2px);cursor:not-allowed}.cover-btn[data-astro-cid-ylprcco5]:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}.cover-hotkey[data-astro-cid-ylprcco5]{opacity:.7;font-size:.75em}@media (prefers-reduced-motion:reduce){.cover-btn[data-astro-cid-ylprcco5]{transition:none}}.return-to-menu[data-astro-cid-ylprcco5]{z-index:1;min-height:44px;font-family:var(--mono);letter-spacing:.08em;color:var(--prompt-ink);text-shadow:0 1px 3px #07060e,0 0 12px #07060e,0 0 20px #07060eb3;cursor:pointer;transition:color var(--t-micro);background:0 0;border:none;padding:.5rem .75rem;font-size:.85rem;font-variant-caps:small-caps;position:fixed;bottom:1rem;right:4.5rem}.return-to-menu[data-astro-cid-ylprcco5]:hover,.return-to-menu[data-astro-cid-ylprcco5]:focus-visible{color:var(--gold-bright)}.return-to-menu[data-astro-cid-ylprcco5]:focus-visible{outline:2px solid var(--gold-bright);outline-offset:2px}@media (prefers-reduced-motion:reduce){.return-to-menu[data-astro-cid-ylprcco5]{transition:none}}
