:root{--bg: #1a2a1a;--panel: #24382440;--dirt: #6b4a2b;--dirt-dark: #4a3018;--grass: #3c7a3c;--mole: #9b6a3f;--mole-dark: #6e4a28;--bomb: #2a2a2a;--accent: #ffd24a;--text: #eef3ea;--muted: #9bb09b}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;background:radial-gradient(circle at 50% 0%,#234023,var(--bg));color:var(--text);font-family:Segoe UI,system-ui,sans-serif;user-select:none}#app{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px;gap:14px}h1{margin:0;font-size:28px;letter-spacing:1px;color:var(--accent);text-shadow:0 2px 0 #00000060}.hud{display:flex;gap:18px;flex-wrap:wrap;justify-content:center;background:var(--panel);border:1px solid #ffffff14;border-radius:12px;padding:10px 18px;font-variant-numeric:tabular-nums}.hud .stat{display:flex;flex-direction:column;align-items:center;min-width:64px}.hud .stat b{font-size:22px;color:var(--accent)}.hud .stat span{font-size:11px;color:var(--muted);text-transform:uppercase;letter-spacing:1px}#board{display:block;border-radius:16px;background:linear-gradient(#2b4a2b,#1f351f);box-shadow:0 10px 30px #00000060,inset 0 0 0 2px #ffffff10;touch-action:none;cursor:pointer}.swatches{display:flex;gap:10px;align-items:center;justify-content:center;flex-wrap:wrap}.swatch{width:44px;height:44px;border-radius:10px;padding:0;background:var(--c);border:2px solid #ffffff30;color:#fff;font-weight:800;font-size:16px;text-shadow:0 1px 2px #00000080;cursor:pointer;opacity:.55;transition:opacity .1s,transform .1s,box-shadow .1s}.swatch.active{opacity:1;transform:translateY(-2px) scale(1.08);box-shadow:0 0 0 3px #ffffff70,0 4px 10px #00000060}.swatch:hover{opacity:.85}.controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:center}button,select{font:inherit;border:none;border-radius:10px;padding:9px 16px;background:#34553480;color:var(--text);border:1px solid #ffffff20;cursor:pointer}button.primary{background:var(--accent);color:#2a2200;font-weight:700}button:hover{filter:brightness(1.1)}.hint{font-size:12px;color:var(--muted);text-align:center;max-width:460px;line-height:1.5}.overlay{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#0b160bcc;backdrop-filter:blur(3px);z-index:10}.overlay.hidden{display:none}.overlay .card{background:#23381e;border:1px solid #ffffff20;border-radius:16px;padding:28px 34px;text-align:center;max-width:380px}.overlay .big{font-size:40px;color:var(--accent);margin:6px 0}
