:root{color:#f6e8d4;font-synthesis:none;--cream:#f9e9cf;--rose:#b97185;--ink:#51313b;--muted:#bba8a5;background:#211820;font-family:Nunito Sans,sans-serif}*{box-sizing:border-box}body{min-width:760px;min-height:100vh;margin:0;overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{cursor:wait;opacity:.6}button:focus-visible,a:focus-visible,canvas:focus-visible{outline-offset:5px;outline:2px solid #f7d394}button{transition:background .18s,transform .18s}button:hover{filter:brightness(1.08)}button:active{transform:translateY(1px)}[hidden]{display:none!important}#app{flex-direction:column;max-width:2000px;height:100dvh;margin:auto;padding:0 30px;display:flex}.masthead{flex-shrink:0;justify-content:space-between;align-items:center;height:85px;padding:0 5px;display:flex}.brand{color:var(--cream);letter-spacing:5px;align-items:center;gap:22px;font-family:Cormorant Garamond,serif;font-size:34px;font-weight:600;text-decoration:none;display:flex}.brand span{letter-spacing:3px;color:var(--muted);border-left:1px solid #5a4249;padding-left:22px;font-family:Nunito Sans,sans-serif;font-size:9px}.chapter{letter-spacing:1px;color:#d7bbaa;align-items:center;gap:12px;font-size:12px;display:flex}.tiny-star{color:#dfb97e;font-size:26px}.masthead nav{gap:9px;display:flex}.icon-button{color:#ebd5be;background:0 0;border:1px solid #664b53;border-radius:50%;width:33px;height:33px;font-size:18px}.icon-button:hover{background:#523640}#stage{aspect-ratio:16/9;isolation:isolate;background:#35212a;width:100%;max-height:calc(100dvh - 133px);margin:auto;position:relative;overflow:hidden;box-shadow:0 0 0 1px #70503b,0 16px 55px #0e0a1080;container-type:inline-size}#world{width:100%;height:100%;image-rendering:pixelated;outline:none;display:block}.room-vignette{pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 70px #25101848}.scene-caption{text-shadow:0 2px 8px #150b0c;pointer-events:none;flex-direction:column;gap:5px;display:flex;position:absolute;top:26px;left:30px}.scene-caption .eyebrow{color:#ead0a1;font-size:9px}.scene-caption>span:last-child{font-family:Cormorant Garamond,serif;font-size:26px}.eyebrow{letter-spacing:3px;font-size:10px;font-weight:600}.overlay{z-index:10;position:absolute;inset:0}.intro{background:linear-gradient(90deg,#201621f5 0%,#2a1c24e6 32%,#2a1c2455 70%,#20162133);align-items:center;display:flex}.intro-copy{max-width:650px;margin-left:8%;position:relative}.intro-copy>.eyebrow{color:#d3ad91;letter-spacing:2.8px;font-size:9px}.intro h1{letter-spacing:8px;color:#ffefd6;margin:28px 0 0;font-family:Cormorant Garamond,serif;font-size:clamp(90px,11cqw,176px);font-weight:500;line-height:.94}.intro h1 span{letter-spacing:2px;margin-top:10px;font-size:clamp(24px,3cqw,44px);font-style:italic;display:block}.ornament{color:#cb9a79;letter-spacing:8px;margin:25px 0;font-size:21px}.intro-description{color:#e3cdbb;margin:0 0 27px;font-family:Cormorant Garamond,serif;font-size:clamp(19px,2cqw,28px);line-height:1.45}.primary{color:#fff0db;letter-spacing:1px;background:#a65d73;border:1px solid #d99d9d;min-width:200px;padding:14px 38px;font-weight:600;box-shadow:inset 0 0 0 3px #8b495d,0 4px #4a2a38}.primary:hover{background:#b87086}.intro-controls{color:#bca2a1;letter-spacing:1px;margin-top:20px;font-size:10px}.intro-bottom{color:#d4b49c;letter-spacing:2px;justify-content:space-between;font-size:9px;display:flex;position:absolute;bottom:23px;left:30px;right:30px}.footer{color:#bba5a4;flex-shrink:0;justify-content:center;align-items:center;gap:15px;height:48px;font-size:10px;display:flex}.footer kbd{color:#dbc6b9;border:1px solid #5b424d;border-radius:3px;margin:0 4px;padding:2px 5px;font:9px Nunito Sans,sans-serif}.footer i{color:#765d64;margin:0 10px;font-style:normal}.footer-mark{letter-spacing:2px;font-size:8px}.footer-mark span{color:#ba7487;margin-left:6px}.interact{z-index:3;color:#ffedd2;white-space:nowrap;background:#3c2933ee;border:1px solid #d7ad81;border-radius:3px;align-items:center;gap:10px;padding:9px 14px;font-size:13px;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 3px #241721}.interact:active{transform:translate(-50%,-48%)}.interact kbd{color:#52373c;background:#ead4b4;padding:2px 6px;font:12px Nunito Sans,sans-serif}.interact small{text-shadow:0 2px 4px #160f18;color:#fff0db;font-size:11px;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.gentle-hint{color:#f4d7b1;background:#382333df;border:1px solid #88604e;padding:10px 20px;font-size:13px;position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.dialogue{z-index:5;min-height:25%;color:var(--ink);background:linear-gradient(110deg,#f8e3c3,#fff0d8 70%,#f5dfbe);border:4px solid #985568;display:flex;position:absolute;bottom:3%;left:2%;right:2%;box-shadow:inset 0 0 0 2px #d7949c,inset 0 0 0 6px #f0c1ab,0 5px #4a2a35}.dialogue:after{content:"♥";color:#cd8a95;font-size:18px;position:absolute;top:12px;right:18px}.portrait-wrap{pointer-events:none;flex-shrink:0;align-self:stretch;width:27%;position:relative}.portrait-wrap img{object-fit:contain;object-position:bottom;filter:drop-shadow(3px 0 #6a3c4640);width:110%;height:190%;position:absolute;bottom:0;left:-5%}.dialogue-body{flex:1;min-height:155px;padding:28px 30px 50px 16px;position:relative}.speaker{color:#fff0db;background:#ad6476;border:3px solid #e3a7a7;padding:8px 30px;font:clamp(10px,1.15cqw,16px) "Press Start 2P",monospace;position:absolute;top:-20px;left:14px;box-shadow:0 0 0 2px #8d4d5b}.speaker span{color:#f1b5bc;margin-left:15px;font-size:12px}#dialogue-text{max-width:94%;min-height:64px;margin:8px 0 0;font-size:clamp(16px,1.75cqw,25px);font-weight:600;line-height:1.65}.advance{color:#935968;letter-spacing:.5px;background:0 0;border:none;padding:6px 8px;font-size:12px;position:absolute;bottom:12px;right:20px}.advance span{border:1px solid #c89595;margin-right:7px;padding:3px 6px;font-size:10px}.advance b{padding-left:12px}.veil{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#2318209c;justify-content:center;align-items:center;display:flex}.paper-card{color:#573640;text-align:center;background:#f7e8cf;width:min(540px,78%);padding:34px 48px;box-shadow:0 0 0 2px #8d5665,0 0 0 7px #dfb8a2,0 15px 60px #160d22aa}.paper-card h2{margin:10px 0;font:500 48px Cormorant Garamond,serif}.paper-card>.eyebrow{color:#ac6d79;font-size:9px}.paper-card>p{font-size:14px;line-height:1.7}.paper-card .primary{margin:24px auto 12px;display:block}.text-button{color:#875566;text-underline-offset:4px;background:0 0;border:none;padding:7px 12px;font-size:12px;text-decoration:underline}.paper-card small{color:#9b7c7d;margin-top:16px;font-size:10px;display:block}.controls{text-align:left;margin:25px 0;font-size:12px}.controls>div{border-bottom:1px solid #d9b8aa;justify-content:space-between;padding:9px 0;display:flex}.controls dt{font-weight:600}.controls dd{color:#98717b;margin:0}.memory-badge{letter-spacing:1px;color:#f5d7a4;background:#3d2733dc;border:1px solid #d3aa83;padding:8px 15px;font-size:11px;position:absolute;top:28px;right:28px}.memory-badge span{vertical-align:middle;margin-right:6px;font-size:20px}.transition{z-index:20;opacity:0;pointer-events:all;background:#251a27;flex-direction:column;justify-content:center;align-items:center;transition:opacity .65s;display:flex;position:absolute;inset:0}.transition.visible{opacity:1}.transition p{text-align:center;color:#f3ddbf;font:italic 44px/1.3 Cormorant Garamond,serif}.transition small{letter-spacing:3px;color:#b28d8f;font-size:9px}.end-star{color:#b88457;font-size:36px}.divider{background:#b77d85;width:60px;height:1px;margin:20px auto}.prototype-note{color:#9b7480;font-size:12px!important}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (height<=700px){.masthead{height:60px}#stage{max-height:calc(100dvh - 100px)}.footer{height:40px}.intro h1{font-size:85px}.ornament{margin:12px 0}.intro-copy{margin-top:-10px}.intro-description{margin-bottom:16px}.paper-card{padding:20px 38px}.paper-card h2{font-size:37px}.controls{margin:15px 0}.intro-bottom{bottom:13px}.portrait-wrap img{height:170%}.dialogue-body{min-height:140px;padding-top:18px}.scene-caption{top:14px;left:18px}.scene-caption>span:last-child{font-size:21px}}@media (width<=1000px){#app{padding:0 14px}.brand span{display:none}.chapter{font-size:11px}.footer-mark{display:none}.dialogue-body{padding-right:12px}.paper-card{max-height:90%;overflow:auto}.intro-copy{margin-left:7%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}#stage{flex-shrink:0;width:min(100%,177.778dvh - 236.444px)}#stage[data-mode=intro] .scene-caption{visibility:hidden}@media (height<=700px){#stage{width:min(100%,177.778dvh - 177.778px)}}.mirror-game{background:#30212a;overflow:hidden}.mirror-art{pointer-events:none;width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.mirror-game:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000 0% 44%,#26192379 57%,#211721df 70%,#211721f2 100%);position:absolute;inset:0}.mirror-panel{z-index:2;color:#51313b;background:#f7e8d9f2;border:4px solid #975c69;flex-direction:column;width:39%;padding:clamp(15px,2.3cqw,38px);display:flex;position:absolute;top:8%;bottom:8%;right:4%;overflow:auto;box-shadow:inset 0 0 0 3px #db9da8,0 12px 35px #1c111aaa}.mirror-panel .eyebrow{color:#a25e70;font-size:clamp(8px,.8cqw,12px)}.mirror-panel h2{margin:8px 0 4px;font:500 clamp(30px,4cqw,58px) Cormorant Garamond,serif}.mirror-panel>p:not(.eyebrow){margin:0 0 14px;font-size:clamp(12px,1.15cqw,18px)}.accessory-choices{flex:1;align-content:start;gap:clamp(7px,1cqw,16px);display:grid}.accessory-choices fieldset{border:1px solid #d0a5a7;flex-wrap:wrap;gap:7px;min-width:0;margin:0;padding:10px;display:flex}.accessory-choices legend{color:#814a5c;padding:0 7px;font-size:clamp(10px,1cqw,14px);font-weight:600}.accessory-option{color:#66404b;background:#fff7ea;border:1px solid #b98591;flex:1;min-width:110px;padding:8px 10px;font-size:clamp(10px,.9cqw,14px);line-height:1.2}.accessory-option[aria-pressed=true]{color:#fff7ea;background:#b96e85;border-color:#864257;box-shadow:inset 0 0 0 2px #e5abb5}.mirror-panel>.primary{align-self:flex-end;min-width:160px;margin-top:10px;padding:10px 16px}.concert{image-rendering:pixelated;text-align:center;background:linear-gradient(#1a183f80,#181322d9),url(/art/memory-bedroom-stereo.png) 50%/cover no-repeat;justify-content:center;align-items:center;display:flex}.concert-copy{color:#f7e5d0;background:#251b31d9;border:1px solid #d0a9a9;width:min(650px,75%);padding:5% 6%;position:relative;box-shadow:0 0 0 6px #32233b,0 20px 50px #0a0918aa}.concert-copy:before{content:"✧   ✦   ✧";letter-spacing:25px;color:#eac7b1;margin-bottom:6px;font-size:clamp(18px,3cqw,36px);display:block}.concert-copy h2{margin:14px 0;font:italic 500 clamp(38px,5cqw,76px) Cormorant Garamond,serif}.concert-copy p:not(.eyebrow){font-size:clamp(14px,1.6cqw,23px);line-height:1.5}.concert-copy .primary{margin-top:20px}@media (height<=700px){.mirror-panel{padding:15px;top:3%;bottom:3%}.accessory-choices{gap:3px}.accessory-choices fieldset{padding:4px}.accessory-option{padding:5px}.mirror-panel h2{margin:2px 0}}.color-game{background:#594035;overflow:hidden}.color-stage{background:repeating-linear-gradient(3deg,#74534411 0 3px,#0000 3px 48px),linear-gradient(135deg,#b88a68,#785440);grid-template-columns:minmax(0,1fr) 30%;display:grid;position:absolute;inset:0}.paint-workspace{justify-content:center;align-items:center;min-width:0;min-height:0;padding:2.2% 3% 3.5%;display:flex;position:relative}.paint-paper{aspect-ratio:1;isolation:isolate;background:#fff;max-width:100%;height:100%;position:relative;box-shadow:0 4px 6px #26160e33,0 13px 35px #26160e44}#paint-canvas{touch-action:none;cursor:crosshair;background:0 0;width:100%;height:100%;position:absolute;inset:0}.paint-outline{object-fit:contain;mix-blend-mode:multiply;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;inset:0}.paint-caption{color:#ffe9ce;letter-spacing:1px;font:italic clamp(12px,1.2cqw,18px) Cormorant Garamond,serif;position:absolute;bottom:1%}.color-panel{color:#51313b;background:#f8ecd8;border-left:3px solid #b58272;flex-direction:column;min-height:0;padding:clamp(12px,1.8cqw,28px);display:flex;overflow:auto}.color-panel .eyebrow{color:#a25e70;letter-spacing:2px;margin:0;font-size:clamp(7px,.7cqw,10px)}.color-panel h2{margin:8px 0;font:500 clamp(28px,3.8cqw,58px) Cormorant Garamond,serif}.color-panel>p:not(.eyebrow){margin:0 0 12px;font-size:clamp(11px,1.05cqw,16px);line-height:1.5}.color-palette{grid-template-columns:repeat(4,1fr);gap:clamp(5px,.8cqw,12px);margin:2px 0 15px;display:grid}.color-swatch{background:var(--swatch);border:2px solid #d0b6a0;border-radius:5px;height:clamp(29px,3.6cqw,54px);padding:0;position:relative;box-shadow:inset 0 -5px #0000000b}.color-swatch span{clip:rect(0,0,0,0);width:1px;height:1px;position:absolute;overflow:hidden}.color-swatch[aria-pressed=true]{outline-offset:2px;border-color:#fff8e9;outline:2px solid #704354}.color-swatch[aria-pressed=true]:after{content:"✓";color:#35212a;background:#fffb;border-radius:50%;width:18px;height:18px;font-size:12px;line-height:18px;position:absolute;bottom:3px;right:3px}.brush-label{justify-content:space-between;gap:10px;font-size:clamp(10px,1cqw,15px);display:flex}#brush-size{accent-color:#a65d73;cursor:pointer;width:100%;margin:10px 0 14px}.paint-tools{gap:8px;margin-bottom:12px;display:flex}.paint-tools button{color:#66404b;background:#fff7ea;border:1px solid #bf9491;flex:1;padding:8px 5px;font-size:clamp(10px,1cqw,14px)}.paint-tools button[aria-pressed=true]{color:#fff7ea;background:#a65d73}.paint-tools button:disabled{cursor:default;opacity:.4}.color-panel .color-note{color:#916e71;font-size:clamp(10px,.95cqw,14px);font-style:italic}.color-panel>.primary{width:100%;min-width:0;margin-top:auto;padding:12px 8px;font-size:clamp(11px,1.1cqw,16px)}@media (height<=700px){.color-panel{padding:12px}.color-panel h2{margin:4px 0}.color-palette{gap:6px;margin-bottom:10px}.color-panel>p:not(.eyebrow),.paint-tools{margin-bottom:8px}#brush-size{margin:7px 0}.color-panel>.primary{padding:9px 5px}}#stage[data-dark]{background:#05040a}#stage[data-dark] #world,#stage[data-dark] .room-vignette,#stage[data-dark] .scene-caption{visibility:hidden}#stage[data-dark] .dialogue{box-shadow:inset 0 0 0 2px #d7949c,inset 0 0 0 6px #f0c1ab,0 5px #2a1620,0 0 70px #000a}#stage[data-dark] .portrait-wrap img{filter:grayscale(.45)brightness(.5)contrast(1.05);opacity:.6}.alarm{background:#05040a;justify-content:center;align-items:center;display:flex}.alarm-copy{text-align:center;flex-direction:column;align-items:center;gap:clamp(5px,1.2cqw,18px);display:flex}.alarm-radial{aspect-ratio:1;width:clamp(44px,5cqw,86px);margin-bottom:clamp(4px,1cqw,14px);position:relative}.alarm-radial span{border:1px solid #d9b58c66;border-radius:50%;animation:2.4s linear infinite alarm-ring;position:absolute;inset:0}.alarm-radial span:nth-child(2){animation-delay:.8s}.alarm-radial span:nth-child(3){animation-delay:1.6s}.alarm-radial:after{content:"";background:#ecc79b;border-radius:50%;position:absolute;inset:calc(50% - 5px);box-shadow:0 0 16px #ecc79b8c}@keyframes alarm-ring{0%{opacity:.85;transform:scale(.18)}75%{opacity:.12}to{opacity:0;transform:scale(1)}}.alarm-time{letter-spacing:6px;color:#f4e5cd;text-shadow:0 0 55px #e9b89126;margin:0;font:500 clamp(76px,13cqw,210px)/1 Cormorant Garamond,serif}.alarm-label{letter-spacing:6px;color:#a98f8b;margin:0;font-size:clamp(9px,1cqw,14px)}.alarm-note{color:#8e7a7f;margin:0;font-size:clamp(11px,1.1cqw,16px);font-style:italic}.alarm-stop{color:#fff0db;letter-spacing:1px;background:#a65d73;border:1px solid #d99d9d;border-radius:999px;min-width:clamp(150px,15cqw,240px);margin-top:clamp(12px,2.2cqw,34px);padding:clamp(10px,1.2cqw,17px) 30px;font-weight:600;box-shadow:inset 0 0 0 3px #8b495d,0 4px #4a2a38}.alarm-stop:hover{background:#b87086}@media (prefers-reduced-motion:reduce){.alarm-radial span{opacity:.4;transform:scale(.62)}}@media (height<=700px){.alarm-time{font-size:clamp(64px,11cqw,150px)}}.dialogue.thought-only{color:#e3d6cd;text-align:center;background:0 0;border:0;min-height:0;bottom:12%;left:15%;right:15%;box-shadow:none!important}.dialogue.thought-only .portrait-wrap,.dialogue.thought-only .speaker,.dialogue.thought-only:after{display:none}.dialogue.thought-only .dialogue-body{min-height:0;padding:20px 15px 55px}.dialogue.thought-only #dialogue-text{max-width:100%;font-weight:400}.dialogue.thought-only .advance{color:#c3a3aa}.transition.eye-opening{background:#05040a;transition:opacity 4s ease-in-out}.transition.eye-opening>*{visibility:hidden}#interest-points{pointer-events:none;z-index:2;position:absolute;inset:0}.interest-point{background:#fffdf2;border-radius:50%;width:11px;height:11px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 2px #4d3121e0,0 0 0 5px #ffd68f99,0 0 16px 4px #ffe6bccf}.story-point{background:#fff3d2;border:3px solid #fffaea;width:26px;height:26px;animation:1.8s ease-in-out infinite story-breathe;box-shadow:0 0 0 3px #4d3121e6,0 0 0 9px #f9ce7980,0 0 28px 9px #ffe0a6e6}.story-point:after{content:"";border:2px solid #ffe8b9b8;border-radius:50%;animation:1.8s ease-out infinite story-halo;position:absolute;inset:-45%}@keyframes story-breathe{50%{box-shadow:0 0 0 3px #4d3121e6,0 0 0 14px #f9ce7933,0 0 36px 13px #ffe0a6}}@keyframes story-halo{0%{opacity:.85;transform:scale(.55)}to{opacity:0;transform:scale(1.25)}}@media (prefers-reduced-motion:reduce){.story-point{animation:none}.story-point:after{animation:none;display:none}.transition.eye-opening{transition:none}}.quiz-game{background:#2c1f28;justify-content:center;align-items:stretch;display:flex;overflow:hidden}.quiz-stage{background:linear-gradient(135deg,#4a3540,#33232e);grid-template-columns:minmax(0,1fr) minmax(340px,38%);display:grid;position:absolute;inset:0}.quiz-scene{justify-content:center;align-items:flex-end;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden}.quiz-scene img{object-fit:cover;width:100%;height:100%;image-rendering:pixelated;opacity:.96;position:absolute;inset:0}.quiz-cast{pointer-events:none;justify-content:space-between;align-items:flex-end;gap:4%;display:flex;position:absolute;bottom:3%;left:4%;right:4%}.quiz-cast figure{flex-direction:column;flex:1;align-items:center;gap:6px;max-width:44%;min-height:0;margin:0;display:flex}.quiz-cast img{object-fit:contain;image-rendering:auto;filter:drop-shadow(0 8px 18px #1a0f16aa);width:auto;max-width:100%;height:auto;max-height:46cqh;position:static}.quiz-cast figcaption{letter-spacing:2px;color:#ffe9ce;text-shadow:0 2px 6px #160f18;font-size:clamp(10px,1cqw,14px)}.quiz-panel{color:#51313b;background:#f8ecd8;border-left:3px solid #b58272;flex-direction:column;min-height:0;padding:clamp(14px,2cqw,30px);display:flex;position:relative;overflow:auto}.quiz-panel .eyebrow{color:#a25e70;letter-spacing:2px;margin:0;font-size:clamp(7px,.7cqw,10px)}.quiz-situation .who{color:#814a5c;font-weight:600}.quiz-thought{color:#7a5560;font-style:italic}.quiz-question{margin:6px 0 12px;font-size:clamp(13px,1.25cqw,19px);font-weight:600;line-height:1.5}.quiz-options{gap:clamp(6px,.9cqw,12px);margin:0 0 12px;padding:0;list-style:none;display:grid}.quiz-option{text-align:left;color:#5b3540;background:#fff7ea;border:2px solid #cfa3a8;border-radius:6px;align-items:flex-start;gap:10px;width:100%;padding:10px 12px;font-size:clamp(11px,1.05cqw,15px);line-height:1.45;display:flex}.quiz-option .key{color:#fff0db;background:#a65d73;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;font-size:13px;font-weight:600;display:flex}.quiz-option:hover{background:#fff2df;border-color:#a65d73}.quiz-option:disabled{cursor:default;opacity:1}.quiz-option.picked{outline-offset:2px;outline:3px solid #704354}.quiz-feedback{border:2px solid #0000;border-radius:8px;margin:0 0 12px;padding:12px 14px;font-size:clamp(11px,1.05cqw,15px);line-height:1.55}.quiz-feedback .badge{letter-spacing:1px;color:#fff;border-radius:999px;margin-bottom:6px;padding:3px 12px;font-size:clamp(10px,1cqw,14px);font-weight:600;display:inline-block}.quiz-feedback[data-tone=excellent]{background:#e9f4e4;border-color:#7ba87b}.quiz-feedback[data-tone=excellent] .badge{background:#4e8a4e}.quiz-feedback[data-tone=verygood]{background:#e7f1f8;border-color:#7ba7c7}.quiz-feedback[data-tone=verygood] .badge{background:#4a86b0}.quiz-feedback[data-tone=good]{background:#faf3df;border-color:#c9a94e}.quiz-feedback[data-tone=good] .badge{background:#a8872e}.quiz-feedback[data-tone=oops]{background:#fbe7ec;border-color:#c77f92}.quiz-feedback[data-tone=oops] .badge{background:#b0516b}.quiz-feedback .note{margin:6px 0 0}.quiz-followup{background:#fff7ea;border-left:4px solid #a65d73;border-radius:0 6px 6px 0;margin:0 0 12px;padding:10px 12px;font-size:clamp(11px,1.05cqw,15px);line-height:1.55}.quiz-followup .who{color:#814a5c;font-weight:600}.quiz-progress{color:#916e71;letter-spacing:1px;margin:0 0 10px;font-size:clamp(10px,.95cqw,13px)}.quiz-panel>.primary{width:100%;min-width:0;margin-top:auto;padding:12px 8px;font-size:clamp(11px,1.1cqw,16px)}@media (height<=700px){.quiz-panel{padding:12px}.quiz-panel h2{margin:4px 0}.quiz-options{gap:6px}.quiz-option{padding:7px 9px}}@media (prefers-reduced-motion:reduce){.story-point{animation:none}.transition.eye-opening{transition:none}.quiz-cast img{filter:none}}.quiz-stage{background:#e8c9b8;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:1fr}.quiz-scene>img{object-fit:cover;object-position:top;opacity:1;height:162%}.quiz-cast{display:none}.quiz-panel{background:linear-gradient(115deg,#f9c9bb,#fff1e4 50%,#f9d4c2);border:5px double #b76e80;border-radius:22px 22px 12px 12px;padding:12px 24px 18px 18%;overflow:visible;box-shadow:0 -4px #fff0d8,0 -9px 24px #60334244}.quiz-panel .quiz-cast{background:#efb4ac;border:3px double #a25e70;border-radius:12px;width:14%;display:flex;inset:12% auto 10% 1.5%;overflow:hidden}.quiz-panel .quiz-cast figure{justify-content:flex-end;gap:0;max-width:100%;height:100%}.quiz-panel .quiz-cast figure+figure{display:none}.quiz-panel .quiz-cast img{object-fit:contain;filter:none;width:100%;height:calc(100% - 28px)}.quiz-panel .quiz-cast figcaption{text-align:center;letter-spacing:1px;background:#a54e6c;width:100%;padding:8px 0;font-size:clamp(7px,.75cqw,12px)}.quiz-panel h2{margin:4px 0;font:700 clamp(13px,1.5cqw,22px) Nunito Sans,sans-serif}.quiz-panel .eyebrow{font-size:clamp(7px,.65cqw,10px)}.quiz-progress{font-size:clamp(9px,.8cqw,12px);position:absolute;top:12px;right:22px}.quiz-situation{margin:4px 0;font-size:clamp(11px,1.1cqw,17px);line-height:1.4}.quiz-thought{display:none}.quiz-question{color:#9a526d;margin:6px 0 10px;font-size:clamp(12px,1.1cqw,17px)}.quiz-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0}.quiz-options li{display:flex}.quiz-option{background:#fff1e7;border:3px double #a25e70;border-radius:12px;gap:7px;height:100%;padding:10px 9px;font-size:clamp(10px,.95cqw,15px);line-height:1.35;transition:transform .15s,background .15s;box-shadow:0 3px #c48e96}.quiz-option:hover:not(:disabled){background:#ffe0df;transform:translateY(-3px)}.quiz-option .key{background:#b34f72;border:2px solid #d88fa4;width:25px;height:29px}.quiz-feedback{z-index:3;text-align:center;border:3px double #b76e80;border-radius:22px;width:min(540px,80cqw);margin:0;padding:20px 26px;animation:.45s cubic-bezier(.2,1.5,.5,1) both quiz-pop;position:absolute;bottom:calc(100% + 22px);left:50%;transform:translate(-50%);box-shadow:0 10px 40px #47223655}.quiz-feedback .badge{padding:0;font-size:clamp(22px,2.7cqw,38px);color:#864661!important;background:0 0!important}.quiz-feedback .badge:before,.quiz-feedback .badge:after{content:" ✦ ";color:#c58346}.quiz-feedback .note{color:#51313b;font-size:clamp(12px,1.2cqw,18px)}@keyframes quiz-pop{0%{opacity:0;transform:translate(-50%)translateY(20px)scale(.7)}to{opacity:1;transform:translate(-50%)translateY(0)scale(1)}}@media (width<=700px){.quiz-panel{padding:10px 12px}.quiz-panel .quiz-cast{display:none}.quiz-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.quiz-panel .eyebrow{max-width:70%}.quiz-option{padding:7px}.quiz-scene>img{object-fit:cover}.quiz-feedback{padding:12px}}@media (prefers-reduced-motion:reduce){.quiz-feedback{animation:none}.quiz-option{transition:none}}.quiz-panel .quiz-cast img{height:100%}#ending{-webkit-backdrop-filter:none;backdrop-filter:none;background:radial-gradient(at 32% 60%,#875464 0%,#402b3d 45%,#241b2e 100%);overflow:hidden}.birthday-glow{aspect-ratio:1;pointer-events:none;background:radial-gradient(circle,#efbe9670,#0000 68%);border-radius:50%;width:55%;position:absolute;top:4%;left:-2%}.birthday-mariela{object-fit:contain;object-position:center bottom;filter:drop-shadow(0 0 32px #ffd6b529);width:44%;height:92%;position:absolute;bottom:0;left:5%}.birthday-message{text-align:center;color:#ffe9d3;width:52%;margin-left:45%;padding:24px;position:relative}.birthday-message .eyebrow{color:#d9ac9d;letter-spacing:4px;font-size:clamp(8px,.9cqw,13px)}.birthday-message h2{margin:20px 0;font:500 clamp(30px,5cqw,80px)/1.05 Cormorant Garamond,serif}.birthday-message h2 span{color:#f7bdcb;font-size:1.5em;font-style:italic}.birthday-message>p:not(.eyebrow):not(.birthday-end){color:#e7c9c1;font:400 clamp(13px,1.4cqw,23px)/1.8 Nunito Sans,sans-serif}.birthday-heart{color:#d996ad;margin:16px 0;font-size:24px;display:block}.birthday-end{letter-spacing:6px;color:#d9ac9d;font-size:clamp(9px,.9cqw,14px)}.birthday-message .text-button{color:#dfbfb7;margin-top:12px;font-size:11px}.transition.birthday-fade{background:#160f1a;transition:opacity 1.4s}.transition.birthday-fade>*{visibility:hidden}@media (prefers-reduced-motion:reduce){.transition.birthday-fade{transition:none}}.mirror-panel #outfit-description{background:#f1d9d3;border-left:3px solid #b8758d;margin:8px 0 0;padding:9px 12px;font-size:clamp(11px,1cqw,16px);line-height:1.5}.mirror-panel>.primary:disabled{cursor:default;opacity:.6}.accessory-option[data-accessory-key^=outfit\:]{flex:1;min-width:0}.music-player{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:radial-gradient(circle at 50% 38%,#7e536ba8,#281c29ee 68%),repeating-linear-gradient(90deg,#ffffff08 0 2px,#0000 2px 8px);justify-content:center;align-items:center;display:flex}.music-player-card{text-align:center;color:#573440;background:linear-gradient(145deg,#f9ead6,#efc9bd);border:4px solid #8e5168;width:min(690px,82%);max-height:90%;padding:clamp(18px,2.7cqw,42px);overflow:auto;box-shadow:inset 0 0 0 4px #d99cab,0 16px 55px #120c16cc}.music-player-card>.eyebrow{color:#a05e72;margin:clamp(10px,1.2cqw,18px) 0 0}.music-player-card h2{margin:4px 0;font:500 clamp(34px,4.4cqw,67px) Cormorant Garamond,serif}.music-intro{margin:0 0 clamp(12px,1.5cqw,22px);font-size:clamp(11px,1.1cqw,16px)}.stereo{aspect-ratio:2.45;background:linear-gradient(#b86d82 0 23%,#744457 23%);border:5px solid #3b2631;border-radius:8px;width:min(360px,65%);margin:0 auto;position:relative;box-shadow:inset 0 0 0 4px #d8959c,0 8px #2b1d27,0 15px 25px #40243177}.stereo-handle{background:#ae697b;border:5px solid #3b2631;border-bottom:0;border-radius:8px 8px 0 0;height:24%;position:absolute;top:-19%;left:26%;right:26%}.stereo-speaker{aspect-ratio:1;background:radial-gradient(circle,#e9baaa 0 8%,#3c2a36 9% 33%,#1f1822 34% 54%,#684052 55% 100%);border:5px double #dfa4a5;border-radius:50%;width:28%;position:absolute;bottom:9%}.stereo-speaker-left{left:6%}.stereo-speaker-right{right:6%}.stereo-display{background:#261e2d;border:3px solid #3e2935;justify-content:center;align-items:flex-end;gap:5%;padding:7%;display:flex;position:absolute;inset:12% 38% 27%}.stereo-display i{background:#f3bc8f;width:12%;height:45%;animation:.8s ease-in-out infinite alternate stereo-bars;display:block;box-shadow:0 0 5px #ffc48f}.stereo-display i:nth-child(2){height:85%;animation-delay:.2s}.stereo-display i:nth-child(3){height:60%;animation-delay:.4s}.stereo-display i:nth-child(4){height:100%;animation-delay:.1s}.stereo-display i:nth-child(5){height:70%;animation-delay:.3s}@keyframes stereo-bars{to{height:22%}}.song-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(8px,1cqw,14px);max-width:590px;margin:auto;display:grid}.song-choice{color:#673d4a;background:#fff5e8;border:2px solid #b77789;border-radius:5px;min-height:clamp(43px,4.6cqw,66px);padding:9px 14px;font-size:clamp(11px,1.05cqw,16px);font-weight:600;line-height:1.3;box-shadow:0 3px #9a6170}.song-choice[aria-pressed=true]{color:#fff3df;background:#a75d76;border-color:#733b50;box-shadow:inset 0 0 0 3px #d993a3,0 3px #5d3041}.song-choice[aria-pressed=true]:before{content:"♫ ";color:#ffd6a9}.music-status{color:#86566a;min-height:1.5em;margin:clamp(10px,1.2cqw,18px) 0 8px;font:italic 500 clamp(12px,1.2cqw,18px) Cormorant Garamond,serif}.music-player-card>.primary{padding:11px 30px}@media (height<=700px){.music-player-card{padding:16px 24px}.stereo{width:min(270px,52%)}.music-player-card h2{font-size:34px}.music-player-card>.eyebrow{margin-top:7px}.music-intro{margin-bottom:10px}.song-choice{min-height:39px}.music-status{margin:8px 0 5px}}@media (prefers-reduced-motion:reduce){.stereo-display i{animation:none}}.touch-only{display:none}html.touch-ui .desktop-only{display:none!important}html.touch-ui .touch-only{display:revert}html.touch-ui,html.touch-ui body{overscroll-behavior:none;background:#211820;height:100%;overflow:hidden}html.touch-ui body{touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;min-width:0;min-height:0}html.touch-ui img{-webkit-user-drag:none;-webkit-touch-callout:none}html.touch-ui button:focus-visible,html.touch-ui canvas:focus-visible{outline:none}.touch-ui #app{max-width:none;height:100dvh;padding:0}.touch-ui .masthead{z-index:40;top:calc(env(safe-area-inset-top) + 10px);right:calc(env(safe-area-inset-right) + 10px);height:auto;padding:0;position:fixed}.touch-ui .brand{display:none}.touch-ui .masthead nav{gap:8px}.touch-ui .icon-button{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#2b1c26c7;border-color:#a77b86;width:42px;height:42px;font-size:19px}.touch-ui #stage{aspect-ratio:auto;width:100%;height:100%;max-height:none;box-shadow:none;margin:0;position:fixed;inset:0}.touch-ui .footer{display:none}.touch-ui #world{touch-action:none;-webkit-tap-highlight-color:transparent}.touch-ui .room-vignette{box-shadow:inset 0 0 50px #25101860,inset 0 -90px 60px -40px #1a0e1455}.touch-ui .scene-caption{top:calc(env(safe-area-inset-top) + 14px);left:calc(env(safe-area-inset-left) + 16px);max-width:calc(100% - 190px)}.touch-ui .scene-caption .eyebrow{letter-spacing:2px;font-size:8px}.touch-ui .scene-caption>span:last-child{font-size:21px;line-height:1.1}.touch-ui .memory-badge{top:calc(env(safe-area-inset-top) + 62px);right:calc(env(safe-area-inset-right) + 10px);padding:6px 10px;font-size:10px}.touch-ui .gentle-hint{bottom:calc(env(safe-area-inset-bottom) + 132px);text-align:center;border-radius:6px;max-width:min(78%,420px);font-size:14px;line-height:1.4}.joystick{z-index:6;pointer-events:none;background:radial-gradient(circle,#2b1c2630 0 38%,#2b1c2680 72%);border:2px solid #ffe6c077;border-radius:50%;width:124px;height:124px;margin:-62px 0 0 -62px;transition:border-color .2s,box-shadow .2s;position:absolute;box-shadow:0 0 0 6px #ffffff0d}.joystick-knob{background:radial-gradient(circle at 40% 35%,#ffeedb,#d993a4);border:2px solid #fff3dc;border-radius:50%;width:56px;height:56px;margin:-28px 0 0 -28px;position:absolute;top:50%;left:50%;box-shadow:0 4px 12px #00000070}.joystick.running{border-color:#ffd48acc;box-shadow:0 0 0 6px #ffd48a33,0 0 26px #ffd48a70}.touch-ui .interact{top:auto;left:auto;right:calc(env(safe-area-inset-right) + 18px);bottom:calc(env(safe-area-inset-bottom) + 24px);color:#fff3dc;letter-spacing:.5px;background:radial-gradient(circle at 40% 32%,#cf8499,#8f4a60);border:3px solid #f3d3a4;border-radius:50%;flex-direction:column;justify-content:center;gap:1px;width:88px;height:88px;padding:0;font-size:12px;font-weight:700;animation:.28s cubic-bezier(.2,1.6,.5,1) both action-in,1.8s ease-in-out .3s infinite action-glow;transform:none;box-shadow:0 0 0 4px #3c293399,0 6px #4a2a38,0 0 28px #ffcf9a80}.touch-ui .interact:active{transform:scale(.93)}.touch-ui .interact kbd{display:none}.touch-ui .interact i{font-size:25px;font-style:normal;line-height:1}.touch-ui .interact small{pointer-events:none;background:#3c2933f0;border:1px solid #d7ad81;border-radius:5px;padding:7px 12px;font-size:13px;font-weight:600;inset:auto 0 calc(100% + 12px) auto;transform:none;box-shadow:0 3px #241721}@keyframes action-in{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes action-glow{50%{box-shadow:0 0 0 4px #3c293399,0 6px #4a2a38,0 0 40px #ffcf9acc}}.sparkle-layer,.fx-layer{z-index:2;pointer-events:none;transition:opacity .3s;position:absolute;inset:0;overflow:hidden}.fx-layer{z-index:4}#stage:not([data-mode=explore]) .sparkle-layer{opacity:0}.sparkle{width:30px;height:30px;position:absolute;transform:translate(-50%,-78%)}.sparkle:before{content:"✦";color:#fff7dc;text-shadow:0 0 6px #ffe39a,0 0 16px #ffb4c9,0 0 26px #ffd98a;animation:sparkle-twinkle 1.6s var(--twinkle,0s) ease-in-out infinite;place-items:center;font-size:28px;line-height:1;display:grid;position:absolute;inset:0}.sparkle:after{content:"";background:radial-gradient(#ffe3a855,#0000 70%);border-radius:50%;width:26px;height:8px;margin-left:-13px;position:absolute;bottom:-6px;left:50%}.sparkle.collected:before{animation:.7s ease-out forwards sparkle-grab}.sparkle.collected:after{opacity:0}@keyframes sparkle-twinkle{0%,to{opacity:.75;transform:translateY(0)scale(.85)rotate(0)}50%{opacity:1;transform:translateY(-6px)scale(1.12)rotate(18deg)}}@keyframes sparkle-grab{0%{transform:scale(1)}40%{opacity:1;transform:translateY(-26px)scale(1.9)rotate(90deg)}to{opacity:0;transform:translateY(-70px)scale(.2)rotate(200deg)}}.emote{color:#ff9dbb;text-shadow:0 0 #fff,0 2px #6a2c43,0 0 16px #ffd3e0;font-size:34px;line-height:1;animation:1.3s ease-out forwards emote-float;position:absolute;transform:translate(-50%,-50%)}@keyframes emote-float{0%{opacity:0;transform:translate(-50%,-20%)scale(.4)}20%{opacity:1;transform:translate(-50%,-60%)scale(1.25)}to{opacity:0;transform:translate(-50%,-260%)scale(.9)}}.tap-ripple{border:2px solid #fff1d0cc;border-radius:50%;width:56px;height:22px;margin:-11px 0 0 -28px;animation:.65s ease-out forwards tap-ripple;position:absolute}.tap-ripple.target{border-color:#ffd48a;box-shadow:0 0 14px #ffd48a99}@keyframes tap-ripple{0%{opacity:1;transform:scale(.3)}to{opacity:0;transform:scale(1.5)}}.sparkle-counter{z-index:3;color:#fbe4b9;pointer-events:none;background:#3d2733dc;border:1px solid #d3aa83;border-radius:999px;align-items:baseline;gap:5px;padding:5px 12px 5px 9px;font-size:14px;font-weight:600;display:flex;position:absolute;top:88px;left:30px}.sparkle-counter b{color:#ffe39a;text-shadow:0 0 8px #ffd07a}.sparkle-counter small{color:#c9a99f;font-size:11px}.sparkle-counter.pop{animation:.5s cubic-bezier(.2,1.8,.5,1) counter-pop}@keyframes counter-pop{40%{transform:scale(1.28)}}#stage[data-mode=intro] .sparkle-counter,#stage[data-mode=alarm] .sparkle-counter,#stage[data-dark] .sparkle-counter{visibility:hidden}.touch-ui .sparkle-counter{top:calc(env(safe-area-inset-top) + 66px);left:calc(env(safe-area-inset-left) + 14px)}.toast{z-index:12;color:#ffeccc;text-align:center;pointer-events:none;background:#3c2933f2;border:1px solid #e0b98b;border-radius:999px;max-width:min(86%,460px);margin:0;padding:10px 18px;font-size:14px;font-weight:600;position:absolute;top:18%;left:50%;transform:translate(-50%);box-shadow:0 6px 24px #140a1180}.toast.show{animation:2.6s both toast-in}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}10%,85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-6px)}}.concert{overflow:hidden}.concert-rain,.concert-lights{pointer-events:none;position:absolute;inset:0;overflow:hidden}.concert-rain i{top:-12%;left:var(--x);width:2px;height:9%;animation:rain-fall var(--d,.8s) var(--delay,0s) linear infinite;background:linear-gradient(#cfe3ff00,#d8e8ffb0);border-radius:2px;position:absolute}@keyframes rain-fall{to{transform:translate(-4vw,125vh)}}.crowd-light{background:var(--hue,#ffd6a5);width:16px;height:16px;box-shadow:0 0 12px 4px var(--hue,#ffd6a5),0 0 40px 12px color-mix(in srgb,var(--hue,#ffd6a5) 50%,transparent);border-radius:50%;margin:-8px 0 0 -8px;animation:2.6s ease-out forwards crowd-light;position:absolute}@keyframes crowd-light{0%{opacity:0;transform:scale(.2)}15%{opacity:1;transform:scale(1.3)}60%{opacity:.9;transform:translateY(-14px)scale(1)}to{opacity:0;transform:translateY(-40px)scale(.6)}}.concert-copy{z-index:1}.concert-tip{color:#e8c9b9;margin:10px 0 0;font-style:italic;font-size:clamp(11px,1.1cqw,15px)!important}.sparkle-ending{color:#ffe2a8;margin:4px 0 0;font:italic 500 clamp(15px,1.5cqw,22px) Cormorant Garamond,serif}.intro-touch{color:#d9bfb4;letter-spacing:.5px;margin:18px 0 0;font-size:13px}.touch-ui .dialogue{left:calc(env(safe-area-inset-left) + 10px);right:calc(env(safe-area-inset-right) + 10px);bottom:calc(env(safe-area-inset-bottom) + 12px);cursor:pointer;min-height:0}.touch-ui .dialogue-body{min-height:0;padding:28px 16px 40px 12px}.touch-ui #dialogue-text{max-width:100%;min-height:3em;font-size:17px;line-height:1.5}.touch-ui .speaker{padding:7px 16px;font-size:10px;top:-18px}.touch-ui .advance{font-size:12px;bottom:8px;right:12px}.touch-ui .advance em{font-style:normal}.touch-ui .dialogue.thought-only{bottom:14%;left:6%;right:6%}.touch-ui .paper-card{width:min(520px,90%);max-height:86%;padding:24px 22px;overflow:auto}.touch-ui .paper-card h2{font-size:38px}.touch-ui .controls{margin:16px 0}.touch-ui .transition p{padding:0 20px;font-size:clamp(30px,8vw,44px)}.touch-ui .primary{min-height:48px}.touch-ui .text-button{min-height:44px}@media (orientation:portrait){.touch-ui .portrait-wrap{width:31%}.touch-ui .portrait-wrap img{width:116%;height:175%;left:-8%}.touch-ui .intro{background:linear-gradient(#20162122,#2a1c2455 20%,#2a1c24ee 55%,#201621fa 100%);justify-content:center;align-items:flex-end}.touch-ui .intro-copy{margin:0 0 calc(env(safe-area-inset-bottom) + 12%);text-align:center;padding:0 24px}.touch-ui .intro h1{letter-spacing:5px;font-size:clamp(58px,17vw,96px)}.touch-ui .intro h1 span{font-size:clamp(20px,6vw,30px)}.touch-ui .intro .primary{min-width:220px}.touch-ui .music-player-card{width:92%;max-height:84%;padding:20px 16px}.touch-ui .song-choices{grid-template-columns:1fr}.touch-ui .mirror-game{-webkit-overflow-scrolling:touch;flex-direction:column;display:flex;overflow:hidden auto}.touch-ui .mirror-game:after{display:none}.touch-ui .mirror-art{aspect-ratio:1672/941;flex-shrink:0;width:190%;height:auto;margin-left:-4%;position:relative;inset:auto}.touch-ui .mirror-panel{width:auto;margin:-18px 10px calc(env(safe-area-inset-bottom) + 10px);flex:1 0 auto;padding:16px;position:relative;inset:auto;overflow:visible}.touch-ui .mirror-panel h2{font-size:34px}.touch-ui .mirror-panel>p:not(.eyebrow){font-size:14px}.touch-ui .accessory-option{min-width:0;min-height:44px;font-size:13px}.touch-ui .mirror-panel>.primary{align-self:stretch}.touch-ui .color-stage{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.touch-ui .paint-workspace{padding:calc(env(safe-area-inset-top) + 60px) 12px 26px}.touch-ui .paint-paper{width:min(100%,50dvh);height:auto}.touch-ui .paint-caption{font-size:14px;bottom:4px}.touch-ui .color-panel{padding:14px 16px calc(env(safe-area-inset-bottom) + 14px);border-top:3px solid #b58272;border-left:0}.touch-ui .color-panel h2{margin:2px 0;font-size:28px}.touch-ui .color-panel>p:not(.eyebrow){margin-bottom:8px;font-size:13px}.touch-ui .color-palette{grid-template-columns:repeat(6,1fr);gap:6px;margin-bottom:8px}.touch-ui .color-swatch{height:36px}.touch-ui .paint-tools button{min-height:40px;font-size:13px}.touch-ui .brush-label{font-size:13px}.touch-ui .color-panel>.primary{min-height:48px;margin-top:8px;font-size:15px}.touch-ui .quiz-stage{grid-template-rows:minmax(22%,1fr) auto}.touch-ui .quiz-scene>img{object-position:center 30%;height:100%}.touch-ui .quiz-panel{padding:14px 14px calc(env(safe-area-inset-bottom) + 14px);max-height:74dvh;overflow:auto}.touch-ui .quiz-panel .quiz-cast{display:none}.touch-ui .quiz-panel h2{padding-right:90px;font-size:17px}.touch-ui .quiz-progress{font-size:11px;top:16px;right:16px}.touch-ui .quiz-situation{font-size:14px}.touch-ui .quiz-question{font-size:15px}.touch-ui .quiz-options{grid-template-columns:1fr;gap:8px}.touch-ui .quiz-option{align-items:center;padding:11px 12px;font-size:14px}.touch-ui .quiz-feedback{width:88vw;padding:16px 18px;position:fixed;top:22%;bottom:auto;left:50%}.touch-ui .concert-copy{width:88%;padding:26px 20px}.touch-ui .concert-copy h2{font-size:44px}.touch-ui .concert-copy p:not(.eyebrow){font-size:16px}.touch-ui #ending{align-items:flex-start}.touch-ui .birthday-glow{width:120%;top:40%;left:-10%}.touch-ui .birthday-mariela{width:100%;height:52%;left:50%;transform:translate(-50%)}.touch-ui .birthday-message{width:100%;padding:calc(env(safe-area-inset-top) + 64px) 22px 0;margin:0}.touch-ui .birthday-message h2{margin:12px 0;font-size:clamp(38px,11vw,56px)}.touch-ui .birthday-message>p:not(.eyebrow):not(.birthday-end){font-size:15px;line-height:1.6}.touch-ui .birthday-heart{margin:8px 0}}@media (orientation:landscape) and (height<=520px){.touch-ui .scene-caption>span:last-child{font-size:18px}.touch-ui .dialogue{left:calc(env(safe-area-inset-left) + 12%);right:calc(env(safe-area-inset-right) + 12%);bottom:calc(env(safe-area-inset-bottom) + 8px)}.touch-ui .portrait-wrap{width:22%}.touch-ui .portrait-wrap img{height:150%}.touch-ui .dialogue-body{padding:22px 14px 34px 10px}.touch-ui #dialogue-text{min-height:2.6em;font-size:16px}.touch-ui .interact{width:74px;height:74px;bottom:calc(env(safe-area-inset-bottom) + 16px)}.touch-ui .gentle-hint{bottom:calc(env(safe-area-inset-bottom) + 100px)}.touch-ui .intro h1{font-size:64px}.touch-ui .intro-copy{margin-left:calc(env(safe-area-inset-left) + 7%)}.touch-ui .ornament{margin:10px 0}.touch-ui .music-player-card{width:80%;max-height:92%;padding:12px 18px}.touch-ui .stereo{width:min(200px,36%)}.touch-ui .music-player-card h2{font-size:28px}.touch-ui .song-choice{min-height:40px}.touch-ui .mirror-panel{width:44%;padding:12px;top:3%;bottom:3%}.touch-ui .mirror-panel h2{font-size:28px}.touch-ui .accessory-option{min-height:36px}.touch-ui .color-stage{grid-template-columns:minmax(0,1fr) 38%}.touch-ui .color-panel{padding:10px 14px calc(env(safe-area-inset-bottom) + 10px)}.touch-ui .color-panel h2{font-size:24px}.touch-ui .color-swatch{height:30px}.touch-ui .quiz-panel{max-height:72dvh;padding:10px 14px 12px;overflow:auto}.touch-ui .quiz-panel .quiz-cast{display:none}.touch-ui .quiz-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.touch-ui .quiz-option{padding:8px;font-size:13px}.touch-ui .quiz-feedback{position:fixed;top:12%;bottom:auto}.touch-ui .concert-copy{padding:16px 24px}.touch-ui .concert-copy h2{margin:6px 0;font-size:38px}.touch-ui .birthday-message h2{margin:10px 0;font-size:44px}.touch-ui .paper-card{max-height:92%}}@media (prefers-reduced-motion:reduce){.sparkle:before,.touch-ui .interact,.concert-rain i{animation:none}}html.touch-ui [tabindex="-1"]:focus{outline:none}@media (orientation:portrait){.touch-ui .quiz-scene>img{object-position:center top;height:162%}}@media (orientation:landscape) and (height<=520px){.touch-ui body:is([data-mode=mirror],[data-mode=color],[data-mode=music],[data-mode=quiz],[data-mode=pause],[data-mode=concert],[data-mode=ending]) .masthead{right:auto;left:calc(env(safe-area-inset-left) + 10px)}}.touch-ui #interest-points .interest-point{pointer-events:auto;cursor:pointer}.touch-ui #interest-points .interest-point:before{content:"";border-radius:50%;position:absolute;inset:-20px}.touch-ui .interest-point.offscreen{background:#3c2933e6;border:2px solid #ffe6bc;width:22px;height:22px;animation:none;box-shadow:0 0 14px 3px #ffd68f99}.touch-ui .interest-point.offscreen.story-point{background:#a65d73;width:28px;height:28px;animation:1.8s ease-in-out infinite story-breathe}.touch-ui .interest-point.offscreen:after{content:"";width:0;height:0;transform:translate(-50%,-50%) rotate(var(--angle,0deg)) translateX(19px);border:6px solid #0000;border-left:9px solid #ffe6bc;border-radius:0;animation:none;position:absolute;inset:50% auto auto 50%}
