@charset "UTF-8";:root{--c-bg: #f4f6f9;--c-surface: #ffffff;--c-border: #dde3ec;--c-text: #1c2530;--c-muted: #5c6b7a;--c-primary: #1f6feb;--c-primary-hover: #1a5fd0;--c-danger: #c62828;--c-danger-bg: #fdecea;--c-success: #2e7d32;--c-success-bg: #eaf5eb;--c-warn-bg: #fff6e5;--c-warn-text: #8a5a00;--radius: 8px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--font: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--shadow: 0 1px 3px rgba(16, 24, 40, .08), 0 1px 2px rgba(16, 24, 40, .06)}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100vh}body{font-family:var(--font);color:var(--c-text);background:var(--c-bg);font-size:14px;line-height:1.5}h1,h2,h3{margin:0 0 var(--space-3);font-weight:600;line-height:1.25}a{color:var(--c-primary);text-decoration:none}a:hover{text-decoration:underline}.field{display:block;margin-block-end:var(--space-4)}.field>label{display:block;font-weight:600;margin-block-end:var(--space-1)}.field input,.field select{inline-size:100%;padding:10px 12px;border:1px solid var(--c-border);border-radius:var(--radius);font:inherit;background:var(--c-surface);color:inherit}.field input:focus,.field select:focus{outline:2px solid var(--c-primary);outline-offset:1px;border-color:var(--c-primary)}.field .hint{color:var(--c-muted);font-size:12px;margin-block-start:var(--space-1)}.field .field-error{color:var(--c-danger);font-size:12px;margin-block-start:var(--space-1)}.field .field-help{margin-block-start:var(--space-1);font-size:12px;text-align:end}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:10px 16px;border:1px solid transparent;border-radius:var(--radius);font:inherit;font-weight:600;cursor:pointer;background:var(--c-surface);color:var(--c-text);border-color:var(--c-border)}.btn:hover:not(:disabled){background:#f0f3f8}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--c-primary);color:#fff;border-color:var(--c-primary)}.btn-primary:hover:not(:disabled){background:var(--c-primary-hover)}.btn-block{inline-size:100%}.banner{padding:10px 14px;border-radius:var(--radius);margin-block-end:var(--space-4);font-size:13px}.banner-error{background:var(--c-danger-bg);color:var(--c-danger)}.banner-info{background:var(--c-warn-bg);color:var(--c-warn-text)}.chip{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600}.chip-ok{background:var(--c-success-bg);color:var(--c-success)}.chip-pending{background:var(--c-warn-bg);color:var(--c-warn-text)}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:var(--space-5)}.auth-card{inline-size:100%;max-inline-size:420px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:12px;box-shadow:var(--shadow);padding:var(--space-6)}.auth-brand{font-size:20px;font-weight:700;margin-block-end:var(--space-5);color:var(--c-primary)}.auth-alt{margin-block-start:var(--space-4);text-align:center;color:var(--c-muted);font-size:13px}.card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:12px;box-shadow:var(--shadow);padding:var(--space-5)}.muted{color:var(--c-muted)}.page{max-inline-size:1100px}.page-header{margin-block-end:var(--space-5)}.page-header h1{margin-block-end:var(--space-1)}.page-header .actions{display:flex;gap:var(--space-2);align-items:center}.page-header-row{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-4)}.table-wrap{overflow-x:auto;border:1px solid var(--c-border);border-radius:12px;background:var(--c-surface)}table.data{inline-size:100%;border-collapse:collapse;font-size:13px}table.data th,table.data td{text-align:start;padding:10px 14px;border-block-end:1px solid var(--c-border);white-space:nowrap}table.data th{background:#f7f9fc;font-weight:600;color:var(--c-muted);position:sticky;inset-block-start:0}table.data tbody tr.clickable{cursor:pointer}table.data tbody tr.clickable:hover{background:#f7f9fc}table.data tbody tr.clickable:focus-visible{outline:2px solid var(--c-primary);outline-offset:-2px}table.data td.num,table.data th.num{text-align:end;font-variant-numeric:tabular-nums}.toolbar{display:flex;gap:var(--space-3);align-items:center;margin-block-end:var(--space-4);flex-wrap:wrap}.toolbar .search{flex:1;min-inline-size:200px;max-inline-size:360px}.toolbar .search input{inline-size:100%;padding:9px 12px;border:1px solid var(--c-border);border-radius:var(--radius);font:inherit}.state{padding:48px 24px;text-align:center;color:var(--c-muted)}.state h3{color:var(--c-text)}.spinner{display:inline-block;inline-size:22px;block-size:22px;border:3px solid var(--c-border);border-top-color:var(--c-primary);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.dialog-backdrop{position:fixed;inset:0;background:#10182873;display:grid;place-items:center;padding:var(--space-4);z-index:50}.dialog{background:var(--c-surface);border-radius:12px;box-shadow:0 10px 40px #10182840;inline-size:100%;max-inline-size:520px;padding:var(--space-5);max-block-size:90vh;overflow-y:auto}.dialog h2{margin-block-start:0}.dialog .confirm-text{white-space:pre-wrap;background:#f7f9fc;border:1px solid var(--c-border);border-radius:8px;padding:var(--space-3);margin:var(--space-4) 0;font-size:13px;max-block-size:40vh;overflow-y:auto}.dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-block-start:var(--space-4)}.toasts{position:fixed;inset-block-end:20px;inset-inline-end:20px;display:flex;flex-direction:column;gap:8px;z-index:60}.toast{padding:12px 16px;border-radius:8px;color:#fff;box-shadow:var(--shadow);max-inline-size:360px;font:inherit;font-size:13px;text-align:start;border:0;cursor:pointer}.toast:focus-visible{outline:2px solid #fff;outline-offset:2px}.sr-only{position:absolute;inline-size:1px;block-size:1px;padding:0;margin:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:absolute;inset-block-start:0;inset-inline-start:0;z-index:100;padding:10px 16px;background:var(--c-primary);color:#fff;border-end-end-radius:8px;clip-path:inset(50%);inline-size:1px;block-size:1px;overflow:hidden;white-space:nowrap}.skip-link:focus{clip-path:none;inline-size:auto;block-size:auto;overflow:visible}main.content:focus{outline:none}.toast-success{background:var(--c-success)}.toast-error{background:var(--c-danger)}.toast-warning{background:var(--c-warn-text)}.toast-info{background:#37474f}.detail-grid{display:grid;grid-template-columns:180px 1fr;gap:8px 16px}.detail-grid dt{color:var(--c-muted)}.detail-grid dd{margin:0;font-weight:500}.section-title{margin-block:var(--space-5) var(--space-3);font-size:15px;font-weight:600}.row-actions{display:flex;gap:var(--space-2)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 var(--space-4)}.form-actions{display:flex;gap:var(--space-2);margin-block-start:var(--space-4)}@media(max-width:640px){.form-grid,.detail-grid{grid-template-columns:1fr}}.turn{padding-block:12px;border-block-end:1px solid var(--c-border)}.turn:last-child{border-block-end:0}.turn strong{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--c-muted)}.turn p{margin-block:6px 0}.turn-user p,.clarify{font-weight:600}.assistant-results{list-style:none;margin-block:10px 0;padding:0;display:flex;flex-direction:column;gap:8px}.assistant-results li{padding:8px 12px;border:1px solid var(--c-border);border-radius:var(--radius)}.trace{margin-block-start:10px;padding:10px 12px;border-inline-start:3px solid var(--c-border);font-size:13px;display:flex;flex-direction:column;gap:4px}.btn-link{background:none;border:0;padding:4px 0;color:var(--c-primary);text-decoration:underline;cursor:pointer;font:inherit}.setup-steps{list-style:none;margin-block:12px 0;padding:0;display:flex;flex-direction:column;gap:10px}.setup-steps li{padding:10px 14px;border:1px solid var(--c-border);border-radius:var(--radius)}.app-footer{padding:8px 20px;border-block-start:1px solid var(--c-border);font-size:11px;text-align:end}.degraded-note{font-size:12px;padding:4px 0;border-inline-start:3px solid var(--c-warn-text, #b26a00);padding-inline-start:8px}
