:root{--bg:#0b0f14;--panel:#111827;--text:#e5e7eb;--muted:#9ca3af;--border:#1f2937;--accent:#7c3aed;--danger:#ef4444;--success:#22c55e;}
*{box-sizing:border-box}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif;background:linear-gradient(180deg,#070a0f, #0b0f14);color:var(--text)}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline}
.container{max-width:980px;margin:0 auto;padding:16px}
.topbar{position:sticky;top:0;background:rgba(17,24,39,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--border)}
.topbar-inner{display:flex;align-items:center;justify-content:space-between;gap:12px}
.brand a{font-weight:700;letter-spacing:.3px}
.nav{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.nav-user{color:var(--muted)}
.nav-sep{color:var(--border)}
.card{background:rgba(17,24,39,.85);border:1px solid var(--border);border-radius:14px;padding:16px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}
.col-6{grid-column:span 6}
.col-12{grid-column:span 12}
@media(max-width:860px){.col-6{grid-column:span 12}}
.h1{font-size:28px;margin:8px 0 12px}
.h2{font-size:18px;margin:8px 0 12px;color:#f3f4f6}
.p{color:var(--muted);margin:0 0 12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--border);background:rgba(124,58,237,.18);color:#f5f3ff;padding:10px 14px;border-radius:12px;cursor:pointer}
.btn:hover{background:rgba(124,58,237,.28);text-decoration:none}
.btn-secondary{background:rgba(255,255,255,.06)}
.btn-secondary:hover{background:rgba(255,255,255,.10)}
.btn-danger{background:rgba(239,68,68,.15)}
.btn-danger:hover{background:rgba(239,68,68,.25)}
.btn-small{padding:7px 10px;border-radius:10px;font-size:13px}
.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.table{width:100%;border-collapse:collapse;overflow:hidden;border-radius:12px;border:1px solid var(--border)}
.table th,.table td{padding:10px 12px;border-bottom:1px solid var(--border);text-align:left}
.table th{background:rgba(255,255,255,.04);color:#f3f4f6;font-weight:600}
.table tr:last-child td{border-bottom:none}
.badge{display:inline-block;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid var(--border);color:#f3f4f6;font-size:12px}
.form{display:grid;gap:10px}
.input, select{width:100%;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:rgba(0,0,0,.25);color:var(--text);outline:none}
.input:focus, select:focus{border-color:rgba(124,58,237,.65)}
.label{font-size:13px;color:var(--muted)}
.alert{padding:10px 12px;border-radius:12px;border:1px solid var(--border);margin:12px 0}
.alert-error{background:rgba(239,68,68,.10);border-color:rgba(239,68,68,.35)}
.alert-success{background:rgba(34,197,94,.10);border-color:rgba(34,197,94,.35)}
.footer{margin-top:24px;border-top:1px solid var(--border);color:var(--muted)}
.kpi{display:flex;gap:14px;flex-wrap:wrap}
.kpi .box{padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:rgba(255,255,255,.04)}
.small{color:var(--muted);font-size:13px}
