.stage{color:#f3f1ec;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;font-family:var(--font-sans);background:#07080d;position:fixed;inset:0;overflow:hidden}.layer{position:absolute;inset:0}.bg-img{object-fit:cover;width:104%;height:104%;transition:filter 1.2s;position:absolute;inset:-2%}.bg-tint{pointer-events:none;transition:background 1.2s,opacity 1.2s;position:absolute;inset:0}.bg-placeholder{place-items:end start;padding:3.2vmin;display:grid;position:absolute;inset:0}.bg-placeholder span{letter-spacing:.2em;color:#ffffff8c;border:1px dashed #ffffff59;border-radius:6px;margin-top:4.5rem;padding:6px 10px;font-size:12px}.f-night .bg-img{filter:brightness(.55)saturate(.8)hue-rotate(-8deg)}.f-night .bg-tint{background:linear-gradient(#08103080,#080a1c59)}.f-deep-night .bg-img{filter:brightness(.36)saturate(.65)hue-rotate(-12deg)}.f-deep-night .bg-tint{background:radial-gradient(18% 12% at 30% 62%,#78aaff38,#0000 70%),radial-gradient(14% 10% at 68% 66%,#8cbeff2e,#0000 70%),linear-gradient(#060a1e8c,#04061266)}.f-dawn .bg-img{filter:brightness(1.04)saturate(.85)contrast(.95)}.f-dawn .bg-tint{background:linear-gradient(#ffd6b447,#d2e1f552)}.f-dusk .bg-img{filter:brightness(.85)saturate(1.05)}.f-dusk .bg-tint{mix-blend-mode:multiply;background:linear-gradient(#78468c52,#ff8c4640)}.f-bright .bg-img{filter:brightness(1.12)saturate(1.08)}.f-dark .bg-img{filter:brightness(.3)}.f-memory .bg-img{filter:sepia(.6)saturate(.7)contrast(.92)brightness(.95)}.f-memory .bg-tint{background:radial-gradient(#0000 45%,#28190aa6)}.cg-layer{position:absolute;inset:0;overflow:hidden}.cg-layer img{object-fit:cover;width:100%;height:100%}.grain{pointer-events:none;opacity:.12;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='160' height='160'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/></filter><rect width='100%' height='100%' filter='url(%23n)' opacity='0.6'/></svg>");animation:.6s steps(4,end) infinite grain;position:absolute;inset:-10%}.sprites{pointer-events:none;position:absolute;inset:0}.sprite{aspect-ratio:2/3;height:94vh;transition:left .5s cubic-bezier(.2,.8,.2,1),filter .35s,opacity .35s;position:absolute;bottom:0;transform:translate(-50%)}.sprite img,.sprite svg{object-fit:contain;object-position:bottom;width:100%;height:100%}.sprite.dim{filter:brightness(.62)saturate(.85)}.sprite.p-left{left:24%}.sprite.p-center{left:50%}.sprite.p-right{left:76%}.with-phone .sprite.p-center,.with-phone .sprite.p-right{left:74%}.with-phone .sprite.p-left{left:60%}.with-laptop .sprite{height:80vh;left:84%!important}.device-wrap{z-index:20;position:absolute}.device-phone{aspect-ratio:9/18.5;height:92vh;top:4vh;left:max(3vw,50% - 600px)}.device-laptop{width:min(78vw,1040px);height:min(64vh,640px);top:3.5vh;left:50%;transform:translate(-50%)}.with-sprite .device-laptop{width:min(66vw,900px);left:42%}.dialog{z-index:30;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#10121cd1,#0a0c14e6);border:1px solid #ffffff1f;border-radius:18px;width:min(94vw,1080px);min-height:21vh;margin-inline:auto;padding:2.4vh 2.8vw 2.6vh;position:absolute;bottom:3.5vh;left:0;right:0;box-shadow:0 20px 60px #00000073,inset 0 1px #ffffff0f}.with-phone .dialog{width:auto;margin-inline:0;left:calc(max(3vw,50% - 600px) + 46vh + 3vw);right:3vw}.with-laptop .dialog{min-height:18vh;bottom:2.5vh}.dialog .name{letter-spacing:.08em;color:#fff;border-radius:999px;padding:5px 18px;font-size:15px;font-weight:700;position:absolute;top:-16px;left:2.2vw;box-shadow:0 6px 18px #00000059}.dialog .text{letter-spacing:.03em;white-space:pre-wrap;font-size:clamp(16px,1.45vw,21px);line-height:1.85}.dialog.think .text{color:#b9c6dc}.dialog .next-mark{color:#ffffff80;font-size:12px;animation:1.2s step-end infinite blink;position:absolute;bottom:1.4vh;right:1.6vw}.guide{z-index:30;text-align:center;background:linear-gradient(#0000,#04050ac7 45%,#04050aeb);padding:16vh 8vw 11vh;position:absolute;bottom:0;left:0;right:0}.guide .who{letter-spacing:.5em;color:#e9b44cbf;margin-bottom:14px;font-size:12px}.guide .text{font-family:var(--font-serif);color:#f6e7c8;text-shadow:0 0 24px #e9b44c59;font-size:clamp(18px,1.9vw,27px);font-weight:600;line-height:1.9}.with-phone .guide{left:calc(max(3vw,50% - 600px) + 46vh + 1vw)}.choices{z-index:40;background:radial-gradient(#05060c8c,#05060c40);flex-direction:column;justify-content:center;align-items:center;gap:1.6vh;padding:0 6vw 10vh;display:flex;position:absolute;inset:0}.with-phone .choices{padding-left:calc(max(3vw,50% - 600px) + 46vh + 3vw)}.choice-btn{text-align:left;color:#f7f3ea;cursor:pointer;background:#12141edb;border:1px solid #ffffff29;border-radius:14px;width:min(640px,100%);padding:16px 26px;font-size:clamp(15px,1.25vw,18px);line-height:1.6;transition:transform .18s,background .18s,border-color .18s;box-shadow:0 10px 30px #00000059}.choice-btn:hover,.choice-btn:focus-visible{background:#d9572feb;border-color:#fff6;outline:none;transform:translate(6px)}.choice-btn .k{color:#ffffff80;width:1.6em;font-family:var(--font-mono);display:inline-block}.choices .prompt{letter-spacing:.3em;color:#fff9;margin-bottom:4px;font-size:13px}.topbar{z-index:60;pointer-events:none;justify-content:space-between;align-items:center;padding:14px 18px;display:flex;position:absolute;top:0;left:0;right:0}.topbar>*{pointer-events:auto}.tb-btn{color:#ffffffd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);cursor:pointer;background:#0a0c1480;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;font-size:13px;display:inline-flex}.tb-btn:hover{background:#0a0c14cc}.tb-btn.on{background:var(--rust);border-color:#0000}.time-chip{z-index:25;font-family:var(--font-mono);letter-spacing:.06em;color:#fff;text-shadow:0 2px 18px #0009;font-size:clamp(22px,2.4vw,34px);font-weight:700;position:absolute;top:64px;right:22px}@media (orientation:portrait),(max-width:760px){.sprite{height:66vh}.sprite.p-left{left:26%}.sprite.p-right{left:74%}.with-phone .sprite,.with-laptop .sprite{display:none}.device-phone{aspect-ratio:auto;height:auto;inset:56px 12px calc(22vh + 28px)}.device-laptop,.with-sprite .device-laptop{width:auto;height:auto;inset:56px 12px calc(22vh + 28px);transform:none}.dialog,.with-phone .dialog{width:auto;left:10px;right:10px;bottom:max(12px, env(safe-area-inset-bottom));min-height:22vh;margin-inline:0;padding:22px 18px 18px}.dialog .name{left:16px}.dialog .text{font-size:16px;line-height:1.8}.with-phone .guide,.guide{padding:10vh 7vw 6vh;left:0}.with-phone .choices,.choices{padding:0 16px 6vh}.time-chip{font-size:22px;top:58px;right:16px}}
