
:root{
  --bg:#0f172a;          /* slate-900 */
  --panel:#111827;       /* gray-900 */
  --card:#1f2937;        /* gray-800 */
  --text:#e5e7eb;        /* gray-200 */
  --muted:#94a3b8;       /* slate-400 */
  --accent:#22d3ee;      /* cyan-400 */
  --success:#10b981;     /* emerald-500 */
  --warn:#f59e0b;        /* amber-500 */
  --danger:#ef4444;      /* red-500 */
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif}
a{color:var(--accent);text-decoration:none}
.container{max-width:1100px;margin:0 auto;padding:24px}
header{position:sticky;top:0;background:rgba(15,23,42,.8);backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid #1f2937;z-index:10}
.nav{display:flex;gap:16px;align-items:center;justify-content:space-between;padding:12px 24px}
.brand{display:flex;gap:12px;align-items:center}
.brand .logo{width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,var(--accent),#7c3aed);display:grid;place-items:center;font-weight:800;color:#0b1320}
.nav a{padding:8px 12px;border-radius:10px}
.nav a:hover{background:#0b1224}
main{padding:24px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.card{background:var(--card);border:1px solid #2a3342;border-radius:16px;padding:20px;box-shadow:0 4px 20px rgba(0,0,0,.25)}
.card h3{margin:0 0 8px}
.btn{display:inline-flex;align-items:center;gap:8px;background:var(--accent);color:#0b1320;border:none;border-radius:12px;padding:10px 14px;font-weight:700;cursor:pointer}
.btn.secondary{background:#334155;color:var(--text)}
.btn.ghost{background:transparent;border:1px solid #2a3342;color:var(--text)}
.btn.block{width:100%;justify-content:center}
input, select{width:100%;padding:10px 12px;background:#0b1224;border:1px solid #263041;color:var(--text);border-radius:10px}
label{display:block;margin:10px 0 6px;color:var(--muted)}
.table{width:100%;border-collapse:collapse;border:1px solid #2a3342;border-radius:12px;overflow:hidden}
.table th,.table td{padding:10px;border-bottom:1px solid #2a3342;text-align:left}
.badge{display:inline-flex;align-items:center;gap:6px;background:#0b1224;border:1px solid #263041;padding:4px 8px;border-radius:999px;font-size:12px;color:var(--muted)}
.kicker{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;font-size:.8rem}
.hero{display:grid;gap:14px;padding:28px;background:linear-gradient(135deg,#0b1224,#0f172a);border:1px solid #1f2737;border-radius:18px}
.hero h1{font-size:2rem;margin:0}
footer{border-top:1px solid #1f2937;color:#9aa6b2}
.progress{height:10px;background:#0b1224;border-radius:999px;border:1px solid #263041;overflow:hidden}
.progress > div{height:100%;background:linear-gradient(90deg,var(--success),#34d399);width:0%}
.small{font-size:.9rem;color:var(--muted)}
.success{color:var(--success)}
.warning{color:var(--warn)}
.danger{color:var(--danger)}
.flex{display:flex;gap:12px;align-items:center}
.center{text-align:center}
