:root{--bg:#f4f6f9;--surface:#fff;--surface-2:#fafbfc;--border:#e7e9ee;--border-strong:#d6dae1;--text:#1a2233;--muted:#8a93a6;--primary:#6d3bf5;--primary-700:#5a2fd6;--primary-50:#f1ecfe;--accent:#f1543f;--accent-50:#fdeeea;--ok:#16a34a;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px #1018280a, 0 1px 3px #1018280f}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:-apple-system,Segoe UI,Roboto,system-ui,sans-serif;font-size:14px}h1,h2,h3,h4{color:var(--text)}h2{font-size:18px}h3{font-size:15px}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);outline:none;padding:7px 10px}input:focus,select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-50)}button{font:inherit;cursor:pointer;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);padding:7px 13px;transition:background .12s,border-color .12s,opacity .12s}button:hover:not(:disabled){background:var(--surface-2);border-color:#c2c8d2}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--primary);border-color:var(--primary);color:#fff;font-weight:600}button.primary:hover:not(:disabled){background:var(--primary-700);border-color:var(--primary-700)}button.danger{color:var(--accent);border-color:var(--accent);background:var(--surface)}button.ghost{background:0 0;border-color:#0000;padding:6px 8px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px}.label{color:var(--muted);font-size:12px}.metric{letter-spacing:-.01em;font-size:28px;font-weight:700}.badge{background:var(--primary-50);color:var(--primary);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.chip{border:1px solid var(--border-strong);color:var(--text);background:var(--surface);border-radius:999px;align-items:center;gap:5px;padding:2px 10px;font-size:12px;display:inline-flex}.chip.muted{color:var(--muted)}.chip.accent{color:var(--accent);border-color:var(--accent);background:var(--accent-50)}table{border-collapse:collapse;width:100%}thead th{text-align:left;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);padding:8px 10px;font-size:11px;font-weight:600}tbody td{border-bottom:1px solid var(--border);padding:10px}tbody tr:hover{background:var(--surface-2)}pre{font-family:ui-monospace,SF Mono,Menlo,monospace}.modal-overlay{z-index:50;background:#10182873;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.modal{flex-direction:column;width:min(760px,100%);max-height:calc(100vh - 64px);display:flex}.modal-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.modal-body{overflow:auto}.modal-foot{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:2px solid var(--primary-50);border-top-color:var(--primary);border-radius:50%;width:18px;height:18px;animation:.7s linear infinite spin;display:inline-block}.busy-overlay{z-index:5;border-radius:var(--radius);background:#ffffffa8;flex-direction:column;justify-content:center;align-items:center;gap:10px;display:flex;position:absolute;inset:0}.busy-overlay .label{color:var(--muted);font-size:13px;font-weight:600}.progress{background:var(--surface-2);border:1px solid var(--border);border-radius:999px;height:8px;overflow:hidden}.progress>span{background:var(--primary);height:100%;transition:width .2s;display:block}.tagpill{border:1px solid var(--border-strong);color:var(--text);background:var(--surface-2);border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600;display:inline-block}.tagpill.tax{color:var(--primary);border-color:var(--primary-50);background:var(--primary-50)}mark.pii{background:var(--accent-50);border-bottom:1px solid var(--accent);color:inherit;border-radius:3px;padding:0 1px}mark.pii .pii-label{color:var(--accent);letter-spacing:.03em;vertical-align:super;margin-left:3px;font-size:9px;font-weight:700}mark.ph{background:var(--primary-50);color:var(--primary-700);border-radius:3px;padding:0 3px;font-weight:600}
