:root{--font:"Baloo 2", "Fredoka", "Arial Rounded MT Bold", "Comic Sans MS", system-ui, sans-serif;--panel:#fffdf6;--panel-2:#fff;--ink:#2b2f45;--ink-dim:#6b7189;--shadow:0 10px 0 #0000001a, 0 18px 34px #00000057;--shadow-sm:0 5px 0 #0000001a, 0 8px 16px #0000004d;--bounce:.22s cubic-bezier(.34, 1.56, .64, 1)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;color:var(--ink);font-family:var(--font);-webkit-user-select:none;-moz-user-select:none;user-select:none;background:#05060e;margin:0;overflow:hidden}#game-canvas{z-index:0;touch-action:none;width:100vw;height:100vh;display:block;position:fixed;top:0;bottom:0;left:0;right:0}#ui-root{z-index:2;pointer-events:none;position:fixed;top:0;bottom:0;left:0;right:0}.kid-panel,.kid-round,.kid-tool,.kid-blast,.kid-bubble,.kid-tab,.kid-card,.kid-bubble-rm{pointer-events:auto}.hidden{display:none!important}.kid-topbar{top:max(12px, env(safe-area-inset-top));align-items:center;gap:12px;display:flex;position:absolute;left:14px}.kid-logo{color:#fff;letter-spacing:.5px;text-shadow:0 3px #00000059,0 0 18px #78aaff80;font-size:max(20px,min(3vw,30px));font-weight:800}.kid-logo b{color:#ffd166}.kid-counter{background:var(--panel);box-shadow:var(--shadow-sm);border-radius:999px;align-items:center;gap:6px;padding:6px 14px 6px 10px;font-weight:800;display:flex}.kid-counter-star{filter:drop-shadow(0 2px 2px #0003);font-size:22px}.kid-counter-num{color:var(--ink);text-align:center;min-width:20px;transition:transform var(--bounce);font-size:22px}.kid-counter-num.pop{animation:pop .38s var(--bounce)}@keyframes pop{0%{transform:scale(1)}40%{color:#ef476f;transform:scale(1.6)}to{transform:scale(1)}}.kid-actions{top:max(12px, env(safe-area-inset-top));gap:10px;display:flex;position:absolute;right:14px}.kid-round{background:var(--panel);width:max(52px,min(8vw,66px));height:max(52px,min(8vw,66px));box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--bounce), background .15s;border:none;border-radius:50%;place-items:center;font-size:max(24px,min(4vw,30px));display:grid}.kid-round:active{transform:scale(.9)}.kid-round.off{filter:grayscale(.6);background:#d7dae6}.kid-clear.armed{background:#ffd166;animation:.5s ease-in-out infinite wobble}@keyframes wobble{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}.kid-hint{color:#4a3b12;box-shadow:var(--shadow-sm);white-space:nowrap;background:#ffd166;border-radius:999px;padding:12px 22px;font-size:max(16px,min(2.6vw,22px));font-weight:800;transition:opacity .5s,transform .5s;animation:1.4s ease-in-out infinite bob;position:absolute;bottom:230px;left:50%;transform:translate(-50%)}.kid-hint.gone{opacity:0;transform:translate(-50%)translateY(20px)}@keyframes bob{0%,to{transform:translate(-50%)translateY(0)}50%{transform:translate(-50%)translateY(-8px)}}.kid-dock{left:0;right:0;bottom:max(10px, env(safe-area-inset-bottom));pointer-events:none;justify-content:center;align-items:flex-end;gap:12px;padding:0 12px;display:flex;position:absolute}.kid-tools{flex:none;gap:10px;display:flex}.kid-tool-wrap{flex-direction:column;align-items:center;gap:3px;display:flex}.kid-tool{background:var(--panel);width:max(56px,min(8.5vw,72px));height:max(56px,min(8.5vw,72px));box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--bounce), border-color .15s, background .15s;border:4px solid #fff;border-radius:22px;place-items:center;font-size:max(26px,min(4.4vw,34px));display:grid}.kid-tool:active{transform:scale(.9)}.kid-tool.active{box-shadow:var(--shadow-sm), 0 0 0 4px #06d6a059;background:#eafff8;border-color:#06d6a0}.kid-tool .kid-tool-ic{line-height:1}.kid-tool-lbl{color:#fff;text-shadow:0 2px #0006;font-size:12px;font-weight:800}.kid-tool-wrap:nth-child(2) .kid-tool{opacity:.45}.kid-tool-wrap:nth-child(2) .kid-tool.show{opacity:1}.kid-panel{background:var(--panel);max-width:760px;box-shadow:var(--shadow);border-radius:26px;flex:auto;padding:10px 12px 12px;transition:transform .12s}.kid-panel.nope{animation:.32s shake}@keyframes shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-5px)}80%{transform:translate(5px)}}.kid-tabs{scrollbar-width:none;gap:6px;padding-bottom:8px;display:flex;overflow-x:auto}.kid-tabs::-webkit-scrollbar{display:none}.kid-tab{--cat:#4d96ff;color:var(--ink-dim);font-family:var(--font);cursor:pointer;transition:transform var(--bounce), background .15s, color .15s;background:#eef0f6;border:none;border-radius:999px;flex:none;align-items:center;gap:6px;padding:7px 14px;font-size:max(13px,min(2vw,16px));font-weight:800;display:flex}.kid-tab:active{transform:scale(.94)}.kid-tab-ic{font-size:18px;line-height:1}.kid-tab.active{background:var(--cat);color:#fff;box-shadow:0 4px #00000026}.kid-cards{scroll-behavior:smooth;scrollbar-width:thin;gap:10px;padding:4px 2px 6px;display:flex;overflow-x:auto}.kid-cards::-webkit-scrollbar{height:8px}.kid-cards::-webkit-scrollbar-thumb{background:#d3d7e4;border-radius:8px}.kid-card{--cat:#4d96ff;background:var(--panel-2);width:max(80px,min(12vw,98px));height:max(92px,min(14vw,108px));box-shadow:var(--shadow-sm);cursor:pointer;transition:transform var(--bounce), border-color .15s;border:4px solid #fff;border-radius:20px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:4px;padding:6px 4px;display:flex}.kid-card:active{transform:scale(.92)}.kid-card-ic{filter:drop-shadow(0 3px 3px #0000002e);font-size:max(34px,min(5.5vw,44px));line-height:1}.kid-card-nm{color:var(--ink);text-align:center;font-size:max(11px,min(1.7vw,13px));font-weight:800;line-height:1.05}.kid-card.active{border-color:var(--cat);box-shadow:var(--shadow), 0 0 0 5px color-mix(in srgb, var(--cat) 40%, transparent);transform:translateY(-8px)scale(1.04)}.kid-blast{width:max(78px,min(11vw,104px));height:max(78px,min(11vw,104px));box-shadow:var(--shadow);color:#fff;cursor:pointer;transition:transform var(--bounce);background:linear-gradient(160deg,#ff8c42,#ef476f);border:5px solid #fff;border-radius:28px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;display:flex}.kid-blast:active{transform:scale(.92)}.kid-blast-ic{font-size:max(30px,min(5vw,42px));line-height:1}.kid-blast-tx{letter-spacing:.5px;white-space:pre-line;text-align:center;text-shadow:0 2px #00000040;font-size:max(11px,min(1.6vw,13px));font-weight:800;line-height:1}.kid-blast.go{animation:blastPulse .5s var(--bounce)}@keyframes blastPulse{0%{transform:scale(1)}40%{transform:scale(1.18)rotate(-4deg)}to{transform:scale(1)}}.kid-bubble{background:var(--panel);box-shadow:var(--shadow-sm);animation:pop .3s var(--bounce);border-radius:999px;align-items:center;gap:10px;padding:8px 10px 8px 16px;display:flex;position:absolute;bottom:236px;left:50%;transform:translate(-50%)}.kid-bubble-ic{font-size:28px}.kid-bubble-nm{color:var(--ink);font-size:18px;font-weight:800}.kid-bubble-rm{cursor:pointer;width:46px;height:46px;transition:transform var(--bounce);background:#ffe0e6;border:none;border-radius:50%;place-items:center;font-size:24px;display:grid}.kid-bubble-rm:active{transform:scale(.88)}.kid-tab-ic-img,.kid-tool-ic-img,.kid-counter-star-img,.kid-blast-ic-img,.boot-logo-rocket,#boot-moon{object-fit:contain;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;display:block}.kid-counter-star-img{filter:drop-shadow(0 2px 2px #00000040);width:26px;height:26px}.kid-tab-ic-img{filter:drop-shadow(0 1px 1px #00000040);flex:none;width:26px;height:26px}.kid-tool-ic-img{filter:drop-shadow(0 2px 2px #00000047);width:max(34px,min(5.4vw,44px));height:max(34px,min(5.4vw,44px))}.kid-blast-ic-img{filter:drop-shadow(0 2px 3px #00000059);width:max(34px,min(5.6vw,46px));height:max(34px,min(5.6vw,46px))}#boot-screen{z-index:50;background:radial-gradient(120% 90% at 50% 10%,#1a2a5e,#0a0f24 60%,#05060e);place-items:center;transition:opacity .85s;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}#boot-screen.fade-out{opacity:0;pointer-events:none}.boot-inner{text-align:center;padding:24px}.boot-logo{color:#fff;text-shadow:0 6px #0000004d,0 0 40px #78aaff8c;font-size:max(44px,min(11vw,96px));font-weight:800;line-height:.95;animation:3s ease-in-out infinite floaty}.boot-logo span{color:#ffd166;display:block}.boot-logo-rocket{vertical-align:middle;filter:drop-shadow(0 6px 10px #0006);width:max(52px,min(11vw,104px));height:max(52px,min(11vw,104px));margin-right:.1em;animation:2.4s ease-in-out infinite floaty;display:inline-block}@keyframes floaty{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}#boot-moon{opacity:.9;filter:drop-shadow(0 10px 30px #5078dc66);z-index:0;width:max(120px,min(24vw,250px));height:max(120px,min(24vw,250px));animation:5s ease-in-out infinite floaty;position:absolute;top:6%;right:7%}.boot-inner{z-index:1;position:relative}.boot-sub{color:#aeb9e0;letter-spacing:1px;margin-top:14px;font-size:max(14px,min(2.4vw,20px));font-weight:700}.boot-bar{background:#ffffff1f;border-radius:999px;width:min(320px,70vw);height:14px;margin:30px auto 6px;overflow:hidden}#boot-progress{background:linear-gradient(90deg,#06d6a0,#4d96ff);border-radius:999px;width:0%;height:100%;transition:width .7s}.boot-btns{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:26px;display:flex}#boot-start,#boot-continue{font-family:var(--font);cursor:pointer;transition:transform var(--bounce);box-shadow:var(--shadow);border:5px solid #fff;border-radius:26px;font-weight:800}#boot-start{color:#fff;background:linear-gradient(160deg,#06d6a0,#4d96ff);padding:16px 44px;font-size:max(26px,min(5vw,40px))}#boot-start:before{content:"▶ "}#boot-continue{background:var(--panel);color:var(--ink);padding:14px 26px;font-size:max(16px,min(3vw,22px))}#boot-start:active,#boot-continue:active{transform:scale(.94)}#boot-teacher{color:#b9c4e4;font-family:var(--font);background:#ffffff0f;border:1px solid #ffffff38;border-radius:999px;margin-top:34px;padding:8px 16px;font-size:max(12px,min(1.7vw,14px));font-weight:700;text-decoration:none;transition:color .15s,background .15s,border-color .15s;display:inline-block}#boot-teacher:hover{color:#fff;background:#ffffff21;border-color:#ffffff73}@media (max-height:560px){.kid-hint,.kid-bubble{bottom:200px}}@media (max-width:720px){.kid-tool-lbl{display:none}.kid-logo{font-size:20px}}
