:root{--paper:#f4efe7;--paper-2:#faf6ef;--paper-3:#ece5d8;--paper-4:#e3dbcb;--ink:#161311;--ink-2:#5c544a;--ink-3:#8e8678;--hairline:#1613111a;--hairline-2:#1613112e;--accent:#da3f12;--accent-soft:#f5dcd0;--accent-ink:#fff;--handoff:#4f6b5a;--ok:#2e8b5a;--font-display:"Instrument Serif","Times New Roman",serif;--font-body:"Geist",ui-sans-serif,system-ui,sans-serif;--font-mono:"Geist Mono",ui-monospace,"SF Mono",Menlo,monospace}@media (prefers-color-scheme:dark){:root{--paper:#14110e;--paper-2:#1c1815;--paper-3:#25201b;--paper-4:#2f2922;--ink:#f0eae0;--ink-2:#a29789;--ink-3:#6b6258;--hairline:#f0eae01a;--hairline-2:#f0eae02e;--accent:#f26340;--accent-soft:#3a1e14;--handoff:#95b19f}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}.eyebrow{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-2);font-size:10.5px;font-weight:500}.mono{font-family:var(--font-mono)}.dash{grid-template-columns:240px 1fr;min-height:100vh;display:grid}.dash-side{border-right:1px solid var(--hairline);background:var(--paper-2);flex-direction:column;gap:24px;height:100vh;padding:24px 16px;display:flex;position:sticky;top:0}.brand{font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:10px;padding:0 8px;font-size:18px;display:inline-flex}.brand-mark{background:var(--ink);width:26px;height:26px;color:var(--paper);font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;padding-bottom:2px;font-size:17px;font-style:italic;line-height:1;display:inline-flex}.brand .sub{color:var(--ink-3);font-size:14px}.section-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px;padding:0 10px;font-size:10px;font-weight:500}.dash-nav{flex-direction:column;gap:2px;display:flex}.dash-nav a{color:var(--ink-2);border-radius:7px;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;display:flex}.dash-nav a:hover{background:var(--paper-3);color:var(--ink)}.dash-nav a.active{background:var(--paper-3);color:var(--ink);font-weight:500}.dash-nav a .ct{font-family:var(--font-mono);color:var(--ink-3);margin-left:auto;font-size:10.5px}.dash-nav a .pip{opacity:.6;border:1.4px solid;border-radius:2px;flex:none;width:7px;height:7px}.side-foot{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.06em;flex-direction:column;gap:10px;margin-top:auto;padding:12px 10px;font-size:10px;display:flex}.dash-main{flex-direction:column;gap:28px;min-width:0;padding:28px 32px 64px;display:flex}.dash-h{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.dash-h h1{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:40px;font-weight:400;line-height:1.05}.dash-h p{color:var(--ink-2);margin:0;font-size:14px}.err{color:var(--accent);font-family:var(--font-mono);border:1px solid var(--hairline-2);background:var(--paper-2);border-radius:10px;padding:12px 14px;font-size:13px}.metrics{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.metric{border:1px solid var(--hairline);background:var(--paper-2);border-radius:12px;flex-direction:column;gap:8px;padding:18px;display:flex}.metric .lbl{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-weight:500}.metric .val{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);font-size:40px;line-height:1}.metric .val .u{color:var(--ink-2);margin-left:2px;font-size:22px}.metric .note{font-family:var(--font-mono);color:var(--ink-2);font-size:11px}.dash-grid{grid-template-columns:1.6fr 1fr;align-items:start;gap:24px;display:grid}.panel{border:1px solid var(--hairline);background:var(--paper-2);border-radius:12px;overflow:hidden}.panel-h{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.panel-h .t{font-family:var(--font-display);letter-spacing:-.01em;font-size:20px}.panel-h .meta{font-family:var(--font-mono);color:var(--ink-3);text-transform:uppercase;letter-spacing:.06em;font-size:10.5px}.convo-list .row{border-bottom:1px solid var(--hairline);grid-template-columns:18px 1.4fr 90px 90px;align-items:center;gap:14px;padding:12px 18px;font-size:13px;transition:background .15s;display:grid}.convo-list a.row:hover{background:var(--paper-3)}.convo-list .row:last-child{border-bottom:0}.status-pip{background:var(--ink-3);border-radius:50%;width:8px;height:8px}.row.escalated .status-pip{background:var(--handoff)}.row.resolved .status-pip{background:var(--ok)}.row.active .status-pip{background:var(--accent)}.convo-list .who{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.convo-list .who .id{font-family:var(--font-mono);color:var(--ink-3);font-size:10.5px;font-weight:400;display:block}.convo-list .out{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);font-size:10px}.row.escalated .out{color:var(--handoff)}.row.resolved .out{color:var(--ok)}.row.active .out{color:var(--accent)}.convo-list .when{font-family:var(--font-mono);color:var(--ink-3);text-align:right;font-size:11px}.head-h{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);background:var(--paper);border-bottom:1px solid var(--hairline);grid-template-columns:18px 1.4fr 90px 90px;gap:14px;padding:10px 18px;font-size:10px;font-weight:500;display:grid}.head-h .r{text-align:right}.stat-row{border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:center;padding:12px 18px;font-size:13px;display:flex}.stat-row:last-child{border-bottom:0}.stat-row .lbl{color:var(--ink-2)}.stat-row .v{font-family:var(--font-mono);color:var(--ink);font-size:13px}.kb-list .row,.kb-head{grid-template-columns:1.4fr 1.6fr 90px 140px;align-items:center;gap:16px;padding:12px 18px;font-size:13px;display:grid}.kb-head{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);background:var(--paper);border-bottom:1px solid var(--hairline);font-size:10px}.kb-list .row{border-bottom:1px solid var(--hairline)}.kb-list .row:last-child{border-bottom:0}.kb-list .title{color:var(--ink);font-weight:500}.kb-list .url{font-family:var(--font-mono);color:var(--ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.kb-list .num{font-family:var(--font-mono);color:var(--ink-2);font-size:12px}.badge{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:var(--paper-3);color:var(--ink-2);border:1px solid var(--hairline);border-radius:999px;padding:2px 8px;font-size:10px;display:inline-block}.badge.escalated{background:var(--paper-3);color:var(--handoff);border-color:var(--handoff)}.badge.ok{color:var(--ok);border-color:var(--ok)}.transcript{flex-direction:column;gap:14px;display:flex}.bubble{border:1px solid var(--hairline);background:var(--paper-2);border-radius:12px;max-width:760px;padding:12px 14px}.bubble.user{background:var(--paper-3);align-self:flex-end}.bubble .role{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;font-size:10px;display:flex}.bubble .content{color:var(--ink);white-space:pre-wrap;font-size:14px;line-height:1.55}.tool-chip{font-family:var(--font-mono);color:var(--ink);background:var(--paper-3);border:1px solid var(--hairline-2);border-radius:8px;align-items:center;gap:6px;margin-top:8px;padding:4px 10px;font-size:11px;display:inline-flex}.login-wrap{background:radial-gradient(120% 120% at 50% 0%, var(--paper-2) 0%, var(--paper) 58%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{border:1px solid var(--hairline);background:var(--paper-2);border-radius:16px;flex-direction:column;gap:16px;width:100%;max-width:384px;padding:32px 28px;display:flex;box-shadow:0 1px #16131108,0 24px 60px -24px #16131147}.login-brand{font-family:var(--font-display);letter-spacing:-.01em;align-items:center;gap:10px;font-size:19px;display:inline-flex}.login-brand .sub{color:var(--ink-3);font-size:15px}.login-head h1{font-family:var(--font-display);letter-spacing:-.015em;margin:12px 0 6px;font-size:32px;font-weight:400;line-height:1.05}.login-head p{color:var(--ink-2);margin:0;font-size:13.5px;line-height:1.5}.login-field{flex-direction:column;gap:6px;display:flex}.login-field span{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-size:10px;font-weight:500}.login-field input{font:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--hairline-2);border-radius:9px;outline:none;padding:10px 12px;font-size:14px;transition:border-color .15s}.login-field input:focus{border-color:var(--ink)}.login-error{font-family:var(--font-mono);color:var(--accent);border:1px solid var(--accent);background:var(--accent-soft);border-radius:9px;padding:9px 12px;font-size:12px;line-height:1.4}.login-btn{background:var(--ink);color:var(--paper);font:inherit;cursor:pointer;border:0;border-radius:9px;margin-top:4px;padding:12px 14px;font-size:14px;font-weight:500;transition:transform .12s,opacity .15s}.login-btn:hover{transform:translateY(-1px)}.login-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.login-foot{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);text-align:center;font-size:10px}.signout{border:1px solid var(--hairline-2);width:100%;color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;transition:background .15s,color .15s;display:inline-flex}.signout:hover{background:var(--paper-3);color:var(--ink)}.side-ver{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.06em;font-size:10px}@media (max-width:860px){.dash{grid-template-columns:1fr}.dash-side{flex-flow:wrap;align-items:center;gap:14px;height:auto;position:static}.dash-side .section-label{display:none}.dash-nav{flex-flow:wrap}.metrics{grid-template-columns:repeat(2,1fr)}.dash-grid{grid-template-columns:1fr}}.viz-root{--viz-s1:#2a78d6;--viz-s2:#1baf7a;--viz-attn:#e34948;--viz-good:#0ca30c;--viz-bad:#d03b3b;--viz-grid:var(--hairline);--viz-axis:var(--ink-3)}@media (prefers-color-scheme:dark){.viz-root{--viz-s1:#3987e5;--viz-s2:#199e70;--viz-attn:#e66767}}.viz-grid2{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;display:grid}@media (max-width:1100px){.viz-grid2{grid-template-columns:1fr}}.viz-panel .panel-b{padding:10px 12px 6px}.viz-legend{font-family:var(--font-mono);color:var(--ink-2);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:14px;margin:0;padding:0;font-size:10.5px;list-style:none;display:flex}.viz-legend .sw{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:6px;display:inline-block}.viz-tip{background:var(--paper-2);border:1px solid var(--hairline-2);color:var(--ink);border-radius:9px;padding:8px 11px;font-size:12px;box-shadow:0 6px 20px #0000001a}.viz-tip .d{font-family:var(--font-mono);color:var(--ink-3);letter-spacing:.06em;margin-bottom:4px;font-size:10px}.viz-tip .row{font-variant-numeric:tabular-nums;justify-content:space-between;gap:16px;display:flex}.viz-tip .row .v{font-weight:500}.range-tabs{border:1px solid var(--hairline);background:var(--paper-2);border-radius:9px;gap:4px;padding:3px;display:inline-flex}.range-tabs a{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-2);border-radius:6px;padding:5px 12px;font-size:11px}.range-tabs a.active{background:var(--paper-4);color:var(--ink);font-weight:500}.range-tabs a:hover:not(.active){background:var(--paper-3)}.viz-empty{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);pointer-events:none;justify-content:center;align-items:center;font-size:11px;display:flex;position:absolute;inset:0}.gap-list{flex-direction:column;gap:12px;margin-top:16px;display:flex}.gap-title{align-items:center;gap:10px;display:flex}.gap-count{font-family:var(--font-mono);color:var(--paper);background:var(--ink);border-radius:6px;padding:2px 8px;font-size:12px;font-weight:600}.gap-badge{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);border:1px solid var(--hairline-2);border-radius:5px;padding:2px 6px;font-size:9.5px}.gap-body{justify-content:space-between;align-items:flex-start;gap:18px;padding:12px 18px 14px;display:flex}.gap-samples{color:var(--ink-2);flex-direction:column;gap:4px;margin:0;padding-left:18px;font-size:13.5px;display:flex}.gap-draft-btn{border:1px solid var(--hairline-2);color:var(--ink-3);font:inherit;cursor:not-allowed;background:0 0;border-radius:8px;flex-shrink:0;padding:8px 12px;font-size:12.5px}.gap-empty{color:var(--ink-2);padding:18px;font-size:13.5px;line-height:1.6}.gap-empty code{font-family:var(--font-mono);background:var(--paper-3);border-radius:4px;padding:1px 5px;font-size:12px}.draft-notice{font-family:var(--font-mono);color:var(--ink);border:1px solid var(--hairline-2);background:var(--paper-2);border-radius:9px;margin-bottom:14px;padding:9px 12px;font-size:12px;display:block}.draft-open{color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border:0;font-size:12.5px}.draft-open:hover{color:var(--ink)}.draft-todo{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 45%, transparent)}.draft-editor{flex-direction:column;gap:12px;padding:14px 18px 16px;display:flex}.draft-editor textarea{font-family:var(--font-mono);color:var(--ink);background:var(--paper);border:1px solid var(--hairline-2);resize:vertical;border-radius:9px;padding:12px;font-size:12.5px;line-height:1.55}.draft-actions{align-items:center;gap:10px;display:flex}.draft-actions .login-btn{margin-top:0;padding:9px 14px;font-size:13px}.draft-ingest{background:var(--accent);color:var(--accent-ink,#fff)}.draft-ingest:disabled{opacity:.45}.draft-dismiss{border:1px solid var(--hairline-2);color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border-radius:9px;padding:9px 14px;font-size:13px}.draft-dismiss:hover{color:var(--ink);background:var(--paper-3)}.gap-draft-btn:not(:disabled){cursor:pointer;color:var(--ink);border-color:var(--ink-3)}.gap-draft-btn:not(:disabled):hover{background:var(--paper-3)}.range-tabs button{font-family:var(--font-mono);letter-spacing:.04em;color:var(--ink-2);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:5px 12px;font-size:11px}.range-tabs button.active{background:var(--paper-4);color:var(--ink);font-weight:500}.range-tabs button:hover:not(.active){background:var(--paper-3)}.gap-draft-wrap{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.gap-draft-err{font-family:var(--font-mono);color:var(--accent);text-align:right;max-width:260px;font-size:10.5px}.assist{flex-direction:column;gap:10px;margin:0 0 18px;display:flex}.assist-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.assist-hint{font-family:var(--font-mono);color:var(--ink-3);font-size:11px}.assist-notice{font-family:var(--font-mono);color:var(--ink-2);border:1px solid var(--hairline-2);background:var(--paper-2);border-radius:9px;padding:10px 12px;font-size:12px;line-height:1.55}.assist-draft{border:1px solid var(--hairline-2);background:var(--paper-2);border-radius:10px;flex-direction:column;gap:10px;padding:14px 16px;display:flex}.assist-draft-text{white-space:pre-wrap;color:var(--ink);font-size:13.5px;line-height:1.6}.assist-meta{font-family:var(--font-mono);color:var(--ink-3);border-top:1px solid var(--hairline);align-items:center;gap:14px;padding-top:10px;font-size:11px;display:flex}.assist-copy{border:1px solid var(--hairline-2);color:var(--ink-2);font:inherit;cursor:pointer;background:0 0;border-radius:7px;margin-left:auto;padding:5px 10px;font-size:11px}.assist-copy:hover{color:var(--ink);background:var(--paper-3)}.assist-cites{flex-wrap:wrap;gap:8px;display:flex}.assist-cite{font-family:var(--font-mono);color:var(--ink-2);border:1px solid var(--hairline);border-radius:6px;padding:3px 8px;font-size:10.5px;text-decoration:none}.assist-cite:hover{color:var(--ink);border-color:var(--ink-3)}
