:root{--bg: #f0f0f0;--fg: #111;--hud-bg: #fff;--hud-shadow: 0 1px 4px rgba(0, 0, 0, .08);--cell-hidden-1: #cfd2d6;--cell-hidden-2: #b3b7bd;--cell-hidden-edge: #8a8e95;--cell-revealed: #e6e7ea;--cell-grid: #b8bcc2;--cell-explode: #ff5252;--accent: #2a6df4;--button: #fff;--button-fg: #111;--button-active: #d8dbe0;--focus: #2a6df4}@media(prefers-color-scheme:dark){:root{--bg: #000;--fg: #f5f5f7;--hud-bg: #1c1c1e;--hud-shadow: 0 1px 4px rgba(0, 0, 0, .6);--cell-hidden-1: #6a6e76;--cell-hidden-2: #3e4148;--cell-hidden-edge: #18191c;--cell-revealed: #000;--cell-grid: #2c2c2e;--cell-explode: #ff453a;--accent: #0a84ff;--button: #2c2c2e;--button-fg: #f5f5f7;--button-active: #3a3a3c;--focus: #0a84ff}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;height:100%;height:100dvh;overflow:hidden;overscroll-behavior:none;background:var(--bg);color:var(--fg);font:14px/1.2 -apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-text-size-adjust:100%;-webkit-user-select:none;user-select:none}body{display:flex;flex-direction:column;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}#hud{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 12px;background:var(--hud-bg);box-shadow:var(--hud-shadow);z-index:2}#hud .group{display:flex;align-items:center;gap:8px}.counter{display:inline-flex;align-items:center;gap:6px;font-variant-numeric:tabular-nums;font-weight:600;font-size:16px;min-width:4ch}.counter .icon{font-size:18px}#reset{width:44px;height:44px;font-size:24px;line-height:1;border:0;border-radius:10px;background:var(--button);color:var(--button-fg);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 1px 2px #0000001a}#reset:active{background:var(--button-active);transform:translateY(1px)}#difficulty{border:0;background:var(--button);color:var(--button-fg);font:inherit;font-weight:600;padding:8px 10px;border-radius:10px;min-height:36px}#stage{flex:1 1 auto;position:relative;overflow:hidden;touch-action:none;-webkit-touch-callout:none;background:var(--bg)}#board{position:absolute;left:0;top:0;transform-origin:0 0;image-rendering:pixelated;image-rendering:-webkit-optimize-contrast}#mode{display:flex;align-items:center;position:fixed;left:50%;transform:translate(-50%);bottom:calc(env(safe-area-inset-bottom) + 14px);padding:8px 16px;background:var(--hud-bg);border-radius:999px;box-shadow:0 6px 20px #00000040;z-index:2}.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer}.switch input{position:absolute;opacity:0;width:0;height:0}.switch-track{display:inline-block;position:relative;width:48px;height:28px;background:var(--button-active);border-radius:14px;transition:background .15s}.switch-thumb{position:absolute;left:2px;top:2px;width:24px;height:24px;background:var(--button);border-radius:50%;box-shadow:0 1px 2px #0000004d;transition:transform .15s,background .15s;display:flex;align-items:center;justify-content:center;font-size:13px;line-height:1}.switch input:checked+.switch-track{background:#d6332e}.switch input:checked+.switch-track .switch-thumb{transform:translate(20px);background:#fff}.switch input:focus-visible+.switch-track{outline:2px solid var(--focus);outline-offset:3px}.switch-label{font-weight:600;font-size:14px}#customConfig{flex:0 0 auto;display:flex;align-items:center;gap:10px;padding:8px 12px;background:var(--hud-bg);border-top:1px solid var(--cell-grid);flex-wrap:wrap;font-size:13px}#customConfig[hidden]{display:none}#customConfig label{display:inline-flex;align-items:center;gap:4px;font-weight:600}#customConfig input[type=number],#customConfig input[type=text],#customConfig select{padding:6px 8px;border:1px solid var(--cell-grid);border-radius:8px;background:var(--bg);color:var(--fg);font:inherit;font-weight:600;font-variant-numeric:tabular-nums}#customConfig input[type=number]{width:64px;-moz-appearance:textfield;appearance:textfield}#customConfig input[type=text]{width:110px}#customConfig input[type=number]::-webkit-inner-spin-button,#customConfig input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;appearance:none;margin:0}#customConfig button{padding:8px 14px;border:0;border-radius:8px;background:var(--accent);color:#fff;font:inherit;font-weight:600;cursor:pointer}#customConfig .hint{color:var(--button-fg);opacity:.65;font-weight:400}#toast{position:fixed;left:50%;top:30%;transform:translate(-50%);padding:12px 20px;background:var(--hud-bg);color:var(--fg);border-radius:12px;box-shadow:0 8px 32px #00000040;font-weight:600;font-size:16px;pointer-events:none;opacity:0;transition:opacity .2s;z-index:3}#toast.show{opacity:1}@keyframes hud-bump{0%{transform:scale(1)}35%{transform:scale(1.15)}to{transform:scale(1)}}#mineCount.bump,#reset.bump{animation:hud-bump .22s cubic-bezier(.34,1.56,.64,1);transform-origin:center;display:inline-block}@media(prefers-reduced-motion:reduce){#reset,#toast{transition:none!important}#mineCount.bump,#reset.bump{animation:none!important}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
