.tactical-cabinet{--teal-1:#f9fefe;--teal-2:#f0fcfb;--teal-3:#d8fafa;--teal-7:#64d1d2;--teal-9:#00b0b2;--teal-10:#00a3a5;--teal-11:#007e80;--teal-12:#003f40;--grass-3:#e9f6e9;--grass-9:#46a758;--tomato-3:#feebe7;--tomato-9:#e54d2e;--tomato-11:#d13415;--sage-2:#f7f9f8;--sage-6:#dde3e0;--sage-11:#5f6563;--sage-12:#1a211e;--star:#fbbd05;--panel:#fff;--ink:var(--sage-12);--ink-soft:var(--sage-11);--brand:var(--teal-9);--brand-hover:var(--teal-10);--brand-deep:var(--teal-11);--border:var(--sage-6);--shadow:0 10px 30px -12px #003f4040;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.tactical-cabinet .game-marquee{margin-bottom:12px}.tactical-cabinet .game-marquee h1{font-size:clamp(18px,4.4vw,32px)}.button{background:var(--brand);color:#fff;cursor:pointer;font:inherit;border:0;border-radius:11px;align-items:center;gap:6px;padding:9px 16px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.button:hover{background:var(--brand-hover)}.button.ghost{background:#ffffff1f;box-shadow:inset 0 0 0 1.5px #fff6}.tactical-game{border:1px solid var(--border);background:var(--panel);width:100%;box-shadow:var(--shadow);border-radius:20px;padding:14px 14px 16px}.tactical-hud{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:10px;display:flex}.room{align-items:center;gap:7px;font-size:15px;font-weight:800;display:flex}.room .number{color:var(--brand-deep);font-variant-numeric:tabular-nums}.grow{flex:auto}.stats{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.stat{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.stat b{color:var(--ink)}.soft{opacity:.6}.stars{color:var(--star);letter-spacing:1px;font-size:18px;line-height:1}.stars .off,.big-stars .off{color:var(--border)}.rag{color:var(--ink-soft);align-items:center;gap:6px;font-size:13px;font-weight:600;display:inline-flex}.rag.hidden,.tip.hidden{display:none}.pips{gap:3px;display:inline-flex}.pip{background:var(--border);border-radius:50%;width:11px;height:11px}.pip.full{background:var(--brand)}.rag.full{color:var(--tomato-11)}.rag.full .pip.full{background:var(--tomato-9);animation:1s ease-in-out infinite rag-pulse}@keyframes rag-pulse{50%{box-shadow:0 0 0 4px #e54d2e59}}.board-wrap{justify-content:center;display:flex}#board{touch-action:manipulation;user-select:none;border-radius:14px;width:100%;max-width:600px;height:auto;display:block}.tip{border:1px solid var(--border);background:var(--teal-2);color:var(--ink-soft);border-radius:12px;align-items:flex-start;gap:8px;margin-top:10px;padding:9px 12px;font-size:13px;line-height:1.45;display:flex}.tip .new{background:var(--brand);color:#fff;letter-spacing:.04em;white-space:nowrap;border-radius:999px;flex:none;padding:2px 7px;font-size:11px;font-weight:800}.controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;display:flex}.dpad{grid-template:repeat(3,44px)/repeat(3,44px);gap:6px;display:grid}.dpad button,.dpad .center{border:1px solid var(--border);background:var(--panel);color:var(--brand-deep);border-radius:11px;justify-content:center;align-items:center;display:flex}.dpad button{cursor:pointer;font:inherit;touch-action:manipulation;font-size:20px}.dpad button:hover{background:var(--teal-2)}.dpad .up{grid-area:1/2}.dpad .left{grid-area:2/1}.dpad .right{grid-area:2/3}.dpad .down{grid-area:3/2}.dpad .center{color:var(--ink-soft);border-style:dashed;grid-area:2/2;font-size:12px;font-weight:800}.action-buttons{flex-wrap:wrap;gap:8px;display:flex}.action-button{border:1px solid var(--border);background:var(--panel);color:var(--ink);cursor:pointer;font:inherit;touch-action:manipulation;border-radius:11px;align-items:center;gap:6px;padding:9px 13px;font-size:13px;font-weight:700;display:inline-flex}.action-button:hover{background:var(--teal-2)}.action-button:disabled{opacity:.4;cursor:default}.keys{color:var(--ink-soft);text-align:center;margin-top:10px;font-size:11.5px}kbd{border:1px solid var(--border);background:var(--sage-2);color:var(--ink);font:inherit;border-bottom-width:2px;border-radius:5px;padding:1px 5px;font-size:11px}.overlay{z-index:20;backdrop-filter:blur(3px);background:#031a1a8c;justify-content:center;align-items:center;padding:20px;display:none;position:fixed;inset:0}.overlay.show{display:flex}.card{border:1px solid var(--border);background:var(--panel);width:100%;max-width:360px;box-shadow:var(--shadow);color:var(--ink);text-align:center;border-radius:20px;padding:26px 24px;animation:.28s cubic-bezier(.2,1.3,.5,1) both pop}@keyframes pop{0%{opacity:0;transform:scale(.85)}}.card .big{margin-bottom:6px;font-size:44px;line-height:1}.card h2{margin:2px 0 4px;font-size:22px}.card .sub{color:var(--ink-soft);margin:0 0 14px;font-size:14px}.card .big-stars{color:var(--star);letter-spacing:4px;margin:6px 0 10px;font-size:34px}.card .line{color:var(--ink-soft);margin:2px 0;font-size:14px}.card .line b{color:var(--ink)}.card .actions{flex-wrap:wrap;justify-content:center;gap:9px;margin-top:16px;display:flex}@media (prefers-color-scheme:dark){.tactical-cabinet{--panel:#132320;--ink:#e7efec;--ink-soft:#9db0aa;--border:#25352f;--shadow:0 12px 34px -14px #0009}.tip,kbd{background:#0f1e1b}}@media (prefers-reduced-motion:reduce){#squeak,#bucket,.card,.rag.full .pip.full{transition:none!important;animation:none!important}}@media (width<=400px){.dpad{grid-template:repeat(3,40px)/repeat(3,40px)}}
