:root{--bg: #fef6e4;--bg2: #fff;--panel: #ffffff;--fg: #2d2a4a;--muted: #8a7fb0;--accent: #ff7eb6;--accent2: #7c5cff;--sky: #4cc9f0;--sun: #ffd166;--ok: #06d6a0;--bad: #ff6b6b;--combo: #ff9f1c;--snake: #06d6a0;--radius: 22px;--shadow: 0 6px 0 rgba(45,42,74,.12), 0 10px 24px rgba(124,92,255,.14)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%}body{background:radial-gradient(circle at 15% 10%,rgba(76,201,240,.25),transparent 40%),radial-gradient(circle at 85% 15%,rgba(255,126,182,.25),transparent 42%),radial-gradient(circle at 50% 100%,rgba(255,209,102,.3),transparent 45%),var(--bg);background-attachment:fixed;color:var(--fg);font-family:"Baloo 2",Comic Sans MS,Segoe UI,system-ui,sans-serif;font-weight:600;touch-action:manipulation}.app{min-height:100%;display:flex;justify-content:center}.screen{width:100%;max-width:560px;padding:56px 18px 28px;display:flex;flex-direction:column;gap:16px}.screen--center{align-items:center;text-align:center;justify-content:center;min-height:70vh;gap:20px}h1{font-size:2.2rem;margin:0;color:var(--accent2);text-shadow:2px 2px 0 var(--sun)}.brand{display:flex;align-items:center;gap:14px}.brand--center{flex-direction:column;gap:10px}.appicon{display:block;flex:none;filter:drop-shadow(3px 4px 0 rgba(23,35,75,.18))}.brand--center .appicon{animation:brand-bob 3.2s ease-in-out infinite}@keyframes brand-bob{0%,to{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-6px) rotate(2deg)}}@media (prefers-reduced-motion: reduce){.brand--center .appicon{animation:none}}h3{margin:6px 0;font-size:1.15rem;color:var(--accent2)}.muted{color:var(--muted);margin:0}.btn{background:var(--accent);color:#fff;border:0;border-radius:var(--radius);padding:16px 20px;font-size:1.15rem;font-weight:800;cursor:pointer;text-decoration:none;text-align:center;box-shadow:var(--shadow);transition:transform .08s}.btn:active{transform:translateY(3px);box-shadow:0 2px #2d2a4a1f}.btn--big{padding:20px;font-size:1.35rem;background:linear-gradient(135deg,var(--accent),var(--accent2))}.btn--ghost{background:#fff;color:var(--accent2);border:3px solid var(--accent2);box-shadow:none}.chips{display:flex;flex-wrap:wrap;gap:10px}.chips--tables{display:grid;grid-template-columns:repeat(9,1fr);gap:8px;flex-wrap:nowrap}.chips--tables .chip{padding:10px 0;text-align:center}.chip{background:#fff;color:var(--fg);border:0;border-radius:999px;padding:10px 16px;font-size:1rem;font-weight:700;box-shadow:var(--shadow)}.chip--sel{cursor:pointer;border:3px solid transparent}.chip--sel.is-on{border-color:var(--accent2);background:var(--sky);color:#fff}.chip--combo{background:var(--combo);color:#fff;font-weight:800}.chip--score{background:var(--sun);color:#3b2600;font-weight:800}.field{background:var(--panel);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.row{display:flex;flex-wrap:wrap;gap:12px}.row label{display:flex;flex-direction:column;gap:4px;color:var(--muted);font-size:.9rem}input{background:#fff;color:var(--fg);border:3px solid #ffe0ef;border-radius:14px;padding:12px;font-size:1.05rem;font-weight:700;width:100%}input:focus{outline:none;border-color:var(--accent)}input[type=number]{width:92px}.bigname{font-size:1.6rem;text-align:center;max-width:300px;border-color:var(--sky)}.linkbox{display:flex;flex-direction:column;gap:4px}.linkbox label{color:var(--muted);font-size:.9rem}.game{gap:18px}.game__top{display:flex;justify-content:space-between;align-items:center}.countdown{font-size:6rem;font-weight:900;color:var(--accent);text-shadow:3px 3px 0 var(--sun);animation:pop .5s}@keyframes pop{0%{transform:scale(.3);opacity:0}}.question{display:flex;align-items:center;justify-content:center;gap:12px;font-size:clamp(2.4rem,7vw,4rem);font-weight:900;padding:20px 0;color:var(--accent2)}.question__eq{color:var(--muted)}.question__input{min-width:80px;color:var(--accent);border-bottom:5px solid var(--sun);text-align:center}.flash-ok{animation:flashOk .45s}.flash-bad{animation:flashBad .45s}@keyframes flashOk{0%{background:#06d6a04d}to{background:transparent}}@keyframes flashBad{0%,50%{background:#ff6b6b59;transform:translate(-5px)}25%{transform:translate(5px)}to{background:transparent;transform:none}}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.keypad__key{background:#fff;color:var(--accent2);border:0;border-radius:18px;padding:22px 0;font-size:1.7rem;font-weight:900;cursor:pointer;box-shadow:var(--shadow);transition:transform .06s}.keypad__key:active{transform:translateY(3px);background:var(--sky);color:#fff}.keypad__key--del{color:var(--bad)}.keypad__ok{grid-column:1 / -1;background:linear-gradient(135deg,var(--ok),var(--sky));color:#fff;border:0;border-radius:18px;padding:20px 0;font-size:1.4rem;font-weight:900;cursor:pointer;box-shadow:var(--shadow)}.keypad__ok:active{transform:translateY(3px)}.track{position:relative;height:80px;margin-top:6px;border-radius:var(--radius);overflow:hidden;background:linear-gradient(180deg,#bdeeff,#a0e8af 55%);box-shadow:var(--shadow)}.track--danger{animation:pulseDanger .5s infinite alternate}@keyframes pulseDanger{to{background:linear-gradient(180deg,#ffd0d0,#ffb3b3 55%)}}.track__ground{position:absolute;bottom:0;left:0;right:0;height:22px;background:#7bd389}.track--danger .track__ground{background:#ff9b9b}.snakebody{position:absolute;bottom:20px;left:2%;height:26px;background:var(--snake);border-radius:14px 16px 16px 14px;box-shadow:inset -3px -4px #0000001f;background-image:repeating-linear-gradient(90deg,rgba(0,0,0,.08) 0 2px,transparent 2px 16px)}.snakebody--recoil{transition:width .35s cubic-bezier(.4,1.4,.6,1)}.snake__head{position:absolute;bottom:-2px;right:-22px;width:32px;height:30px;--mouth: 0}.snake__jaw{position:absolute;right:0;width:32px;height:16px;background:#05b386;transform-origin:0% 50%;transition:transform .12s ease-out}.snake__jaw--top{top:0;border-radius:50% 60% 10% 10%/80% 80% 10% 10%;transform:rotate(calc(var(--mouth) * -24deg))}.snake__jaw--bottom{bottom:0;border-radius:10% 10% 60% 50%/10% 10% 80% 80%;background:#049c76;transform:rotate(calc(var(--mouth) * 24deg))}.snake__head.is-open:before{content:"";position:absolute;right:2px;top:7px;width:16px;height:16px;background:#b3123a;border-radius:50%;opacity:var(--mouth);z-index:-1}.snake__eye{position:absolute;top:4px;right:7px;width:7px;height:7px;border-radius:50%;background:#fff;z-index:3}.snake__eye:after{content:"";position:absolute;top:2px;right:1px;width:3px;height:3px;border-radius:50%;background:#2d2a4a}.snake__tongue{position:absolute;top:50%;left:6px;height:3px;width:calc(6px + var(--mouth) * 22px);background:var(--bad);border-radius:0 2px 2px 0;transform:translateY(-50%);transform-origin:0% 50%;opacity:calc(.3 + var(--mouth) * .7);transition:width .12s ease-out}.snake__tongue:after{content:"";position:absolute;right:-4px;top:-2px;border-left:4px solid var(--bad);border-top:3.5px solid transparent;border-bottom:3.5px solid transparent}@keyframes tongue{50%{width:15px}}.mouse{position:absolute;bottom:22px;right:12px;font-size:2rem;animation:wiggle 1s infinite}@keyframes wiggle{50%{transform:translateY(-4px) rotate(-8deg)}}.score{font-size:4rem;font-weight:900;color:var(--ok);text-shadow:2px 2px 0 var(--sun)}.stars{font-size:2rem;letter-spacing:6px}.detail{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}.detail li{background:#fff;border-radius:14px;padding:12px 14px;box-shadow:var(--shadow)}.detail li.ok{border-left:6px solid var(--ok)}.detail li.bad{border-left:6px solid var(--bad)}.detail .given{color:var(--bad);font-size:.9rem}.card{background:#fff;border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}.card__head{display:flex;justify-content:space-between;flex-wrap:wrap;gap:6px;margin-bottom:6px}.card__head span{color:var(--muted);font-size:.9rem}.insight{margin:6px 0;color:var(--accent2);font-size:1rem;font-weight:700}.runs{margin:8px 0 0;padding-left:22px;display:flex;flex-direction:column;gap:6px}.kbd-hint{margin:10px 0 0;font-size:.8rem;color:var(--muted);text-align:center}.kbd-hint b{color:var(--accent2);background:#7c5cff1a;border-radius:6px;padding:1px 6px}.chip--mute{cursor:pointer;margin-left:auto;padding:10px 14px}.mouse{transition:transform .25s ease,opacity .25s ease}.mouse--eaten{animation:mouseEaten .5s forwards}@keyframes mouseEaten{0%{transform:scale(1) rotate(0);opacity:1}40%{transform:scale(1.4) rotate(-12deg)}to{transform:scale(0) rotate(40deg);opacity:0}}.snakebody--chomp{transition:width .35s cubic-bezier(.5,-.4,.3,1.6)}.snakebody--chomp .snake__head{animation:chomp .18s 2 alternate}@keyframes chomp{0%{transform:scaleX(1)}to{transform:scaleX(1.25) scaleY(.85)}}.track--eaten{animation:shake .4s}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.boom{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;pointer-events:none;display:flex;align-items:center;justify-content:center;overflow:hidden}.boom__flash{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;animation:boomFlash .5s ease-out forwards}@keyframes boomFlash{0%{opacity:.9}15%{opacity:.7}to{opacity:0}}.boom__shock{position:absolute;width:40px;height:40px;border-radius:50%;border:10px solid var(--sun);box-shadow:0 0 0 10px var(--accent),0 0 40px 10px var(--combo);animation:boomShock .9s cubic-bezier(.2,.7,.3,1) forwards}@keyframes boomShock{0%{transform:scale(.2);opacity:1;border-width:14px}to{transform:scale(26);opacity:0;border-width:0}}.boom__core{position:relative;font-size:10rem;line-height:1;filter:drop-shadow(0 0 24px var(--sun));animation:boomCore 1.2s cubic-bezier(.3,-.2,.3,1.4) forwards}@keyframes boomCore{0%{transform:scale(0) rotate(-20deg);opacity:0}25%{transform:scale(1.6) rotate(8deg);opacity:1}55%{transform:scale(1.2) rotate(-4deg)}to{transform:scale(1.35) rotate(0);opacity:.95}}.boom__debris{position:absolute;font-size:3rem;opacity:0}.boom__debris--1{animation:debris1 1.1s ease-out forwards}.boom__debris--2{animation:debris2 1.1s ease-out forwards}.boom__debris--3{animation:debris3 1.2s ease-out forwards}.boom__debris--4{animation:debris4 1.2s ease-out forwards}.boom__debris--5{animation:debris5 1.3s ease-out forwards}.boom__debris--6{animation:debris6 1.3s ease-out forwards}@keyframes debris1{0%{opacity:1;transform:translate(0) scale(1) rotate(0)}to{opacity:0;transform:translate(-280px,-200px) scale(.4) rotate(-220deg)}}@keyframes debris2{0%{opacity:1;transform:translate(0) scale(1) rotate(0)}to{opacity:0;transform:translate(300px,-170px) scale(.4) rotate(200deg)}}@keyframes debris3{0%{opacity:1;transform:translate(0) scale(1) rotate(0)}to{opacity:0;transform:translate(-240px,210px) scale(.4) rotate(-160deg)}}@keyframes debris4{0%{opacity:1;transform:translate(0) scale(1) rotate(0)}to{opacity:0;transform:translate(260px,230px) scale(.4) rotate(180deg)}}@keyframes debris5{0%{opacity:1;transform:translate(0) scale(1) rotate(0)}to{opacity:0;transform:translateY(-320px) scale(.5) rotate(90deg)}}@keyframes debris6{0%{opacity:1;transform:translate(0) scale(1) rotate(0)}to{opacity:0;transform:translate(-20px,320px) scale(.5) rotate(-90deg)}}.boom__text{position:absolute;bottom:22%;font-size:2.4rem;font-weight:800;color:#fff;background:var(--accent2);padding:10px 28px;border-radius:999px;box-shadow:0 6px #0003,0 0 30px var(--accent);animation:boomText .9s .25s cubic-bezier(.3,-.4,.3,1.6) both}@keyframes boomText{0%{transform:scale(0) rotate(-8deg);opacity:0}60%{transform:scale(1.2) rotate(3deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}.run>summary{cursor:pointer;list-style:none;padding:4px 0}.run>summary::-webkit-details-marker{display:none}.run>summary:before{content:"▸ ";color:var(--accent2)}.run[open]>summary:before{content:"▾ "}.run__meta{font-size:.8rem;margin:2px 0 8px}.qlist{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.qlist .q{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;background:var(--bg2);border-radius:12px;padding:6px 12px;font-size:.95rem;border-left:5px solid var(--ok)}.qlist .q.bad{border-left-color:var(--bad)}.qlist .q__calc{font-weight:700;color:var(--fg)}.qlist .q__given{color:var(--fg);font-size:.9rem}.qlist .q__time{font-size:.8rem}.langpicker{position:fixed;top:12px;right:12px;z-index:50}.langpicker select{font-family:inherit;font-weight:700;font-size:.95rem;color:var(--fg);background:var(--panel);border:2px solid var(--accent2);border-radius:999px;padding:6px 14px;cursor:pointer;box-shadow:var(--shadow)}.langpicker select:focus{outline:3px solid var(--sky)}html[dir=rtl] .langpicker{right:auto;left:12px}html[dir=rtl] .game__top .chip--mute{margin-left:0;margin-right:auto}.result-head{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;margin-bottom:8px}@media (min-width: 760px){.screen.game{max-width:680px}.screen.game .keypad{gap:16px}.screen.game .keypad__key{font-size:1.8rem;padding:22px 0}.screen.game .track{height:110px}.screen.game .snakebody{height:34px}.score{font-size:5rem}}@media (max-width: 560px){.screen.game{gap:10px;padding-top:44px;padding-bottom:12px}.screen.game .question{padding:8px 0}.screen.game .keypad{gap:8px}.screen.game .keypad__key{padding:13px 0;font-size:1.35rem}.screen.game .keypad__ok{padding:14px 0;font-size:1.2rem}.screen.game .kbd-hint{display:none}.screen.game .track{height:72px;margin-top:2px}}@media (max-width: 380px){.screen.game{padding-top:40px}.screen.game .keypad__key{padding:11px 0;font-size:1.25rem}.screen.game .keypad__ok{padding:12px 0}.screen.game .track{height:60px}.langpicker select{padding:5px 10px;font-size:.85rem}}@media (max-height: 500px) and (orientation: landscape){.screen{padding-top:44px}.question{padding:8px 0;font-size:clamp(1.8rem,6vh,2.6rem)}.keypad{gap:8px}.keypad__key{padding:10px 0}.btn--big,.keypad__ok{padding:10px}.track{height:54px}.kbd-hint{display:none}}.linkrow{display:flex;gap:8px;align-items:stretch}.linkrow input{flex:1;min-width:0}.copybtn{flex:0 0 auto;border:0;cursor:pointer;background:var(--accent2);color:#fff;font-weight:700;font-family:inherit;border-radius:12px;padding:0 14px;font-size:.9rem;box-shadow:var(--shadow);white-space:nowrap}.copybtn:active{transform:translateY(2px)}.copybtn.is-copied{background:var(--ok)}.qrbox{display:flex;flex-direction:column;align-items:center;gap:4px;margin-top:12px}.qrbox img{border-radius:12px;background:#fff;padding:8px;box-shadow:var(--shadow);image-rendering:pixelated}.qrbox__hint{font-size:.8rem;color:var(--muted)}.error-msg{margin-top:12px;text-align:center;font-weight:700;color:#fff;background:var(--bad);border-radius:12px;padding:10px 14px;box-shadow:var(--shadow)}.slider-row{display:flex;align-items:center;gap:10px;margin-top:4px}.slider-emoji{font-size:1.4rem}.slider{flex:1;-webkit-appearance:none;-moz-appearance:none;appearance:none;height:12px;border-radius:999px;background:linear-gradient(90deg,var(--ok),var(--sun),var(--bad));box-shadow:var(--shadow);cursor:pointer;outline:none}.slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:28px;height:28px;border-radius:50%;background:#fff;border:4px solid var(--accent2);box-shadow:var(--shadow);cursor:pointer}.slider::-moz-range-thumb{width:28px;height:28px;border-radius:50%;background:#fff;border:4px solid var(--accent2);box-shadow:var(--shadow);cursor:pointer}.slider:focus-visible{box-shadow:0 0 0 3px var(--sky),var(--shadow)}.slider-value{min-width:48px;text-align:center;font-weight:900;color:var(--accent2);background:var(--panel);border-radius:999px;padding:2px 10px;box-shadow:var(--shadow)}
