*{margin:0;padding:0;box-sizing:border-box;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial}
body{background:#f5f5f5;color:#222}
.dashboard-container{display:flex;min-height:100vh}
.sidebar{width:250px;background:#111827;color:#fff;padding:20px}
.sidebar h2{margin-bottom:18px;text-align:center;color:#22c55e}
.sidebar nav a{display:block;color:#cbd5e1;text-decoration:none;padding:10px 12px;margin:6px 0;border-radius:10px;background:rgba(255,255,255,.06)}
.sidebar nav a:hover{background:rgba(255,255,255,.12)}
.sidebar nav a.active{background:#22c55e;color:#0b1220;font-weight:700}
.main-content{flex:1;padding:26px}
h1{margin-bottom:16px}
.card{background:#fff;border-radius:14px;padding:16px;box-shadow:0 2px 12px rgba(0,0,0,.06);margin-bottom:16px}
.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-bottom:16px}
.stat-card{background:#fff;border-radius:14px;padding:16px;box-shadow:0 2px 10px rgba(0,0,0,.06);text-align:center}
.stat-card .value{font-size:28px;font-weight:800;margin-top:6px}
.table-container{overflow:auto;border-radius:12px;border:1px solid #eef2f7}
table{width:100%;border-collapse:collapse;background:#fff}
th,td{padding:12px;border-bottom:1px solid #eef2f7;text-align:left}
th{background:#f8fafc;font-weight:700}
tr:hover{background:#f8fafc}
.btn{display:inline-block;padding:10px 14px;background:#22c55e;color:#0b1220;border:0;border-radius:10px;text-decoration:none;font-weight:700;cursor:pointer}
.btn:hover{filter:brightness(.97)}
.btn-outline{background:#fff;border:1px solid #22c55e;color:#16a34a}
.btn-danger{background:#ef4444;color:#fff}
.btn-small{padding:8px 10px;border-radius:8px;font-size:13px}
.form-group{margin-bottom:12px}
.form-group label{display:block;margin-bottom:6px;font-weight:700}
.form-group input,.form-group select{width:100%;padding:10px 12px;border:1px solid #e5e7eb;border-radius:10px}
.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}
.muted{color:#64748b}.small{font-size:13px}
.login-container{max-width:420px;margin:80px auto;background:#fff;padding:26px;border-radius:14px;box-shadow:0 2px 18px rgba(0,0,0,.08)}
.login-container h2{text-align:center;margin-bottom:6px}
.error{background:#fee2e2;color:#991b1b;padding:10px;border-radius:10px;margin:10px 0}
.ok{background:#dcfce7;color:#166534;padding:10px;border-radius:10px;margin:10px 0}
.warn{background:#ffedd5;color:#9a3412;padding:10px;border-radius:10px;margin:10px 0}
hr{border:none;border-top:1px solid #eef2f7;margin:14px 0}
.chart-container{background:#fff;border-radius:14px;padding:16px;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.grid-2{display:grid;grid-template-columns:1.1fr .9fr;gap:14px}
@media (max-width: 920px){.sidebar{width:210px}.grid-2{grid-template-columns:1fr}}
