:root{--bg:#101522;--card:#182033;--text:#f5f7fb;--muted:#9aa7bd;--accent:#7dd3fc;--cell:#253149;--cell2:#33415c;--ok:#86efac;--bad:#fb7185}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Arial,sans-serif;background:radial-gradient(circle at top,#263452 0,#101522 42%,#0a0e17 100%);color:var(--text);min-height:100vh}
.hero{max-width:1000px;margin:0 auto;padding:44px 20px 20px}
.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--accent);font-weight:800;font-size:12px;margin:0 0 10px}
h1{font-size:44px;line-height:1;margin:0 0 12px;letter-spacing:-.04em}
.lead,p{color:var(--muted);line-height:1.55}
.layout{max-width:1000px;margin:0 auto;padding:0 20px 44px;display:grid;grid-template-columns:1fr 320px;gap:20px}
.card{background:rgba(24,32,51,.88);border:1px solid rgba(255,255,255,.08);border-radius:24px;box-shadow:0 20px 60px rgba(0,0,0,.25);padding:20px}
.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}
button,select{border:0;border-radius:14px;padding:12px 14px;font-weight:800;background:var(--accent);color:#07111d;cursor:pointer}
select{background:#edf5ff}
.stat{padding:10px 12px;border-radius:14px;background:#111827;color:var(--text);font-weight:900}
#message{color:var(--muted);margin:0 0 14px;font-weight:700}
#board{display:grid;gap:5px;justify-content:start;touch-action:manipulation}
.cell{width:34px;height:34px;border-radius:9px;background:linear-gradient(180deg,var(--cell2),var(--cell));display:flex;align-items:center;justify-content:center;font-weight:900;color:#e5efff;box-shadow:inset 0 -2px 0 rgba(0,0,0,.22);user-select:none}
.cell.open{background:#dbeafe;color:#0f172a;box-shadow:none}
.cell.flag{background:#fde68a;color:#111827}
.cell.mine{background:var(--bad);color:#111827}
.rules h2,.rules h3{margin-top:0}
footer{max-width:1000px;margin:0 auto;padding:0 20px 36px;color:var(--muted);font-size:14px}
@media(max-width:760px){.layout{grid-template-columns:1fr}h1{font-size:36px}.cell{width:31px;height:31px}}
