.shell[data-knot=title]{--dusk-solid:#0b0918;--city-window:#7fd8ff}.shell[data-knot=title][data-interaction=egg]{cursor:pointer}.shell[data-title-memory] .start__inner{opacity:0;visibility:hidden;pointer-events:none}.start__inner{transition:opacity .22s,visibility .22s}.shell[data-knot=title] .egg-trigger{color:var(--chrome-hi);background:var(--dusk-solid);border-color:var(--chrome-lo);top:32px;left:32px}.shell[data-knot=title] .egg-trigger svg{color:var(--city-window)}.shell[data-knot=title] .egg-trigger:focus-visible{outline-color:var(--city-window)}.shell[data-knot=title] .egg-opening{pointer-events:none}.shell[data-knot=title] .egg-opening span{background:var(--dusk-solid);color:var(--chrome-hi)}.memory-wall-controls{color:var(--chrome-hi);text-shadow:0 1px 4px #060512,0 2px 20px #060512;justify-content:space-between;align-items:end;gap:24px;display:flex;position:absolute;inset:auto 40px 28px;pointer-events:none!important}.memory-wall-controls h2{font:300 22px / 1.8 var(--font-sans);margin:0}.memory-wall-controls p{margin:4px 0 0;font-size:13px}.memory-wall-controls button,.memory-reader button{pointer-events:auto;border:1px solid var(--chrome-lo);background:var(--dusk-solid);color:var(--chrome-hi);font:400 13px / 1.5 var(--font-sans);cursor:pointer;border-radius:999px;padding:12px 20px}.memory-wall-controls button:hover,.memory-reader button:hover{border-color:var(--chrome-hi)}.memory-wall-controls button:focus-visible,.memory-reader button:focus-visible{outline:2px solid var(--city-window);outline-offset:4px}.memory-wall-controls button span,.memory-reader button span{color:var(--chrome-mid);margin-left:16px}.memory-wall-keyboard{opacity:0;flex-wrap:wrap;justify-content:center;gap:12px;display:flex;position:absolute;inset:auto 0 100px}.memory-wall-keyboard button{text-overflow:ellipsis;white-space:nowrap;max-width:200px;overflow:hidden}.memory-wall-keyboard:not(:focus-within) button{pointer-events:none}.memory-wall-keyboard:focus-within{opacity:1}.memory-letter-hint{color:var(--chrome-hi);text-shadow:0 1px 4px #060512,0 2px 20px #060512;margin:0;font-size:13px;position:absolute;bottom:28px;left:40px;pointer-events:none!important}.memory-reader{width:min(820px,100vw - 80px);max-height:calc(100vh - 64px);color:var(--chrome-hi);scrollbar-color:var(--chrome-lo) var(--dusk-solid);background:0 0;border:0;padding:0}.memory-reader::backdrop{background:#0b0918c7}.memory-reader::selection{color:#0b0918;background:#7fd8ff}.memory-reader[open][data-photo-lift],.memory-reader[open][data-photo-lift]::backdrop{animation:.18s ease-out memory-photo-arrival}@keyframes memory-photo-arrival{0%{opacity:0}to{opacity:1}}.memory-reader figure{margin:0}.memory-reader-paper{color:#252b39;background:#e5e8eb;padding:14px 14px 32px}.memory-reader-paper[data-turn]{backface-visibility:hidden;transform-origin:50%;will-change:transform}.memory-reader-paper[data-turn=out]{animation:memory-paper-turn-out var(--memory-turn-out) ease-in forwards}.memory-reader-paper[data-turn=in]{animation:memory-paper-turn-in var(--memory-turn-in) cubic-bezier(.16, 1, .3, 1) both}@keyframes memory-paper-turn-out{0%{transform:perspective(1400px)rotateY(0)}to{transform:perspective(1400px) rotateY(var(--memory-turn-edge)) scale(.97)}}@keyframes memory-paper-turn-in{0%{transform:perspective(1400px) rotateY(var(--memory-turn-edge)) scale(.97)}to{transform:perspective(1400px)rotateY(0)}}.memory-reader button[aria-disabled=true]{cursor:wait}.memory-reader-paper img{object-fit:contain;width:100%;max-height:calc(100vh - 260px);display:block}.memory-reader-note{white-space:pre-wrap;overflow-wrap:anywhere;min-height:320px;padding:32px;font-size:14px;line-height:2}.memory-reader-note p{margin:0 0 24px}.memory-reader-note__place{font-size:12px}.memory-reader-note__client{font-size:13px}.memory-reader[data-ticket-back]{overscroll-behavior:contain;scrollbar-color:var(--ticket-back-secondary) var(--ticket-back-paper);overflow-y:auto}.memory-reader-paper--ticket-back{background-color:var(--ticket-back-paper);color:var(--ticket-back-ink);background-position:100% 100%;background-size:cover;padding:0}.memory-reader-note--ticket{box-sizing:border-box;min-height:420px;color:var(--ticket-back-ink);font:400 clamp(15px, 1.2vw, 16px)/1.9 var(--font-serif);letter-spacing:.025em;padding:clamp(28px,4vw,48px) clamp(24px,5vw,52px)}.memory-reader-note--ticket .memory-reader-note__place{border-bottom:1px dashed var(--ticket-back-rule);color:var(--ticket-back-accent);font:400 12px/1.6 var(--font-sans);letter-spacing:.12em;margin-bottom:24px;padding-bottom:16px}.memory-reader-note--ticket .memory-reader-note__client{color:var(--ticket-back-secondary)}.memory-reader-note--ticket .memory-reader-note__copy{margin:0}.memory-reader-paper--ticket-back ::selection{color:var(--ticket-back-paper);background:var(--ticket-back-accent)}.memory-reader-empty{padding:48px 24px;line-height:2}.memory-reader figcaption{justify-content:space-between;align-items:center;gap:24px;padding:22px 0;display:flex}.memory-reader figcaption h2{font:300 20px / 1.8 var(--font-sans);margin:0}.memory-reader[data-memory-back] figcaption h2{font-size:18px}.memory-reader figcaption>div{gap:12px;display:flex}.memory-reader:has(.memory-letter){scrollbar-width:thin;scrollbar-color:#b59a73 #f5ead8;overscroll-behavior:contain;background:#fbf4e7;border-radius:3px;width:min(860px,100vw - 96px);box-shadow:0 20px 72px #1e130a4d}.memory-reader:has(.memory-letter)::backdrop{background:#19140ead}.memory-letter{color:#534234;font-family:var(--font-serif);background-color:#fbf4e7;background-repeat:no-repeat;background-size:100% 100%;padding:54px 96px 64px}.memory-letter::selection{color:#473525;background:#e6c99e}.memory-letter ::selection{color:#473525;background:#e6c99e}.memory-letter__header{justify-content:space-between;align-items:center;gap:24px;margin-bottom:30px;display:flex}.memory-letter h2{font:400 28px / 1.7 var(--font-serif);letter-spacing:.06em;margin:0}.memory-letter h2:focus{outline:none}.memory-letter p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 8px;font-size:16px;line-height:1.9}.memory-letter .memory-letter__salutation{margin-bottom:24px}.memory-letter .memory-letter__break{height:1.9em;margin:0}.memory-letter footer{text-align:right;font:400 15px / 1.8 var(--font-sans);letter-spacing:.06em;margin:38px 0 0}.memory-letter .memory-letter__close{color:#634c35;white-space:nowrap;background:0 0;border-color:#b59a73;padding:8px 14px}.memory-letter .memory-letter__close span{color:#78604a;margin-left:10px}.memory-letter .memory-letter__close:hover{background:#eddfc8;border-color:#96734b}.memory-letter .memory-letter__close:focus-visible{outline-color:#8b6337}@media (prefers-reduced-motion:reduce){.start__inner{transition:none}.memory-reader[open][data-photo-lift],.memory-reader[open][data-photo-lift]::backdrop{animation:none}.memory-reader-paper[data-turn]{will-change:auto;animation:none;transform:none}}.shell[data-title-birthday] .start__inner{opacity:0;visibility:hidden;pointer-events:none}.suki-birthday{width:100%;max-width:none;height:100%;max-height:none;color:var(--chrome-hi,#f4f6f9);scrollbar-color:var(--city-window,#7fd8ff) #0b0918;background:0 0;border:0;outline:0;margin:0;padding:0;position:fixed;inset:0;overflow:auto}.suki-birthday::backdrop{background:#0b09181f}.suki-birthday ::selection{color:#0b0918;background:var(--city-window,#7fd8ff)}.suki-birthday__accessible-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.suki-birthday__close{z-index:2;border:1px solid var(--chrome-lo,#6f7682);min-height:44px;color:var(--chrome-hi,#f4f6f9);cursor:pointer;background:#0b0918;align-items:center;gap:24px;padding:10px 16px;display:flex;position:absolute;top:28px;right:32px}.suki-birthday__close kbd{font:inherit;color:var(--chrome-mid,#c9cfd8)}.suki-birthday__close:hover{border-color:var(--city-window,#7fd8ff)}.suki-birthday__close:focus-visible{outline:2px solid var(--city-window,#7fd8ff);outline-offset:4px}.suki-birthday__opening{text-align:center;text-shadow:0 2px 10px #0b0918;margin:0;position:absolute;inset:auto 24px 36px}.suki-birthday__wish{text-align:center;background:#0b0918e6;width:max-content;max-width:calc(100% - 80px);margin:8vh auto 0;padding:20px 28px;animation:.65s ease-out both birthday-wish;position:relative}.suki-birthday__wish h2{font:400 clamp(24px, 2.7vw, 38px)/1.5 var(--font-serif);text-wrap:balance;margin:0}.suki-birthday__wish p{color:var(--chrome-mid,#c9cfd8);margin:10px 0 0;line-height:1.8}.shell[data-birthday-sky] .suki-birthday__wish{clip-path:inset(50%);white-space:nowrap;background:0 0;width:1px;height:1px;margin:-1px;padding:0;animation:none;position:absolute;overflow:hidden}.shell[data-birthday-sky] .suki-birthday__flight{box-sizing:border-box;align-items:start;min-height:100dvh;padding-top:34dvh;padding-bottom:32px}.shell[data-birthday-sky] .suki-birthday__photo{width:min(380px,42vw,60dvh - 140px)}.suki-birthday__flight{perspective:1000px;place-items:center;min-height:54vh;padding:24px 40px 60px;display:grid}.suki-birthday__photo{background:var(--birthday-paper);width:min(400px,42vw,70dvh - 150px);color:var(--birthday-ink);margin:0;padding:12px 12px 22px;animation:1.6s cubic-bezier(.16,1,.3,1) both birthday-photo;transform:rotate(-2deg);box-shadow:0 22px 60px #0b09186b}.suki-birthday__photo img{object-fit:contain;width:100%;height:auto;display:block}.suki-birthday__photo figcaption{padding:15px 4px 0}.suki-birthday__photo figcaption p{font:400 22px/1.5 var(--font-serif);margin:0 0 8px}.suki-birthday__photo figcaption span{font-size:13px;line-height:1.7;display:block}.suki-birthday__missing{aspect-ratio:1;text-align:center;place-items:center;padding:32px;line-height:1.8;display:grid}.suki-birthday__save{text-align:center;color:var(--chrome-mid,#c9cfd8);margin:0 24px 24px}@keyframes birthday-wish{0%{opacity:0}to{opacity:1}}@keyframes birthday-photo{0%{opacity:0;transform:translate3d(-28vw,-10vh,-700px)rotateX(18deg)rotateY(-25deg)rotate(-16deg)}20%{opacity:1}to{opacity:1;transform:translate(0,0)rotateX(0)rotateY(0)rotate(-2deg)}}@media (prefers-reduced-motion:reduce){.suki-birthday__photo,.suki-birthday__wish{animation:none;transform:none}}.shell[data-title-flight] .start__inner{opacity:0;visibility:hidden;pointer-events:none}.future-flight{width:100%;max-width:none;height:100%;max-height:none;color:var(--chrome-hi,#f4f6f9);scrollbar-color:var(--city-window,#7fd8ff) #0b0918;background:0 0;border:0;outline:0;margin:0;padding:0;position:fixed;inset:0;overflow:auto}.future-flight::backdrop{background:#0b09181f;transition:background .7s ease-out}.future-flight[data-stage=ticket]::backdrop{background:#0b091875}.future-flight ::selection{color:var(--flight-ink);background:var(--city-window,#7fd8ff)}.future-flight__accessible-title{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.future-flight__close{z-index:2;border:1px solid var(--chrome-lo,#6f7682);min-height:44px;color:var(--chrome-hi,#f4f6f9);cursor:pointer;background:#0b0918;align-items:center;gap:24px;padding:10px 16px;display:flex;position:fixed;top:28px;right:32px}.future-flight__close kbd{color:var(--chrome-mid,#c9cfd8);font:inherit}.future-flight__close:hover{border-color:var(--city-window,#7fd8ff)}.future-flight__close:focus-visible{outline:2px solid var(--city-window,#7fd8ff);outline-offset:4px}.future-flight__opening{text-align:center;text-shadow:0 2px 10px #0b0918;margin:0;position:absolute;inset:auto 24px 36px}.future-flight__stage{box-sizing:border-box;perspective:1400px;place-items:center;min-height:100%;padding:96px 48px 64px;display:grid}.future-flight__ticket{width:min(1040px, 100%, calc((100dvh - 160px) * var(--flight-art-aspect)));aspect-ratio:var(--flight-art-aspect);color:var(--flight-ink);background:var(--flight-paper);transform-origin:50%;animation:future-ticket-unfold var(--flight-unfold-duration) cubic-bezier(.16, 1, .3, 1) both;grid-template-columns:minmax(0,1fr) 190px;display:grid;position:relative;box-shadow:0 28px 80px #0b09187a}.future-flight__ticket[hidden]{display:none}.future-flight__art{object-fit:contain;opacity:0;width:100%;height:100%;display:block;position:absolute;inset:0}.future-flight__art--ready{opacity:1}.future-flight__ticket--illustrated{background:0 0;display:block}.future-flight__ticket--illustrated .future-flight__main,.future-flight__ticket--illustrated .future-flight__stub{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.future-flight__main{padding:32px 38px 36px}.future-flight__main h2{font:400 clamp(18px, 2vw, 24px)/1.5 var(--font-serif);text-wrap:balance;margin:0}.future-flight dl{margin:0}.future-flight dt{color:var(--flight-secondary);margin:0 0 8px;font-size:13px;line-height:1.5}.future-flight dd{margin:0}.future-flight__destination{padding:30px 0 32px}.future-flight__destination dd{font:400 clamp(48px, 6vw, 76px)/1.15 var(--font-serif);letter-spacing:.08em}.future-flight__details{grid-template-columns:1fr 2fr;gap:24px;display:grid}.future-flight__details dd{font-size:18px;line-height:1.6}.future-flight__stub{border-left:1px dashed var(--flight-perforation);background:var(--flight-stub);flex-direction:column;justify-content:center;align-items:center;gap:32px;padding:28px 24px;display:flex}.future-flight__stub svg{width:72px;height:90px;color:var(--flight-airplane);transform:rotate(20deg)}.future-flight__stub p{font:400 24px/1.8 var(--font-serif);text-wrap:balance;margin:0}.future-flight__save{text-align:center;margin:0;font-size:13px;position:absolute;inset:auto 24px 24px}@keyframes future-ticket-unfold{0%{opacity:.25;transform:rotateX(-48deg)rotateY(-12deg)scaleX(.25)scaleY(.8)}35%{opacity:1}to{opacity:1;transform:rotateX(0)rotateY(0)scaleX(1)scaleY(1)}}@media (width<=720px){.future-flight__stage{padding:96px 24px 56px}.future-flight__ticket{grid-template-columns:minmax(0,1fr)}.future-flight__main{padding:24px}.future-flight__stub{border-left:0;border-top:1px dashed var(--flight-perforation);flex-direction:row;gap:24px;padding:20px 24px}.future-flight__stub svg{flex:none;width:36px;height:45px}.future-flight__stub p{font-size:21px}.future-flight__details{grid-template-columns:1fr 2fr;gap:16px}}@media (prefers-reduced-motion:reduce){.future-flight__ticket{animation:none;transform:none}.future-flight::backdrop{transition:none}}.shell[data-interaction=egg]:not([data-looking=true]) canvas,.shell[data-interaction=egg]:not([data-looking=true]) .click-catcher{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='36' viewBox='0 0 24 28' fill='none'%3E%3Cpath d='M12 2C8 2 3 12 3 18a9 9 0 0 0 18 0C21 12 16 2 12 2Z' fill='%23090b12' stroke='%23f2efe9' stroke-width='1.5'/%3E%3Cpath d='m4 16 4-2 4 3 4-3 4 2' stroke='%23d9a86c' stroke-width='1.5'/%3E%3C/svg%3E") 16 18,pointer}.egg-trigger{color:var(--ink);background:var(--panel-strong);border:1px solid var(--line);opacity:0;align-items:center;gap:12px;padding:8px 12px;font-size:13px;display:flex;position:absolute;top:60px;left:24px;pointer-events:none!important}.egg-trigger--hovered,.egg-trigger:focus-visible{opacity:1;pointer-events:auto!important}.egg-trigger svg{color:var(--accent)}.egg-trigger:focus-visible,.egg-photo button:focus-visible{outline:2px solid var(--accent-cool);outline-offset:4px}.egg-opening{z-index:40;outline:0;justify-content:center;align-items:flex-end;padding-bottom:28px;display:flex;position:absolute;inset:0}.egg-opening span{background:var(--panel-strong);color:var(--ink);padding:10px 18px;font-size:13px;line-height:1.7}.egg-photo{width:min(760px,100vw - 64px);max-height:calc(100vh - 48px);color:var(--ink);scrollbar-color:var(--ink-faint) var(--panel-strong);background:0 0;border:0;padding:0;overflow-y:auto}.egg-photo::backdrop{background:var(--panel)}.egg-photo figure{margin:0}.egg-photo__paper{background:var(--ink);color:var(--panel-strong);margin:8px;padding:12px 12px 28px;transform:rotate(-.7deg)}.egg-photo__paper img{object-fit:contain;width:100%;max-height:calc(100vh - 240px);display:block}.egg-photo__paper>p{margin:0;padding:48px 24px;line-height:1.7}.egg-photo figcaption{justify-content:space-between;align-items:center;gap:24px;padding:20px 12px;display:flex}.egg-photo h2{font:400 22px / 1.7 var(--font-serif);margin:0}.egg-photo figcaption p{color:var(--ink-dim);margin:4px 0 0;font-size:13px}.egg-photo button{border:1px solid var(--line);background:var(--panel-strong);color:var(--ink);white-space:nowrap;padding:12px 16px;font-size:13px}.egg-photo button span{color:var(--ink-dim);margin-left:18px}.egg-photo button:hover{border-color:var(--accent)}.egg-empty{border:1px solid var(--line);background:var(--panel-strong);width:fit-content;max-width:calc(100vw - 64px);color:var(--ink);font-family:var(--font-sans);outline:0;margin:0 auto;padding:12px 16px;position:fixed;inset:auto 0 32px}.egg-empty[open]{align-items:center;gap:28px;display:flex}.egg-empty::backdrop{background:0 0}.egg-empty p{margin:0;font-size:16px;line-height:1.6}.egg-empty span{color:var(--ink-dim);margin-top:4px;font-size:12px;display:block}.egg-empty button{color:var(--ink-dim);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:10px 12px;font-size:14px}.egg-empty button:hover{color:var(--ink)}.egg-empty button:focus-visible{outline:2px solid var(--accent-cool);outline-offset:2px}.egg-empty kbd{font:inherit;margin-left:12px;font-size:12px}.author-settings{z-index:30;align-items:center;gap:10px;display:flex;position:absolute;top:24px;right:24px}.author-settings__toggle{color:#c9cfd8;cursor:pointer;background:#17152ce6;border:1px solid #6f7682;border-radius:50%;place-items:center;width:44px;height:44px;display:grid}.author-settings__toggle svg{width:23px;height:23px}.author-settings__toggle:enabled:hover{color:#f4f6f9;border-color:#c9cfd8}.author-settings__toggle:disabled{opacity:.55;cursor:not-allowed}.author-settings__toggle[aria-busy=true]{cursor:wait}.author-settings__status{box-sizing:border-box;color:#f4f6f9;background:#17152c;border:1px solid #6f7682;border-radius:12px;width:280px;max-width:calc(100vw - 48px);margin:0;padding:12px 16px;font-size:13px;line-height:1.8;position:absolute;top:54px;right:0}.author-settings__menu{box-sizing:border-box;color:#f4f6f9;background:#17152c;border:1px solid #6f7682;border-radius:12px;width:300px;max-width:calc(100vw - 48px);margin:0;padding:20px;position:fixed;inset:78px 24px auto auto}.author-settings__audio h2{margin:0 0 12px;font-size:16px;font-weight:500}.author-settings__sound{width:100%;min-height:48px;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:20px;padding:8px 0;font-size:15px;display:flex}.author-settings__sound:hover{color:#7fd8ff}.author-settings__sound-state{color:#c9cfd8;align-items:center;gap:10px;font-size:12px;display:flex}.author-settings__switch{box-sizing:border-box;background:#0b0918;border:1px solid #6f7682;border-radius:999px;align-items:center;width:38px;height:22px;padding:3px;display:inline-flex}.author-settings__switch span{background:#c9cfd8;border-radius:50%;width:14px;height:14px;transition:transform .16s}.author-settings__sound[aria-checked=true] .author-settings__switch{background:#7fd8ff;border-color:#7fd8ff}.author-settings__sound[aria-checked=true] .author-settings__switch span{background:#17152c;transform:translate(16px)}.author-settings__credit{color:#c9cfd8;margin:14px 0 0;font-size:12px;line-height:1.8}.author-settings__credit a{color:inherit;text-underline-offset:3px}.author-settings__credit a:hover{color:#7fd8ff}.author-settings__memories{width:100%;font:inherit;color:inherit;cursor:pointer;background:#17152c;border:1px solid #6f7682;border-radius:999px;margin-top:20px;padding:12px 16px;font-size:13px}.author-settings__memories:hover{color:#7fd8ff}.author-settings :focus-visible,.author-settings__menu :focus-visible{outline-offset:5px;outline:2px solid #7fd8ff}@media (prefers-reduced-motion:reduce){.author-settings__switch span{transition:none}}.author-dialog{color:#f4f6f9;background:#0b0918;border:1px solid #6f7682;width:min(1120px,100vw - 64px);height:min(940px,100dvh - 64px);max-height:none;padding:0}.author-dialog[open]{flex-direction:column;display:flex}.author-dialog::backdrop{background:#0b0918d9}.author-dialog__header,.author-dialog__footer{flex-shrink:0;justify-content:space-between;align-items:center;gap:24px;padding:18px 24px;display:flex}.author-dialog__header{border-bottom:1px solid #6f7682}.author-dialog__header h2{margin:0;font-size:18px;font-weight:400}.author-dialog button{color:#f4f6f9;font:inherit;cursor:pointer;background:#17152c;border:1px solid #c9cfd8;border-radius:999px;padding:10px 20px}.author-dialog button:disabled{opacity:.5;cursor:wait}.author-dialog__header button span{color:#c9cfd8;margin-left:16px}.author-dialog iframe{background:#0b0918;border:0;flex:1;width:100%;min-height:0}.author-dialog__status,.author-dialog__footer p{color:#c9cfd8;margin:0;font-size:13px}.author-dialog__status{padding:16px 24px}.author-dialog__footer{border-top:1px solid #6f7682}.cinematic{background:var(--cinematic-surface);width:100vw;max-width:none;height:100dvh;max-height:none;color:var(--cinematic-ink);font-family:var(--font-sans);border:0;outline:0;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.cinematic::backdrop{background:#0b1020}.cinematic--fade-in[open]{animation:cinematic-enter var(--cinematic-reveal-ms) ease-out both}@keyframes cinematic-enter{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.cinematic--fade-in[open]{animation:none}}.cinematic__backdrop,.cinematic__veil{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.cinematic__backdrop{object-fit:cover}.cinematic__veil{background:var(--cinematic-veil)}.cinematic__video{width:100%;height:100%;position:relative}.cinematic__video .cinematic__screen{width:100%;height:100%}.cinematic__screen{min-width:0;min-height:0;position:relative}.cinematic__composition{box-sizing:border-box;grid-template-columns:minmax(0,1.95fr) minmax(300px,1fr);align-items:center;gap:clamp(36px,4vw,72px);width:100%;max-width:1920px;height:100%;margin-inline:auto;padding:clamp(80px,10vh,112px) clamp(32px,3.3vw,64px) clamp(40px,7vh,80px);display:grid;position:relative}.cinematic__composition .cinematic__screen{aspect-ratio:16/9;background:var(--cinematic-surface);width:100%;max-height:calc(100dvh - 160px);box-shadow:0 24px 64px #04050a61}.cinematic--with-footer[open]{grid-template-rows:minmax(0,1fr) auto;display:grid}.cinematic--with-footer .cinematic__composition{min-height:0;padding-block:72px 24px}.cinematic__footer{box-sizing:border-box;justify-content:space-between;align-items:center;gap:24px;width:100%;max-width:1920px;margin-inline:auto;padding:0 clamp(32px,3.3vw,64px) 24px;display:flex;position:relative}.cinematic__outro{gap:4px;display:grid}.cinematic__outro h2{color:var(--cinematic-ink);margin:0;font-size:20px;font-weight:400;line-height:1.2}.cinematic__outro p{color:var(--cinematic-secondary);margin:0;font-size:14px;line-height:1.4}.cinematic__footer button{background:var(--cinematic-surface);color:var(--cinematic-ink);font:inherit;cursor:pointer;border:1px solid #c5cadb5c;border-radius:999px;padding:12px 22px;font-size:14px}.cinematic__image-stage{width:100%;height:100%;perspective:var(--cinematic-perspective)}.cinematic__image-unavailable{box-sizing:border-box;width:100%;height:100%;color:var(--cinematic-secondary);text-align:center;place-items:center;padding:24px;font-size:16px;line-height:1.8;display:grid}.cinematic__image-unavailable p{max-width:24em;margin:0}.cinematic__image{width:100%;height:100%;transform-style:preserve-3d;opacity:0;margin:0}.cinematic__image--ready{opacity:1}.cinematic__media{object-fit:contain;opacity:0;width:100%;height:100%;display:block;position:relative}.cinematic__media--ready{opacity:1;animation:.42s cubic-bezier(.16,1,.3,1) both cinematic-reveal}.cinematic__skip,.cinematic__next,.cinematic__play{background:var(--cinematic-surface);color:var(--cinematic-ink);font:inherit;cursor:pointer;border:1px solid #c5cadb5c;border-radius:999px;padding:12px 22px;font-size:14px;position:absolute}.cinematic__skip{top:32px;right:36px}.cinematic__skip,.cinematic__play{z-index:5}.cinematic.cinematic--memory-entry .cinematic__play{position:fixed;left:50%}.cinematic__skip kbd{font:inherit;margin-left:16px;font-size:12px}.cinematic__next{bottom:32px;right:36px}.cinematic__play{top:50%;left:50%;transform:translate(-50%,-50%)}.cinematic button:hover{border-color:var(--cinematic-accent);color:var(--cinematic-accent)}.cinematic button:focus-visible{outline:2px solid var(--cinematic-accent);outline-offset:4px}.cinematic ::selection{color:var(--cinematic-ink);background:#9ed9f347}.cinematic__caption{width:max-content;max-width:min(44em,100% - 96px);color:var(--cinematic-ink);text-align:center;text-wrap:pretty;background:#05070be0;margin:0;padding:12px 20px;font-size:18px;line-height:1.8;position:absolute;bottom:88px;left:50%;transform:translate(-50%)}.cinematic__loading{background:#05070b;margin:0;padding:12px 20px;font-size:14px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.cinematic__dedication{min-width:0;font-family:var(--font-serif);color:var(--cinematic-secondary);text-shadow:var(--cinematic-neon-body);flex-direction:column;gap:clamp(18px,2.6vh,28px);font-size:clamp(18px,1.35vw,20px);line-height:1.85;display:flex}.cinematic__dedication p{opacity:0;visibility:hidden;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;transition:opacity .18s ease-out;position:relative}.cinematic__dedication p:first-of-type{color:var(--cinematic-ink);text-shadow:var(--cinematic-neon-opening);margin-bottom:8px;font-size:clamp(26px,2.1vw,34px);line-height:1.5}.cinematic__dedication p:last-of-type{color:var(--cinematic-rose);text-shadow:var(--cinematic-neon-closing);padding-top:8px;font-size:clamp(20px,1.5vw,23px)}.cinematic__dedication .cinematic__dedication-line--visible{visibility:visible;opacity:1}.cinematic__dedication--long{gap:8px;font-size:16px;line-height:1.6}.cinematic__dedication--long p:first-of-type{margin-bottom:0;font-size:18px;line-height:1.5}.cinematic__dedication--long p:last-of-type{padding-top:0;font-size:18px}.cinematic__character{opacity:0;position:relative}.cinematic__character--visible{opacity:1}.cinematic__character--caret:after{content:"";background:var(--cinematic-accent);width:1px;height:1em;box-shadow:var(--cinematic-neon-caret);position:absolute;top:.1em;left:calc(100% + 2px)}.cinematic__accessible{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}@media (width<=1100px){.cinematic__composition{grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:28px;padding-inline:24px}.cinematic__footer{padding-inline:24px}.cinematic__dedication--long p:first-of-type{font-size:16px}}@media (height<=680px){.cinematic__composition{padding-block:64px 32px}.cinematic__dedication{gap:12px;font-size:16px;line-height:1.7}.cinematic__dedication p:first-of-type{margin-bottom:4px;font-size:24px}.cinematic__dedication p:last-of-type{padding-top:4px;font-size:18px}.cinematic--with-footer .cinematic__composition{padding-block:64px 16px}.cinematic__dedication--long{gap:4px;font-size:16px;line-height:1.5}.cinematic__dedication--long p:first-of-type{margin-bottom:0;font-size:16px}.cinematic__dedication--long p:last-of-type{padding-top:0;font-size:16px}}@keyframes cinematic-reveal{0%{opacity:0}to{opacity:1}}.memory-entry{z-index:3;opacity:1;transition:opacity var(--memory-dissolve) ease-in-out;background:#05070b;position:absolute;inset:0;overflow:hidden}.memory-entry__ambient{object-fit:cover;filter:blur(28px)saturate(.65);opacity:.6;width:110%;height:110%;position:absolute;inset:-5%}.memory-entry__photo{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.memory-entry__wash{background:var(--memory-paper);opacity:0;position:absolute;inset:0}.memory-entry--loaded{animation:memory-exposure var(--memory-exposure) ease-in-out var(--memory-hold) both}.memory-entry--loaded .memory-entry__wash{animation:memory-wash var(--memory-exposure) ease-in-out var(--memory-hold) both}.memory-entry--reveal{opacity:0}@keyframes memory-exposure{0%{filter:brightness()saturate()}to{filter:brightness(var(--memory-brightness)) saturate(var(--memory-saturation))}}@keyframes memory-wash{0%{opacity:0}to{opacity:var(--memory-wash-level)}}@media (prefers-reduced-motion:reduce){.cinematic__media--ready{animation:none}.cinematic__dedication p{transition:none}}.cinematic-note{box-sizing:border-box;width:100%;height:100%;color:var(--note-ink);place-items:center;padding:88px 32px 24px;display:grid}.cinematic-note__paper{aspect-ratio:4/3;background:var(--note-paper);width:min(980px,100%,133.33dvh - 149.33px);position:relative;overflow:hidden;box-shadow:0 24px 70px #0b09187a}.cinematic-note[data-ready=true] .cinematic-note__paper{animation:note-unfold var(--note-unveil) cubic-bezier(.16, 1, .3, 1) both}.cinematic-note__art{object-fit:contain;width:100%;height:100%;position:absolute;inset:0}.cinematic-note__reading{box-sizing:border-box;scrollbar-color:var(--note-secondary) var(--note-paper);background:linear-gradient(90deg, color-mix(in srgb, var(--note-paper) 90%, transparent), color-mix(in srgb, var(--note-paper) 70%, transparent) 78%, transparent);width:68%;font:400 clamp(16px, 1.35vw, 18px)/1.7 var(--font-serif);padding:clamp(20px,3vh,32px) 6%;position:absolute;inset:0 auto 0 0;overflow:auto}.cinematic-note__reading:focus-visible{outline:2px solid var(--note-edge);outline-offset:-4px}.cinematic-note__reading h2{font:400 clamp(22px, 2vw, 28px)/1.45 var(--font-serif);text-wrap:balance;margin:0 0 20px}.cinematic-note__body p{white-space:pre-line;margin:0 0 14px}.cinematic-note__signature{color:var(--note-secondary);text-align:right;margin:20px 0 0}.cinematic-note ::selection{color:var(--note-ink);background:var(--note-edge)}@keyframes note-unfold{0%{transform:perspective(1400px)rotateX(-5deg)scaleX(.96)}to{transform:perspective(1400px)rotateX(0)scaleX(1)}}@media (height<=760px){.cinematic-note__reading{padding-block:20px;font-size:16px;line-height:1.6}.cinematic-note__reading h2{margin-bottom:14px;font-size:22px}.cinematic-note__body p{margin-bottom:10px}.cinematic-note__signature{margin-top:14px}}@media (width<=720px){.cinematic-note{padding-inline:16px}.cinematic-note__paper{aspect-ratio:auto;width:100%;height:100%;max-height:760px}.cinematic-note__art{object-fit:cover;object-position:right;opacity:.4}.cinematic-note__reading{background:color-mix(in srgb, var(--note-paper) 80%, transparent);width:100%;padding:24px}}@media (prefers-reduced-motion:reduce){.cinematic-note[data-ready=true] .cinematic-note__paper{animation:none;transform:none}}.season-finale-bridge{z-index:40;color:var(--finale-ink);font-family:var(--font-sans);place-items:center;display:grid;position:fixed;inset:0}.season-finale-bridge:before{content:"";background:var(--finale-surface);animation:finale-cover var(--finale-cover-ms) ease-in-out both;animation-play-state:var(--finale-play-state);position:absolute;inset:0}.season-finale-bridge__card{text-align:center;opacity:0;padding:32px;position:relative}.season-finale-bridge__card h2{letter-spacing:.08em;margin:0;font-size:32px;font-weight:400;line-height:1.5}.season-finale-bridge__card p{color:var(--finale-secondary);margin:20px 0 0;font-size:16px;line-height:1.8}.season-finale-bridge[data-phase=card] .season-finale-bridge__card{animation:.35s ease-out both finale-cover;animation-play-state:var(--finale-play-state)}.season-finale-bridge[data-phase=out] .season-finale-bridge__card{animation:finale-card-out var(--finale-card-out-ms) ease-in both;animation-play-state:var(--finale-play-state)}.season-finale-bridge[data-phase=card]:before,.season-finale-bridge[data-phase=out]:before{opacity:1;animation:none}.shell[data-outro=true] .shell__ui{opacity:0;transition:opacity .6s}.season-finale-bridge[data-reduced=true]:before,.season-finale-bridge[data-reduced=true][data-phase=card] .season-finale-bridge__card{opacity:1;animation:none}@keyframes finale-cover{0%{opacity:0}to{opacity:1}}@keyframes finale-card-out{0%{opacity:1}to{opacity:0}}@media (prefers-reduced-motion:reduce){.shell[data-outro=true] .shell__ui{transition:none}}:root{--ink:#f2efe9;--ink-dim:#b9b3a8;--ink-faint:#8b867c;--panel:#090b12db;--panel-strong:#06080ef2;--line:#f2efe924;--accent:#d9a86c;--accent-cool:#7fb3ff;--chrome-hi:#f4f6f9;--chrome-mid:#c9cfd8;--chrome-lo:#6f7682;--holo:linear-gradient(90deg, #ff6ec7 0%, #7fd8ff 50%, #b8ff9a 100%);--dusk-ink:#0a08188c;--sky-lum:0;--day-ink:#1c2030;--font-serif:"Songti SC", "Noto Serif SC", "Source Han Serif SC", "STZhongsong", Georgia, serif;--font-sans:"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Noto Sans SC", system-ui, -apple-system, "Segoe UI", sans-serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;background:#05060a;overflow:hidden}button{font:inherit;color:inherit;cursor:pointer}.shell{background:#05060a;width:100%;height:100%;position:relative;overflow:hidden}.shell__stage{position:absolute;inset:0}.shell__vignette{pointer-events:none;background:radial-gradient(at 50% 45%,#0000 42%,#0000008c 100%),linear-gradient(#0000006b 0%,#0000 22%);position:absolute;inset:0}.shell__fade{pointer-events:none;opacity:0;transition:opacity var(--scene-reveal-ms,.38s) ease;background:#04050a;position:absolute;inset:0}.shell__fade--on{opacity:1;transition:opacity var(--scene-cover-ms,.16s) ease}.shell__ui{pointer-events:none;position:absolute;inset:0}.shell__ui>*{pointer-events:auto}.click-catcher{cursor:pointer;background:0 0;border:0;padding:0;position:absolute;inset:0}.shell__ui>.stage-navigation-hint{color:var(--ink);font:12px / 1.7 var(--font-sans);letter-spacing:.06em;pointer-events:none;text-shadow:0 1px 3px #070a12,0 2px 12px #070a12;margin:0;position:absolute;top:20px;left:24px}.shell[data-looking=true],.shell[data-looking=true] .click-catcher{cursor:grabbing;-webkit-user-select:none;user-select:none}.dialogue{width:min(588px,100% - 32px);min-height:110px;max-height:calc(100% - clamp(14px,2.7vh,32px) - 20px);color:var(--ink);box-shadow:0 12px 34px var(--dialogue-shadow);background-repeat:no-repeat;background-size:100% 100%;border-radius:8px;flex-direction:column;padding:18px 24px 16px;animation:.42s both panel-in;display:flex;position:absolute;bottom:clamp(14px,2.7vh,32px);left:50%;transform:translate(-50%)}.dialogue[data-portrait]{padding-left:88px}.dialogue[data-portrait]:not(:has(.dialogue__portrait)){padding-left:24px}.dialogue__portrait-frame:not(:has(img)){display:none}.dialogue ::selection{background:color-mix(in srgb, var(--accent) 22%, var(--surface));color:var(--ink)}.dialogue :is(button,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:3px}@keyframes panel-in{0%{opacity:0;transform:translate(-50%,14px)}to{opacity:1;transform:translate(-50%)}}.dialogue__speaker{color:var(--accent);letter-spacing:.14em;margin:0 0 7px;font-size:10px;font-weight:600}.dialogue__portrait-frame{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:56px;height:56px;display:block;position:absolute;top:18px;left:16px;overflow:hidden}.dialogue__portrait{object-fit:cover;width:100%;height:100%;display:block}.dialogue__body{scrollbar-width:thin;scrollbar-color:var(--line) transparent;flex-direction:column;gap:8px;min-height:0;max-height:18vh;padding:2px 4px 2px 0;display:flex;overflow-y:auto}.dialogue__line{font-family:var(--font-serif);letter-spacing:.02em;flex-shrink:0;margin:0;font-size:clamp(12px,.9vw,13px);line-height:1.95;animation:.46s both line-in}@keyframes line-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.dialogue__line--past{color:var(--ink-dim)}.dialogue__line--current{color:var(--ink)}.dialogue__line--unspoken{color:var(--unspoken);text-shadow:0 0 10px #e8bdd824;font-weight:500}.dialogue__line--speech{border-left:1px solid var(--accent);padding-left:10px;font-style:normal}.dialogue__advance{color:var(--ink-faint);letter-spacing:.1em;background:0 0;border:0;align-items:center;gap:7px;margin:9px 0 0 auto;padding:4px 2px;font-size:10px;display:flex}.dialogue__advance:hover{color:var(--ink-dim)}.dialogue__caret{animation:1.4s ease-in-out infinite caret}@keyframes caret{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(3px)}}.chapter-pause>p{color:var(--ink-dim);margin:12px 0 0;font-size:10px;line-height:1.7}.choices{border-top:1px solid var(--line);flex-direction:column;gap:6px;margin-top:12px;padding-top:12px;display:flex}.choice{text-align:left;border:1px solid var(--line);width:100%;min-height:36px;color:var(--ink-dim);background:#ffffff08;border-left:2px solid #0000;border-radius:2px;align-items:center;gap:9px;padding:9px 11px;transition:background .18s,border-color .18s,color .18s,transform .18s;display:flex}.choice:hover:not(:disabled),.choice--focused:not(:disabled){border-left-color:var(--accent);color:var(--ink);background:#d9a86c1a;transform:translate(3px)}.choice:disabled{opacity:.45;cursor:default}.choice__index{width:14px;color:var(--ink-faint);font-variant-numeric:tabular-nums;flex:none;font-size:10px}.choice__text{font-family:var(--font-serif);font-size:clamp(11px,.8vw,12px);line-height:1.6}.dialogue .choices,.dialogue .chapter-pause,.dialogue .free-action,.dialogue__advance{flex-shrink:0}.dialogue .choice{background:var(--control-surface);border-left-width:1px;border-radius:6px}.dialogue .choice:hover:not(:disabled),.dialogue .choice--focused:not(:disabled){background:color-mix(in srgb, var(--accent) 13%, var(--surface));border-color:var(--accent)}.dialogue .free-action__input{background:var(--control-surface);caret-color:var(--accent)}.dialogue .free-action__input::placeholder{color:var(--ink-faint);opacity:1}.dialogue .free-action__example{border-color:var(--line)}.dialogue .free-action__submit{color:var(--surface)}.free-action{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.free-action--thinking{color:var(--accent-cool);font-family:var(--font-serif);letter-spacing:.24em;align-items:center;gap:8px;font-size:11px;display:flex}.free-action__pulse{background:var(--accent-cool);border-radius:50%;width:6px;height:6px;animation:1.3s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.25)}}.free-action__title{font-family:var(--font-serif);color:var(--accent);letter-spacing:.06em;margin-bottom:8px;font-size:12px}.free-action__input{border:1px solid var(--line);width:100%;color:var(--ink);font-family:var(--font-serif);resize:none;background:#0006;border-radius:2px;outline:none;padding:8px 10px;font-size:12px;line-height:1.7;transition:border-color .18s}.free-action__input:focus{border-color:var(--accent)}.free-action__row{justify-content:space-between;align-items:flex-end;gap:11px;margin-top:8px;display:flex}.free-action__examples{flex-wrap:wrap;gap:4px;display:flex}.free-action__example{color:var(--ink-faint);background:0 0;border:1px dashed #f2efe92e;border-radius:999px;padding:4px 7px;font-size:10px;transition:color .16s,border-color .16s}.free-action__example:hover{color:var(--ink-dim);border-color:var(--accent)}.free-action__submit{background:var(--accent);color:#14100a;letter-spacing:.2em;border:0;border-radius:2px;flex:none;padding:7px 18px;font-size:11px;font-weight:600;transition:opacity .16s}.free-action__submit:disabled{opacity:.3;cursor:default}.gate ::selection{color:var(--chrome-hi);background:#7fd8ff4d}.start ::selection{color:var(--chrome-hi);background:#7fd8ff4d}.gate{-webkit-backdrop-filter:blur(18px)saturate(80%)brightness(.75);backdrop-filter:blur(18px)saturate(80%)brightness(.75);background:radial-gradient(70% 62% at 50% 45%,#0a0818e6,#0a081899 78%);justify-content:center;align-items:center;transition:opacity .9s cubic-bezier(.16,1,.3,1),-webkit-backdrop-filter .9s cubic-bezier(.16,1,.3,1),backdrop-filter .9s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;inset:0}.gate--opening{opacity:0;-webkit-backdrop-filter:blur()saturate();backdrop-filter:blur()saturate();pointer-events:none}.gate__inner{text-align:center;width:min(420px,100% - 48px);animation:1.4s cubic-bezier(.16,1,.3,1) both gate-in}@keyframes gate-in{0%{opacity:0;filter:blur(6px)}to{opacity:1;filter:blur()}}.gate__line{font-family:var(--font-sans);letter-spacing:.08em;color:var(--chrome-mid);margin:0 0 40px;font-size:15px;font-weight:300;line-height:2.2}.gate__form{flex-direction:column;align-items:center;gap:20px;display:flex}.gate__input{width:min(260px,100%);color:var(--chrome-hi);font-family:var(--font-sans);letter-spacing:.5em;text-indent:.5em;text-align:center;caret-color:#7fd8ff;background:#0a081866;border:1px solid #d9dde352;border-radius:999px;outline:none;padding:10px 18px;font-size:20px;transition:border-color .26s,background .26s}.gate__input:focus{background:linear-gradient(#0b0918, #0b0918) padding-box, var(--holo) border-box;border-color:#0000}.gate__input:disabled{opacity:.5}.gate__input--wrong{border-bottom-color:#c96a5e;animation:.42s cubic-bezier(.36,.07,.19,.97) both gate-shake}@keyframes gate-shake{10%,90%{transform:translate(-2px)}20%,80%{transform:translate(4px)}30%,50%,70%{transform:translate(-7px)}40%,60%{transform:translate(7px)}}.gate__submit{background:linear-gradient(180deg, #17152c 0%, #0b0918 100%) padding-box, var(--holo) border-box;color:var(--chrome-hi);font-family:var(--font-sans);letter-spacing:.4em;text-indent:.4em;border:1px solid #0000;border-radius:999px;padding:9px 30px;font-size:13px;transition:filter .2s,transform .2s}.gate__submit:hover:not(:disabled){filter:brightness(1.15);transform:translateY(-1px)}.gate__submit:focus-visible{outline-offset:3px;outline:2px solid #7fd8ff}.gate__submit:disabled{opacity:.32;cursor:default}.gate__status{letter-spacing:.04em;color:#d98a7e;min-height:1.5em;margin:22px 0 0;font-size:13px}.start{justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:hidden}.start__plate{pointer-events:none;transition:opacity 1.4s;position:absolute;inset:0}.start__plate--gone{opacity:0}.start__bg{object-fit:cover;opacity:.72;width:100%;height:100%;animation:2.6s cubic-bezier(.16,1,.3,1) both start-bg-in;position:absolute;inset:0}@keyframes start-bg-in{0%{opacity:0;transform:scale(1.06)}to{opacity:.72;transform:scale(1)}}.start__scrim{pointer-events:none;background:linear-gradient(to bottom, var(--dusk-ink) 0%, #0a081814 38%, #0a08184d 100%);position:absolute;inset:0}.start__latin,.start__quote,.start__hint{text-shadow:0 0 2px rgba(6, 5, 18, calc(.95 * (1 - var(--sky-lum)))), 0 0 4px rgba(6, 5, 18, calc(.92 * (1 - var(--sky-lum)))), 0 1px 3px rgba(6, 5, 18, calc(.95 * (1 - var(--sky-lum)))), 0 0 20px rgba(6, 5, 18, calc(.9 * (1 - var(--sky-lum))));color:color-mix(in srgb, var(--chrome-hi) calc((1 - var(--sky-lum)) * 100%), var(--day-ink))}.start__latin:before,.start__hint:before{opacity:calc(1 - var(--sky-lum))}.start__inner{text-align:center;width:min(560px,100% - 48px);padding-top:clamp(72px,12vw,148px);animation:.9s cubic-bezier(.16,1,.3,1) both line-in;position:relative}.start__title{font-family:var(--font-sans);letter-spacing:.12em;text-indent:.12em;background:linear-gradient(180deg, var(--chrome-hi) 0%, var(--chrome-mid) 40%, var(--chrome-lo) 50%, var(--chrome-hi) 60%, var(--chrome-mid) 100%);color:#0000;filter:drop-shadow(0 14px 44px #0009) drop-shadow(0 0 1px rgba(20, 24, 40, calc(.9 * var(--sky-lum)))) drop-shadow(0 2px 6px rgba(20, 24, 40, calc(.5 * var(--sky-lum))));background-size:100% 220%;-webkit-background-clip:text;background-clip:text;margin:0;font-size:clamp(72px,12vw,148px);font-weight:600;line-height:1;animation:9s ease-in-out infinite alternate chrome-sheen}@keyframes chrome-sheen{0%{background-position:0 0}to{background-position:0 100%}}@media (prefers-reduced-motion:reduce){.start__title{background-position:0;animation-name:none}}.start__latin{isolation:isolate;letter-spacing:.7em;text-indent:.7em;color:var(--chrome-hi);margin:18px 0 0;padding-bottom:16px;font-size:clamp(11px,1.1vw,13px);font-weight:300;position:relative}.start__latin:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(50% 50%,#080612d9,#08061200 74%);position:absolute;inset:-16px 60px}.start__latin:after{content:"";background:var(--holo);opacity:.9;width:120px;height:1px;position:absolute;bottom:0;left:50%;translate:-50%}.start__quote{max-width:360px;font-family:var(--font-sans);letter-spacing:.04em;color:var(--chrome-hi);margin:36px auto 40px;font-size:15px;font-weight:300;line-height:2.1}.start__quote:before,.start__quote:after{color:var(--chrome-lo)}.start__quote:before{content:"“";margin-left:-.5em}.start__quote:after{content:"”"}.start__controls{flex-direction:column;align-items:center;gap:22px;display:flex}.start__actions{justify-content:center;gap:12px;display:flex}.start__button{background:linear-gradient(180deg, #17152c 0%, #0b0918 100%) padding-box, var(--holo) border-box;color:var(--chrome-hi);font-family:var(--font-sans);letter-spacing:.3em;text-indent:.3em;border:1px solid #0000;border-radius:999px;padding:12px 34px;font-weight:400;transition:transform .18s,filter .18s}.start__button:hover{filter:brightness(1.15);transform:translateY(-1px)}.start__button--primary{background:linear-gradient(180deg, var(--chrome-hi) 0%, var(--chrome-mid) 55%, var(--chrome-lo) 100%);color:#0d0b1a;background-origin:border-box;border-color:#0000;font-weight:600;position:relative;overflow:hidden}.start__button--primary:after{content:"";background:linear-gradient(110deg,#0000 30%,#ffffffbf 50%,#0000 70%);transition:translate .6s;position:absolute;inset:0;translate:-120%}.start__button--primary:hover:after{translate:120%}.start__button:focus-visible{outline-offset:3px;outline:2px solid #7fd8ff}.start__hint{isolation:isolate;letter-spacing:.05em;color:var(--chrome-hi);margin-top:clamp(40px,12vh,120px);font-size:13px;font-weight:300;line-height:2;position:relative}.start__hint:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(50% 50%,#08061299,#08061200 72%);position:absolute;inset:-20px -120px}.ending{background:linear-gradient(#04060cc7,#04060cf0);justify-content:center;align-items:flex-start;padding:2.7vh 16px;animation:.7s both line-in;display:flex;position:absolute;inset:0;overflow-y:auto}.ending__inner{background:var(--panel-strong);border:1px solid var(--line);border-radius:3px;width:min(480px,100%);margin:auto;padding:23px 24px 20px;box-shadow:0 30px 80px #000000b3}.ending__art{object-fit:cover;width:calc(100% + 48px);height:clamp(80px,15vh,148px);margin:-23px -24px 15px;display:block;-webkit-mask-image:linear-gradient(#000 55%,#0000 100%);mask-image:linear-gradient(#000 55%,#0000 100%)}.ending__label{letter-spacing:.4em;color:var(--ink-faint);font-size:10px}.ending__title{font-family:var(--font-serif);letter-spacing:.06em;margin:7px 0 15px;font-size:clamp(16px,2.1vw,23px);font-weight:500}.ending__suffix{color:var(--accent);letter-spacing:.1em;margin-top:6px;font-size:11px;display:block}.ending__core,.ending__epilogue{font-family:var(--font-serif);color:var(--ink-dim);font-size:12px;line-height:2.05}.ending__core{border-bottom:1px solid var(--line);margin-bottom:12px;padding-bottom:12px}.ending__core p,.ending__epilogue p{margin:0 0 10px}.ending__epilogue p{color:var(--ink)}.ending__callback{border-top:1px solid var(--line);padding-top:8px;font-style:italic;color:var(--accent)!important}.ending__loading{font-family:var(--font-serif);color:var(--accent-cool);letter-spacing:.2em;font-size:11px}.ending__actions{gap:8px;margin-top:18px;display:flex}.ending__actions button{padding:8px 14px;font-size:11px}.ending__meta{color:var(--ink-faint);letter-spacing:.08em;margin-top:12px;font-size:10px}.debug{color:#cfe0ff;background:#000000c7;border:1px solid #7fb3ff4d;border-radius:3px;width:250px;padding:12px 14px;font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:11px;line-height:1.5;position:absolute;top:14px;right:14px}.debug__title{letter-spacing:.3em;color:var(--accent-cool);margin-bottom:8px}.debug__grid{grid-template-columns:auto 1fr;gap:1px 10px;margin:0;display:grid}.debug__grid dt{color:#7d94b8}.debug__grid dd{text-align:right;font-variant-numeric:tabular-nums;margin:0}.debug__tags{border-top:1px solid #7fb3ff2e;flex-wrap:wrap;gap:4px;margin-top:10px;padding-top:8px;display:flex}.debug__tag{background:#7fb3ff1f;border-radius:2px;padding:1px 5px;font-size:10px}.debug__actions{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.debug__actions button{color:#cfe0ff;background:#7fb3ff1f;border:1px solid #7fb3ff47;border-radius:2px;padding:4px 8px;font-family:inherit;font-size:10px}.debug__actions button:hover{background:#7fb3ff3d}@media (width<=720px){.dialogue{width:min(588px,100% - 24px);padding:14px 16px 12px}.dialogue[data-portrait]{padding-left:88px}.dialogue[data-portrait]:not(:has(.dialogue__portrait)){padding-left:16px}.free-action__row{flex-direction:column;align-items:stretch}.debug{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
