@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:700;src:url(./nunito-latin-700-normal-Dort48En.woff2) format("woff2")}@font-face{font-family:Nunito;font-style:normal;font-display:swap;font-weight:800;src:url(./nunito-latin-800-normal-Dz8SOQK_.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:normal;font-display:swap;font-weight:600;src:url(./fraunces-latin-600-normal-BFCDtZfi.woff2) format("woff2")}:root{--bg: #101426;--ink: #f7f1e4;--muted: #d9d0c0;--gold: #f3d48a;--panel: #1c2744;--panel-edge: #f3e2b0;--btn: #f6d98a;--btn-ink: #1c140c;--good: #c9efd4;--accent: #7eb0e0;--font: "Nunito", "Trebuchet MS", "Segoe UI", sans-serif;--display: "Fraunces", "Palatino Linotype", Palatino, serif;color-scheme:dark}[data-look=classic]{--accent: #7eb0e0}[data-look=ember]{--accent: #e15b4c}[data-look=night]{--accent: #b3a6f0}[data-look=aurora]{--accent: #7eb6e8}[data-look=sol]{--accent: #e07a3a}[data-look=luna]{--accent: #9aa6f0}[data-look=puff]{--accent: #f0a04a}[data-look=wisp]{--accent: #7fd4ef}[data-look=grit]{--accent: #c4a15a}*{box-sizing:border-box}html{font-size:16px}html,body{height:100%;margin:0}body{overflow:hidden;background:radial-gradient(900px 420px at 50% -10%,#2c3568,transparent 60%),var(--bg);color:var(--ink);font-family:var(--font);font-weight:700;text-size-adjust:100%}button,input{font-family:inherit;touch-action:manipulation}button{cursor:pointer;-webkit-tap-highlight-color:transparent}.app{width:100%;height:100dvh;display:flex;flex-direction:column;position:relative;background:radial-gradient(ellipse at 50% 0%,#2a3564,#12182c 58%);overscroll-behavior:contain}.header{flex:none;display:flex;flex-direction:column;gap:4px;padding:calc(8px + env(safe-area-inset-top)) 14px 6px}.header-actions{display:flex;align-items:center;gap:2px}.header-row,.tool-row,.footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.wordmark{margin:0;font-size:.95rem;font-weight:800;letter-spacing:.16em;color:var(--gold)}.who{margin:0;font-size:1rem;font-weight:800}.chapter{margin:0;color:var(--gold);font-size:.92rem;font-weight:800}.text-button,.header-link,.footer a{color:var(--gold);font-weight:800;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;padding:8px}.text-button{background:none;border:0;font-size:.98rem}.tools{display:flex;gap:8px}.pip{width:36px;height:36px;border-radius:50%;border:2px solid rgba(247,241,228,.35);display:grid;place-items:center;color:#8d8474}.pip svg{width:18px;height:18px}.pip.is-on{color:var(--gold);border-color:var(--gold);background:#f3d48a29}.pip.is-held{color:#8d6b45;border-color:#a48462;background:#8d6b4529}.main{flex:1;min-height:0;display:flex;flex-direction:column}.stage{position:relative;flex:none;height:clamp(200px,38dvh,420px);margin:0 12px;border-radius:20px;overflow:hidden;border:2px solid rgba(243,226,176,.4);background:radial-gradient(ellipse at 50% 100%,color-mix(in srgb,var(--accent) 55%,transparent),transparent 58%),linear-gradient(#1b2444,#12182c);display:grid;place-items:end center}.stage:before{content:"";position:absolute;top:-32%;right:0;bottom:0;left:0;z-index:2;pointer-events:none;will-change:transform;animation:motes 32s linear infinite;background-image:radial-gradient(circle at 12% 22%,#fff 1px,transparent 2px),radial-gradient(circle at 78% 16%,#fff 1.4px,transparent 2.4px),radial-gradient(circle at 24% 48%,#d5e4ff 1px,transparent 2px),radial-gradient(circle at 86% 42%,#fff 1px,transparent 2px),radial-gradient(circle at 64% 24%,#ffe7a8 1.2px,transparent 2.2px),radial-gradient(circle at 40% 18%,#fff 1px,transparent 2px)}.stage img{position:relative;z-index:1;height:100%;width:auto;max-width:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 12px 10px rgba(0,0,0,.35))}.stage.is-item img{height:88%;object-position:center center}.stage.mood-magic{box-shadow:inset 0 0 36px color-mix(in srgb,var(--gold) 28%,transparent)}.stage.place-cavern,.stage.place-descend,.stage.place-chamber{background:radial-gradient(ellipse at 50% 120%,rgba(80,110,90,.35),transparent 46%),linear-gradient(#070b14,#121a2c 42%,#0c1018)}.stage.place-ignite,.stage.place-path{background:radial-gradient(ellipse at 50% 80%,rgba(80,190,210,.45),transparent 55%),linear-gradient(#10182e,#1a2744)}.stage.place-blade{background:radial-gradient(ellipse at 50% 70%,rgba(243,212,138,.45),transparent 50%),linear-gradient(#141018,#1c2438)}.stage.place-shadow{background:linear-gradient(#05060c,#14101c 70%,#0c0e16)}.stage.has-still{background:#070b14;height:clamp(220px,38dvh,360px);place-items:center}.stage.has-still img,.stage.has-still video{height:100%;width:100%;opacity:1;object-fit:contain;object-position:center center;background:#070b14}.stage.has-boss{height:clamp(220px,36dvh,340px);place-items:center}.stage.has-boss img{height:100%;width:100%;opacity:1;object-fit:contain;object-position:center center}.stage.place-white{background:radial-gradient(circle at 50% 42%,#fff,#f3f6ff 58%,#d5e2f4);border-color:#f7f1e4}.stage.has-still{background:#070b14;border-color:#1c2438}.stage.place-under,.stage.place-calm{background:radial-gradient(ellipse at 50% 100%,rgba(243,212,138,.28),transparent 55%),linear-gradient(#1b2444,#12182c)}.stage.is-entering>img{animation:stage-in .32s ease}.stage.has-plate.has-still img,.stage.has-plate.has-still video{background:transparent}.stage.has-plate:not(.is-prop):not(.is-portrait){background-image:var(--plate),radial-gradient(ellipse at 50% 40%,rgba(243,212,138,.35),transparent 48%),linear-gradient(180deg,#24345c,#12182c);background-size:cover,auto,auto;background-position:center,center,center;background-repeat:no-repeat}.stage.is-prop,.stage.is-portrait,.stage.is-prop.has-still,.stage.is-portrait.has-still{background-color:#10182c;background-image:linear-gradient(180deg,#10182c33,#080c1873),var(--plate, linear-gradient(#1a2748, #101828));background-size:cover,cover;background-position:center,center;background-repeat:no-repeat;border-color:#f3e2b059}.stage.is-prop:before,.stage.is-portrait:before{z-index:3;animation-duration:36s}.stage.is-prop:after,.stage.is-portrait:after{content:"";position:absolute;top:-8%;right:-8%;bottom:-8%;left:-8%;z-index:0;pointer-events:none;background-image:var(--still);background-size:cover;background-position:center;filter:blur(18px) brightness(.72);transform:scale(1.08)}.stage.is-prop img,.stage.is-portrait img,.stage.is-prop.has-still img,.stage.is-portrait.has-still img{z-index:1;background:transparent;width:auto;height:82%;max-width:88%;object-fit:contain;object-position:center center;filter:drop-shadow(0 16px 14px rgba(0,0,0,.4))}.orb-badge{position:absolute;z-index:3;width:28px;height:28px;border-radius:50%;top:18%;right:18%;background:radial-gradient(circle at 35% 35%,#fff,#7fd4ef 42%,#1a6f9a);box-shadow:0 0 16px #7fd4ef;animation:orbit 3.2s linear infinite}.stage.place-white .orb-badge,.stage.place-blade .orb-badge{width:54px;height:54px;top:22%;right:auto;left:50%;margin-left:-27px}.blade-badge{position:absolute;z-index:3;width:14px;height:46%;right:22%;bottom:18%;border-radius:8px 8px 4px 4px;background:linear-gradient(#f3d48a,#8d6a3a 40%,#d7e7ef 41%,#6f8ea4);box-shadow:0 0 12px #f3d48a73;transform:rotate(18deg)}.stage.place-blade .blade-badge{height:62%;width:18px;right:auto;left:58%}.emphasis.is-long{font-size:clamp(1.25rem,5.4vw,1.7rem);line-height:1.25}.tool-track{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}.track{border:2px solid #3a4668;border-radius:999px;padding:3px 8px;color:var(--muted);font-size:.78rem;font-weight:800}.track.is-on{border-color:var(--gold);color:var(--gold);background:#f3d48a1f}.caption{position:absolute;z-index:2;top:8px;left:8px;margin:0;padding:4px 8px;border-radius:999px;background:#0a0c188c;color:var(--gold);font-size:.75rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.panel-scroll{flex:1;min-height:0;overflow:auto;padding:10px 12px 12px;-webkit-overflow-scrolling:touch}.panel{background:var(--panel);border:3px solid var(--panel-edge);border-radius:18px;box-shadow:inset 0 0 0 4px #12182c,inset 0 0 0 7px #8ea0c8;padding:14px 14px 12px}.panel.is-new{animation:rise .28s ease}.kicker,.lesson-kicker{margin:0 0 6px;font-size:.95rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}.display{margin:0 0 8px;font-family:var(--display);font-weight:600;font-size:clamp(2rem,8vw,2.7rem);line-height:1.05;color:var(--gold)}.speaker{margin:0 0 6px;color:var(--gold);font-size:1rem;font-weight:800}.story p,.relic p,.modal p,.hint,.form-error{margin:0 0 8px;font-size:1.25rem;line-height:1.4;font-weight:700}.emphasis{margin:4px 0 8px;text-align:center;font-family:var(--display);font-weight:600;font-size:clamp(3rem,14vw,4.6rem);line-height:.95;color:var(--gold)}.lesson{margin:4px 0 8px;padding:10px 12px;border-radius:12px;border:2px solid var(--good);background:#c9efd41f}.lesson p:last-child{margin-bottom:0}.lesson-kicker{color:var(--good)}.phases{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 8px}.phase{border:2px solid #3a4668;border-radius:999px;padding:4px 10px;color:var(--muted);font-size:.92rem;font-weight:800}.phase.is-next,.phase.is-now{border-color:var(--gold);color:var(--gold)}.phase.is-done{border-color:var(--good);color:var(--good)}.phase.is-state{border-style:dashed;border-color:#9aa4c4;color:#d5dced}.endcard{display:flex;align-items:center;gap:12px}.end-name{margin:0;font-family:Fraunces,serif;font-size:2rem;line-height:1}.end-look{width:72px;height:72px;object-fit:contain}.stamps{display:flex;flex-direction:column;gap:8px}.stamp{border:2px solid var(--gold);border-radius:14px;padding:10px 12px;background:#12182c}.stamp-name{margin:0;color:var(--gold);font-weight:800}.stamp-line{margin:2px 0 0}.pattern{display:flex;flex-direction:column;gap:6px}.pattern p{margin:0}.pattern-k{color:var(--gold);font-weight:800}.choices{display:flex;flex-direction:column;gap:10px;margin-top:8px}.choice{width:100%;min-height:60px;padding:12px 14px;border-radius:14px;border:3px solid #1a140c;background:var(--btn);color:var(--btn-ink);font-size:1.125rem;font-weight:800;line-height:1.25;text-align:center;box-shadow:0 4px #1a140c;transition:transform 90ms ease,box-shadow 90ms ease,filter 90ms ease}.choice:active:not(:disabled){transform:translateY(2px) scale(.985);box-shadow:0 1px #1a140c;filter:brightness(1.06)}.choice.is-next{outline:3px solid var(--gold);outline-offset:2px}.choice.quiet{background:transparent;color:var(--ink);border-color:var(--panel-edge);box-shadow:none}.choice:disabled{opacity:.45;cursor:not-allowed}.hero-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.hero-cell{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:4px;width:100%;min-height:108px;padding:6px 4px 8px;text-align:center;color:var(--ink);background:#151c32;border:3px solid #3a4668;border-radius:14px;font-size:1rem;font-weight:800;transition:transform 90ms ease,border-color 90ms ease,box-shadow 90ms ease}.hero-cell:active{transform:scale(.96)}.hero-cell img{width:100%;height:clamp(72px,16dvh,128px);object-fit:contain;object-position:center bottom;border-radius:10px;background:radial-gradient(ellipse at 50% 100%,rgba(126,176,224,.28),transparent 70%),#101628}.look-tag{font-size:1rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);line-height:1.15}.hero-cell.is-selected .look-tag{color:var(--gold)}.look-hint{margin:6px 0 0;text-align:center;color:var(--muted);font-size:.95rem;font-weight:800}.look-chip{display:flex;align-items:center;gap:12px;margin:0 0 12px}.look-chip img{width:64px;height:84px;object-fit:contain;object-position:center bottom;flex:none;border-radius:12px;background:#101628}.look-chip-note{display:block;margin-top:4px;color:var(--ink);font-size:1rem;font-weight:800;letter-spacing:0;text-transform:none}.name-title{font-size:clamp(2.1rem,9vw,2.8rem)}.hero-cell.is-selected{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold);color:var(--gold)}.hero-line{min-height:2.6em;margin:8px 0 0;text-align:center;color:var(--gold);font-size:1.05rem;font-weight:800;line-height:1.3}.name-form{display:flex;flex-direction:column;gap:8px}.name-form label{font-size:1rem;font-weight:800}.name-input{width:100%;min-height:60px;padding:12px 14px;border-radius:14px;border:3px solid #1a140c;background:#fffaf0;color:#1c140c;font-size:1.35rem;font-weight:800}.hint{color:var(--muted);font-size:1rem}.form-error{color:#ffd0c8;font-size:1.05rem}.relic{display:grid;grid-template-columns:64px 1fr;gap:8px;align-items:center;padding:8px 0;border-top:2px solid rgba(243,226,176,.2)}.relic img{width:64px;height:64px;object-fit:contain;border-radius:12px;background:radial-gradient(circle at 50% 42%,rgba(243,212,138,.7),transparent 64%),linear-gradient(180deg,#2a3d68,#12182c)}.relic h3{margin:0;font-size:1.05rem}.relic p,.relic-detail{font-size:1.02rem}.footer{flex:none;padding:0 8px calc(6px + env(safe-area-inset-bottom));color:var(--muted);font-size:.85rem}.modal-back{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:grid;place-items:center;padding:20px;background:#060810b8}.modal{width:min(100%,360px);padding:18px;border-radius:18px;border:3px solid var(--panel-edge);background:var(--panel)}.modal h2{margin:0 0 8px;font-size:1.5rem;color:var(--gold)}.missing{width:min(80%,240px);min-height:120px;margin:16px;padding:12px;display:grid;place-items:center;text-align:center;border:3px dashed var(--gold);border-radius:16px;color:var(--gold);font-weight:800}.gallery-page{flex:1;min-height:0;overflow:auto;padding:8px 12px 20px}.gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px}.gallery figure{margin:0;padding:8px;border-radius:12px;background:#151c32}.gallery img,.gallery .missing{width:100%;height:140px;object-fit:contain;margin:0}.gallery figcaption{display:flex;flex-direction:column;gap:2px;margin-top:6px;font-size:.75rem;font-weight:800;word-break:break-all}.uuid{color:var(--muted);font-weight:700}.crash{margin:auto;max-width:28rem;padding:24px 16px}.crash h1{font-family:var(--display);color:var(--gold)}.noscript{max-width:28rem;margin:2rem auto;padding:1rem;font-size:1.25rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}::selection{background:#f3d48a;color:#1c140c}@media(max-height:700px){.stage{height:clamp(168px,32dvh,240px)}.stage.has-boss,.stage.has-still{height:clamp(188px,34dvh,260px)}}@media(min-width:720px)and (max-width:1099px){.stage,.stage.has-still,.stage.has-boss{height:clamp(320px,56dvh,680px)}.panel{max-width:40rem;margin-inline:auto}}@keyframes stage-in{0%{opacity:.2}to{opacity:1}}@keyframes rise{0%{transform:translateY(6px)}to{transform:none}}@keyframes glow{50%{box-shadow:inset 0 0 48px color-mix(in srgb,var(--gold) 55%,transparent)}}@keyframes motes{0%{transform:translateZ(0)}to{transform:translate3d(0,-16%,0)}}@keyframes orbit{0%{transform:translate(0)}to{transform:translate(16px)}}.header-actions{flex-wrap:wrap;justify-content:flex-end}.text-button{min-height:36px}.move{display:grid;gap:8px;margin-top:8px}.move-title,.move-status{margin:0;color:var(--gold);font-size:1.15rem}.move-prompt{margin:0;font-size:1.05rem}.breath-circle{width:112px;height:112px;margin:4px auto;border-radius:50%;border:4px solid var(--gold);background:radial-gradient(circle,color-mix(in srgb,var(--gold) 55%,transparent),transparent 70%);transform:translateZ(0) scale(var(--breath, .55));will-change:transform}.pip.is-on{transform:translateZ(0) scale(calc(.94 + var(--breath, .2) * .14))}.move-go.is-shaking{animation:shake .48s cubic-bezier(.22,.7,.3,1) 1;will-change:transform}.chapter-card{position:absolute;inset:12% 8% auto;z-index:4;pointer-events:none;text-align:center;padding:22px 16px;border:3px solid var(--gold);border-radius:18px;background:color-mix(in srgb,#12182c 82%,transparent)}.chapter-name,.chapter-line{margin:0}.chapter-name{font-family:var(--display);font-size:clamp(2.4rem,10vw,3.4rem);color:var(--gold)}.chapter-line{margin-top:6px;font-size:1.15rem}.stage.is-drift>img,.stage.is-drift>video{animation:drift 36s cubic-bezier(.45,.05,.55,.95) alternate infinite;transform-origin:var(--focus, 50% 42%);will-change:transform;backface-visibility:hidden}.stage.is-vanquish.is-drift>img,.stage.is-vanquish.is-drift>video{animation-duration:46s}.stage.is-title>img{animation:title-float 16s ease-in-out alternate infinite;will-change:transform}.title-screen .display{animation:title-rise .8s ease both}.stage.is-cave:before{opacity:.9;animation-duration:18s}.call-card{width:100%;height:auto;border-radius:12px;margin:8px 0}.card-look{margin:0;font-family:var(--display);font-size:1.8rem;line-height:1.1;color:var(--gold)}.card-line{margin:0 0 4px;font-size:1.15rem}.card-actions{display:grid;gap:8px;margin-bottom:8px}.gift-list{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px}.gift-list li{display:grid;gap:2px;padding:8px 10px;border-radius:12px;background:#12182c}.gift-list .is-out{opacity:.55}@keyframes drift{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(-1.1%,-.45%,0) scale(1.035)}}@keyframes title-float{0%{transform:translateZ(0) scale(1)}to{transform:translate3d(0,-1%,0) scale(1.03)}}@keyframes title-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes shake{0%{transform:translateZ(0)}20%{transform:translate3d(-2px,0,0)}40%{transform:translate3d(2px,0,0)}62%{transform:translate3d(-1px,0,0)}to{transform:translateZ(0)}}.stage{margin:0;border-radius:0 0 22px 22px;border-left:0;border-right:0;height:clamp(230px,44dvh,520px)}.stage.has-still,.stage.has-boss{height:clamp(250px,48dvh,560px)}.stage.has-still>img,.stage.has-still>video,.stage.has-boss>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;min-height:0;max-width:none;object-fit:cover;object-position:var(--focus, 50% 62%);filter:none;background:transparent}@media(max-width:700px){.stage,.stage.has-still,.stage.has-boss{height:clamp(188px,32dvh,300px)}.breath-circle{width:84px;height:84px}}.stage.has-still:not(.is-prop):not(.is-portrait):before{animation:none;opacity:0}.stage.has-still:after{content:"";position:absolute;top:-8%;right:-8%;bottom:-8%;left:-8%;z-index:0;background-image:var(--still);background-size:cover;background-position:var(--focus, 50% 62%);filter:blur(22px);transform:translateZ(0) scale(1.08)}.stage.is-prop>img,.stage.is-prop>video,.stage.is-portrait>img,.stage.has-boss>img{object-fit:contain;object-position:center center}.stage>video.overlay-media{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;opacity:0;transition:opacity .32s ease}.stage>video.overlay-media.is-shown{opacity:1}.stage>video.overlay-media.is-ending{opacity:0}.veil{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;background:radial-gradient(ellipse at 50% 42%,transparent 28%,rgba(0,0,0,.78) 100%)}.stage.is-dawn .veil{background:radial-gradient(ellipse at 50% 36%,rgba(255,244,214,.38),transparent 42%),radial-gradient(ellipse at 50% 42%,transparent 36%,rgba(0,0,0,.42) 100%)}.choices{position:sticky;bottom:0;z-index:2;padding-top:12px;padding-bottom:calc(4px + env(safe-area-inset-bottom));background:linear-gradient(180deg,transparent,var(--panel) 30%)}.choice{min-height:52px}.header{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}.panel-scroll{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}.keys-hint{display:none}.act-dip{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;background:#070910;animation:dip .86s ease forwards}.gift-fly{position:fixed;z-index:7;left:0;top:0;padding:8px 12px;border-radius:999px;background:var(--gold);color:#1c140c;font-size:.95rem;font-weight:800;transform:translate3d(-50%,-50%,0);transition:transform .62s cubic-bezier(.2,.8,.2,1),opacity .62s ease;pointer-events:none}.card-burst{position:absolute;left:50%;top:28%;width:180px;height:180px;margin-left:-90px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,#fff4d6d9,#f3d48a00 70%);animation:burst .8s ease forwards}.card-panel{position:relative}.call-card.is-rising{animation:card-rise .7s cubic-bezier(.16,.84,.32,1) both}@media(max-width:1099px){.stage.is-card-stage{display:none}.stage.has-still:after{content:none}.stage.has-still:not(.is-prop):not(.is-portrait):before{animation:none;opacity:0}}@media(hover:hover)and (pointer:fine){.choice:hover:not(:disabled){filter:brightness(1.06);transform:translateY(-1px)}.choice:active:not(:disabled){transform:translateY(2px) scale(.985)}.hero-cell:hover{border-color:var(--gold);transform:translateY(-2px)}.text-button:hover{color:#fff8e8}}@media(min-width:1100px){html{font-size:20px}.stage,.stage.has-still,.stage.has-boss,.stage.is-card-stage{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;width:100%;height:100dvh;margin:0;border:0;border-radius:0}.header,.footer{position:relative;z-index:3;background:linear-gradient(180deg,#060810f0,#060810e0 68%,#06081000)}.footer{background:linear-gradient(0deg,rgba(8,10,20,.88),transparent)}.main{position:relative;z-index:2;pointer-events:none;justify-content:center}.panel-scroll{pointer-events:auto;flex:none;width:min(420px,32vw);height:auto;max-height:calc(100dvh - 150px);margin:0 36px 0 auto;padding:0;overflow:auto;background:none}.panel{width:100%;max-width:none;background:#0e1224d6;border-color:#f3e2b06b;box-shadow:0 18px 48px #00000061;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.display{font-size:3rem}.story p{font-size:1.2rem}.chapter-card{left:7%;right:auto;width:min(480px,36vw);top:24%}.keys-hint{display:inline;color:var(--muted);font-size:.85rem}}@keyframes dip{0%{opacity:0}22%{opacity:.78}to{opacity:0}}@keyframes burst{0%{opacity:.2;transform:scale(.4)}to{opacity:0;transform:scale(1.8)}}@keyframes card-rise{0%{opacity:0;transform:translate3d(0,28px,0) scale(.96)}to{opacity:1;transform:none}}.stage.is-prop.has-still:after,.stage.is-portrait.has-still:after{content:"";z-index:0}.stage.is-prop.is-drift>img,.stage.is-portrait.is-drift>img,.stage.is-prop.is-drift>video,.stage.is-portrait.is-drift>video{animation:none}@media(max-width:420px){.text-button,.header-link{padding:4px 6px;font-size:.92rem}.wordmark{letter-spacing:.1em}}@media(max-width:700px){.main:has(.move) .stage,.main:has(.choice:nth-child(3)) .stage{height:clamp(132px,24dvh,200px)}}@media(max-width:700px)and (max-height:780px){.main:has(.move) .stage,.main:has(.choice:nth-child(3)) .stage{height:clamp(120px,20dvh,156px)}.breath-circle{width:56px;height:56px}.move{gap:4px}}@media(max-width:1099px){html,body,.app{height:100dvh;max-height:100dvh}.app{overflow:hidden}.footer{padding-top:0;padding-bottom:env(safe-area-inset-bottom)}.stage,.stage.has-still,.stage.has-boss{flex:0 1 60dvh;height:60dvh;min-height:120px;max-height:60dvh}.panel-scroll{flex:0 0 auto;margin-top:auto;min-height:0}.panel{min-height:0;display:flex;flex-direction:column}.panel>.choices,.panel>.move{margin-top:auto}.card-panel>.choices{margin-top:8px}.stage.is-prop>img,.stage.is-portrait>img,.stage.is-prop.has-still>img,.stage.is-portrait.has-still>img,.stage.has-still:not(.is-card-stage)>img,.stage.has-still:not(.is-card-stage)>video{position:absolute;inset:auto;top:0;bottom:0;left:50%;width:auto;height:100%;max-width:100%;transform:translate(-50%);object-fit:contain;object-position:center center;z-index:1}.stage.has-still:not(.is-card-stage):after{content:"";z-index:0;top:-8%;right:-8%;bottom:-8%;left:-8%;background-image:var(--still);background-size:cover;background-position:center;filter:blur(16px) brightness(.62);transform:scale(1.08)}.stage.is-drift>img,.stage.is-drift>video{animation:none}.call-card{display:block;width:min(100%,400px,calc((100dvh - 510px)*.8));height:auto;margin:4px auto 8px}.card-actions{gap:6px}.card-panel .choice{min-height:48px;padding-top:8px;padding-bottom:8px}.main:has(.move) .stage,.main:has(.choice:nth-child(3)) .stage{flex:none;height:clamp(132px,24dvh,210px);max-height:none}}@media(min-width:720px)and (max-width:1099px){.panel{max-width:none}.main:has(.move) .stage{height:clamp(280px,46dvh,540px)}.call-card{width:min(440px,calc((100dvh - 420px)*.8))}}@media(min-width:1100px){.stage{--rail: min(520px, 36vw)}.kicker,.lesson-kicker,.phase,.footer,.keys-hint{font-size:1rem}.story p,.speaker,.hint,.move-prompt,.move-title{font-size:1.25rem}.choice{font-size:1.15rem}.wordmark{font-size:1.45rem;letter-spacing:.18em}.text-button,.header-link,.who,.chapter{font-size:1.15rem}.emphasis{font-size:clamp(2.4rem,4vw,3.4rem)}.stage.has-still:not(.is-prop):not(.is-portrait):not(.is-card-stage)>img,.stage.has-still:not(.is-prop):not(.is-portrait):not(.is-card-stage)>video,.stage.has-boss:not(.is-card-stage)>img{top:0;right:auto;bottom:0;height:100%;width:min(calc(100% - var(--rail) - 16px),118dvh);left:calc((100% - var(--rail) - min(calc(100% - var(--rail) - 16px),118dvh)) / 2);max-width:none;object-fit:cover;object-position:var(--focus, 50% 46%)}.stage.is-prop>img,.stage.is-portrait>img,.stage.is-prop.has-still>img,.stage.is-portrait.has-still>img,.stage.is-prop>video,.stage.is-portrait>video{position:absolute;inset:auto;top:calc(50% + 28px);right:auto;bottom:auto;width:min(72dvh,calc(100vw - var(--rail) - 96px));height:min(72dvh,calc(100vw - var(--rail) - 96px));max-width:none;left:calc((100% - var(--rail)) / 2);transform:translate(-50%,-50%);object-fit:contain;object-position:center center;z-index:1}.stage.is-card-stage>img,.stage.is-card-stage>video{opacity:0}.stage.is-card-stage.has-still:before{content:"";opacity:1;animation:none;top:0;right:0;bottom:0;left:0;z-index:1;background:#04060e9e}.stage.is-card-stage:after{content:"";z-index:0;filter:blur(46px) brightness(.28) saturate(.65);transform:scale(1.18)}.main:has(.is-card-stage) .panel-scroll{width:100%;margin:0;padding:8px 48px 12px;background:none;display:flex;align-items:center;justify-content:center}.card-panel{width:auto;max-width:calc(100vw - 64px);background:transparent;border:0;box-shadow:none;padding:0;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:32px}.card-side{width:min(280px,26vw);display:flex;flex-direction:column;gap:8px}.card-panel .call-card{width:min(640px,36vw,calc((100dvh - 200px)*.8));height:auto;margin:0;border-radius:18px}.card-panel .card-actions,.card-panel .choices{margin:0}}@media(min-width:1600px){html{font-size:20px}.wordmark{font-size:1.5rem}.pip{width:46px;height:46px}.pip svg{width:22px;height:22px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.panel.is-new{opacity:1!important}}
