:root{--bg:#5bb8f0;--card:#fff;--ink:#17365c;--ink-soft:#17365c9e;--thin:#17365c29;--shadow:#1034604d;--frame:#17365c;--go:#3fc75a;--go-dark:#23913a;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#5bb8f0;--card:#fff;--ink:#17365c;--ink-soft:#17365c9e;--thin:#17365c29;--shadow:#1034604d;--frame:#17365c}}html,body{overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}body{background:linear-gradient(#6ec6f5 0%,#9adaf7 45%,#3fa7d9 100%)}.screen{background:radial-gradient(120% 80% at 50% 25%,#a9e2fb,#4aafe6)}.home-card{gap:14px;padding-bottom:20px}.logo-blocks{grid-template-columns:repeat(2,64px);gap:8px;margin-bottom:4px;display:grid;transform:rotate(-6deg)}.logo-blocks i{background:linear-gradient(color-mix(in srgb, var(--c), #fff 62%), color-mix(in srgb, var(--c), #fff 30%) 55%, color-mix(in srgb, var(--c), #fff 5%));width:64px;height:64px;box-shadow:0 6px 0 color-mix(in srgb, var(--c), #000 35%), inset 0 3px 0 #ffffff80;border-radius:16px;place-items:center;animation:2.6s ease-in-out infinite bob;display:grid}.logo-blocks i:nth-child(2){animation-delay:.2s}.logo-blocks i:nth-child(3){animation-delay:.4s}.logo-blocks i:nth-child(4){animation-delay:.6s}.logo-blocks svg{width:48px;height:48px}.wordmark{color:#fff;-webkit-text-stroke:7px #17365c;paint-order:stroke fill;text-shadow:0 5px #17365c;margin:0;font-size:clamp(2.8rem,13vw,3.6rem);font-weight:700;line-height:1}.wordmark span{color:#ffc21a}.tagline{color:#17365c;letter-spacing:.2em;text-transform:uppercase;margin:-4px 0 8px;font-size:.8rem;font-weight:600}.btn-play{background:linear-gradient(#6be07e, var(--go));color:#fff;width:100%;box-shadow:0 6px 0 var(--go-dark), inset 0 2px 0 #fff6;text-shadow:0 2px #0003;flex-direction:column;align-items:center;padding:14px;font-size:1.45rem;line-height:1.1;display:flex}.btn-play small{opacity:.92;font-size:.85rem;font-weight:500}.btn-play:active{box-shadow:0 2px 0 var(--go-dark)}.btn-ghost{color:var(--ink);background:#ffffff8c;box-shadow:inset 0 0 0 2px #fffc}.btn-alt{color:#3b2a00;background:#ffc21a;box-shadow:0 5px #c48f00}.hub{color:#17365c;opacity:.7;letter-spacing:.06em;font-size:.85rem;text-decoration:none}#app{padding:calc(6px + env(safe-area-inset-top)) 6px calc(14px + env(safe-area-inset-bottom));--board:min(calc(100vw - 24px), 500px);gap:8px;min-height:100dvh}.hudbar{grid-template-columns:1fr auto 1fr;align-items:center;padding:0 6px;display:grid}.hudbar .icon-btn{background:var(--card);color:var(--ink);box-shadow:0 4px 0 var(--shadow)}.lvl{color:#fff;background:#17365cd1;border-radius:999px;padding:6px 18px;font-size:1.1rem;font-weight:600}.score{color:var(--ink);font-variant-numeric:tabular-nums;box-shadow:0 3px 0 var(--shadow);background:#fff;border-radius:999px;justify-self:end;align-items:center;gap:5px;padding:4px 12px 4px 6px;font-weight:700;display:flex}.score svg{color:#f6c445;width:22px;height:22px}.panel{width:var(--board);background:linear-gradient(#fff,#e6f3fc);border-radius:20px;align-items:center;gap:10px;margin:0 auto;padding:8px 10px;display:flex;box-shadow:0 5px #10346047,inset 0 0 0 2px #c9e3f5}.moves{color:#fff;background:linear-gradient(#5e9bff,#2e6ce0);border-radius:16px;flex:none;place-items:center;width:74px;height:64px;line-height:1;display:grid;box-shadow:0 4px #1c4ba8,inset 0 2px #ffffff59}.moves small{letter-spacing:.08em;text-transform:uppercase;opacity:.9;margin-top:4px;font-size:.62rem;font-weight:600}.moves b{font-variant-numeric:tabular-nums;margin-top:-6px;font-size:1.9rem}.moves.low{background:linear-gradient(#ff8a7a,#e5483a);animation:.6s ease-in-out infinite alternate pulse;box-shadow:0 4px #a82b20,inset 0 2px #ffffff59}.goals{flex:1;justify-content:space-evenly;gap:6px;display:flex}.goal{flex-direction:column;align-items:center;gap:0;display:flex;position:relative}.goal>svg:first-child{filter:drop-shadow(0 2px #10346040);width:40px;height:40px}.goal b{font-variant-numeric:tabular-nums;color:var(--ink);font-size:1.15rem;line-height:1.1}.goal .check{width:22px;height:22px;display:none;position:absolute;bottom:2px;right:-8px}.goal.done b{visibility:hidden}.goal.done .check{animation:.35s cubic-bezier(.3,1.6,.5,1) pop;display:block}.goal.bump>svg:first-child{animation:.25s cubic-bezier(.3,1.6,.5,1) pop}.flyer{z-index:40;pointer-events:none;filter:drop-shadow(0 3px 2px #0000004d);width:32px;height:32px;position:fixed}.board-wrap{filter:drop-shadow(0 6px #0a2d5059);border-radius:16px;width:fit-content;margin:0 auto;position:relative}#board{touch-action:none;-webkit-tap-highlight-color:transparent;display:block}#board.loading{opacity:.35;transition:opacity .2s}.toast{color:#fff;-webkit-text-stroke:6px #17365c}.tools{grid-template-columns:repeat(3,72px);justify-content:center;gap:22px;margin-top:6px}.tool{width:72px;height:72px;color:var(--ink);background:radial-gradient(circle at 50% 30%,#fff,#dceefb);border-radius:50%;justify-content:center;padding:8px 0 6px;font-size:.66rem;box-shadow:0 5px #6e9cc4,inset 0 0 0 2px #b9d8ef}.tool svg{color:#2e6ce0;width:30px;height:30px}.tool:active{box-shadow:0 1px #6e9cc4,inset 0 0 0 2px #b9d8ef}.tool.armed{background:radial-gradient(circle at 50% 30%,#fff3b0,#f0b528);animation:.5s ease-in-out infinite alternate pulse;box-shadow:0 5px #b87a0a,inset 0 0 0 2px #fff3b0}.badge{background:var(--go);box-shadow:0 2px 0 var(--go-dark)}dialog{background:var(--card);color:var(--ink);box-shadow:0 10px 0 var(--shadow), inset 0 0 0 3px #c9e3f5}dialog::backdrop{background:#0a28468c}.rule-list li{background:#eef6fc}.rule-list li>b:first-child{background:#2e6ce0}
