:root{--brand-900: #072a3a;--brand-800: #0b3d54;--brand-700: #0b4f6c;--brand-600: #0f6d8f;--brand-500: #1490b8;--brand-50: #e8f4f9;--accent: #d98324;--accent-soft: #fbe7d2;--ok: #1f9d63;--ok-soft: #e4f5ec;--warn: #c8781a;--warn-soft: #fbeed7;--danger: #c23b3b;--danger-soft: #fbe4e4;--info: #2f6bd0;--info-soft: #e7effb;--ink-900: #10171d;--ink-700: #37424c;--ink-500: #66727d;--ink-400: #8b97a2;--line: #e4e8ec;--line-strong: #d0d6dc;--surface: #ffffff;--canvas: #f4f6f8;--canvas-2: #eef1f4;--radius: 12px;--radius-sm: 8px;--radius-lg: 18px;--shadow-sm: 0 1px 2px rgba(16,23,29,.06), 0 1px 3px rgba(16,23,29,.04);--shadow: 0 4px 16px rgba(16,23,29,.08);--shadow-lg: 0 18px 48px rgba(16,23,29,.18);--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--ink-900);background:var(--canvas);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}::selection{background:var(--brand-500);color:#fff}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#cfd6dc;border-radius:20px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#b6bfc7;background-clip:padding-box}.h1{font-size:22px;font-weight:700;letter-spacing:-.02em}.h2{font-size:17px;font-weight:700;letter-spacing:-.01em}.h3{font-size:14px;font-weight:650}.muted{color:var(--ink-500)}.tiny{font-size:12px}.mono{font-variant-numeric:tabular-nums;font-feature-settings:"tnum"}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-400)}.btn{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line-strong);background:var(--surface);color:var(--ink-900);padding:9px 14px;border-radius:10px;font-weight:600;font-size:13px;transition:.15s ease;white-space:nowrap}.btn:hover{border-color:var(--ink-400);background:#fbfcfd}.btn.primary{background:var(--brand-700);border-color:var(--brand-700);color:#fff}.btn.primary:hover{background:var(--brand-800)}.btn.accent{background:var(--accent);border-color:var(--accent);color:#fff}.btn.accent:hover{filter:brightness(.95)}.btn.ghost{border-color:transparent;background:transparent}.btn.ghost:hover{background:var(--canvas-2)}.btn.sm{padding:6px 10px;font-size:12px;border-radius:8px}.btn.lg{padding:12px 18px;font-size:14px;border-radius:12px}.btn.block{width:100%;justify-content:center}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card.pad{padding:18px}.card-h{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;border-bottom:1px solid var(--line)}.card-h .h2{font-size:15px}.badge{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;font-weight:650;padding:3px 9px;border-radius:100px;background:var(--canvas-2);color:var(--ink-700);border:1px solid transparent;white-space:nowrap}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor}.badge.ok{background:var(--ok-soft);color:#157a4a}.badge.warn{background:var(--warn-soft);color:#9a5c10}.badge.danger{background:var(--danger-soft);color:#a52d2d}.badge.info{background:var(--info-soft);color:#24559f}.badge.neutral{background:var(--canvas-2);color:var(--ink-500)}.badge.brand{background:var(--brand-50);color:var(--brand-700)}.compliance-chip{display:inline-flex;align-items:center;gap:6px;background:var(--accent-soft);color:#8a5411;border:1px solid #f0d2a6;font-size:11.5px;font-weight:700;padding:4px 10px;border-radius:8px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.field label{font-size:12.5px;font-weight:600;color:var(--ink-700)}.input,.select,textarea.input{width:100%;padding:10px 12px;border:1px solid var(--line-strong);border-radius:10px;font-size:13.5px;font-family:inherit;background:#fff;color:var(--ink-900);transition:.15s}.input:focus,.select:focus,textarea.input:focus{outline:none;border-color:var(--brand-500);box-shadow:0 0 0 3px var(--brand-50)}textarea.input{resize:vertical;min-height:90px}.table{width:100%;border-collapse:collapse}.table th{text-align:left;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-400);padding:10px 14px;border-bottom:1px solid var(--line)}.table td{padding:13px 14px;border-bottom:1px solid var(--line);font-size:13px;vertical-align:middle}.table tbody tr{transition:background .1s;cursor:pointer}.table tbody tr:hover{background:#f8fafb}.table tbody tr:last-child td{border-bottom:none}.row{display:flex}.col{display:flex;flex-direction:column}.between{justify-content:space-between}.center{align-items:center}.gap4{gap:4px}.gap6{gap:6px}.gap8{gap:8px}.gap10{gap:10px}.gap12{gap:12px}.gap14{gap:14px}.gap16{gap:16px}.gap20{gap:20px}.gap24{gap:24px}.wrap{flex-wrap:wrap}.grow{flex:1}.grid{display:grid;gap:16px}.grid>*{min-width:0}.avatar{width:38px;height:38px;border-radius:50%;flex:none;display:grid;place-items:center;font-weight:700;font-size:13px;color:#fff;background:linear-gradient(135deg,var(--brand-600),var(--brand-800))}.avatar.sm{width:30px;height:30px;font-size:11px}.avatar.lg{width:52px;height:52px;font-size:17px}.note{display:flex;gap:10px;padding:11px 13px;border-radius:10px;background:var(--info-soft);border:1px solid #cfe0f6;color:#24559f;font-size:12.5px;line-height:1.45}.note.accent{background:var(--accent-soft);border-color:#f0d2a6;color:#8a5411}.note.ok{background:var(--ok-soft);border-color:#bfe6cf;color:#157a4a}.note.warn{background:var(--warn-soft);border-color:#f0d9ac;color:#9a5c10}.note b{font-weight:700}.note-num{flex:none;width:18px;height:18px;border-radius:50%;background:currentColor;color:#fff;display:grid;place-items:center;font-size:11px;font-weight:800}.note-num span{color:var(--info-soft)}.bar{height:6px;border-radius:100px;background:var(--canvas-2);overflow:hidden}.bar>i{display:block;height:100%;background:var(--brand-500);border-radius:100px}hr.sep{border:none;border-top:1px solid var(--line);margin:16px 0}.link{color:var(--brand-600);font-weight:600;cursor:pointer}.link:hover{text-decoration:underline}.kbd{font-size:11px;background:var(--canvas-2);border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:5px;padding:1px 6px;font-weight:600}@keyframes fadein{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.fadein{animation:fadein .25s ease}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:spin .9s linear infinite}
