:root{--bg: #f4f6fb;--surface: #ffffff;--surface-2: #f8fafc;--border: #e4e8f0;--text: #1a2233;--text-muted: #6b7590;--primary: #3d5afe;--primary-dark: #2c41d8;--success: #12b76a;--warning: #f79009;--danger: #f04438;--radius: 12px;--shadow: 0 1px 3px rgba(16, 24, 40, .06), 0 1px 2px rgba(16, 24, 40, .04);font-family:Segoe UI,Assistant,Rubik,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-size:14px}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}.app{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{background:var(--surface);border-inline-start:1px solid var(--border);border-inline-end:1px solid var(--border);padding:20px 14px;display:flex;flex-direction:column;gap:4px;position:sticky;top:0;height:100vh}.brand{font-size:20px;font-weight:800;color:var(--primary);padding:6px 12px 18px;letter-spacing:-.5px}.brand span{color:var(--text)}.nav-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;color:var(--text-muted);font-weight:600;font-size:13.5px}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item.active{background:color-mix(in srgb,var(--primary) 12%,white);color:var(--primary)}.nav-section{font-size:11px;color:var(--text-muted);font-weight:700;padding:14px 12px 6px;text-transform:uppercase;letter-spacing:.5px}.main{padding:28px 32px;overflow-x:hidden}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.topbar h1{font-size:22px;margin:0;font-weight:800}.user-chip{display:flex;align-items:center;gap:10px;color:var(--text-muted);font-weight:600}.user-chip button{background:none;border:1px solid var(--border);border-radius:8px;padding:6px 12px;color:var(--text-muted)}.grid{display:grid;gap:16px}.grid.cols-2{grid-template-columns:repeat(2,1fr)}.grid.cols-3{grid-template-columns:repeat(3,1fr)}.grid.cols-4{grid-template-columns:repeat(4,1fr)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}.card h3{margin:0 0 14px;font-size:15px;font-weight:700}.stat .label{color:var(--text-muted);font-size:12.5px;font-weight:600}.stat .value{font-size:28px;font-weight:800;margin-top:6px}table{width:100%;border-collapse:collapse}th,td{text-align:start;padding:11px 12px;border-bottom:1px solid var(--border);font-size:13.5px}th{color:var(--text-muted);font-weight:700;font-size:12px}tbody tr:hover{background:var(--surface-2);cursor:default}tbody tr.clickable:hover{cursor:pointer}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700}.badge.gray{background:#eef1f6;color:#667085}.badge.blue{background:#e8ecff;color:var(--primary)}.badge.green{background:#e3f9ee;color:var(--success)}.badge.orange{background:#fef2e0;color:var(--warning)}.badge.red{background:#fde8e6;color:var(--danger)}.btn{background:var(--primary);color:#fff;border:none;border-radius:10px;padding:9px 16px;font-weight:700;font-size:13.5px}.btn:hover{background:var(--primary-dark)}.btn.ghost{background:var(--surface);color:var(--text);border:1px solid var(--border)}.input,select,textarea{width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:10px;font-family:inherit;font-size:13.5px;background:var(--surface)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.field label{font-weight:600;font-size:12.5px;color:var(--text-muted)}.toolbar{display:flex;gap:10px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.login-wrap{display:grid;place-items:center;min-height:100vh}.login-card{width:380px;max-width:92vw}.muted{color:var(--text-muted)}.error{color:var(--danger);font-size:13px;margin-top:8px}.center-note{text-align:center;color:var(--text-muted);padding:40px}
