*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;background:#f4f7fb;color:#172033}a{color:#1d4ed8;text-decoration:none}.topbar{height:64px;background:#0f172a;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 24px}.topbar a{color:#fff}.badge{font-size:11px;background:#2563eb;padding:4px 8px;border-radius:12px;margin-left:8px}.shell{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 64px)}aside{background:#fff;border-right:1px solid #e5e7eb;padding:20px}aside a{display:block;padding:12px;border-radius:8px;color:#334155;margin-bottom:6px}aside a:hover{background:#eff6ff}main{padding:24px;overflow:auto}.cards{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:16px}.stat,.panel{background:#fff;border:1px solid #e5e7eb;border-radius:14px;padding:20px;box-shadow:0 4px 18px rgba(15,23,42,.05)}.stat span{display:block;color:#64748b}.stat strong{font-size:34px}.panel{margin-top:20px}.btn{border:0;background:#2563eb;color:#fff!important;padding:11px 16px;border-radius:9px;display:inline-block;cursor:pointer}.btn.secondary{background:#475569}.btn.small{padding:8px 12px}.btn.full{width:100%}.grid-form{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-form label,.auth-card label{display:flex;flex-direction:column;gap:7px;font-weight:600}.grid-form .wide{grid-column:1/-1}input,select,textarea{padding:11px;border:1px solid #cbd5e1;border-radius:8px;background:#fff}textarea{min-height:80px}.filters,.actions,.print-toolbar{display:flex;gap:10px;align-items:center;margin:14px 0;flex-wrap:wrap}table{width:100%;border-collapse:collapse}th,td{padding:12px;border-bottom:1px solid #e5e7eb;text-align:left}.thumb{width:45px;height:55px;object-fit:cover;border-radius:4px}.alert{padding:12px;border-radius:8px;margin:12px 0}.alert.success{background:#dcfce7;color:#166534}.alert.error{background:#fee2e2;color:#991b1b}.auth-body{min-height:100vh;display:grid;place-items:center;background:linear-gradient(135deg,#e0e7ff,#f8fafc)}.auth-card{width:min(420px,92vw);background:#fff;padding:28px;border-radius:18px;box-shadow:0 18px 50px rgba(15,23,42,.15)}.auth-card form{display:grid;gap:16px}@media(max-width:900px){.shell{grid-template-columns:1fr}aside{display:flex;overflow:auto}.cards{grid-template-columns:repeat(2,1fr)}.grid-form{grid-template-columns:1fr}.table-wrap{overflow:auto}}
