:root{--ink:#3a2e39;--paper:#fff8e7;--paper2:#fdeecb;--leaf:#2f7d5b;--leaf2:#3f9a6f;--gold:#ffd66b;--gold2:#f2a33a;--coral:#ef6f5a;--sky:#9fe0ef;--muted:#6f6470;--display:"Baloo 2", ui-rounded, "Arial Rounded MT Bold", system-ui, sans-serif;--body:"Nunito", ui-rounded, system-ui, -apple-system, "Segoe UI", sans-serif;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px)}*{box-sizing:border-box}html,body{height:100%;color:var(--ink);font-family:var(--body);-webkit-tap-highlight-color:transparent;overscroll-behavior:none;background:#3f8a55;margin:0;font-weight:700;overflow:hidden}body{touch-action:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0}#game{position:absolute;inset:0}#game canvas{width:100%;height:100%;display:block}#ui{pointer-events:none;position:absolute;inset:0}#ui>*{pointer-events:none}button,a,input,summary,.pe{pointer-events:auto}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:none}:focus-visible{outline-offset:2px;border-radius:10px;outline:3px solid #1d6fe0}h1,h2,h3{font-family:var(--display);margin:0;line-height:1.05}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.card{background:var(--paper);border:3px solid var(--ink);box-shadow:0 6px 0 var(--ink), 0 16px 40px #14281e59;border-radius:24px}.btn{border:3px solid var(--ink);min-height:48px;font-family:var(--display);box-shadow:0 4px 0 var(--ink);color:var(--ink);background:#fff;border-radius:16px;justify-content:center;align-items:center;gap:8px;padding:8px 18px;font-size:18px;font-weight:700;text-decoration:none;transition:transform 60ms,box-shadow 60ms;display:inline-flex}.btn:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.btn.primary{background:var(--gold);min-height:58px;font-size:22px}.btn.green{background:#bfe6a8}.btn.small{min-height:40px;box-shadow:0 3px 0 var(--ink);border-width:2.5px;border-radius:13px;padding:4px 12px;font-size:15px}.btn .sub{font-family:var(--body);color:var(--muted);font-size:12px;font-weight:700;line-height:1.1;display:block}.scrim{padding:calc(12px + var(--sat)) 12px calc(12px + var(--sab));pointer-events:auto;touch-action:pan-y;background:radial-gradient(#1e3c2d26,#142d2399);justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow:auto}.menu{touch-action:pan-y;background:#fff8e7fd;gap:14px;width:min(100%,860px);max-height:100%;padding:20px 22px 16px;display:grid;overflow:auto}.brand{align-items:center;gap:14px;display:flex}.brand svg{flex:none}.brand h1{color:var(--leaf);letter-spacing:-.5px;font-size:clamp(30px,6vw,46px);font-weight:800}.brand p{color:var(--muted);margin:2px 0 0;font-size:15px}.kids{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.kid{background:var(--paper2);border:3px solid #0000;border-radius:18px;justify-items:center;gap:0;padding:8px 4px 6px;display:grid}.kid img{object-fit:contain;width:62px;height:72px}.kid b{font-family:var(--display);border-bottom:4px solid var(--kc,transparent);font-size:18px;line-height:1.15}.kid[aria-pressed=true]{border-color:var(--ink);box-shadow:0 4px 0 var(--kc,var(--ink)), 0 4px 0 1.5px var(--ink);background:#fff;transform:translateY(-2px)}.kidinfo{background:#fff;border:2.5px dashed #cdb98a;border-radius:16px;min-height:74px;padding:10px 14px;font-size:14.5px;line-height:1.35}.kidinfo b{font-family:var(--display);font-size:16px}.kidinfo .sp{background:var(--gold);border:2px solid var(--ink);border-radius:99px;margin-top:4px;padding:1px 9px;font-size:13px;display:inline-block}.modes{grid-template-columns:1.3fr 1fr 1fr;gap:10px;display:grid}.how{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px 14px;font-size:13.5px;display:flex}.how kbd{font:700 12px var(--body);border:2px solid var(--ink);color:var(--ink);background:#fff;border-bottom-width:4px;border-radius:7px;padding:1px 6px}.row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.toggles{flex-wrap:wrap;gap:6px;display:flex}.tog{border:2.5px solid var(--ink);background:#fff;border-radius:99px;min-height:36px;padding:3px 11px;font-size:13.5px}.tog[aria-pressed=true]{background:#bfe6a8}.tog[aria-pressed=false]{color:var(--muted);text-decoration:line-through}.foot{color:var(--muted);font-size:12.5px}.foot a{color:var(--leaf)}.hud{position:absolute;inset:0}.top{top:calc(8px + var(--sat));left:calc(10px + var(--sal));right:calc(10px + var(--sar));justify-content:space-between;align-items:flex-start;gap:8px;display:flex;position:absolute}.pill{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);background:#fff8e7f0;border-radius:18px;padding:4px 12px}.score{min-width:112px}.score .n{font-family:var(--display);font-size:30px;font-weight:800;line-height:1}.score .l{color:var(--muted);align-items:center;gap:6px;margin-top:2px;font-size:11.5px;display:flex}.pips{gap:2px;display:inline-flex}.pips i{background:#e6d9b8;border-radius:3px;width:7px;height:10px}.pips i.on{background:var(--gold2)}.timer{font-family:var(--display);text-align:center;min-width:84px;font-size:30px;font-weight:800;line-height:1.2}.timer.low{color:#c23b24;background:#ffe1d9;animation:1s infinite pulse}@keyframes pulse{50%{transform:scale(1.07)}}.right{justify-items:end;gap:6px;display:grid}.iconbtn{border:3px solid var(--ink);background:var(--paper);width:46px;height:46px;box-shadow:0 4px 0 var(--ink);border-radius:15px;place-items:center;font-size:20px;display:grid}.mini{border:3px solid var(--ink);box-shadow:0 3px 0 var(--ink);background:#86c56a;border-radius:12px;width:132px;height:87px;display:block}.feed{top:calc(66px + var(--sat));justify-items:center;gap:5px;width:min(92vw,520px);display:grid;position:absolute;left:50%;transform:translate(-50%)}.toast{color:#fff;border-left:8px solid var(--gold);text-align:center;background:#3a2e39e0;border-radius:99px;max-width:100%;padding:4px 13px;font-size:14px;animation:.25s ease-out drop}.toast.big{background:var(--gold);color:var(--ink);border:3px solid var(--ink);font-family:var(--display);font-size:18px}@keyframes drop{0%{opacity:0;transform:translateY(-10px)}}.hint{left:50%;bottom:calc(84px + var(--sab));border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);text-align:center;background:#fff;border-radius:16px;max-width:min(92vw,520px);padding:6px 14px;font-size:15px;position:absolute;transform:translate(-50%)}.bag{left:50%;bottom:calc(14px + var(--sab));align-items:center;gap:8px;display:flex;position:absolute;transform:translate(-50%)}.slot{background:#fff8e799;border:3px dashed #3a2e398c;border-radius:16px;place-items:center;width:54px;height:54px;display:grid}.slot.full{border-style:solid;border-color:var(--ink);background:var(--paper);box-shadow:0 4px 0 var(--ink)}.slot img{width:40px;height:40px}.keys{right:calc(12px + var(--sar));bottom:calc(14px + var(--sab));align-items:center;gap:8px;font-size:13px;display:flex;position:absolute}.keycap{border:2.5px solid var(--ink);box-shadow:0 3px 0 var(--ink);background:#fff8e7f0;border-radius:13px;align-items:center;gap:6px;padding:4px 10px;display:flex;position:relative;overflow:hidden}.keycap kbd{font:800 12px var(--body);border:2px solid var(--ink);background:#fff;border-radius:6px;padding:0 5px}.keycap .cd{background:var(--leaf2);height:4px;position:absolute;bottom:0;left:0}.keycap.wait{opacity:.6}.stats2{left:calc(10px + var(--sal));top:calc(72px + var(--sat));gap:4px;font-size:12.5px;display:grid;position:absolute}.stats2 span{color:#fff;background:#3a2e39b3;border-radius:99px;width:-moz-fit-content;width:fit-content;padding:2px 9px}.stats2 b{color:var(--gold)}.stickzone{pointer-events:auto;touch-action:none;width:55%;position:absolute;top:18%;bottom:0;left:0}.stick{background:#fff8e74d;border:3px solid #3a2e3980;border-radius:50%;width:112px;height:112px;margin:-56px 0 0 -56px;position:absolute}.stick i{background:var(--paper);border:3px solid var(--ink);width:50px;height:50px;box-shadow:0 3px 0 var(--ink);border-radius:50%;margin:-25px 0 0 -25px;position:absolute;top:50%;left:50%}.stick.rest{left:calc(76px + var(--sal));bottom:calc(22px + var(--sab));opacity:.75;margin:0 0 0 -56px;top:auto}.tbtns{right:calc(12px + var(--sar));bottom:calc(18px + var(--sab));width:176px;height:168px;position:absolute}.tbtn{border:3px solid var(--ink);background:var(--paper);box-shadow:0 5px 0 var(--ink);font-family:var(--display);touch-action:none;border-radius:50%;place-items:center;font-size:15px;font-weight:800;display:grid;position:absolute;overflow:hidden}.tbtn:active,.tbtn.down{box-shadow:0 1px 0 var(--ink);transform:translateY(4px)}.tbtn.dash{background:var(--gold);width:92px;height:92px;font-size:19px;bottom:0;right:0}.tbtn.toss{width:66px;height:66px;bottom:6px;right:100px}.tbtn.spec{background:#bfe6a8;width:66px;height:66px;font-size:13px;bottom:100px;right:18px}.tbtn .cool{transform-origin:bottom;background:#3a2e3973;position:absolute;inset:0}.hud.touch .bag{display:none}.hud.touch .hint{bottom:calc(204px + var(--sab));padding:5px 12px;font-size:13.5px}.hud.touch .mini{width:102px;height:67px}.hud.touch .feed{top:calc(100px + var(--sat));left:calc(10px + var(--sal));right:calc(124px + var(--sar));justify-items:start;width:auto;transform:none}.hud.touch .toast{text-align:left;border-radius:14px;font-size:12.5px}.hud.touch .stats2{top:calc(70px + var(--sat))}.hud.touch .stats2 span:not(:first-child){display:none}.tbtn .cool{background:#3a2e3947}.pausecard{text-align:center;gap:10px;width:min(100%,400px);padding:20px;display:grid}.pausecard h2{color:var(--leaf);font-size:30px}.results{pointer-events:auto;touch-action:pan-y;padding:16px 18px calc(16px + var(--sab));background:#fff8e7fd;align-content:start;gap:11px;display:grid;position:absolute;overflow:auto}.results.portrait{border-radius:24px 24px 20px 20px;inset:40% 8px 8px}.results.land{width:min(440px,42vw);top:14px;bottom:14px;right:14px}.results h2{color:var(--leaf);font-size:27px}.bigscore{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.bigscore .n{font-family:var(--display);font-size:50px;font-weight:800;line-height:.95}.badge{background:var(--coral);color:#fff;border:2.5px solid var(--ink);border-radius:99px;padding:1px 10px;font-size:13px;transform:rotate(-3deg)}.tiles{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.tile{border:2.5px solid var(--ink);text-align:center;background:#fff;border-radius:14px;padding:6px 8px}.tile b{font-family:var(--display);font-size:25px;line-height:1;display:block}.tile span{color:var(--muted);font-size:11.5px;line-height:1.15;display:block}.story{gap:3px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.story li{align-items:baseline;gap:8px;display:flex}.story i{border:2px solid var(--ink);width:21px;height:21px;font-size:11.5px;font-style:normal;font-family:var(--display);border-radius:50%;flex:none;place-items:center;display:grid}.note{color:var(--muted);margin:0;font-size:12px;line-height:1.35}.actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.actions .primary{grid-column:1/-1}.maplabel{left:12px;top:calc(10px + var(--sat));align-items:center;gap:8px;display:flex;position:absolute}.maplabel .pill{font-family:var(--display);font-size:17px}details.verse{border:2.5px solid var(--ink);background:#fff;border-radius:16px;padding:0}details.verse summary{font-family:var(--display);cursor:pointer;justify-content:space-between;align-items:center;padding:9px 14px;font-size:17px;list-style:none;display:flex}details.verse summary::-webkit-details-marker{display:none}details.verse[open] summary{border-bottom:2px dashed #d9c9a0}.versebody{-webkit-user-select:text;user-select:text;gap:10px;padding:10px 12px 12px;display:grid}.verseref{background:var(--paper2);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;font-size:15px;display:flex}.stars{justify-content:center;gap:2px;display:inline-flex}.stars svg{fill:#e6d9b8;stroke:var(--ink);stroke-width:1.6px;stroke-linejoin:round}.stars svg.on{fill:var(--gold)}.btn.party{background:#ffc9e2}.minis{grid-template-columns:repeat(5,1fr);gap:8px;display:grid}.mini-card{border:3px solid var(--ink);box-shadow:0 4px 0 var(--ink);background:#fff;border-radius:18px;justify-items:center;gap:2px;padding:10px 4px 8px;display:grid}.mini-card:active{box-shadow:0 1px 0 var(--ink);transform:translateY(3px)}.mini-card img{width:46px;height:46px}.mini-card b{font-family:var(--display);text-align:center;font-size:15.5px;line-height:1.1}.kidrow{left:50%;top:calc(70px + var(--sat));gap:6px;display:flex;position:absolute;transform:translate(-50%)}.kidrow.static{justify-content:center;position:static;transform:none}.kidscore{border:2.5px solid var(--ink);border-bottom:6px solid var(--kc);background:#fff8e7f0;border-radius:13px;align-items:center;gap:2px;padding:1px 8px 1px 2px;display:flex}.kidscore img{object-fit:contain;width:30px;height:35px}.kidscore b{font-family:var(--display);text-align:center;min-width:20px;font-size:19px}.kidscore.you{box-shadow:0 0 0 3px var(--gold)}.bigbanner{font-family:var(--display);color:var(--gold);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;text-shadow:0 5px 0 var(--ink);font-size:clamp(34px,9vw,64px);font-weight:800;animation:.3s ease-out bang;position:absolute;top:24%;left:50%;transform:translate(-50%)}.bigbanner.cold{color:var(--sky)}@keyframes bang{0%{opacity:0;transform:translate(-50%)scale(1.6)}}.newstickers{border:2.5px dashed var(--gold2);background:#fff3c2;border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;padding:6px 10px;font-size:14px;display:flex}.newstickers b{font-family:var(--display)}.stickerchip{border:2px solid var(--ink);background:#fff;border-radius:99px;align-items:center;gap:4px;padding:1px 10px 1px 3px;display:inline-flex}.stickerchip img{width:24px;height:24px}.stickergrid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;display:grid}.sticker{text-align:center;background:var(--paper2);color:var(--muted);border-radius:16px;justify-items:center;gap:2px;padding:8px 6px;font-size:12px;line-height:1.25;display:grid}.sticker b{font-family:var(--display);color:var(--ink);font-size:15px}.sticker .disc{background:#fff;border:3px dashed #cdb98a;border-radius:50%;place-items:center;width:62px;height:62px;display:grid}.sticker .disc img{filter:grayscale()opacity(.25);width:42px;height:42px}.sticker.have{background:#fff}.sticker.have .disc{border:3px solid var(--ink);background:var(--gold);box-shadow:0 3px 0 var(--ink);transform:rotate(-4deg)}.sticker.have .disc img{filter:none}@media (max-width:640px){.minis{grid-template-columns:repeat(3,1fr)}.stickergrid{grid-template-columns:repeat(2,1fr)}.kidscore img{width:24px;height:28px}.kidscore b{font-size:16px}}.lab{color:#d9e2ff;pointer-events:auto;touch-action:pan-y;-webkit-user-select:text;user-select:text;background:#161822ed;border-radius:14px;width:min(430px,94vw);padding:10px;font:500 11.5px/1.35 ui-monospace,SFMono-Regular,Menlo,monospace;position:absolute;top:8px;bottom:8px;left:8px;overflow:auto}.lab.closed{background:0 0;width:auto;padding:0;top:auto}.lab h3{color:#7fe0d0;text-transform:uppercase;letter-spacing:1px;margin:10px 0 4px;font:700 12px ui-monospace,monospace}.lab button{color:#fff;font:inherit;background:#2e3350;border-radius:6px;margin:0 4px 4px 0;padding:3px 8px}.lab button.on{color:#111;background:#7fe0d0}.lab table{border-collapse:collapse;width:100%}.lab td,.lab th{text-align:left;white-space:nowrap;padding:1px 4px}.lab tr.sel{background:#3a2550}.lab tr{cursor:pointer}.lab input{color:#fff;width:110px;font:inherit;background:#111;border:1px solid #555;border-radius:4px;padding:2px 4px}.lab .bar{vertical-align:middle;background:#ffd66b;border-radius:3px;height:6px;display:inline-block}.lab svg{background:#14161f;border-radius:8px;width:100%}@media (max-width:640px){.menu{border-radius:20px;gap:10px;padding:14px 12px 12px}.kids{gap:6px}.kid img{width:50px;height:58px}.kid b{font-size:15.5px}.modes{grid-template-columns:1fr 1fr}.modes .primary{grid-column:1/-1}.kidinfo{font-size:13.5px}.score .n,.timer{font-size:25px}.score{min-width:96px}.bigscore .n{font-size:42px}}@media (max-height:480px) and (orientation:landscape){.hud.touch .bag{top:calc(62px + var(--sat));right:calc(128px + var(--sar));flex-direction:row}.hud.touch .hint{top:auto;bottom:calc(10px + var(--sab))}.stats2{display:none}}@media (prefers-reduced-motion:reduce){.timer.low,.toast{animation:none}}
