:root{--brand: #233888;--brand-dark: #1a2a66;--brand-light: #4f68d8;--bg: #f1f5f9;--surface: #ffffff;--sidebar: #0f172a;--sidebar-hover: #1e293b;--sidebar-active: #233888;--text: #1e293b;--text-muted: #64748b;--border: #e2e8f0;--danger: #dc2626;--success: #16a34a;--warning: #d97706;--radius: 8px;--shadow: 0 1px 3px rgba(15, 23, 42, .08), 0 1px 2px rgba(15, 23, 42, .06);--shadow-lg: 0 10px 30px rgba(15, 23, 42, .15);font-family:system-ui,-apple-system,Segoe UI,Roboto,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:var(--brand);text-decoration:none}button{font:inherit;cursor:pointer;border:none;border-radius:var(--radius);padding:9px 16px;transition:background .15s,opacity .15s}.btn-primary{background:var(--brand);color:#fff;font-weight:600}.btn-primary:hover{background:var(--brand-dark)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--text-muted)}.btn-ghost:hover{background:var(--bg)}.btn-danger{background:transparent;color:var(--danger)}.btn-danger:hover{background:#fef2f2}input,select,textarea{font:inherit;width:100%;padding:9px 12px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text)}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand-light);box-shadow:0 0 0 3px #2338882e}label{display:block;font-weight:600;margin-bottom:6px;color:var(--text)}.field{margin-bottom:16px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px 14px;border-bottom:1px solid var(--border)}th{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--text-muted)}tbody tr:hover{background:#f8fafc}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:12px;font-weight:600}.badge-active{background:#dcfce7;color:#166534}.badge-inactive{background:#f1f5f9;color:#475569}.badge-blocked{background:#fee2e2;color:#991b1b}.chip{display:inline-block;padding:2px 8px;margin:2px;border-radius:6px;background:#eef1fb;color:var(--brand-dark);font-size:12px;border:1px solid #d5ddf7}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.ss-opt:hover{background:var(--bg)}@media (max-width: 768px){h1{font-size:20px}.card{overflow-x:auto}.card table{min-width:560px}}
