:root{--bg: #f4f6f9;--surface: #ffffff;--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 rgba(16, 24, 40, .04), 0 1px 3px rgba(16, 24, 40, .06)}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,Segoe UI,Roboto,system-ui,sans-serif;font-size:14px;-webkit-font-smoothing:antialiased}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);padding:7px 10px;outline:none}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){border-color:#c2c8d2;background:var(--surface-2)}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{border-color:transparent;background:transparent;padding:6px 8px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px 18px}.label{font-size:12px;color:var(--muted)}.metric{font-size:28px;font-weight:700;letter-spacing:-.01em}.badge{display:inline-block;background:var(--primary-50);color:var(--primary);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:600}.chip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border-strong);border-radius:999px;padding:2px 10px;font-size:12px;color:var(--text);background:var(--surface)}.chip.muted{color:var(--muted)}.chip.accent{color:var(--accent);border-color:var(--accent);background:var(--accent-50)}table{width:100%;border-collapse:collapse}thead th{text-align:left;font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-weight:600;padding:8px 10px;border-bottom:1px solid var(--border)}tbody td{padding:10px;border-bottom:1px solid var(--border)}tbody tr:hover{background:var(--surface-2)}pre{font-family:ui-monospace,SF Mono,Menlo,monospace}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#10182873;display:flex;align-items:center;justify-content:center;z-index:50;padding:16px}.modal{width:min(760px,100%);max-height:calc(100vh - 64px);display:flex;flex-direction:column}.modal-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.modal-body{overflow:auto}.modal-foot{display:flex;gap:8px;justify-content:flex-end;margin-top:14px}@keyframes spin{to{transform:rotate(360deg)}}.spinner{display:inline-block;width:18px;height:18px;border:2px solid var(--primary-50);border-top-color:var(--primary);border-radius:50%;animation:spin .7s linear infinite}.busy-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#ffffffa8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;z-index:5;border-radius:var(--radius)}.busy-overlay .label{font-size:13px;color:var(--muted);font-weight:600}.progress{height:8px;background:var(--surface-2);border:1px solid var(--border);border-radius:999px;overflow:hidden}.progress>span{display:block;height:100%;background:var(--primary);transition:width .2s ease}.tagpill{display:inline-block;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:600;border:1px solid var(--border-strong);color:var(--text);background:var(--surface-2)}.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);border-radius:3px;padding:0 1px;color:inherit}mark.pii .pii-label{font-size:9px;font-weight:700;color:var(--accent);margin-left:3px;letter-spacing:.03em;vertical-align:super}mark.ph{background:var(--primary-50);color:var(--primary-700);border-radius:3px;padding:0 3px;font-weight:600}
