/* Dark modern admin UI */ 
:root{--bg:#0E141B;--card:#0F1B28;--muted:#93A4B7;--text:#E6EEF8;--accent:#4ADE80;--accent2:#60A5FA;--danger:#fb7185;--border:#1f2a37}
*{box-sizing:border-box} body{margin:0;background:linear-gradient(135deg,#0B1220,#101B2A);color:var(--text);font-family:Inter,system-ui,Segoe UI,Roboto,Arial}
a{color:var(--accent2);text-decoration:none}
.login-page{min-height:100vh;display:grid;place-items:center}
.card{background:var(--card);padding:28px;border-radius:16px;width:min(420px,90vw);box-shadow:0 10px 40px rgba(0,0,0,.3);border:1px solid var(--border)}
.card h1{margin:0 0 12px}.card .alert{background:#2b1d1f;color:#fca5a5;padding:10px 12px;border-radius:10px;margin-bottom:10px}
.card label{display:block;margin-top:10px;color:var(--muted)}
.card input,.card select,.card textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:#0b1220;color:var(--text);outline:none}
.card button{margin-top:16px;width:100%;padding:12px 14px;border:none;border-radius:12px;background:linear-gradient(135deg,var(--accent),#22c55e);color:#0b1220;font-weight:700;cursor:pointer}
.layout{display:grid;grid-template-columns:260px 1fr;min-height:100vh}
.sidebar{background:#0C121A;border-right:1px solid var(--border);padding:18px}
.sidebar .brand{font-weight:800;margin-bottom:20px;letter-spacing:.3px}
.sidebar nav a{display:block;padding:10px 12px;border-radius:10px;color:var(--text);margin:3px 0}
.sidebar nav a:hover{background:#101927}
.sidebar .logout{color:#fda4af}
.content{padding:24px}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:12px 0 24px}
.kpi{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px}
.kpi .k{color:var(--muted);font-size:.9rem;margin-bottom:8px}
.table{width:100%;border-collapse:collapse;background:var(--card);border-radius:14px;overflow:hidden;border:1px solid var(--border)}
.table th,.table td{padding:12px;border-bottom:1px solid var(--border)}
.table img.logo{width:36px;height:36px;object-fit:contain}
.row{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}
.muted{color:var(--muted)}