:root{--bg: #0f172a;--panel: #1e293b;--text: #e2e8f0;--muted: #94a3b8;--accent: #38bdf8;--border: #334155;--danger: #f87171;font-family:system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}a{cursor:pointer;color:var(--accent)}.shell{min-height:100vh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:12px 24px;background:var(--panel);border-bottom:1px solid var(--border)}.topbar nav a{margin-left:18px}.content{padding:24px;max-width:1100px;margin:0 auto}.login{display:flex;min-height:100vh;align-items:center;justify-content:center}.card{background:var(--panel);border:1px solid var(--border);border-radius:12px;padding:24px;width:100%;max-width:420px}.card h1{margin-top:0}.muted{color:var(--muted)}label{display:block;margin:12px 0;font-size:14px;color:var(--muted)}input,select{display:block;width:100%;margin-top:6px;padding:10px 12px;background:#0b1220;color:var(--text);border:1px solid var(--border);border-radius:8px}button{background:var(--accent);color:#04222e;border:none;border-radius:8px;padding:10px 16px;font-weight:600;cursor:pointer}button.link{background:none;color:var(--accent);padding:0;font-weight:500}button.secondary{background:#334155;color:var(--text)}button:disabled{opacity:.6;cursor:default}.error{color:var(--danger);margin:10px 0}.success{color:#6ee7b7;margin:10px 0}.row.between{display:flex;align-items:center;justify-content:space-between}.row.actions{display:flex;align-items:center;gap:12px}.table{width:100%;border-collapse:collapse;margin-top:16px}.table th,.table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border)}.table th{color:var(--muted);font-size:12px;text-transform:uppercase}.table-actions{display:flex;align-items:center;gap:12px}.badge{padding:2px 8px;border-radius:999px;font-size:12px}.badge-active{background:#064e3b;color:#6ee7b7}.badge-suspended{background:#4c1d24;color:#fca5a5}.badge-pending{background:#423006;color:#fcd34d}.badge-disabled{background:#334155;color:#cbd5e1}.form-grid{max-width:760px;display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.form-grid.wide{max-width:960px}.form-grid hr,.form-grid .full{grid-column:1 / -1}.form-grid hr{border:none;border-top:1px solid var(--border);margin:12px 0}@media(max-width:720px){.form-grid{grid-template-columns:1fr}.row.between{align-items:flex-start;flex-direction:column;gap:12px}}
