:root{
  --bg:#0b0f14;
  --panel:#121822;
  --border:#1c2430;
  --text:#e7eef6;
  --muted:#93a4b6;
  --accent:#3b82f6;
  --danger:#ef4444;
}
*{box-sizing:border-box}
body{
  margin:0;
  background:var(--bg);
  color:var(--text);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Helvetica Neue,Arial;
}
.topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 16px;
  border-bottom:1px solid var(--border);
  background:rgba(11,15,20,.9);
  position:sticky;
  top:0;
  z-index:10;
}
.logo{color:var(--text);text-decoration:none;font-weight:700}
.badge{padding:4px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:12px}
.container{max-width:1200px;margin:24px auto;padding:0 16px}
.card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:16px;margin-bottom:16px}
.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.card__actions{display:flex;gap:8px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:10px;border:1px solid var(--border);background:#0f141b;color:var(--text);text-decoration:none;cursor:pointer;font-size:14px}
.btn--primary{background:var(--accent);border-color:var(--accent);color:white}
.btn--danger{background:#2a1212;border-color:#4b2a2a;color:#ffb3b3}
.table{width:100%;border-collapse:collapse;font-size:13px}
.table th,.table td{border-bottom:1px solid var(--border);padding:8px;text-align:left;vertical-align:top}
.form label{display:block;margin:8px 0 6px;color:var(--muted);font-size:12px}
.form input,.form select{width:100%;padding:8px 10px;border-radius:10px;border:1px solid var(--border);background:#0f141b;color:var(--text)}
.grid-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;align-items:end}
.checkbox{margin-top:20px}
.inline-form{display:inline-flex;gap:6px;align-items:center;margin-left:6px}
.checkbox-inline{display:inline-flex;align-items:center;gap:6px;margin-left:8px}
.flash{padding:10px 12px;border-radius:10px;margin-bottom:12px}
.flash--success{background:#0f1f17;border:1px solid #155e3b;color:#7ee7b7}
.flash--error{background:#241215;border:1px solid #4b1f2a;color:#ffb3b3}
.auth-card{max-width:420px;margin:80px auto}
