@font-face{font-family:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(./baloo-2-devanagari-wght-normal-B4j4n2PV.woff2) format("woff2-variations");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(./baloo-2-vietnamese-wght-normal-C4ZonJY6.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(./baloo-2-latin-ext-wght-normal-Dz43yst_.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Baloo 2 Variable";font-style:normal;font-display:swap;font-weight:400 800;src:url(./baloo-2-latin-wght-normal-B_TVFhwJ.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-cyrillic-wght-normal-CY6AOgYE.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-vietnamese-wght-normal-U01xdrZh.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-latin-ext-wght-normal-CXYtwYOx.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(./nunito-latin-wght-normal-BzFMHfZw.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--cream: #ffe9c2;--cream-deep: #ffd9a0;--ink: #3d405b;--ink-soft: #8a8db0;--coral: #ff6b6b;--tangerine: #f4a261;--sun: #ffd166;--sun-deep: #f4b942;--mint: #06d6a0;--sky: #4cc9f0;--grape: #9b5de5;--pink: #f15bb5;--card: #fffdf7;--radius: 24px;--block-shadow: 0 6px 0 rgba(61, 64, 91, .14);--font-display: "Baloo 2 Variable", "Comic Sans MS", cursive;--font-body: "Nunito Variable", "Segoe UI", sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;overflow:hidden;touch-action:manipulation}body{font-family:var(--font-body);color:var(--ink);background:var(--bg);-webkit-user-select:none;user-select:none}body,body.theme-golden{--bg: radial-gradient(34rem 34rem at 88% 6%, rgba(241, 91, 181, .2), transparent 65%), radial-gradient(42rem 30rem at 6% 110%, rgba(255, 170, 60, .4), transparent 70%), radial-gradient(rgba(180, 95, 30, .1) 1.5px, transparent 1.5px) 0 0 / 34px 34px, linear-gradient(#ffd08c, #ffe9c2);--cream: #ffe9c2;--cream-deep: #ffd9a0;--overlay: rgba(255, 233, 194, .92);--slot-edge: rgba(244, 169, 60, .35)}body.theme-mint{--bg: radial-gradient(38rem 26rem at 84% 112%, rgba(6, 180, 140, .24), transparent 70%), radial-gradient(34rem 26rem at 8% -6%, rgba(76, 201, 240, .22), transparent 70%), radial-gradient(rgba(10, 95, 75, .09) 1.5px, transparent 1.5px) 0 0 / 34px 34px, linear-gradient(#b6e9d1, #e6f9f0);--cream: #e6f9f0;--cream-deep: #c4eedd;--overlay: rgba(230, 249, 240, .92);--slot-edge: rgba(6, 160, 120, .3)}body.theme-sky{--bg: radial-gradient(36rem 28rem at 86% 8%, rgba(255, 255, 255, .55), transparent 65%), radial-gradient(40rem 28rem at 4% 108%, rgba(76, 201, 240, .3), transparent 70%), radial-gradient(rgba(20, 90, 140, .1) 1.5px, transparent 1.5px) 0 0 / 34px 34px, linear-gradient(#a8dbf3, #ddf2fc);--cream: #ddf2fc;--cream-deep: #bce4f7;--overlay: rgba(221, 242, 252, .92);--slot-edge: rgba(55, 138, 221, .3)}body.theme-lavender{--bg: radial-gradient(34rem 30rem at 88% 110%, rgba(241, 91, 181, .16), transparent 70%), radial-gradient(38rem 26rem at 6% -4%, rgba(140, 110, 235, .22), transparent 70%), radial-gradient(rgba(90, 60, 150, .1) 1.5px, transparent 1.5px) 0 0 / 34px 34px, linear-gradient(#d9ccf5, #f1eafc);--cream: #f1eafc;--cream-deep: #e0d4f8;--overlay: rgba(241, 234, 252, .92);--slot-edge: rgba(127, 119, 221, .35)}body.theme-strawberry{--bg: radial-gradient(34rem 28rem at 88% 6%, rgba(255, 170, 60, .18), transparent 65%), radial-gradient(40rem 28rem at 6% 110%, rgba(241, 91, 181, .22), transparent 70%), radial-gradient(rgba(170, 40, 80, .09) 1.5px, transparent 1.5px) 0 0 / 34px 34px, linear-gradient(#ffcdd9, #ffeef2);--cream: #ffeef2;--cream-deep: #ffd9e2;--overlay: rgba(255, 238, 242, .92);--slot-edge: rgba(212, 83, 126, .32)}body.theme-peach{--bg: radial-gradient(34rem 30rem at 86% 108%, rgba(241, 91, 181, .15), transparent 70%), radial-gradient(40rem 28rem at 8% -6%, rgba(255, 140, 80, .26), transparent 70%), radial-gradient(rgba(190, 80, 30, .09) 1.5px, transparent 1.5px) 0 0 / 34px 34px, linear-gradient(#ffc9ae, #ffe9dc);--cream: #ffe9dc;--cream-deep: #ffd6bf;--overlay: rgba(255, 233, 220, .92);--slot-edge: rgba(216, 90, 48, .3)}body.theme-periwinkle{--bg: radial-gradient(34rem 28rem at 88% 8%, rgba(76, 201, 240, .24), transparent 65%), radial-gradient(40rem 28rem at 6% 110%, rgba(120, 100, 235, .22), transparent 70%), radial-gradient(rgba(50, 60, 150, .1) 1.5px, transparent 1.5px) 0 0 / 34px 34px, linear-gradient(#bcc8f7, #e6ebfd);--cream: #e6ebfd;--cream-deep: #ccd6fa;--overlay: rgba(230, 235, 253, .92);--slot-edge: rgba(100, 115, 225, .32)}body.theme-lemon{--bg: radial-gradient(34rem 28rem at 88% 108%, rgba(120, 200, 80, .18), transparent 70%), radial-gradient(38rem 26rem at 6% -4%, rgba(255, 200, 40, .3), transparent 70%), radial-gradient(rgba(120, 110, 10, .1) 1.5px, transparent 1.5px) 0 0 / 34px 34px, linear-gradient(#f3ee9e, #fbf9d8);--cream: #fbf9d8;--cream-deep: #f4eeae;--overlay: rgba(251, 249, 216, .92);--slot-edge: rgba(180, 165, 20, .35)}#app{height:var(--app-height, 100%)}.screen{position:relative;height:100%;display:flex;flex-direction:column;align-items:center;padding:max(16px,env(safe-area-inset-top)) 20px max(16px,env(safe-area-inset-bottom));overflow:hidden}.btn{font-family:var(--font-display);font-size:1.25rem;font-weight:700;color:var(--ink);background:var(--sun);border:none;border-radius:999px;padding:.55em 1.4em;cursor:pointer;box-shadow:0 5px 0 var(--sun-deep),var(--block-shadow);transition:transform .12s ease,box-shadow .12s ease;touch-action:manipulation}.btn:active{transform:translateY(4px);box-shadow:0 1px 0 var(--sun-deep)}.btn-round{width:56px;height:56px;padding:0;display:grid;place-items:center;font-size:1.5rem}.btn-big{font-size:1.6rem;padding:.6em 1.6em}.home-screen{justify-content:center;gap:28px}.settings-btn{position:absolute;top:max(18px,env(safe-area-inset-top));right:20px;background:var(--card);box-shadow:0 5px #3d405b26}.hero{text-align:center}.app-title{font-family:var(--font-display);font-size:clamp(2.6rem,9vmin,5rem);font-weight:800;margin:0;letter-spacing:.02em}.app-title span{display:inline-block;white-space:pre;animation:title-bounce .7s calc(var(--i) * .07s) cubic-bezier(.34,1.56,.64,1) backwards}.app-title span:nth-child(7n+1){color:var(--coral)}.app-title span:nth-child(7n+2){color:var(--tangerine)}.app-title span:nth-child(7n+3){color:var(--sun-deep)}.app-title span:nth-child(7n+4){color:var(--mint)}.app-title span:nth-child(7n+5){color:var(--sky)}.app-title span:nth-child(7n+6){color:var(--grape)}.app-title span:nth-child(7n+7){color:var(--pink)}@keyframes title-bounce{0%{opacity:0;transform:translateY(-60px) rotate(-8deg)}}.tagline{font-size:1.15rem;font-weight:700;color:var(--ink-soft);margin:10px 0 0}.level-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;max-width:880px}.level-card{font-family:var(--font-display);width:152px;padding:18px 12px 14px;background:var(--card);border:none;border-radius:var(--radius);cursor:pointer;box-shadow:0 7px #3d405b1f;transition:transform .15s ease,box-shadow .15s ease;animation:card-in .5s calc(var(--i) * .08s) cubic-bezier(.34,1.56,.64,1) backwards}@keyframes card-in{0%{opacity:0;transform:translateY(40px) scale(.8)}}.level-card:not(:disabled):hover{transform:translateY(-6px) rotate(-1.5deg);box-shadow:0 13px #3d405b1a}.level-card:not(:disabled):active{transform:translateY(2px);box-shadow:0 3px #3d405b1f}.level-card:disabled{cursor:default;opacity:.55;filter:saturate(.3)}.card-emoji{font-size:2.6rem}.card-title{font-size:1.1rem;font-weight:700;color:var(--ink);margin:6px 0 4px;line-height:1.15}.card-stars{color:var(--sun-deep);font-size:.95rem;letter-spacing:.08em}.card-stars.locked{font-size:1.2rem}.game-header{width:100%;max-width:980px;display:flex;align-items:center;gap:16px}.screen-title{font-family:var(--font-display);font-size:1.7rem;margin:0}.level-chip{font-family:var(--font-display);font-weight:700;font-size:1.15rem;background:var(--card);padding:8px 18px;border-radius:999px;box-shadow:var(--block-shadow)}.item-dots{margin-left:auto;display:flex;gap:7px}.dot{width:14px;height:14px;border-radius:50%;background:#3d405b1f;transition:background .3s,transform .3s}.dot.active{background:var(--sun);transform:scale(1.35)}.dot.done{background:var(--mint)}.settings-screen{gap:20px}.settings-list{width:100%;max-width:660px;display:flex;flex-direction:column;gap:14px;overflow-y:auto;padding:6px 4px 24px}.build-info{font-size:.72rem;color:var(--ink-soft);opacity:.8;padding:4px 0 10px;text-align:center}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:18px;background:var(--card);border-radius:var(--radius);padding:16px 20px;box-shadow:var(--block-shadow)}.setting-label{font-family:var(--font-display);font-weight:700;font-size:1.1rem}.setting-help{font-size:.85rem;color:var(--ink-soft);margin-top:3px;max-width:380px}.toggle{flex-shrink:0;display:flex;align-items:center;gap:9px;border:none;cursor:pointer;font-family:var(--font-display);font-weight:700;font-size:.95rem;color:var(--ink);background:#3d405b1a;border-radius:999px;padding:6px 14px 6px 6px;transition:background .2s}.toggle .knob{width:26px;height:26px;border-radius:50%;background:#fff;box-shadow:0 2px 4px #3d405b40;transition:transform .2s}.toggle.on{background:var(--mint);color:#fff}.toggle.on .knob{transform:translate(2px) scale(1.05)}.segmented{display:flex;gap:6px;background:#3d405b14;border-radius:999px;padding:5px}.seg-btn{font-family:var(--font-display);font-weight:700;font-size:.95rem;border:none;background:transparent;border-radius:999px;padding:7px 14px;cursor:pointer;color:var(--ink-soft)}.seg-btn.active{background:var(--card);color:var(--ink);box-shadow:0 2px #3d405b1f}.action-btn{font-size:1rem;flex-shrink:0}.action-btn.armed{background:var(--coral);color:#fff;box-shadow:0 5px #d94f4f,var(--block-shadow)}.action-btn:disabled{cursor:default;background:var(--mint);color:#fff;box-shadow:0 5px #05b386,var(--block-shadow)}.volume-slider{width:190px;accent-color:var(--coral);height:30px;cursor:pointer}.gate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#3d405b59;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:20px}.gate-card{position:relative;background:var(--card);border-radius:var(--radius);padding:30px 36px 26px;box-shadow:0 10px #3d405b33;display:flex;flex-direction:column;align-items:center;gap:16px;max-width:340px;text-align:center}.gate-close{position:absolute;top:10px;right:12px;border:none;background:transparent;font-size:1.1rem;font-weight:700;color:var(--ink-soft);cursor:pointer;padding:6px}.gate-title{font-family:var(--font-display);font-weight:800;font-size:1.25rem;color:var(--ink)}.gate-ask{font-family:var(--font-display);font-weight:800;font-size:1.9rem;color:var(--grape)}.gate-input{font-family:var(--font-display);font-weight:700;font-size:1.5rem;text-align:center;width:130px;padding:8px 12px;border:3px solid var(--cream-deep);border-radius:16px;background:var(--cream);color:var(--ink);outline:none}.gate-input:focus{border-color:var(--sky)}.mascot{position:absolute;right:18px;bottom:10px;width:clamp(78px,12vmin,120px);pointer-events:auto;cursor:pointer;z-index:5}.mascot-svg{width:100%;display:block;overflow:visible}.mascot .pip-body-group{transform-origin:60px 100px;animation:pip-bob 3s ease-in-out infinite}.mascot .pip-eyes{animation:pip-blink 4.6s infinite;transform-origin:60px 58px}@keyframes pip-bob{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(.99,1.02)}}@keyframes pip-blink{0%,92%,to{transform:scaleY(1)}95%{transform:scaleY(.1)}}.mascot.celebrate .pip-body-group{animation:pip-jump .55s cubic-bezier(.34,1.56,.64,1) 2}.mascot-bubble{position:absolute;right:clamp(86px,13vmin,130px);bottom:clamp(78px,12vmin,116px);z-index:6;background:var(--card);font-family:var(--font-display);font-weight:800;font-size:1.15rem;color:var(--ink);padding:10px 20px;border-radius:22px 22px 4px;box-shadow:var(--block-shadow);pointer-events:none;opacity:0;transform:scale(.4) translateY(14px);transform-origin:bottom right;transition:opacity .25s ease,transform .3s cubic-bezier(.34,1.56,.64,1)}.mascot-bubble.show{opacity:1;transform:scale(1) translateY(0)}@keyframes pip-jump{0%,to{transform:translateY(0) rotate(0)}35%{transform:translateY(-26px) rotate(-7deg) scale(1.05)}70%{transform:translateY(0) scale(1.04,.93)}}.radio-toggle{position:fixed;left:12px;top:calc(var(--app-height, 100vh) - 58px);z-index:25;border:none;background:none;padding:6px;cursor:pointer;font-size:2.1rem;line-height:1;filter:drop-shadow(0 3px 3px rgba(61,64,91,.25));transition:opacity .25s ease,filter .25s ease}.radio-toggle:not(.playing){opacity:.55;filter:grayscale(.7) drop-shadow(0 3px 3px rgba(61,64,91,.2))}.radio-emoji{display:inline-block}.radio-toggle.playing .radio-emoji{animation:radio-dance .55s ease-in-out infinite}@keyframes radio-dance{0%,to{transform:rotate(-7deg)}25%{transform:rotate(0) translateY(-3px)}50%{transform:rotate(7deg)}75%{transform:rotate(0) translateY(-3px)}}.radio-toggle.playing:before,.radio-toggle.playing:after{position:absolute;left:55%;bottom:75%;font-size:.95rem;pointer-events:none;opacity:0;animation:radio-note 2.2s ease-out infinite}.radio-toggle.playing:before{content:"🎵"}.radio-toggle.playing:after{content:"🎶";animation-delay:1.1s}@keyframes radio-note{0%{opacity:0;transform:translate(0) scale(.6)}15%{opacity:1}to{opacity:0;transform:translate(16px,-36px) scale(1.1)}}body.calm .app-title span,body.calm .level-card{animation-duration:1.2s}body.calm .mascot .pip-body-group{animation-duration:5s}body.calm .radio-toggle.playing .radio-emoji{animation-duration:1.4s}@media(prefers-reduced-motion:reduce){.app-title span,.level-card{animation:none}.radio-toggle.playing .radio-emoji,.radio-toggle.playing:before,.radio-toggle.playing:after{animation:none}}.game-screen{gap:10px}.stage{position:relative;width:100%;max-width:980px;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(14px,3.5vmin,30px);overflow:hidden}.hidden-input{position:fixed;top:0;left:0;width:12px;height:12px;opacity:.01;border:none;background:transparent;caret-color:transparent;font-size:16px}.prompt-label{font-family:var(--font-display);font-weight:800;font-size:clamp(1.2rem,3.5vmin,1.7rem);color:var(--ink-soft)}.pop-in{animation:pop-in .45s cubic-bezier(.34,1.56,.64,1) backwards}@keyframes pop-in{0%{opacity:0;transform:scale(.7) translateY(24px)}}.board{display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-end;gap:10px;row-gap:16px;max-width:95%;--tile-size: clamp(44px, 7.5vmin, 64px);--tile-font: clamp(1.5rem, 4.5vmin, 2.2rem);transition:all .45s ease}.board.long{--tile-size: clamp(34px, 5.6vmin, 50px);--tile-font: clamp(1.2rem, 3.4vmin, 1.7rem);gap:7px}.board.very-long{--tile-size: clamp(28px, 4.6vmin, 42px);--tile-font: clamp(1rem, 2.8vmin, 1.4rem);gap:6px}.word{display:flex;gap:5px}.tile{width:var(--tile-size);height:var(--tile-size);display:grid;place-items:center;font-family:var(--font-display);font-weight:800;font-size:var(--tile-font);color:#3d405b61;background:var(--card);border-radius:22%;box-shadow:inset 0 -4px #3d405b12,0 2px #3d405b14;transition:color .15s,background .15s}.tile.space{width:calc(var(--tile-size) * .4);height:calc(var(--tile-size) * .28);align-self:end;margin-bottom:calc(var(--tile-size) * .08);background:#3d405b1a;border-radius:999px;box-shadow:none}.tile.space.typed{background:var(--mint)}.tile.typed:not(.space){background:var(--tile-color, var(--sun));color:#fff;box-shadow:inset 0 -4px #00000026,0 3px #3d405b26;animation:tile-pop .32s cubic-bezier(.34,1.8,.64,1)}@keyframes tile-pop{0%{transform:scale(.6) rotate(-8deg)}60%{transform:scale(1.25) rotate(4deg)}to{transform:scale(1) rotate(0)}}.tile.current{animation:caret-pulse 1.1s ease-in-out infinite;box-shadow:0 0 0 3px var(--sky),0 2px #3d405b14}@keyframes caret-pulse{0%,to{box-shadow:0 0 0 3px var(--sky),0 2px #3d405b14}50%{box-shadow:0 0 0 6px #4cc9f073,0 2px #3d405b14}}.tile.cue{animation:cue-glow 1.2s ease-in-out}@keyframes cue-glow{0%,to{box-shadow:0 0 0 3px var(--sky)}30%,70%{box-shadow:0 0 0 7px var(--sun),0 0 22px 6px #ffd166cc;transform:scale(1.12)}}.word.word-done .tile{animation:word-bounce .45s cubic-bezier(.34,1.56,.64,1)}.word.word-done .tile:nth-child(2n){animation-delay:.04s}@keyframes word-bounce{0%,to{transform:translateY(0)}45%{transform:translateY(-14px)}}.word.dance .tile{animation:dance 1.4s ease-in-out}.word.dance .tile:nth-child(2n){animation-delay:.09s}.word.dance .tile:nth-child(3n){animation-delay:.18s}.word.dance .tile.punct{animation:none}@keyframes dance{0%,to{transform:rotate(0) translateY(0) scale(1)}20%{transform:rotate(-9deg) translateY(-12px) scale(1.18)}40%{transform:rotate(8deg) translateY(-4px) scale(1.18)}60%{transform:rotate(-7deg) translateY(-10px) scale(1.15)}80%{transform:rotate(6deg) translateY(-2px) scale(1.08)}}.board.compact{--tile-size: clamp(36px, 6vmin, 56px);--tile-font: clamp(1.25rem, 3.8vmin, 2rem);gap:7px;row-gap:10px;opacity:.95}.question-bubble{font-family:var(--font-display);font-weight:800;font-size:clamp(1.3rem,4vmin,2rem);background:var(--card);padding:16px 30px;border-radius:30px 30px 8px;box-shadow:0 7px #3d405b1f;display:flex;align-items:center;gap:12px;max-width:90%;text-align:center}.q-spark{animation:spark-spin 2.4s ease-in-out infinite;display:inline-block}@keyframes spark-spin{0%,to{transform:rotate(0) scale(1)}50%{transform:rotate(25deg) scale(1.3)}}.answer-board .tile:not(.typed):not(.space){color:transparent;background:var(--cream-deep);box-shadow:inset 0 -5px 0 var(--slot-edge),0 2px #3d405b14}.hint-btn{background:var(--card);box-shadow:0 5px #3d405b21;font-size:1.1rem}.hint-btn.hint-hidden{display:none}.confetti{position:absolute;left:50%;top:45%;width:11px;height:15px;background:var(--confetti-color, var(--sun));border-radius:3px;pointer-events:none;z-index:30;animation:confetti-fly 1s ease-out forwards}.confetti.round{border-radius:50%;width:10px;height:10px}@keyframes confetti-fly{0%{opacity:1;transform:translate(0) rotate(0)}to{opacity:0;transform:translate(var(--dx),calc(var(--dy) + 160px)) rotate(var(--rot))}}.playground{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;background:var(--overlay);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;flex-direction:column;align-items:center;padding-top:clamp(20px,6vmin,60px);animation:playground-in .4s ease backwards}@keyframes playground-in{0%{opacity:0}}.playground.leaving{animation:playground-out .35s ease forwards}@keyframes playground-out{to{opacity:0;transform:scale(1.06)}}.praise{font-family:var(--font-display);font-weight:800;font-size:clamp(2.2rem,8vmin,4rem);background:linear-gradient(95deg,var(--coral),var(--tangerine),var(--sun-deep),var(--mint),var(--sky),var(--grape));-webkit-background-clip:text;background-clip:text;color:transparent;animation:praise-bounce .7s cubic-bezier(.34,1.56,.64,1) backwards}@keyframes praise-bounce{0%{opacity:0;transform:scale(.3) rotate(-6deg)}}.tap-label{font-family:var(--font-display);font-weight:700;font-size:clamp(1rem,3vmin,1.4rem);color:var(--ink-soft);margin-top:4px}.toy{position:absolute;border:none;background:transparent;font-size:calc(clamp(2.6rem,8vmin,4.4rem) * var(--toy-scale, 1));cursor:pointer;padding:8px;line-height:1;animation:toy-in .5s cubic-bezier(.34,1.8,.64,1) backwards,toy-float var(--float-dur, 3s) var(--float-delay, 0s) ease-in-out infinite;transition:transform .15s}@keyframes toy-in{0%{transform:scale(0)}}@keyframes toy-float{0%,to{translate:0 0;rotate:-4deg}50%{translate:0 -16px;rotate:5deg}}.toy.bounce{animation:toy-tap .3s cubic-bezier(.34,2,.64,1),toy-float var(--float-dur, 3s) ease-in-out infinite .3s}@keyframes toy-tap{0%{transform:scale(1)}40%{transform:scale(1.5) rotate(10deg)}to{transform:scale(1)}}.toy.gone{pointer-events:none}.toy.popped{animation:toy-pop .35s ease forwards}@keyframes toy-pop{30%{transform:scale(1.5);opacity:1}to{transform:scale(.1);opacity:0}}.toy.flyaway{animation:toy-flyaway .7s ease-in forwards}@keyframes toy-flyaway{20%{transform:translateY(12px) scale(1.2)}to{transform:translateY(-110vh) rotate(40deg);opacity:.4}}.pop-puff{position:absolute;width:26px;height:26px;margin:14px;border-radius:50%;border:5px solid var(--sun);pointer-events:none;animation:puff .5s ease-out forwards}@keyframes puff{0%{transform:scale(.4);opacity:1}to{transform:scale(3.2);opacity:0}}.next-btn{position:absolute;bottom:clamp(18px,6vmin,50px);background:var(--mint);box-shadow:0 6px #05b386,var(--block-shadow);color:#fff;animation:next-in .5s .9s cubic-bezier(.34,1.56,.64,1) backwards}@keyframes next-in{0%{opacity:0;transform:translateY(40px) scale(.7)}}body.calm .tile.typed:not(.space),body.calm .word.word-done .tile{animation-duration:.6s}body.calm .toy{animation:toy-in .8s ease backwards}body.calm .tile.current{animation:none;box-shadow:0 0 0 3px var(--sky),0 2px #3d405b14}@media(prefers-reduced-motion:reduce){.toy{animation:toy-in .6s ease backwards}.tile.current{animation:none;box-shadow:0 0 0 3px var(--sky),0 2px #3d405b14}.word.dance .tile{animation-duration:2s}}
