:root{--blue-500:#428caf;--blue-600:#336d89;--blue-700:#2a5a70;--blue-800:#22485a;--blue-050:#e9f2f6;--blue-075:#eff6f8;--blue-150:#d2e7ee;--blue-200:#c6e0ea;--blue-disabled:#b8d1da;--ink:#1f2b38;--body:#4b5a68;--muted:#6b7785;--faint:#94a1ae;--disabled:#b3bdc9;--border-card:#e6ebf1;--border-input:#cdd5df;--divider:#eef1f4;--hover-fill:#eef1f4;--surface-card:#fff;--surface-page:#f3f4f7;--surface-subtle:#f7f9fb;--surface-subtle-2:#f2f5f8;--danger:#c62828;--danger-dark:#a82e2e;--danger-050:#fdf3f3;--danger-100:#fbe0e0;--danger-150:#f8d7d7;--warning:#96660a;--warning-100:#fbeccb;--success:#1d7a2c;--success-alt:#2e7d32;--success-100:#dbf0dc;--success-150:#d9efd9;--r-card:10px;--r-btn:7px;--r-input:8px;--r-dialog:12px;--shadow-card-hover:0 2px 8px #1f2b3824;--shadow-pop:0 10px 30px #14284647;--scrim:#0f1c2db8;--header-h:56px;--sidebar-w:224px;--sidebar-w-collapsed:68px}*{box-sizing:border-box}html,body,#root{background:var(--surface-page);height:100%;margin:0;padding:0}body{color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Inter,Arial,sans-serif;font-size:14px}a{color:var(--blue-600);text-decoration:none}a:hover{color:var(--blue-600)}button{font-family:inherit}.micro{color:var(--faint);letter-spacing:.1em;text-transform:uppercase;font-size:10.5px;font-weight:800}.btn{border-radius:var(--r-btn);cursor:pointer;border:1px solid #0000;padding:9px 16px;font-size:13px;font-weight:600;line-height:1.2}.btn:disabled{cursor:not-allowed}.btn-primary{background:var(--blue-500);color:#fff}.btn-primary:hover:not(:disabled){background:var(--blue-600)}.btn-primary:disabled{background:var(--blue-disabled)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover:not(:disabled){background:var(--danger-dark)}.btn-ghost{color:var(--body);border-color:var(--border-input);background:#fff}.btn-ghost:hover:not(:disabled){background:var(--hover-fill)}.input{border:1px solid var(--border-input);border-radius:var(--r-input);width:100%;color:var(--ink);background:#fff;padding:9px 10px;font-family:inherit;font-size:13px}.input:focus{border-color:var(--blue-500);box-shadow:0 0 0 3px var(--blue-050);outline:none}.input::placeholder{color:var(--disabled)}.card{background:var(--surface-card);border:1px solid var(--border-card);border-radius:var(--r-card)}
