:root{
  --bg:#0b1220; --card:#111a2b; --muted:#93a4c0; --text:#e6eefc;
  --accent:#6a8cff; --accent2:#9b6bff; --danger:#ff5b6b; --ok:#22c55e; --amber:#f59e0b;
}
*{box-sizing:border-box} html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Ubuntu,Helvetica,Arial,sans-serif;}
a{color:var(--accent);text-decoration:none}
.container{max-width:1100px;margin:0 auto;padding:24px}
.header{display:flex;align-items:center;justify-content:space-between;padding:16px 0;border-bottom:1px solid #1e2940;position:sticky;top:0;background:var(--bg);z-index:5}
.brand{display:flex;align-items:center;gap:10px}
.logo{width:28px;height:28px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--accent2))}
.nav a{margin:0 10px;color:#c9d8f5}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;background:#1b2540;color:#eaf1ff;border:1px solid #273355;cursor:pointer}
.btn.primary{background:var(--accent);border-color:var(--accent);color:#021024}
.btn.danger{background:var(--danger);border-color:var(--danger)}
.btn.ok{background:var(--ok);border-color:var(--ok);color:#03130a}
.btn.amber{background:var(--amber);border-color:var(--amber);color:#160b00}
.btn:disabled{opacity:.5;cursor:not-allowed}
.grid{display:grid;gap:16px}
.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{background:var(--card);border:1px solid #1e2940;border-radius:18px;padding:18px}
.input{width:100%;padding:12px;border-radius:12px;background:#0f172a;color:#e6eefc;border:1px solid #223058}
.label{font-size:13px;color:var(--muted)}
.table{width:100%;border-collapse:collapse;font-size:14px}
.table th,.table td{padding:12px;border-top:1px solid #223058;text-align:left}
.pill{padding:4px 8px;border-radius:999px;font-size:12px;display:inline-block}
.pill.live{border:1px solid #2c3e75;animation:pulse 1.6s infinite;opacity:.9}
@keyframes pulse{0%{box-shadow:0 0 0 0 rgba(106,140,255,.5)}70%{box-shadow:0 0 0 10px rgba(106,140,255,0)}100%{box-shadow:0 0 0 0 rgba(106,140,255,0)}}
.row{display:flex;gap:12px;flex-wrap:wrap}
.small{font-size:12px;color:var(--muted)}
.center{text-align:center}
.hr{height:1px;background:#1e2940;margin:14px 0}
.modal{position:fixed;inset:0;background:rgba(0,0,0,.6);display:grid;place-items:center;z-index:50}
.modal .sheet{width:min(680px,95vw);background:var(--card);border:1px solid #2a3558;border-radius:16px;padding:18px}
.progress{height:10px;background:#0f172a;border-radius:12px;overflow:hidden;border:1px solid #223058}
.progress .bar{height:10px;background:linear-gradient(90deg,var(--accent),var(--accent2))}
.checkbox{width:18px;height:18px;accent-color:var(--accent)}
.badge{border:1px solid #2b3a6c;padding:2px 8px;border-radius:999px;color:#c8d5f3;font-size:12px}
.footer{padding:40px 0;color:#8fa5d6;font-size:12px;text-align:center}
