:root{--sidebar:#0f172a;--accent:#f97316;--bg:#f1f5f9;--card:#fff;--text:#1e293b;--muted:#64748b;--border:#e2e8f0}
*{box-sizing:border-box;margin:0;padding:0}
body.admin-body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--bg);color:var(--text);display:flex;min-height:100vh}
.admin-sidebar{width:240px;background:var(--sidebar);color:#fff;padding:20px 0;position:fixed;top:0;left:0;bottom:0;overflow-y:auto}
.admin-logo{padding:0 20px 20px;font-weight:800;font-size:1.1rem;border-bottom:1px solid #334155;margin-bottom:10px}
.admin-sidebar nav a{display:block;padding:12px 20px;color:#cbd5e1;font-size:.9rem}
.admin-sidebar nav a:hover{background:#1e293b;color:#fff}
.admin-main{margin-left:240px;flex:1;display:flex;flex-direction:column}
.admin-topbar{background:#fff;padding:18px 30px;border-bottom:1px solid var(--border)}
.admin-topbar h1{font-size:1.3rem}
.admin-content{padding:30px}
.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:20px}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}
.stat{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px}
.stat .num{font-size:2rem;font-weight:700;color:var(--accent)}
.stat .lbl{color:var(--muted);font-size:.85rem}
table{width:100%;border-collapse:collapse;background:#fff;border-radius:10px;overflow:hidden}
table th,table td{padding:12px 14px;border-bottom:1px solid var(--border);text-align:left;font-size:.88rem}
table th{background:#f1f5f9;font-weight:600}
.form-group{margin-bottom:16px}
.form-group label{display:block;margin-bottom:6px;font-weight:500;font-size:.88rem}
.form-control{width:100%;padding:9px 11px;border:1px solid var(--border);border-radius:8px;font-size:.9rem}
.btn{display:inline-block;padding:9px 16px;border-radius:8px;border:none;cursor:pointer;font-weight:600;font-size:.88rem}
.btn-primary{background:var(--accent);color:#fff}
.btn-secondary{background:#334155;color:#fff}
.btn-danger{background:#dc2626;color:#fff}
.btn-sm{padding:5px 10px;font-size:.8rem}
.flash{padding:12px 16px;border-radius:8px;margin:12px 0}
.flash-success{background:#dcfce7;color:#166534}
.flash-error{background:#fee2e2;color:#991b1b}
.flash-info{background:#dbeafe;color:#1e40af}
@media(max-width:768px){.admin-sidebar{position:static;width:100%}.admin-main{margin-left:0}}
