:root{--raised:inset 0 1.5px 0 #ffffff8c, inset 1px 0 0 #ffffff2e, inset -1px 0 0 #00000014, inset 0 -4px 0 #0000002e, 0 1px 1px #0000002e, 0 4px 8px -2px #00000047;--raised-strong:inset 0 2px 0 #fff9, inset 1px 0 0 #fff3, inset -1px 0 0 #0000001a, inset 0 -5px 0 #00000038, 0 2px 2px #0003, 0 8px 14px -4px #00000059;--pressed:inset 0 3px 5px #0003, inset 0 1px 1px #0000001f, inset 0 -1px 0 #ffffff4d;--tray:inset 0 4px 10px #00000042, inset 0 -1px 0 #ffffff4d, 0 0 0 1px #ffffff59, 0 1px 0 #fff6, 0 14px 30px -10px #00000059;--sheen:radial-gradient(ellipse 70% 50% at 30% 18%, #ffffff47, #fff0 70%), linear-gradient(180deg, #ffffff29, #fff0 55%);--ambient:radial-gradient(ellipse 70% 45% at 50% 28%, #fff8e673, transparent 70%), radial-gradient(ellipse 120% 60% at 50% 110%, #00000014, transparent 70%);--shade:radial-gradient(ellipse 120% 95% at 50% 40%, transparent 52%, #0000002e)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ambient:radial-gradient(ellipse 80% 60% at 50% 32%, #ffffff0f, transparent 70%);--shade:radial-gradient(ellipse 130% 100% at 50% 40%, transparent 55%, #00000059);--sheen:linear-gradient(180deg, #ffffff1a, #fff0 55%)}}:root[data-theme=dark]{--ambient:radial-gradient(ellipse 80% 60% at 50% 32%, #ffffff0f, transparent 70%);--shade:radial-gradient(ellipse 130% 100% at 50% 40%, transparent 55%, #00000059);--sheen:linear-gradient(180deg, #ffffff1a, #fff0 55%)}@keyframes art-pop{0%{opacity:0;transform:scale(.4)}70%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}@keyframes art-pulse{0%{transform:scale(1)}45%{transform:scale(1.14)}to{transform:scale(1)}}@keyframes art-shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-5px)}40%,80%{transform:translate(5px)}}@keyframes art-press{0%{transform:scale(1)}40%{transform:scale(.9)}to{transform:scale(1)}}.art-pop{animation:.22s ease-out art-pop}.art-pulse{animation:.22s ease-out art-pulse}.art-shake{animation:.32s ease-in-out art-shake}.art-press{animation:.18s ease-out art-press}@media (prefers-reduced-motion:reduce){.art-pop,.art-pulse,.art-shake,.art-press{animation:none}}.sound-toggle{background:var(--btn,#00000040);width:36px;min-width:36px;height:36px;color:var(--ink,#fff);cursor:pointer;border:0;border-radius:50%;place-items:center;padding:0;display:inline-grid}.sound-toggle svg{width:20px;height:20px}.sound-toggle[aria-pressed=true]{opacity:.7}.sound-toggle:focus-visible{outline:3px solid var(--focus,#ffd54a);outline-offset:2px}:root{--bg:#0f1a14;--ink:#e9f5ec;--muted:#9bb5a3;--board:#1c3326;--board-alt:#21392b;--body:#5fd068;--head:#b8f5a0;--dead:#e05252;--food:#ff6b5b;--btn:#ffffff1a;--btn-on:#5fd068;--btn-on-ink:#0f1a14;--dialog:#1d3025;--focus:#ffd54a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:light){:root:not([data-theme=dark]){--bg:#eaf3ec;--ink:#16261d;--muted:#4f6b58;--board:#cfe3d4;--board-alt:#c5dbca;--body:#2f9e44;--head:#1b6e2c;--btn:#00000014;--dialog:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}:root[data-theme=light]{--bg:#eaf3ec;--ink:#16261d;--muted:#4f6b58;--board:#cfe3d4;--board-alt:#c5dbca;--body:#2f9e44;--head:#1b6e2c;--btn:#00000014;--dialog:#fff;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--ambient), var(--shade), var(--grain,none), var(--bg);color:var(--ink);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:none;font:15px/1.3 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;overflow:hidden}#app{--size:min(calc(100vw - 24px), calc(100dvh - 90px), 540px);flex-direction:column;justify-content:center;align-items:center;gap:10px;height:100dvh;padding:8px 12px;display:flex}@media (hover:none){#app{--size:min(calc(100vw - 24px), calc(100dvh - 250px), 540px)}}.bar{width:var(--size);align-items:center;gap:8px;display:flex}.bar h1{margin:0 auto 0 0;font-size:24px}@media (max-width:420px){.bar{flex-wrap:wrap;justify-content:center;gap:6px}.bar h1{text-align:center;flex-basis:100%;margin:0}.btn{padding:7px 8px}}.score{text-align:center;min-width:52px}.score .label{text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700;display:block}.score .value{font-variant-numeric:tabular-nums;font-size:18px;font-weight:800}.btn{font:inherit;color:var(--ink);background:var(--btn);cursor:pointer;border:0;border-radius:8px;min-height:36px;padding:7px 10px;font-weight:700}.btn[aria-pressed=true],.btn.primary{background:var(--btn-on);color:var(--btn-on-ink)}.btn:disabled{opacity:.4;cursor:default}.btn:focus-visible,.arrow:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.stage{width:var(--size);height:var(--size);position:relative}canvas{box-shadow:var(--tray), 0 0 0 1px #ffffff1a}.burst{border:3px solid var(--food);pointer-events:none;border-radius:50%;position:absolute}.board{border-radius:10px;width:100%;height:100%;display:block}.overlay{background:#00000059;border-radius:10px;place-items:center;padding:12px;display:grid;position:absolute;inset:0}.overlay[hidden]{display:none}.overlay.start{pointer-events:none;background:0 0;align-items:end;padding-bottom:8%}.dialog{background:var(--dialog);color:var(--ink);text-align:center;border-radius:12px;flex-direction:column;gap:10px;max-width:300px;padding:18px 22px;display:flex}.dialog h2{margin:0;font-size:22px}.dialog p{color:var(--muted);margin:0}.pad{grid-template-rows:repeat(2,56px);grid-template-columns:repeat(3,64px);gap:6px;display:none}@media (hover:none){.pad{display:grid}}.arrow{color:var(--ink);background:var(--btn);cursor:pointer;touch-action:none;border:0;border-radius:12px;font-size:22px}.arrow.up{grid-area:1/2}.arrow.left{grid-area:2/1}.arrow.down{grid-area:2/2}.arrow.right{grid-area:2/3}@media (max-height:480px){#app{--size:min(calc(100dvh - 16px), calc(100vw - 190px));grid-template-columns:var(--size) 160px;grid-template-rows:auto 1fr;place-content:center;gap:8px 16px;display:grid}.stage{grid-area:1/1/3}.bar{flex-wrap:wrap;grid-area:1/2;justify-content:center;width:auto}.bar h1{text-align:center;flex-basis:100%;margin:0;font-size:20px}.pad{grid-area:2/2;grid-template-rows:repeat(2,42px);grid-template-columns:repeat(3,48px);place-self:start center}}
