:root{
  --bg:#0b0f14; --card:#0f141b; --fg:#e9eef4; --muted:#b7c2ce; --border:#202635;
  --brand:#22d3ee; --accent:#f97316; --accent-ink:#0b0f14;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{background:var(--bg); color:var(--fg); font:16px/1.5 Inter, system-ui, Segoe UI, Arial, sans-serif}
a{color:var(--brand); text-decoration:none}
a:hover{text-decoration:underline}
main{max-width:1100px;margin:18px auto;padding:0 14px}
h1,h2{margin:10px 0 6px}
.small{opacity:.9; font-size:.95rem}
.btn{display:inline-block;background:var(--brand);color:#081018;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:600;border:1px solid var(--brand)}
.btn.secondary{background:transparent;color:var(--fg);border:1px solid var(--border)}
.card{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:16px}
.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tile{background:#0f141b;border:1px solid var(--border);border-radius:14px;padding:10px;overflow:hidden}
.tile img{display:block;width:100%;height:auto;border-radius:12px}
.tile .t{margin-top:8px;font-weight:600}
@media (max-width:900px){.tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tiles.candidates{display:grid;grid-template-columns:repeat(6, minmax(0,1fr));gap:8px;margin-top:6px}
.tiles.candidates .tile{padding:8px;text-align:center}
.tiles.candidates .tile img{height:48px;width:auto;margin:0 auto 4px;display:block}
.tiles.candidates .tile .t{font-size:.8rem;margin:0}
@media (max-width:900px){.tiles.candidates{grid-template-columns:repeat(3, minmax(0,1fr))}.tiles.candidates .tile img{height:44px}}
.check-left label {display:grid;grid-template-columns:24px 1fr;gap:10px;align-items:center}
.check-left input[type="checkbox"], .check-left input[type="radio"] {justify-self:start;width:18px;height:18px}
