:root{--bg: #050713;--text: #fff1d2;--muted: rgba(255, 241, 210, .7);--quiet: rgba(255, 241, 210, .48);--line: rgba(255, 241, 210, .18);--line-strong: rgba(255, 241, 210, .34);--ink: #121018;--cream: #f4dfad;--moon: #edc862;--red: #bd404a;--motel-blue: #406fa8;--toxic: #c8e96b;--display: Georgia, "Times New Roman", serif;--ui: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--title-offset: max(18px, env(safe-area-inset-top));--title-scale: 1;--moon-object-position: calc(18% + 20px) ;--response-max-width: min(78vw, 30ch);--control-cluster-bottom: max(12px, env(safe-area-inset-bottom));--ledger-baseline-bottom: calc(var(--control-cluster-bottom) + 76px);--instrument-gap: 8px}*{box-sizing:border-box}img,svg,canvas{user-select:none;-webkit-user-select:none;-webkit-user-drag:none;-webkit-touch-callout:none}html{width:100%;height:100%;min-width:320px;overflow:hidden;overscroll-behavior:none;background:var(--bg)}body{position:fixed;inset:0;overflow:hidden;overscroll-behavior:none;width:100%;height:100%;min-width:320px;min-height:100vh;margin:0;color:var(--text);font-family:var(--ui);letter-spacing:0;background:radial-gradient(circle at 50% -18%,rgba(237,200,98,.18),transparent 23rem),radial-gradient(circle at 8% 78%,rgba(64,111,168,.16),transparent 20rem),linear-gradient(180deg,#080b19,#050713 72%,#0c0811);user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}#root{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}button{font:inherit}h1,h2,p{margin-top:0}.app-shell{position:relative;isolation:isolate;width:100%;height:100svh;min-height:100svh;overflow:hidden;overscroll-behavior:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.app-shell:before{position:fixed;inset:-12%;z-index:0;display:none;content:"";pointer-events:none}.app-shell:after{position:fixed;inset:-24%;z-index:0;display:none;content:"";pointer-events:none}.app-shell--intro-active .shrine-frame,.app-shell--intro-active .debug-panel{pointer-events:none}.shrine-frame,.debug-panel{position:relative;z-index:1}.shrine-frame,.toy-layout{height:100svh;min-height:100svh;overflow:hidden;overscroll-behavior:none}.ritual-viewport{position:relative;isolation:isolate;overflow:hidden;min-height:100svh;background:#07112a}.ritual-viewport:before,.ritual-viewport:after{position:absolute;left:0;z-index:14;width:100%;content:"";pointer-events:none}.ritual-viewport:before{top:0;height:31%;background:linear-gradient(180deg,rgba(2,4,12,.24),rgba(2,4,12,.28) 52%,transparent)}.ritual-viewport:after{bottom:0;height:43%;background:linear-gradient(0deg,rgba(2,4,12,.4),rgba(2,4,12,.44) 55%,transparent)}.music-toggle{position:absolute;bottom:max(12px,env(safe-area-inset-bottom));left:max(12px,env(safe-area-inset-left));z-index:64;display:grid;width:34px;height:34px;padding:0;border:0;background:transparent;box-shadow:none;cursor:pointer;place-items:center;opacity:.92;transition:filter .18s ease,opacity .16s ease,transform .16s cubic-bezier(.18,1.35,.32,1)}.music-toggle:hover,.music-toggle:focus-visible{opacity:1;transform:translateY(-1px) rotate(-2deg)}.music-toggle:focus-visible{outline:2px solid rgba(244,223,173,.48);outline-offset:2px}.music-toggle__icon{position:relative;display:flex;width:27px;height:27px;align-items:center;justify-content:center;gap:3px;filter:drop-shadow(0 1px 0 rgba(0,0,0,.62)) drop-shadow(0 0 8px rgba(146,107,221,.28))}.music-toggle__bar{width:4px;min-height:7px;border-radius:999px;background:linear-gradient(180deg,#a783f0,#6657b9 48%,#2c326e);box-shadow:0 0 8px #926bdd59,inset 0 1px #fff1d238;transform-origin:50% 50%;animation:musicWavePulse 1.12s cubic-bezier(.44,0,.28,1) infinite}.music-toggle__bar--one{height:16px;animation-delay:-.62s}.music-toggle__bar--two{height:11px;animation-delay:-.26s}.music-toggle__bar--three{height:27px;animation-delay:-.82s}.music-toggle__bar--four{height:19px;animation-delay:-.42s}.music-toggle__bar--five{height:10px;animation-delay:-80ms}.music-toggle--off{opacity:.54;filter:saturate(.42) brightness(.62)}.music-toggle--off .music-toggle__bar{animation-play-state:paused;background:linear-gradient(180deg,#75699e9e,#262a549e);box-shadow:0 0 4px #312c5d29,inset 0 1px #fff1d214}@keyframes musicWavePulse{0%,to{transform:scaleY(.72)}38%{transform:scaleY(1.08)}68%{transform:scaleY(.86)}}.moon-header{position:absolute;top:var(--title-offset);left:50%;z-index:18;width:min(92vw,480px);text-align:center;transform:translate(-50%) scale(var(--title-scale));transform-origin:50% 0;pointer-events:none}.moon-logo{position:relative;z-index:1;display:block;width:100%;height:auto;filter:drop-shadow(0 2px 24px rgba(0,0,0,.7));opacity:1;-webkit-user-select:none;user-select:none}.moon-logo-marquee{position:absolute;inset:0;z-index:2;pointer-events:none;mix-blend-mode:screen;opacity:1}.moon-logo-marquee__bulb{position:absolute;width:clamp(4px,1.25vw,7px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 32%,#fff7be 0 18%,#ffb54d 42%,#d86a1d 68%,#5c2208eb);box-shadow:0 0 4px #ffbf53eb,0 0 10px #ff882ca3,0 0 18px #ff6a1852;opacity:.68;transform:translate(-50%,-50%) scale(.82);animation:moonLogoMarqueeBulb 1.85s ease-in-out infinite;animation-delay:var(--bulb-delay, 0s)}.moon-header--intro-hidden .moon-logo,.moon-header--intro-hidden .moon-logo-marquee{opacity:0}.intro-overlay{position:fixed;inset:0;z-index:200;overflow:hidden;pointer-events:auto;--intro-logo-left: 50vw;--intro-logo-top: 50vh;--intro-logo-width: min(92vw, 480px);--intro-logo-height: 120px;--intro-logo-x: 0px;--intro-logo-y: 0px;--intro-progress: 0}.intro-overlay:before{position:absolute;inset:0;content:"";background:radial-gradient(circle at 50% 47%,rgba(12,18,35,.2),transparent 27rem),#02030a;opacity:1;transition:opacity 1.68s cubic-bezier(.16,.84,.28,1)}.intro-overlay--ready:before{opacity:0}.intro-overlay__logo-frame{position:fixed;top:50%;left:50%;z-index:1;display:block;width:min(92vw,480px);height:auto;transform:translate(-50%,-50%);transform-origin:50% 50%;transition:transform 2.92s cubic-bezier(.34,.02,.22,1)}.intro-overlay__logo{display:block;width:100%;height:auto;filter:drop-shadow(0 2px 24px rgba(0,0,0,.7));opacity:0;transform:scale(.94);animation:introLogoArrive .86s cubic-bezier(.18,1.16,.28,1) .12s both;-webkit-user-select:none;user-select:none}.intro-overlay--ready .intro-overlay__logo-frame{opacity:1;transform:translate(-50%,-50%) translate(var(--intro-logo-x),var(--intro-logo-y)) scale(var(--intro-logo-scale, 1))}.intro-overlay--ready .intro-overlay__logo{opacity:1}.intro-overlay__meter{position:fixed;top:calc(50vh + (var(--intro-logo-height) / 2) + 22px);left:50%;z-index:1;overflow:hidden;width:min(210px,52vw);height:7px;border-radius:999px;background:#ffffff18;box-shadow:inset 0 0 0 1px #fff1d20e,0 10px 28px #00000061;transform:translate(-50%);transition:opacity .32s ease,transform .36s cubic-bezier(.16,.84,.28,1)}.intro-overlay__meter span{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2e4b68,#5d8dc0 58%,#a6c8dc);box-shadow:0 0 8px #5d8dc03d,inset 0 1px #ffffff2e;transform:scaleX(var(--intro-progress));transform-origin:0 50%;transition:transform .26s cubic-bezier(.18,1.25,.34,1)}.intro-overlay--beginning .intro-overlay__meter,.intro-overlay--ready .intro-overlay__meter{opacity:0;transform:translate(-50%) translateY(4px)}.intro-overlay__begin{position:fixed;top:calc(50vh + (var(--intro-logo-height) / 2) + 45px);left:50%;z-index:2;display:grid;width:min(216px,54vw);padding:0;border:0;background:transparent;cursor:pointer;place-items:center;transform:translate(-50%);animation:introBeginPop .52s cubic-bezier(.18,1.4,.28,1) both}.intro-overlay__begin img{display:block;width:100%;height:auto;filter:drop-shadow(0 8px 12px rgba(0,0,0,.34)) drop-shadow(0 0 10px rgba(93,141,192,.1));-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.intro-overlay__begin:hover,.intro-overlay__begin:focus-visible{transform:translate(-50%) translateY(-1px) rotate(-1deg)}.intro-overlay__begin:focus-visible{outline:2px solid rgba(244,223,173,.48);outline-offset:4px}.intro-overlay--beginning .intro-overlay__begin,.intro-overlay--ready .intro-overlay__begin{opacity:0;pointer-events:none}.intro-overlay__studio{position:fixed;left:50%;bottom:max(24px,env(safe-area-inset-bottom));z-index:1;display:block;width:min(132px,34vw);height:auto;opacity:.74;filter:drop-shadow(0 1px 0 rgba(0,0,0,.7)) drop-shadow(0 0 12px rgba(93,141,192,.1));transform:translate(-50%);transition:opacity .42s ease;-webkit-user-select:none;user-select:none}.intro-overlay--beginning .intro-overlay__studio,.intro-overlay--ready .intro-overlay__studio{opacity:0;transform:translate(-50%)}.moon-stage{position:absolute;inset:0;z-index:0;isolation:isolate;overflow:hidden;background:#07112a;transform-origin:50% 92%;--stage-dread: 0;--stage-pride: 0;--stage-pressure: 0}.moon-stage:before{position:absolute;inset:0;z-index:12;content:"";box-shadow:inset 0 -120px 110px #04071238,inset 0 0 calc(20px + (var(--stage-dread) * 42px)) rgba(4,6,17,calc(.1 + (var(--stage-dread) * .24)));pointer-events:none}.moon-stage:after{position:absolute;inset:0;z-index:13;content:"";background:radial-gradient(circle at 50% 34%,rgba(237,200,98,calc(var(--stage-pride) * .13)),transparent 24%),radial-gradient(circle at 52% 43%,transparent 24%,rgba(7,4,18,calc(var(--stage-dread) * .3)) 78%),linear-gradient(180deg,rgba(50,26,44,calc(var(--stage-dread) * .16)),transparent 43%);mix-blend-mode:multiply;pointer-events:none}.moon-stage--warning{--stage-pressure: .38}.moon-stage--critical,.moon-stage--unstable{--stage-pressure: .72}.moon-stage--destroyed{--stage-pressure: .94}.moon-stage--replacing{--stage-pressure: .62}.moon-stage--warning:before,.moon-stage--critical:before,.moon-stage--unstable:before,.moon-stage--destroyed:before,.moon-stage--replacing:before{box-shadow:inset 0 -130px 116px rgba(4,7,18,calc(.25 + (var(--stage-pressure) * .18))),inset 0 0 calc(28px + (var(--stage-pressure) * 54px)) rgba(14,6,22,calc(.18 + (var(--stage-pressure) * .24)))}.moon-stage--critical .stage-backdrop,.moon-stage--unstable .stage-backdrop{filter:saturate(.96) contrast(1.08) brightness(.92);animation:stageCardboardJitter 1.35s steps(2,end) infinite}.moon-stage--warning .twinkle-star,.moon-stage--unstable .twinkle-star,.moon-stage--critical .twinkle-star{animation:stopMotionTwinkle 4.8s steps(3,end) infinite,starTremble 1.8s steps(2,end) infinite,starPressurePulse 2.8s ease-in-out infinite}.moon-stage--destroyed .stage-backdrop{filter:saturate(.64) contrast(1.08) brightness(.78)}.stage-fill,.stage-backdrop,.asteroid-layer,.lunar-event-layer{position:absolute;inset:0}.stage-fill{z-index:0;background-image:url(/gam-assets/Background_Fill.jpg);background-repeat:repeat-x;background-size:auto 100%;background-position:0 50%;animation:skyFillDrift 76s linear infinite;will-change:background-position}.stage-backdrop{z-index:10;width:100%;height:100%;object-fit:cover;object-position:center center;filter:saturate(1.02) contrast(1.03);pointer-events:none}.asteroid-layer{z-index:1;overflow:hidden;pointer-events:none}.asteroid{position:absolute;top:-16%;left:112%;width:clamp(24px,8vw,58px);height:auto;opacity:0;filter:drop-shadow(0 14px 16px rgba(0,0,0,.34));transform:translateZ(0) rotate(-18deg);animation:asteroidDrift 21s linear infinite;will-change:transform,opacity}.asteroid--one{top:-8%;animation-delay:-4s;animation-duration:24s}.asteroid--two{top:8%;width:clamp(18px,5.6vw,42px);animation-delay:-15s;animation-duration:31s}.asteroid--three{top:-22%;width:clamp(30px,9vw,66px);animation-delay:-27s;animation-duration:38s}.lunar-event-layer{z-index:8;pointer-events:none;--lunar-lander-x: 44%;--lunar-lander-y: 17%;--lunar-lander-size: clamp(72px, 21vw, 122px)}.lunar-lander{position:absolute;top:var(--lunar-lander-y);left:var(--lunar-lander-x);width:var(--lunar-lander-size);aspect-ratio:1 / 1;padding:0;border:0;background:transparent;cursor:pointer;filter:drop-shadow(0 16px 16px rgba(0,0,0,.38));pointer-events:auto;transform:translate(-50%) rotate(-2deg);transform-origin:50% 88%;animation:lunarLanderArrive 1.8s steps(8,end) both}.lunar-lander:disabled{opacity:1}.lunar-lander--departing{cursor:default;pointer-events:none;animation:lunarLanderDepart 1.6s steps(8,end) both}.lunar-lander__ship,.lunar-lander__flame{position:absolute;display:block;height:auto;pointer-events:none;-webkit-user-select:none;user-select:none}.lunar-lander__ship{left:0;top:0;z-index:2;width:100%}.lunar-lander__flame{left:50%;top:69%;z-index:1;width:28%;opacity:0;transform:translate(-50%);transform-origin:50% 0;animation:lunarJetFlame 1.8s steps(5,end) both}.lunar-lander--departing .lunar-lander__flame{animation:lunarJetTakeoff 1.6s steps(6,end) both}.lunar-lander:hover .lunar-lander__ship{translate:0 -2px}.lunar-lander:focus-visible{outline:3px solid rgba(200,233,107,.82);outline-offset:5px;border-radius:20px}.lunar-explosion{position:absolute;top:calc(var(--lunar-lander-y) + (var(--lunar-lander-size) * .5));left:var(--lunar-lander-x);z-index:3;width:clamp(96px,28vw,166px);height:auto;opacity:0;filter:drop-shadow(0 18px 18px rgba(0,0,0,.42)) drop-shadow(0 0 20px rgba(237,200,98,.34));pointer-events:none;transform:translate(-50%,-50%) scale(.72) rotate(2deg);animation:lunarExplosionPop .9s steps(5,end) both}.hanging-stars,.twinkle-stars{position:absolute;inset:0;z-index:11;pointer-events:none}.twinkle-star{position:absolute;width:clamp(22px,6vw,54px);height:auto;filter:drop-shadow(0 9px 9px rgba(0,0,0,.34)) drop-shadow(0 0 7px rgba(237,200,98,.18));transform-origin:50% 52%;animation:stopMotionTwinkle 4.8s steps(3,end) infinite;will-change:transform,filter}.twinkle-star--one{left:3%;top:60%;width:clamp(36px,10vw,45px);animation-delay:-.7s}.twinkle-star--two{right:6%;top:51%;width:clamp(25px,6vw,47px);animation-delay:-2.2s;animation-duration:5.6s}.twinkle-star--three{left:-3%;top:68%;width:clamp(30px,8vw,62px);animation-delay:-3.6s;animation-duration:6.1s}.twinkle-star--four{right:-2%;top:87%;width:clamp(29px,7.5vw,58px);animation-delay:-1.5s;animation-duration:5.2s}.twinkle-star--five{left:93%;top:25%;width:clamp(34px,8vw,66px);animation-delay:-4.4s;animation-duration:6.6s}.hanging-star{position:absolute;width:auto;filter:drop-shadow(0 10px 12px rgba(0,0,0,.34));transform-origin:50% 0;animation:starTwitch 5.4s steps(2,end) infinite}.hanging-star--one{top:-4%;left:6%;height:23%}.hanging-star--two{top:-2%;right:10%;height:18%;animation-delay:-1.7s}.hanging-star--three{top:-5%;left:65%;height:27%;animation-delay:-3.1s}.moon-clock{position:absolute;left:50%;top:var(--moon-object-position);z-index:6;width:min(84vw,397px);max-width:84%;aspect-ratio:599 / 634;transform:translate(-50%);animation:moonBob 3.2s steps(3,end) infinite;--pride-glow: 0;--dread-veil: 0;--death-width: 105%;--death-x: 50%;--death-y: 50%;--death-rotate: 0deg;--rage-width: 100%;--rage-x: 50%;--rage-y: 50%;--rage-rotate: 0deg;--death-particle-x: 56%;--death-particle-y: 45%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;touch-action:manipulation}.moon-clock:before,.moon-clock:after{position:absolute;inset:9%;z-index:0;border-radius:50%;content:"";pointer-events:none}.moon-clock:before{background:radial-gradient(circle,rgba(237,200,98,.55),rgba(237,200,98,.16) 44%,transparent 70%);filter:blur(18px);opacity:calc(var(--pride-glow) * .7);transform:scale(calc(1 + (var(--pride-glow) * .1)))}.moon-clock:after{inset:2%;z-index:2;background:radial-gradient(circle at 54% 46%,transparent 50%,rgba(3,4,13,calc(var(--dread-veil) * .34)) 86%);mix-blend-mode:multiply;opacity:calc(var(--dread-veil) * .92)}.moon-art{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 28px 24px rgba(0,0,0,.36));-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.moon-clock img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.moon-clock--pokeable{cursor:pointer}.moon-clock--pokeable:focus-visible{outline:3px solid rgba(200,233,107,.82);outline-offset:8px}.moon-clock--poke-poked{animation:moonPokeWobble .72s cubic-bezier(.16,.9,.24,1) both}.moon-clock--poke-annoyed{animation:moonPokeSettle .88s steps(3,end) both}.moon-clock--replacement-intro{animation:moonReplacementIntro 1.38s cubic-bezier(.16,.92,.18,1) both}.app-shell--moon-entering .moon-clock:not(.moon-clock--dead):not(.moon-clock--replacing),.moon-clock--intro-rise{animation:moonIntroRise 7s cubic-bezier(.12,.84,.18,1) both;pointer-events:none}.moon-death-art{position:absolute;left:var(--death-x);top:var(--death-y);z-index:2;display:block;width:var(--death-width);height:auto;filter:drop-shadow(0 28px 24px rgba(0,0,0,.38));pointer-events:none;transform:translate(-50%,-49.2%) rotate(var(--death-rotate));-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.moon-death-particles{position:absolute;inset:0;z-index:1;pointer-events:none;transform:translateZ(0)}.moon-death-burst{position:absolute;inset:-10%;z-index:3;pointer-events:none;transform:translateZ(0)}.moon-death-particle{position:absolute;left:var(--death-particle-x);top:var(--death-particle-y);width:calc(4.8% * var(--particle-size, 1));height:auto;opacity:0;filter:drop-shadow(0 5px 5px rgba(0,0,0,.26)) drop-shadow(0 0 5px rgba(237,200,98,.12));transform-origin:50% 50%;animation:brokenMoonParticle var(--particle-duration, 3.4s) linear infinite;animation-delay:var(--particle-delay, 0s)}.moon-death-burst-particle{position:absolute;left:var(--death-particle-x);top:var(--death-particle-y);width:calc(5.2% * var(--burst-size, 1));height:auto;opacity:0;filter:drop-shadow(0 7px 5px rgba(0,0,0,.36)) drop-shadow(0 0 10px rgba(255,237,185,.22));transform-origin:50% 50%;animation:brokenMoonBurst .92s cubic-bezier(.06,.82,.18,1) both;animation-delay:var(--burst-delay, 0ms)}.moon-death-flash{position:absolute;inset:-12%;z-index:4;border-radius:50%;background:radial-gradient(circle,rgba(255,251,231,1) 0 18%,rgba(255,241,185,.82) 34%,rgba(237,200,98,.34) 54%,transparent 76%);pointer-events:none;animation:moonDeathFlash 96ms steps(2,end) both}.moon-clock--dead{--pride-glow: 0;--dread-veil: 0;animation:moonDeadDrift 5.8s steps(2,end) infinite}.moon-clock--death-rage{animation:moonDeathRageShake 90ms steps(2,end) infinite}.moon-clock--death-rage .moon-death-art,.moon-clock--death-flash .moon-death-art{left:var(--rage-x);top:var(--rage-y);width:var(--rage-width);transform:translate(-50%,-50%) rotate(var(--rage-rotate))}.moon-clock--death-flash{animation:moonDeathRageShake 54ms steps(2,end) infinite}.moon-clock--destroyed{cursor:pointer}.moon-clock--destroyed:focus-visible{outline:3px solid rgba(200,233,107,.82);outline-offset:8px}.moon-clock--replacing{opacity:0;filter:blur(3px) saturate(.74);transition:opacity 1.1s ease,filter 1.1s ease;pointer-events:none}.moon-clock--dead:before,.moon-clock--dead:after{display:none}.moon-clock--dead .moon-art{opacity:0}.moon-interstitial-layer{position:absolute;left:50%;top:calc(var(--moon-object-position) + 17%);z-index:12;display:grid;width:min(82vw,420px);min-height:min(42vw,230px);place-items:center;pointer-events:none;transform:translate(-50%,-52%)}.moon-interstitial{display:grid;place-items:center;gap:8px;width:100%;padding:22px 18px;border:0;color:#fff1d2f5;background:radial-gradient(ellipse at 50% 50%,rgba(5,7,16,.48),rgba(5,7,16,.24) 54%,transparent 76%);cursor:default;font-family:var(--display);text-align:center;text-shadow:0 2px 18px rgba(0,0,0,.82),0 0 18px rgba(95,148,216,.28);pointer-events:auto;animation:moonInterstitialIn .72s cubic-bezier(.18,.9,.24,1) both}.moon-interstitial span,.moon-interstitial strong,.moon-interstitial em,.moon-interstitial small,.moon-interstitial__restart{display:block}.moon-interstitial span{color:#9ec3ff;font-size:clamp(1.55rem,7vw,2.45rem);font-weight:920;line-height:1}.moon-interstitial strong{color:#fff1d2f5;font-size:clamp(.96rem,4vw,1.28rem);line-height:1.1}.moon-interstitial em{color:#fff1d2ad;font-size:.74rem;font-style:normal;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.moon-interstitial__restart{width:min(52vw,185px);height:auto;margin:0 auto -2px;filter:drop-shadow(0 5px 8px rgba(0,0,0,.42)) drop-shadow(0 0 8px rgba(95,148,216,.18));pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.moon-interstitial small{max-width:28ch;color:#fff1d28a;font-family:var(--ui);font-size:.72rem;font-weight:700;line-height:1.3}.moon-interstitial--destroyed{gap:10px;pointer-events:none}.moon-interstitial--destroyed span{max-width:16ch;color:#fff1d2f5;font-size:clamp(1.22rem,5.2vw,2rem);line-height:1.08}.moon-interstitial:focus-visible{outline:3px solid rgba(200,233,107,.82);outline-offset:6px}.moon-scorch{position:absolute;left:40%;top:2%;z-index:3;display:block;width:48%;height:auto;opacity:var(--scorch-opacity, 1);mix-blend-mode:multiply;filter:saturate(.92) contrast(1.06) drop-shadow(0 8px 7px rgba(0,0,0,.18));pointer-events:none;transform:translate(-50%) rotate(-4deg);transform-origin:50% 52%;transition:opacity 1s steps(4,end);animation:scorchQuickIn .52s steps(4,end) both;-webkit-user-select:none;user-select:none}.moon-badge{position:absolute;z-index:4;padding:5px 8px;border:1px solid rgba(255,241,210,.24);border-radius:999px;color:#fff1d2e0;background:#080b1694;font-size:.56rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.moon-badge--curtain{left:-1%;bottom:22%}.moon-clock--angry .moon-art,.moon-clock--annoyed .moon-art,.moon-clock--annoyedB .moon-art{filter:drop-shadow(0 28px 24px rgba(0,0,0,.36)) saturate(1.08)}.moon-clock--ignoringYou .moon-art,.moon-clock--defeated .moon-art{filter:drop-shadow(0 28px 24px rgba(0,0,0,.36)) brightness(.88) saturate(.94)}.moon-clock--ominous .moon-art,.moon-clock--screaming .moon-art,.moon-clock--judgingB .moon-art{filter:drop-shadow(0 0 24px rgba(64,111,168,.38)) drop-shadow(0 28px 24px rgba(0,0,0,.36))}.stage-change-layer{position:absolute;inset:0;z-index:7;pointer-events:none}.stage-change{position:absolute;display:inline-grid;width:10px;height:10px;min-width:0;min-height:0;place-items:center;overflow:hidden;padding:0;border:1px solid rgba(255,241,210,.18);border-radius:50%;color:transparent;background:#edc86294;font-size:0;text-indent:-999px;box-shadow:0 0 9px #edc86240,0 8px 18px #0003;transform-origin:center}.stage-change--milk-glass{display:none}.stage-change--paper-star{width:15px;height:15px;clip-path:polygon(50% 0,62% 35%,99% 35%,68% 56%,80% 100%,50% 72%,20% 100%,32% 56%,1% 35%,38% 35%);border:0;border-radius:0;background:#edc862d1;animation:tinyStarBlink 7s steps(2,end) infinite}.stage-change--curtain-pin{background:#bd404a9e}.stage-change--motel-bulb{background:#edc862c7}.stage-change--tide-mark{width:24px;height:5px;border-radius:999px;background:#406fa894}.stage-change--receipt-omen{display:none}.stage-change--window-frost{width:18px;height:9px;background:#406fa880}.ritual-stack{position:absolute;right:0;bottom:var(--control-cluster-bottom);left:0;z-index:18;display:grid;gap:8px;overflow:visible;padding:0 12px}.ritual-stack--interstitial{opacity:0;filter:saturate(.72);pointer-events:none}.speech-panel{position:relative;color:var(--text);text-align:center;transition:opacity .42s ease,filter .42s ease,transform .44s cubic-bezier(.22,.8,.26,1)}.speech-panel p{position:relative;display:block;width:var(--response-max-width);max-height:5.4em;margin:0 auto;overflow:hidden;color:#fff1d2f5;font-family:var(--display);font-size:clamp(.96rem,4vw,1.14rem);font-weight:800;line-height:1.34;text-shadow:0 2px 18px rgba(0,0,0,.82),0 0 1px rgba(4,6,13,.7);text-wrap:balance;transform:translateY(0)}.speech-panel--leaving{opacity:0;filter:blur(2px);transform:translateY(6px)}.speech-text__sizer{display:block;visibility:hidden}.speech-text__letters{position:absolute;inset:0;display:block}.speech-panel--typing .speech-text__letters{color:#aed3ffeb;filter:saturate(1.12);text-shadow:0 2px 18px rgba(0,0,0,.82),0 0 14px rgba(95,148,216,.35),0 0 1px rgba(4,6,13,.7)}.speech-text__char{display:inline;visibility:hidden;color:#aed3fff0;filter:saturate(1.15);text-shadow:0 2px 18px rgba(0,0,0,.82),0 0 14px rgba(95,148,216,.38),0 0 1px rgba(4,6,13,.7);transition:color .92s ease-out,filter .92s ease-out,text-shadow .92s ease-out}.speech-text__char--visible{visibility:visible;color:#fff1d2f5;filter:saturate(1);text-shadow:0 2px 18px rgba(0,0,0,.82),0 0 1px rgba(4,6,13,.7)}.speech-text__cursor{display:inline-block;width:.45ch;color:#aed3ffb8;content:"•";text-shadow:0 0 10px rgba(95,148,216,.34);height:1em;vertical-align:-.08em;animation:responseCursor .86s steps(2,end) infinite}.speech-text__cursor:before{content:"."}.speech-panel--settled{opacity:1;filter:none;transform:translateY(0)}.speech-pin,.speech-tail{display:none}.controls{position:relative;z-index:32;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;width:min(calc(100% - 58px),360px);min-width:0;min-height:54px;margin:22px auto 0;overflow:visible;padding:4px;border:1px solid rgba(244,223,173,.24);border-radius:999px;background:radial-gradient(circle at 22% 18%,rgba(255,241,210,.11),transparent 30%),linear-gradient(180deg,#272b2de6,#0e1114eb);box-shadow:inset 0 1px #fff1d229,inset 0 -2px 6px #0000007a,0 10px 28px #00000047;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);isolation:isolate;transform-origin:50% 55%;animation:controlRailBreathe 8.5s ease-in-out infinite}.controls:before{position:absolute;inset:3px 8px;z-index:-1;border-radius:inherit;background:linear-gradient(90deg,transparent 0%,rgba(255,241,210,.09) 42%,transparent 72%);content:"";opacity:.36;transform:translate(-18%);animation:controlRailGleam 6.8s ease-in-out infinite}.controls--disabled{opacity:.48;filter:saturate(.72)}.controls--disabled .action-button{cursor:default}.action-button{position:relative;display:grid;min-width:0;min-height:0;padding:5px 2px 4px;border:0;border-radius:999px;color:var(--text);background:transparent;box-shadow:none;cursor:pointer;grid-template-rows:1fr auto;align-items:center;justify-items:center;row-gap:2px;--action-accent: rgba(244, 223, 173, .58);--action-glow: rgba(244, 223, 173, .16);transition:background .15s ease,color .15s ease,box-shadow .15s ease,transform .18s cubic-bezier(.2,1.5,.34,1)}.action-button:disabled{color:#fff1d26b;transform:none}.action-button:disabled:hover{background:transparent;box-shadow:none;transform:none}.action-button:disabled:hover .action-icon{transform:none}.action-button:hover,.action-button--active{color:#fff7df;background:radial-gradient(circle at 50% 20%,var(--action-glow),transparent 42%),linear-gradient(180deg,#fff1d221,#fff1d209),#565d5f57;box-shadow:inset 0 1px 0 var(--action-accent),inset 0 -2px #00000042,inset 0 -1px 5px #00000047}.action-button:hover{transform:translateY(-1px)}.action-button:before{position:absolute;right:24%;bottom:2px;left:24%;height:2px;border-radius:999px;background:var(--action-accent);content:"";opacity:.32;transform:scaleX(.72);transition:opacity .15s ease,transform .15s steps(2,end)}.action-button:hover:before,.action-button--active:before{opacity:.86;transform:scaleX(1)}.action-button:active{transform:translateY(1px) scale(.985) rotate(-.3deg)}.action-button--active:after{position:absolute;right:8px;top:-8px;z-index:2;padding:2px 4px;border:1px solid var(--action-accent);border-radius:2px;color:#fff1d2eb;background:#080a12c7;box-shadow:0 6px 12px #0000003d;content:attr(data-stamp);font-family:var(--ui);font-size:.46rem;font-weight:900;letter-spacing:.08em;line-height:1;text-transform:uppercase;transform:rotate(-3deg);animation:actionStamp .9s steps(3,end) both;pointer-events:none}.action-button--active .action-icon{animation:actionIconPulse .56s cubic-bezier(.18,1.7,.3,1) both}.action-button--wave{--action-accent: rgba(244, 223, 173, .74);--action-glow: rgba(244, 223, 173, .16)}.action-button--confess{--action-accent: rgba(189, 64, 74, .76);--action-glow: rgba(189, 64, 74, .18)}.action-button--milk{--action-accent: rgba(206, 231, 245, .72);--action-glow: rgba(206, 231, 245, .15)}.action-button--shout{--action-accent: rgba(232, 151, 66, .82);--action-glow: rgba(232, 151, 66, .2)}.action-button--omen{--action-accent: rgba(124, 147, 215, .78);--action-glow: rgba(124, 147, 215, .18)}.action-button:focus-visible,.debug-panel button:focus-visible,.ledger-panel__expand:focus-visible,.ritual-log__toggle:focus-visible,.debug-panel summary:focus-visible{outline:3px solid rgba(200,233,107,.82);outline-offset:3px}.action-button span{display:block;overflow:hidden;max-width:100%}.action-icon{display:grid;width:22px;height:22px;place-items:center;filter:drop-shadow(0 1px 0 rgba(0,0,0,.62)) drop-shadow(0 0 6px var(--action-glow));transform-origin:50% 72%;transition:filter .18s ease,transform .18s cubic-bezier(.2,1.4,.34,1)}.action-button:hover .action-icon{filter:drop-shadow(0 2px 0 rgba(0,0,0,.58)) drop-shadow(0 0 9px var(--action-glow));transform:translateY(-1px) rotate(-2deg) scale(1.08)}.action-icon img{display:block;width:100%;height:100%;object-fit:contain;image-rendering:auto;-webkit-user-select:none;user-select:none}.action-label{color:#fff1d2e0;font-size:clamp(.48rem,1.45vw,.58rem);font-weight:900;letter-spacing:.035em;line-height:1;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}.action-button .action-tooltip{position:absolute;left:50%;top:calc(100% + 8px);z-index:80;display:block;overflow:visible;width:max-content;max-width:min(190px,56vw);padding:5px 8px 6px;border:1px solid rgba(244,223,173,.32);border-radius:8px;color:#fff1d2f0;background:linear-gradient(180deg,#1f1e23f5,#0c0c12f5),#0c0c12f5;box-shadow:0 7px 16px #00000061,inset 0 1px #fff1d21f;font-family:var(--ui);font-size:.62rem;font-weight:800;letter-spacing:.01em;line-height:1.15;opacity:0;pointer-events:none;text-transform:none;transform:translate(-50%,-3px) rotate(-1deg) scale(.96);transition:opacity .13s ease,transform .16s cubic-bezier(.18,1.35,.32,1);white-space:nowrap}.action-button .action-tooltip:before{position:absolute;top:-5px;left:50%;width:8px;height:8px;border-left:1px solid rgba(244,223,173,.32);border-top:1px solid rgba(244,223,173,.32);background:#1f1e23f5;content:"";transform:translate(-50%) rotate(45deg)}.action-button:hover .action-tooltip,.action-button:focus-visible .action-tooltip{opacity:1;transform:translate(-50%) rotate(-1deg) scale(1)}.action-button:disabled .action-tooltip{display:none}.stats-panel{position:relative;z-index:12;width:min(100%,500px);margin:var(--instrument-gap) auto 0;padding:8px 9px 9px;border:0;border-radius:14px;background:#070a149e;box-shadow:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.stats-panel--dimmed{opacity:.42;filter:saturate(.62)}.stats-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}.stat-scrap{display:grid;position:relative;min-width:0;gap:4px;--stat-fill: rgba(244, 223, 173, .82);--stat-glow: rgba(244, 223, 173, .12);transform-origin:50% 100%;transition:filter .22s ease,opacity .22s ease}.stat-scrap__label{display:flex;align-items:baseline;justify-content:space-between;gap:6px;color:var(--quiet);font-size:clamp(.54rem,2.1vw,.66rem);font-weight:760;line-height:1}.stat-scrap__label span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.stat-scrap__label strong{flex:0 0 auto;color:#fff1d2eb;font-size:.68rem;font-weight:900;font-variant-numeric:tabular-nums;transform-origin:50% 65%}.stat-scrap[data-change=up] .stat-scrap__label strong{animation:statNumberUp .52s cubic-bezier(.18,1.8,.28,1) both}.stat-scrap[data-change=down] .stat-scrap__label strong{animation:statNumberDown .52s cubic-bezier(.18,1.8,.28,1) both}.stat-scrap--danger .stat-scrap__label strong{color:#ff9687;text-shadow:0 0 8px rgba(189,64,74,.42)}.stat-scrap--charged .stat-scrap__label strong{color:#ffe49b;text-shadow:0 0 10px rgba(237,200,98,.42)}.stat-scrap--dim .stat-scrap__label{color:#fff1d257}.stat-scrap--calm .stat-scrap__label strong{color:#afd3ece6}.stat-scrap--volatile{filter:drop-shadow(0 0 7px rgba(189,64,74,.28)) saturate(1.08)}.stat-scrap--pressure-critical{animation:volatileStatPulse 1.28s steps(2,end) infinite}.stat-scrap--pressure-warning{filter:drop-shadow(0 0 5px rgba(189,64,74,.18)) saturate(1.04)}.stat-scrap--volatile:after{position:absolute;right:8%;bottom:4px;width:8px;height:8px;border-left:1px solid rgba(255,241,210,.36);border-bottom:1px solid rgba(255,241,210,.28);content:"";opacity:.78;transform:rotate(-18deg) skew(-12deg)}.stat-scrap--volatile .stat-scrap__label{color:#ffd6a9c7}.stat-scrap--volatile .stat-scrap__label strong{color:#ffb08f;text-shadow:0 0 8px rgba(189,64,74,.48),0 0 14px rgba(232,151,66,.24)}.stat-scrap--volatile .stat-meter{background:#43141d6b;box-shadow:0 0 10px #bd404a42,inset 0 0 0 1px #ff968724}.stat-scrap--dread.stat-scrap--volatile{--stat-fill: linear-gradient(90deg, #23143f 0%, #713663 48%, #c05a6a 100%);--stat-glow: rgba(189, 64, 74, .38)}.stat-scrap--pride.stat-scrap--volatile{--stat-fill: linear-gradient(90deg, #2f2a2b 0%, #756946 45%, #c9a756 100%);--stat-glow: rgba(237, 200, 98, .14);filter:grayscale(.22) drop-shadow(0 0 5px rgba(237,200,98,.14))}.stat-scrap--pride.stat-scrap--volatile:before{position:absolute;left:44%;bottom:1px;width:1px;height:12px;background:#070a14cc;box-shadow:3px 4px #070a14b8,-2px 8px #fff1d229;content:"";transform:rotate(18deg)}.stat-scrap--craving.stat-scrap--volatile{--stat-fill: linear-gradient(90deg, #6a3424 0%, #c06734 44%, #d04d52 100%);--stat-glow: rgba(208, 77, 82, .42)}.stat-scrap--loneliness.stat-scrap--volatile{--stat-fill: linear-gradient(90deg, #1f3147 0%, #526b83 52%, #a8b6c2 100%);--stat-glow: rgba(126, 161, 190, .22)}.stat-scrap--loneliness.stat-scrap--pressure-critical{animation:volatileStatPulse 1.34s steps(2,end) infinite,lonelyStatTremble 1.8s steps(2,end) infinite}.stat-meter{overflow:hidden;height:5px;border-radius:999px;background:#ffffff18;box-shadow:inset 0 0 0 1px #fff1d20b}.stat-meter span{display:block;height:100%;border-radius:inherit;background:var(--stat-fill);box-shadow:0 0 8px var(--stat-glow);transform-origin:0 50%;transition:width .56s cubic-bezier(.18,1.35,.34,1),filter .26s ease;animation:statFillSettle .56s cubic-bezier(.18,1.35,.34,1) both}.stat-scrap[data-change=up] .stat-meter span{filter:brightness(1.18) saturate(1.12)}.stat-scrap[data-change=down] .stat-meter span{filter:brightness(1.08) saturate(.94)}.stat-scrap--judgment{--stat-fill: linear-gradient(90deg, #7f2533 0%, #bd404a 58%, #ff9687 100%);--stat-glow: rgba(189, 64, 74, .28)}.stat-scrap--pride{--stat-fill: linear-gradient(90deg, #7b6231 0%, #edc862 58%, #fff1d2 100%);--stat-glow: rgba(237, 200, 98, .26)}.stat-scrap--dread{--stat-fill: linear-gradient(90deg, #272a63 0%, #55529a 54%, #9c7ddd 100%);--stat-glow: rgba(124, 104, 204, .26)}.stat-scrap--loneliness{--stat-fill: linear-gradient(90deg, #2e4b68 0%, #5d8dc0 58%, #a6c8dc 100%);--stat-glow: rgba(93, 141, 192, .24)}.stat-scrap--craving{--stat-fill: linear-gradient(90deg, #ebe3b8 0%, #d4aa54 62%, #c96543 100%);--stat-glow: rgba(212, 170, 84, .2)}.stat-scrap--judgment.stat-scrap--calm,.stat-scrap--dread.stat-scrap--calm,.stat-scrap--loneliness.stat-scrap--calm{--stat-fill: linear-gradient(90deg, rgba(138, 162, 177, .62), rgba(175, 211, 236, .82));--stat-glow: rgba(175, 211, 236, .12)}.stat-scrap--craving.stat-scrap--calm{--stat-fill: linear-gradient(90deg, #d8dfc1, #fff1d2);--stat-glow: rgba(255, 241, 210, .1)}.stat-scrap--craving.stat-scrap--danger .stat-meter{background:#43141d85;box-shadow:0 0 10px #c9654361,inset 0 0 0 1px #ff968724}.stat-scrap--craving.stat-scrap--danger{--stat-fill: linear-gradient(90deg, #d4aa54 0%, #e89742 48%, #d04d52 100%);--stat-glow: rgba(208, 77, 82, .38)}.stat-scrap--dread.stat-scrap--danger .stat-meter{box-shadow:0 0 8px #406fa857}.stat-scrap--pride.stat-scrap--charged .stat-meter{box-shadow:0 0 10px #edc86247}.stat-scrap--pride.stat-scrap--dim .stat-meter span{filter:saturate(.58) brightness(.76)}.ritual-log{position:absolute;inset:0;z-index:20;margin:0;pointer-events:none}.ritual-log__toggle{position:absolute;top:auto;right:clamp(44px,9%,68px);bottom:var(--ledger-baseline-bottom);z-index:45;display:grid;width:28px;height:28px;min-width:28px;min-height:28px;place-items:center;border:1px solid rgba(244,223,173,.28);border-radius:9px;background:#080a12ad;box-shadow:0 10px 24px #0000004d,inset 0 1px #fff1d224;cursor:pointer;color:#fff1d2b3;font-size:0;list-style:none;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);pointer-events:auto;transform-origin:50% 52%;transition:border-color .18s ease,color .18s ease,transform .22s cubic-bezier(.18,1.6,.34,1),background .18s ease}.ritual-log__toggle:hover,.ritual-log--open .ritual-log__toggle{border-color:#f4dfad7a;color:#fff1d2eb;background:#0f121bc7;transform:translateY(-1px) rotate(-2deg) scale(1.04)}.ritual-log--open .ritual-log__toggle{right:clamp(28px,5.8%,42px);animation:ledgerToggleWake .44s cubic-bezier(.18,1.6,.34,1) both}.ritual-log__toggle:active{transform:translateY(1px) rotate(1deg) scale(.96)}.debug-panel summary::-webkit-details-marker{display:none}.ritual-log__toggle span{position:relative;display:block;width:9px;height:9px;color:currentColor}.ritual-log__toggle span:before,.ritual-log__toggle span:after{position:absolute;top:50%;left:50%;width:9px;height:1.5px;border-radius:999px;background:currentColor;content:"";transform:translate(-50%,-50%);transition:opacity .18s ease,transform .22s cubic-bezier(.18,1.6,.34,1)}.ritual-log__toggle span:after{transform:translate(-50%,-50%) rotate(90deg)}.ritual-log--open .ritual-log__toggle span:after{opacity:0;transform:translate(-50%,-50%) rotate(180deg) scaleX(.1)}.ledger-panel{position:absolute;top:auto;bottom:var(--ledger-baseline-bottom);left:50%;z-index:40;width:min(calc(100vw - 32px),420px);max-height:min(30vh,218px);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:17px 24px 16px 17px;border:1px solid rgba(244,223,173,.22);border-radius:8px;color:#fff1d2e0;background:linear-gradient(180deg,#18161ef5,#0d0c13f5),#0a0a12f5;box-shadow:0 18px 38px #0000006b,inset 0 1px #fff1d214;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);scrollbar-color:rgba(244,223,173,.5) rgba(255,241,210,.08);scrollbar-gutter:stable;scrollbar-width:thin;pointer-events:auto;transform:translate(-50%);transform-origin:calc(100% - 24px) 100%;animation:ledgerPanelIn .44s cubic-bezier(.18,1.55,.32,1) both}.ritual-log--closing .ledger-panel{animation:ledgerPanelOut .28s cubic-bezier(.5,0,.74,.18) both}.ritual-log--expanded .ledger-panel{bottom:var(--ledger-baseline-bottom);width:min(calc(100vw - 24px),500px);max-height:min(58vh,430px)}.ledger-panel::-webkit-scrollbar{width:12px}.ledger-panel::-webkit-scrollbar-track{margin-block:8px;border-radius:999px;background:#fff1d212;box-shadow:inset 0 0 0 1px #f4dfad14}.ledger-panel::-webkit-scrollbar-thumb{border:3px solid rgba(15,14,21,.96);border-radius:999px;background:linear-gradient(180deg,#f4dfadd1,#edc8626b),#f4dfad8a;box-shadow:inset 0 0 0 1px #fff1d229}.ledger-panel::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#fff1d2eb,#edc86294),#f4dfadad}.ledger-panel::-webkit-scrollbar-corner{background:transparent}.ledger-panel__header{display:grid;grid-template-columns:1fr auto;gap:4px;margin-bottom:10px}.ledger-panel__header h2{margin:0;color:var(--text);font-family:var(--display);font-size:1.02rem;line-height:1}.ledger-panel__expand{align-self:start;min-height:22px;padding:0 8px;border:1px solid rgba(244,223,173,.2);border-radius:999px;color:#fff1d2b8;background:#ffffff0e;cursor:pointer;font-size:.58rem;font-weight:850;letter-spacing:.035em;line-height:1;text-transform:lowercase}.ledger-panel__header p{grid-column:1 / -1;margin:0;color:#9ec3ff;font-size:.78rem;font-weight:780;line-height:1.35}.debug-panel{position:fixed;right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));z-index:80;width:fit-content;max-width:min(calc(100vw - 24px),420px);margin:0;border:1px solid var(--line);border-radius:999px;background:#080b16b8;box-shadow:0 14px 30px #00000052;opacity:.76;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.debug-panel[open]{width:min(calc(100vw - 24px),320px);border-radius:14px;opacity:.94}.debug-panel summary{display:inline-flex;min-height:34px;align-items:center;justify-content:center;padding:0 13px;cursor:pointer;color:#fff1d2c7;font-size:.64rem;font-weight:850;letter-spacing:.035em;line-height:1;list-style:none;text-transform:lowercase}.debug-panel summary:after{content:none}.debug-panel[open] summary:after{content:none}.debug-panel__body{margin-inline:13px}.ledger-panel .ledger-summary,.ledger-panel .memory-list{margin-inline:0}.ledger-summary{display:grid;gap:0;margin-block:12px 14px;border-block:1px solid rgba(244,223,173,.12)}.ledger-summary__row{display:grid;grid-template-columns:18px minmax(72px,auto) 1fr;gap:8px;align-items:baseline;padding-block:8px;border-bottom:1px solid rgba(244,223,173,.08);color:#fff1d2ad;font-size:.76rem;line-height:1.34}.ledger-summary__row:last-child{border-bottom:0}.ledger-summary__row strong{color:var(--text);font-size:.68rem;font-weight:920;letter-spacing:.045em;text-transform:uppercase}.ledger-summary__mark{position:relative;top:1px;display:block;width:13px;height:13px;border:1px solid rgba(244,223,173,.28);border-radius:3px;background:#fff1d20f;box-shadow:inset 0 1px #fff1d214}.ledger-summary__mark:after{position:absolute;inset:3px;border-radius:50%;background:#edc862b8;content:""}.ledger-summary__row--grudges .ledger-summary__mark:after{border-radius:1px;background:#bd404ac2;transform:rotate(-18deg)}.ledger-summary__row--evidence .ledger-summary__mark:after{border-radius:1px;background:#cee7f5ad}.ledger-summary__row--omen .ledger-summary__mark:after{background:#7c93d7d1}.ledger-summary__row--cycle .ledger-summary__mark:after{border-radius:1px;background:#edc862bd;transform:rotate(45deg) scale(.86)}.memory-list{display:grid;gap:14px;margin-block:0 16px;padding:0}.memory-group{display:grid;gap:7px}.memory-group h3{margin:0;color:#f4dfad94;font-size:.62rem;font-weight:920;letter-spacing:.075em;line-height:1;text-transform:uppercase}.memory-group ol{display:grid;gap:7px;margin:0;padding:0;list-style:none}.memory-entry{display:grid;grid-template-columns:16px auto 1fr;gap:8px;align-items:baseline;color:var(--muted);font-size:.8rem;line-height:1.42}.memory-entry__marker{position:relative;top:2px;width:10px;height:10px;border:1px solid rgba(244,223,173,.22);border-radius:50%;background:#f4dfad1f}.memory-entry__marker:after{position:absolute;inset:3px;border-radius:inherit;background:#f4dfadad;content:""}.memory-entry--milk .memory-entry__marker:after{background:#cee7f5c7}.memory-entry--confess .memory-entry__marker:after,.memory-entry--grudge .memory-entry__marker:after{background:#bd404ab8}.memory-entry--shout .memory-entry__marker:after{background:#e89742c7}.memory-entry--omen .memory-entry__marker:after,.memory-entry--special .memory-entry__marker:after{background:#7c93d7d1}.memory-entry--cycle .memory-entry__marker:after{border-radius:1px;background:#edc862c7;transform:rotate(45deg)}.memory-entry--return .memory-entry__marker:after{background:#afd3ecb8}.memory-entry__tag{min-width:46px;color:#fff1d27a;font-size:.56rem;font-weight:900;letter-spacing:.055em;line-height:1;text-transform:uppercase}.memory-entry__text{color:#fff1d2b8}.memory-group:not(:first-child) .memory-entry__text{color:#fff1d29e}.debug-panel__body{display:grid;gap:10px;padding:2px 0 13px}.debug-panel p{margin:0;overflow-wrap:anywhere;color:var(--quiet);font-size:.72rem}.debug-panel button{justify-self:stretch;min-height:38px;padding:0 13px;border:1px solid var(--line);border-radius:999px;color:var(--text);background:#ffffff13;cursor:pointer}.wave-lines,.milk-splash,.milk-accepted-plaque,.confession-received-plaque,.curtain-flap,.omen-burst{position:absolute;z-index:16;pointer-events:none;opacity:0}.wave-lines{top:var(--scrap-top, 23%);left:var(--scrap-left, 7%);width:clamp(96px,27vw,176px);height:auto;filter:drop-shadow(0 10px 13px rgba(0,0,0,.34));transform:rotate(var(--scrap-rotate, -7deg)) scale(var(--scrap-scale, .92))}.omen-burst{top:var(--scrap-top, 27%);left:var(--scrap-left, 12%);height:auto;filter:drop-shadow(0 12px 14px rgba(0,0,0,.34));transform:rotate(var(--scrap-rotate, -4deg)) scale(var(--scrap-scale, .92))}.omen-burst{width:clamp(136px,37vw,240px)}.milk-splash{top:var(--scrap-top, 48%);left:var(--scrap-left, 66%);width:clamp(48px,13vw,92px);height:auto;filter:drop-shadow(0 12px 12px rgba(0,0,0,.28)) drop-shadow(0 0 10px rgba(255,241,210,.2));transform:rotate(var(--scrap-rotate, -11deg)) scale(var(--scrap-scale, .84))}.milk-accepted-plaque,.confession-received-plaque{left:50%;top:58%;z-index:17;width:clamp(152px,44vw,260px);height:auto;filter:drop-shadow(0 12px 12px rgba(0,0,0,.32)) drop-shadow(0 0 8px rgba(255,220,143,.14));transform:translate(-50%) rotate(-.8deg) scale(.92)}.milk-accepted-plaque{animation:milkAcceptedPlaque 4.2s cubic-bezier(.18,.9,.24,1) both}.confession-received-plaque{animation:milkAcceptedPlaque 3.9s cubic-bezier(.18,.9,.24,1) both}.curtain-flap{top:var(--scrap-top, 17%);left:var(--scrap-left, 70%);width:clamp(108px,30vw,196px);height:auto;filter:drop-shadow(0 12px 14px rgba(0,0,0,.34));transform:rotate(var(--scrap-rotate, 7deg)) scale(var(--scrap-scale, .92))}.moon-stage--return .hanging-star{animation:starTwitch .18s steps(2,end) 6}.moon-stage--wave .wave-lines{animation:waveHelloPop .86s steps(3,end)}.moon-stage--milk .milk-splash{animation:milkZeroGravity 3.6s cubic-bezier(.18,.9,.22,1) both}.moon-stage--shout .moon-clock{animation:moonShoutWobble .52s steps(3,end)}.moon-stage--shout .hanging-star{animation:hangingStarShoutWobble .62s steps(3,end)}.moon-stage--shout .curtain-flap{animation:paperPop .72s steps(2,end)}.moon-stage--omen .omen-burst{animation:stampPop .78s steps(3,end)}@keyframes moonBob{0%,to{transform:translate(-50%) translateY(0) rotate(-.3deg)}50%{transform:translate(-50%) translateY(-5px) rotate(.4deg)}}@keyframes moonLogoMarqueeBulb{0%,to{opacity:.42;filter:saturate(.86);transform:translate(-50%,-50%) scale(.72)}28%{opacity:1;filter:saturate(1.35);transform:translate(-50%,-50%) scale(1.14)}46%{opacity:.7;transform:translate(-50%,-50%) scale(.9)}}@keyframes moonReplacementIntro{0%{opacity:0;filter:drop-shadow(0 18px 18px rgba(0,0,0,.28));transform:translate(-50%) translateY(48px) rotate(-2.4deg) scale(.22)}42%{opacity:1;filter:drop-shadow(0 34px 24px rgba(0,0,0,.38));transform:translate(-50%) translateY(-9px) rotate(1.2deg) scale(1.12,.94)}58%{transform:translate(-50%) translateY(5px) rotate(-.8deg) scale(.96,1.05)}72%{transform:translate(-50%) translateY(-2px) rotate(.35deg) scale(1.025,.985)}84%{transform:translate(-50%) translateY(0) rotate(-.18deg) scale(1)}to{opacity:1;filter:drop-shadow(0 28px 24px rgba(0,0,0,.36));transform:translate(-50%) translateY(0) rotate(-.3deg) scale(1)}}@keyframes moonPokeWobble{0%{transform:translate(-50%) translateY(0) rotate(-.3deg) scale(1)}18%{transform:translate(-50%) translateY(7px) rotate(2.4deg) scale(1.035,.94)}38%{transform:translate(-50%) translateY(-3px) rotate(-2deg) scale(.985,1.02)}58%{transform:translate(-50%) translateY(2px) rotate(1.1deg) scale(1.01,.98)}78%{transform:translate(-50%) translateY(-1px) rotate(-.6deg) scale(.998,1.004)}to{transform:translate(-50%) translateY(0) rotate(-.3deg) scale(1)}}@keyframes moonPokeSettle{0%{transform:translate(-50%) translateY(0) rotate(-.3deg)}36%{transform:translate(-50%) translateY(2px) rotate(.9deg)}72%{transform:translate(-50%) translateY(-1px) rotate(-.5deg)}to{transform:translate(-50%) translateY(0) rotate(-.3deg)}}@keyframes moonDeadDrift{0%,to{transform:translate(-50%) translateY(0) rotate(-.12deg)}50%{transform:translate(-50%) translateY(2px) rotate(.08deg)}}@keyframes moonDeathRageShake{0%{transform:translate(-50%) translateY(0) rotate(-.8deg)}25%{transform:translate(calc(-50% - 5px)) translateY(2px) rotate(-2deg)}50%{transform:translate(calc(-50% + 6px)) translateY(-1px) rotate(1.8deg)}75%{transform:translate(calc(-50% - 3px)) translateY(-2px) rotate(-1.2deg)}to{transform:translate(calc(-50% + 4px)) translateY(1px) rotate(1.4deg)}}@keyframes moonDeathFlash{0%{opacity:0;scale:.72}34%{opacity:1;scale:1.04}to{opacity:0;scale:1.24}}@keyframes brokenMoonBurst{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--burst-angle)) translate(12%) rotate(0) scale(.34)}7%{opacity:1}24%{opacity:.96;transform:translate(-50%,-50%) rotate(var(--burst-angle)) translate(calc(var(--burst-distance) * .58)) rotate(calc(var(--burst-spin, 1) * .38turn)) scale(1.14)}72%{opacity:.74}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--burst-angle)) translate(var(--burst-distance)) rotate(calc(var(--burst-spin, 1) * 1.18turn)) scale(.76)}}@keyframes brokenMoonParticle{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--particle-angle)) translate(22%) rotate(0) scale(.5)}14%{opacity:.92}76%{opacity:.78}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--particle-angle)) translate(var(--particle-distance)) rotate(calc(var(--particle-spin, 1) * 1turn)) scale(1)}}@keyframes moonInterstitialIn{0%{opacity:0;filter:blur(4px);transform:translateY(7px) scale(.94)}54%{color:#aed3fff5;opacity:1;filter:blur(0);transform:translateY(0) scale(1.025)}to{opacity:1;filter:blur(0);transform:translateY(0) scale(1)}}@keyframes moonShoutWobble{0%,to{transform:translate(-50%) translateY(0) rotate(-.3deg)}24%{transform:translate(-50%) translateY(3px) rotate(-2deg)}48%{transform:translate(-50%) translateY(-2px) rotate(1.8deg)}72%{transform:translate(-50%) translateY(2px) rotate(-1.1deg)}}@keyframes skyFillDrift{0%{background-position:0 50%}to{background-position:-1000px 50%}}@keyframes asteroidDrift{0%{opacity:0;transform:translateZ(0) rotate(-18deg) scale(.92)}8%,72%{opacity:.82}to{opacity:0;transform:translate3d(-142vw,142vh,0) rotate(-78deg) scale(1.04)}}@keyframes lunarLanderArrive{0%{opacity:0;transform:translate(-46%,-72vh) rotate(10deg) scale(.92)}18%{opacity:1;transform:translate(-53%,-38vh) rotate(-7deg) scale(.98)}44%{opacity:1;transform:translate(-48%,-15vh) rotate(5deg) scale(1)}72%{opacity:1;transform:translate(-51%,-2vh) rotate(-3deg) scale(1)}to{opacity:1;transform:translate(-50%) rotate(-2deg) scale(1)}}@keyframes lunarJetFlame{0%,58%{opacity:1;transform:translate(-50%) scaleY(1)}66%{opacity:.55;transform:translate(-50%) scaleY(.62)}74%,to{opacity:0;transform:translate(-50%) scaleY(.2)}}@keyframes lunarLanderDepart{0%{opacity:1;transform:translate(-50%) rotate(-2deg) scale(1)}12%{opacity:1;transform:translate(-51%,1px) rotate(2deg) scale(1)}24%{opacity:1;transform:translate(-49%,-1px) rotate(-4deg) scale(1.01)}36%{opacity:1;transform:translate(-52%,1px) rotate(4deg) scale(1.02)}48%{opacity:1;transform:translate(-48%,-2px) rotate(-5deg) scale(1.02)}62%{opacity:1;transform:translate(-50%,-12vh) rotate(3deg) scale(.98)}82%{opacity:.95;transform:translate(-47%,-42vh) rotate(-8deg) scale(.9)}to{opacity:0;transform:translate(-43%,-78vh) rotate(-16deg) scale(.72)}}@keyframes lunarJetTakeoff{0%,18%{opacity:0;transform:translate(-50%) scaleY(.2)}28%{opacity:.82;transform:translate(-50%) scaleY(.78)}42%,78%{opacity:1;transform:translate(-50%) scaleY(1.28)}to{opacity:.6;transform:translate(-50%) scaleY(1.5)}}@keyframes scorchQuickIn{0%{opacity:0;scale:.94;rotate:-2deg}to{opacity:var(--scorch-opacity, 1);scale:1;rotate:0deg}}@keyframes lunarExplosionPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.45) rotate(-5deg)}18%,58%{opacity:1;transform:translate(-50%,calc(-50% - 3px)) scale(1) rotate(3deg)}to{opacity:0;transform:translate(-50%,calc(-50% - 10px)) scale(1.18) rotate(-2deg)}}@keyframes starTwitch{0%,to{translate:0 0;rotate:-1deg}45%{translate:1px 2px;rotate:1.5deg}70%{translate:-1px 1px;rotate:-.5deg}}@keyframes starTremble{0%,to{translate:0 0}50%{translate:1px -1px}}@keyframes starPressurePulse{0%,to{filter:drop-shadow(0 9px 9px rgba(0,0,0,.34)) drop-shadow(0 0 7px rgba(237,200,98,.18))}52%{filter:drop-shadow(0 10px 10px rgba(0,0,0,.38)) drop-shadow(0 0 11px rgba(189,64,74,.26))}}@keyframes stageCardboardJitter{0%,to{transform:translate(0) rotate(0)}45%{transform:translate(.5px,-.5px) rotate(-.08deg)}70%{transform:translate(-.5px,.5px) rotate(.08deg)}}@keyframes hangingStarShoutWobble{0%,to{translate:0 0;rotate:-1deg}22%{translate:-3px 4px;rotate:7deg}48%{translate:3px 2px;rotate:-6deg}74%{translate:-2px 3px;rotate:4deg}}@keyframes tinyStarBlink{0%,72%,to{opacity:.78}76%,82%{opacity:.3}}@keyframes stopMotionTwinkle{0%,to{filter:drop-shadow(0 9px 9px rgba(0,0,0,.34)) drop-shadow(0 0 5px rgba(237,200,98,.14));transform:rotate(-2deg) scale(.96)}34%{filter:drop-shadow(0 9px 9px rgba(0,0,0,.34)) drop-shadow(0 0 11px rgba(237,200,98,.32));transform:rotate(4deg) scale(1.08)}67%{filter:drop-shadow(0 9px 9px rgba(0,0,0,.34)) drop-shadow(0 0 7px rgba(237,200,98,.2));transform:rotate(-5deg) scale(1)}}@keyframes curtainWobble{0%,to{transform:rotate(0)}33%{transform:rotate(-1.1deg)}66%{transform:rotate(1.3deg)}}@keyframes paperPop{0%,to{opacity:0;translate:0 10px}35%,75%{opacity:1;translate:0 0}}@keyframes waveHelloPop{0%,to{opacity:0;translate:0 10px}28%,84%{opacity:1;translate:0 0}}@keyframes stampPop{0%{opacity:0;scale:.84;rotate:-5deg}32%,74%{opacity:1;scale:1;rotate:-2deg}to{opacity:0;scale:1.03;rotate:-1deg}}@keyframes milkOffer{0%{opacity:0;translate:0 14px}30%,70%{opacity:1;translate:0 0}to{opacity:0;translate:0 -8px}}@keyframes milkZeroGravity{0%{opacity:0;translate:0 16px;rotate:-14deg;scale:.76}14%{opacity:1;translate:-8px 2px;rotate:18deg;scale:.95}58%{opacity:1;translate:-18px -14px;rotate:84deg;scale:1}82%{opacity:1;translate:-25px -22px;rotate:138deg;scale:.96}94%{opacity:.72;translate:-30px -27px;rotate:178deg;scale:.9}to{opacity:0;translate:-34px -31px;rotate:206deg;scale:.84}}@keyframes milkAcceptedPlaque{0%{opacity:0;translate:0 12px;rotate:-2deg;scale:.86}12%{opacity:1;translate:0 0;rotate:-.8deg;scale:1}78%{opacity:1;translate:0 0;rotate:.2deg;scale:1}to{opacity:0;translate:0 -8px;rotate:.8deg;scale:.97}}@keyframes actionStamp{0%{opacity:0;translate:0 4px;scale:.92}18%,72%{opacity:1;translate:0 0;scale:1}to{opacity:0;translate:0 -2px;scale:1.02}}@keyframes controlRailBreathe{0%,to{transform:translateY(0) scale(1)}48%{transform:translateY(-.5px) scale(1.004)}}@keyframes controlRailGleam{0%,to{opacity:.18;transform:translate(-24%)}46%{opacity:.42;transform:translate(18%)}}@keyframes actionIconPulse{0%{transform:translateY(0) rotate(0) scale(1)}36%{transform:translateY(-3px) rotate(-5deg) scale(1.18)}68%{transform:translateY(1px) rotate(2deg) scale(.96)}to{transform:translateY(0) rotate(0) scale(1)}}@keyframes ledgerToggleWake{0%{transform:translateY(0) rotate(0) scale(.92)}42%{transform:translateY(-2px) rotate(-7deg) scale(1.12)}72%{transform:translateY(1px) rotate(3deg) scale(.98)}to{transform:translateY(-1px) rotate(-2deg) scale(1.04)}}@keyframes ledgerPanelIn{0%{opacity:0;filter:blur(5px);transform:translate(-50%) translateY(22px) scale(.84) rotate(1.8deg)}48%{opacity:1;filter:blur(0);transform:translate(-50%) translateY(-3px) scale(1.025) rotate(-.8deg)}72%{transform:translate(-50%) translateY(1px) scale(.992) rotate(.35deg)}to{opacity:1;filter:blur(0);transform:translate(-50%) translateY(0) scale(1) rotate(0)}}@keyframes ledgerPanelOut{0%{opacity:1;filter:blur(0);transform:translate(-50%) translateY(0) scale(1) rotate(0)}to{opacity:0;filter:blur(3px);transform:translate(-50%) translateY(16px) scale(.9) rotate(-1deg)}}@keyframes statNumberUp{0%{color:#9ec3ff;opacity:.72;text-shadow:0 0 10px rgba(95,148,216,.46);transform:translateY(5px) scale(.86)}58%{transform:translateY(-2px) scale(1.18)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes statNumberDown{0%{color:#9ec3ff;opacity:.72;text-shadow:0 0 10px rgba(95,148,216,.38);transform:translateY(-4px) scale(.9)}56%{transform:translateY(2px) scale(1.12)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes statFillSettle{0%{opacity:.76;transform:scaleX(.92)}54%{opacity:1;transform:scaleX(1.045)}to{opacity:1;transform:scaleX(1)}}@keyframes volatileStatPulse{0%,to{opacity:.86;transform:translateY(0) scale(1)}50%{opacity:1;transform:translateY(-.5px) scale(1.012)}}@keyframes lonelyStatTremble{0%,to{translate:0 0}50%{translate:-.5px 0}}@keyframes responseCharSettle{0%{color:#aed3fff0;filter:saturate(1.15);text-shadow:0 2px 18px rgba(0,0,0,.82),0 0 14px rgba(95,148,216,.42),0 0 1px rgba(4,6,13,.7)}64%{color:#e2edfff5;filter:saturate(1.04);text-shadow:0 2px 18px rgba(0,0,0,.82),0 0 8px rgba(95,148,216,.22),0 0 1px rgba(4,6,13,.7)}to{color:#fff1d2f5;filter:saturate(1);text-shadow:0 2px 18px rgba(0,0,0,.82),0 0 1px rgba(4,6,13,.7)}}@keyframes responseCursor{0%,to{opacity:.24}50%{opacity:.82}}@keyframes introBeginPop{0%{opacity:0;transform:translate(-50%) translateY(8px) scale(.92) rotate(1deg)}66%{opacity:1;transform:translate(-50%) translateY(-2px) scale(1.035) rotate(-.5deg)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1) rotate(0)}}@keyframes introLogoArrive{0%{opacity:0;transform:scale(.9)}72%{opacity:1;transform:scale(1.018)}to{opacity:1;transform:scale(1)}}@keyframes moonIntroRise{0%{opacity:.72;transform:translate(-50%,118vh) rotate(-4deg) scale(.94)}18%{opacity:1}58%{transform:translate(-50%,10px) rotate(1.8deg) scale(1.015)}76%{transform:translate(-50%,-7px) rotate(-.9deg) scale(.995)}91%{transform:translate(-50%,3px) rotate(.3deg) scale(1.002)}to{opacity:1;transform:translate(-50%) rotate(0) scale(1)}}@keyframes desktopStarfieldTwinkle{0%,to{opacity:.34;filter:saturate(.86) brightness(.82)}42%{opacity:.62;filter:saturate(1.08) brightness(1.16)}70%{opacity:.46;filter:saturate(.96) brightness(.94)}}@keyframes desktopStarfieldDriftNear{0%{opacity:0;transform:scale(.54)}8%{opacity:.32}70%{opacity:.58}to{opacity:0;transform:scale(1.72)}}@keyframes desktopStarfieldDriftFar{0%{opacity:0;transform:scale(.72)}12%{opacity:.24}74%{opacity:.5}to{opacity:0;transform:scale(1.34)}}@media(max-width:719px){.moon-clock{width:min(75.6vw,357px);max-width:75.6%}}@media(max-width:719px)and (orientation:portrait){.music-toggle{top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));bottom:auto;left:auto}.ritual-log{--mobile-ledger-width: min( calc(100vw - 32px) , 420px);--mobile-ledger-height: min(30vh, 218px);--mobile-ledger-expanded-height: min(58vh, 430px);--mobile-ledger-toggle-gap: 10px}.ritual-log__toggle{right:max(4px,env(safe-area-inset-right));bottom:calc(var(--control-cluster-bottom) + 92px);width:30px;height:30px;min-width:30px;min-height:30px}.ritual-log--open .ritual-log__toggle{right:max(12px,calc((100vw - var(--mobile-ledger-width)) / 2));bottom:calc(var(--ledger-baseline-bottom) + var(--mobile-ledger-height) + var(--mobile-ledger-toggle-gap));transform:none}.ritual-log--expanded .ritual-log__toggle{right:max(12px,calc((100vw - min(calc(100vw - 24px),500px))/2));bottom:calc(var(--ledger-baseline-bottom) + var(--mobile-ledger-expanded-height) + var(--mobile-ledger-toggle-gap))}}@media(max-width:370px){:root{--title-offset: max(16px, env(safe-area-inset-top));--title-scale: .94;--moon-object-position: 19%;--response-max-width: min(82vw, 28ch);--instrument-gap: 9px}.ritual-stack{gap:8px;padding-inline:8px}.moon-clock{width:100.8vw}.stats-grid{gap:6px}.stats-panel{padding-inline:8px}}@media(prefers-reduced-motion:reduce){.app-shell:before,.app-shell:after,.stage-fill,.stage-backdrop,.asteroid,.lunar-lander,.lunar-lander__flame,.lunar-explosion,.moon-death-flash,.moon-death-particle,.moon-death-burst-particle,.moon-interstitial,.moon-logo-marquee__bulb,.hanging-star,.twinkle-star,.moon-clock,.moon-clock--intro-rise,.stage-change--paper-star,.milk-accepted-plaque,.music-toggle__bar,.stat-scrap--volatile,.speech-text__char,.intro-overlay__begin,.intro-overlay__logo-frame,.intro-overlay__logo,.intro-overlay__studio,.intro-overlay__meter,.speech-text__cursor{animation-duration:1ms;animation-iteration-count:1}.intro-overlay__logo{transform:translate(0);transition-duration:1ms}.intro-overlay:before{transition-duration:.18s}.asteroid{display:none}}@media(min-width:720px){.app-shell:before{display:none;background:radial-gradient(circle at 4% 12%,rgba(255,241,210,.7) 0 1px,transparent 2.5px),radial-gradient(circle at 8% 36%,rgba(166,200,220,.46) 0 1px,transparent 2.4px),radial-gradient(circle at 11% 64%,rgba(124,147,215,.46) 0 1px,transparent 2.4px),radial-gradient(circle at 15% 88%,rgba(244,223,173,.56) 0 1px,transparent 2.5px),radial-gradient(circle at 18% 20%,rgba(255,241,210,.48) 0 1px,transparent 2.5px),radial-gradient(circle at 21% 48%,rgba(166,200,220,.44) 0 1px,transparent 2.4px),radial-gradient(circle at 24% 76%,rgba(255,241,210,.52) 0 1px,transparent 2.6px),radial-gradient(circle at 28% 8%,rgba(124,147,215,.42) 0 1px,transparent 2.4px),radial-gradient(circle at 31% 32%,rgba(244,223,173,.54) 0 1px,transparent 2.5px),radial-gradient(circle at 34% 58%,rgba(255,241,210,.44) 0 1px,transparent 2.4px),radial-gradient(circle at 37% 86%,rgba(166,200,220,.46) 0 1px,transparent 2.5px),radial-gradient(circle at 41% 18%,rgba(255,241,210,.58) 0 1px,transparent 2.6px),radial-gradient(circle at 44% 44%,rgba(124,147,215,.4) 0 1px,transparent 2.4px),radial-gradient(circle at 47% 70%,rgba(166,200,220,.44) 0 1px,transparent 2.4px),radial-gradient(circle at 50% 94%,rgba(244,223,173,.52) 0 1px,transparent 2.5px),radial-gradient(circle at 53% 26%,rgba(255,241,210,.5) 0 1px,transparent 2.5px),radial-gradient(circle at 56% 52%,rgba(166,200,220,.42) 0 1px,transparent 2.4px),radial-gradient(circle at 59% 80%,rgba(124,147,215,.44) 0 1px,transparent 2.4px),radial-gradient(circle at 62% 10%,rgba(244,223,173,.58) 0 1px,transparent 2.6px),radial-gradient(circle at 65% 38%,rgba(255,241,210,.46) 0 1px,transparent 2.5px),radial-gradient(circle at 68% 66%,rgba(166,200,220,.44) 0 1px,transparent 2.4px),radial-gradient(circle at 71% 92%,rgba(124,147,215,.42) 0 1px,transparent 2.5px),radial-gradient(circle at 74% 22%,rgba(255,241,210,.56) 0 1px,transparent 2.6px),radial-gradient(circle at 77% 50%,rgba(244,223,173,.48) 0 1px,transparent 2.5px),radial-gradient(circle at 80% 78%,rgba(166,200,220,.46) 0 1px,transparent 2.4px),radial-gradient(circle at 83% 6%,rgba(255,241,210,.5) 0 1px,transparent 2.5px),radial-gradient(circle at 86% 34%,rgba(124,147,215,.42) 0 1px,transparent 2.4px),radial-gradient(circle at 89% 62%,rgba(255,241,210,.52) 0 1px,transparent 2.6px),radial-gradient(circle at 92% 90%,rgba(166,200,220,.44) 0 1px,transparent 2.4px),radial-gradient(circle at 95% 16%,rgba(244,223,173,.54) 0 1px,transparent 2.5px),radial-gradient(circle at 97% 46%,rgba(255,241,210,.46) 0 1px,transparent 2.5px),radial-gradient(circle at 6% 82%,rgba(124,147,215,.42) 0 1px,transparent 2.4px),radial-gradient(circle at 13% 6%,rgba(166,200,220,.44) 0 1px,transparent 2.4px),radial-gradient(circle at 19% 92%,rgba(255,241,210,.54) 0 1px,transparent 2.6px),radial-gradient(circle at 26% 40%,rgba(244,223,173,.48) 0 1px,transparent 2.5px),radial-gradient(circle at 33% 14%,rgba(166,200,220,.44) 0 1px,transparent 2.4px),radial-gradient(circle at 39% 74%,rgba(255,241,210,.5) 0 1px,transparent 2.5px),radial-gradient(circle at 46% 8%,rgba(124,147,215,.42) 0 1px,transparent 2.4px),radial-gradient(circle at 52% 62%,rgba(244,223,173,.52) 0 1px,transparent 2.5px),radial-gradient(circle at 58% 30%,rgba(255,241,210,.48) 0 1px,transparent 2.5px),radial-gradient(circle at 64% 88%,rgba(166,200,220,.44) 0 1px,transparent 2.4px),radial-gradient(circle at 70% 4%,rgba(255,241,210,.54) 0 1px,transparent 2.6px),radial-gradient(circle at 76% 56%,rgba(124,147,215,.42) 0 1px,transparent 2.4px),radial-gradient(circle at 82% 26%,rgba(244,223,173,.5) 0 1px,transparent 2.5px),radial-gradient(circle at 88% 82%,rgba(166,200,220,.44) 0 1px,transparent 2.4px),radial-gradient(circle at 93% 10%,rgba(255,241,210,.52) 0 1px,transparent 2.5px),radial-gradient(circle at 2% 54%,rgba(124,147,215,.42) 0 1px,transparent 2.4px),radial-gradient(circle at 98% 72%,rgba(244,223,173,.52) 0 1px,transparent 2.5px);opacity:.5;mix-blend-mode:screen;transform-origin:50% 50%;animation:desktopStarfieldDriftFar 9s linear infinite,desktopStarfieldTwinkle 3.8s ease-in-out infinite}.app-shell:after{display:none;background:radial-gradient(circle at 3% 24%,rgba(255,241,210,.58) 0 1.25px,transparent 3px),radial-gradient(circle at 7% 72%,rgba(124,147,215,.5) 0 1.1px,transparent 2.9px),radial-gradient(circle at 10% 8%,rgba(244,223,173,.52) 0 1.2px,transparent 3px),radial-gradient(circle at 14% 48%,rgba(166,200,220,.52) 0 1.15px,transparent 2.9px),radial-gradient(circle at 17% 92%,rgba(255,241,210,.48) 0 1.2px,transparent 3px),radial-gradient(circle at 22% 30%,rgba(244,223,173,.5) 0 1.25px,transparent 3px),radial-gradient(circle at 25% 66%,rgba(166,200,220,.48) 0 1.1px,transparent 2.9px),radial-gradient(circle at 29% 14%,rgba(124,147,215,.46) 0 1.1px,transparent 2.8px),radial-gradient(circle at 32% 84%,rgba(255,241,210,.54) 0 1.25px,transparent 3px),radial-gradient(circle at 36% 42%,rgba(244,223,173,.48) 0 1.2px,transparent 3px),radial-gradient(circle at 40% 6%,rgba(166,200,220,.5) 0 1.15px,transparent 2.9px),radial-gradient(circle at 43% 58%,rgba(255,241,210,.5) 0 1.2px,transparent 3px),radial-gradient(circle at 48% 96%,rgba(124,147,215,.46) 0 1.1px,transparent 2.9px),radial-gradient(circle at 51% 22%,rgba(244,223,173,.52) 0 1.25px,transparent 3px),radial-gradient(circle at 55% 70%,rgba(166,200,220,.48) 0 1.1px,transparent 2.9px),radial-gradient(circle at 60% 12%,rgba(255,241,210,.54) 0 1.25px,transparent 3px),radial-gradient(circle at 63% 46%,rgba(124,147,215,.46) 0 1.1px,transparent 2.8px),radial-gradient(circle at 67% 88%,rgba(244,223,173,.5) 0 1.2px,transparent 3px),radial-gradient(circle at 72% 34%,rgba(166,200,220,.5) 0 1.15px,transparent 2.9px),radial-gradient(circle at 75% 76%,rgba(255,241,210,.5) 0 1.2px,transparent 3px),radial-gradient(circle at 79% 18%,rgba(124,147,215,.48) 0 1.1px,transparent 2.8px),radial-gradient(circle at 84% 54%,rgba(244,223,173,.52) 0 1.25px,transparent 3px),radial-gradient(circle at 87% 94%,rgba(166,200,220,.48) 0 1.1px,transparent 2.9px),radial-gradient(circle at 91% 28%,rgba(255,241,210,.54) 0 1.25px,transparent 3px),radial-gradient(circle at 96% 68%,rgba(124,147,215,.48) 0 1.1px,transparent 2.8px),radial-gradient(circle at 5% 96%,rgba(244,223,173,.5) 0 1.2px,transparent 3px),radial-gradient(circle at 12% 58%,rgba(166,200,220,.5) 0 1.15px,transparent 2.9px),radial-gradient(circle at 20% 4%,rgba(255,241,210,.54) 0 1.25px,transparent 3px),radial-gradient(circle at 27% 52%,rgba(124,147,215,.48) 0 1.1px,transparent 2.8px),radial-gradient(circle at 35% 90%,rgba(244,223,173,.52) 0 1.25px,transparent 3px),radial-gradient(circle at 42% 28%,rgba(166,200,220,.5) 0 1.15px,transparent 2.9px),radial-gradient(circle at 49% 78%,rgba(255,241,210,.5) 0 1.2px,transparent 3px),radial-gradient(circle at 57% 4%,rgba(124,147,215,.48) 0 1.1px,transparent 2.8px),radial-gradient(circle at 66% 58%,rgba(244,223,173,.52) 0 1.25px,transparent 3px),radial-gradient(circle at 73% 96%,rgba(166,200,220,.48) 0 1.1px,transparent 2.9px),radial-gradient(circle at 81% 8%,rgba(255,241,210,.54) 0 1.25px,transparent 3px),radial-gradient(circle at 90% 44%,rgba(124,147,215,.48) 0 1.1px,transparent 2.8px),radial-gradient(circle at 99% 86%,rgba(244,223,173,.52) 0 1.25px,transparent 3px),radial-gradient(circle at 2% 38%,rgba(166,200,220,.5) 0 1.15px,transparent 2.9px),radial-gradient(circle at 16% 78%,rgba(255,241,210,.5) 0 1.2px,transparent 3px),radial-gradient(circle at 24% 98%,rgba(124,147,215,.46) 0 1.1px,transparent 2.8px),radial-gradient(circle at 38% 16%,rgba(244,223,173,.52) 0 1.25px,transparent 3px),radial-gradient(circle at 54% 40%,rgba(166,200,220,.5) 0 1.15px,transparent 2.9px),radial-gradient(circle at 69% 24%,rgba(255,241,210,.54) 0 1.25px,transparent 3px),radial-gradient(circle at 85% 70%,rgba(124,147,215,.48) 0 1.1px,transparent 2.8px),radial-gradient(circle at 93% 96%,rgba(244,223,173,.52) 0 1.25px,transparent 3px),radial-gradient(circle at 30% 72%,rgba(166,200,220,.48) 0 1.1px,transparent 2.9px),radial-gradient(circle at 61% 84%,rgba(255,241,210,.5) 0 1.2px,transparent 3px);opacity:.46;mix-blend-mode:screen;transform-origin:50% 50%;animation:desktopStarfieldDriftNear 6.5s linear infinite,desktopStarfieldTwinkle 2.6s ease-in-out infinite reverse}:root{--title-offset: 22px;--title-scale: .92;--moon-object-position: calc(17% + 20px) ;--response-max-width: min(320px, 30ch);--control-cluster-bottom: clamp(64px, 7vh, 96px);--ledger-baseline-bottom: calc(var(--control-cluster-bottom) + 139px);--instrument-gap: 10px}.app-shell{display:grid;min-height:100vh;place-items:start center;padding:32px 18px 44px}.shrine-frame{width:min(100%,600px);min-height:auto}.toy-layout{min-height:auto}.ritual-viewport{min-height:min(94vh,1068px);border:0;border-radius:34px;box-shadow:0 32px 90px #0000006b}.ritual-viewport:before,.ritual-viewport:after{border-radius:inherit}.moon-stage{border-radius:inherit}.moon-stage:before{border-radius:inherit}.moon-clock{width:min(61vw,397px)}.ritual-stack{padding:0 22px}.ritual-log__toggle{right:clamp(64px,11%,76px)}.ritual-log--open .ritual-log__toggle,.ritual-log--expanded .ritual-log__toggle{right:clamp(34px,5.2%,46px)}.speech-panel p{font-size:1.12rem}.stats-panel{padding:10px 11px 11px}}@media(min-width:1080px){.app-shell{padding-top:42px}.shrine-frame{width:620px}.ritual-viewport{min-height:min(94vh,1102px)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
