:root{--surface: #f4f0e9;--surface-raised: #efe9df;--surface-sunken: #eae6de;--inverse-surface: #23211e;--ink: #2a2723;--ink-muted: #6d675d;--ink-faint: #9a9388;--on-inverse: #ece7dd;--on-inverse-muted: #a39d91;--accent: #426a86;--accent-hover: #335872;--clay: #9a6a52;--clay-hover: #855942;--success: #7a9e7a;--caution: #c2a14c;--rose: #c4847a;--accent-soft: #dde4ea;--clay-soft: #ece0d8;--success-soft: #e4ebe3;--caution-soft: #efe7d2;--rose-soft: #f0dcd7;--line: #2a27231f;--line-soft: #2a272314;--line-strong: #2a272357;--font-sans: "Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: ui-monospace, "SF Mono", "JetBrains Mono", Menlo, monospace}*{box-sizing:border-box}body{margin:0}.vh{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.app{height:100vh;display:flex;flex-direction:column;background:var(--surface);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;min-height:68px;padding:12px clamp(20px,4vw,40px);border-bottom:1px solid var(--line-strong);background:var(--surface)}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand__icon{height:30px;width:auto;flex:none;display:block;position:relative;top:-3px}.brand__mark{font-size:25px;font-weight:600;letter-spacing:.06em;color:var(--ink);line-height:1}.brand__rule{width:1px;height:22px;background:var(--line-strong);flex:none}.brand__name{font-size:17px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap}.switcher{display:flex;gap:4px;background:var(--surface-sunken);border:1px solid var(--line);border-radius:8px;padding:4px;flex-wrap:wrap}.role{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid transparent;background:transparent;font-family:inherit;font-size:17px;font-weight:500;letter-spacing:.01em;color:var(--ink-muted);padding:0 16px;min-height:44px;border-radius:6px;cursor:pointer;line-height:1.2;white-space:nowrap}.role:hover{color:var(--clay)}.role--active{background:var(--surface);color:var(--accent-hover);border-color:var(--line)}.role:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.main{flex:1;min-height:0;display:flex;flex-wrap:wrap;align-items:stretch}.dashboard{flex:65 1 560px;min-width:0;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:22px;padding:28px clamp(20px,4vw,40px)}.row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.ph{background:var(--surface-raised);border:1px dashed var(--line-strong);border-radius:6px;display:flex;flex-direction:column;justify-content:center;gap:6px;padding:20px 22px}.ph__label{font-size:12.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin:0}.ph__note{font-size:15px;line-height:1.5;color:var(--ink-muted);margin:0}.ph--summary{min-height:92px}.ph--panel{min-height:224px}.ph--trend{min-height:150px}.ph--filters{min-height:56px;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.chat{flex:35 1 360px;min-width:320px;min-height:440px;display:flex;flex-direction:column;background:var(--surface-raised);border-left:1px solid var(--line-strong)}.chat__head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px;border-bottom:1px solid var(--line)}.chat__title{font-size:17px;font-weight:500;letter-spacing:-.01em;color:var(--ink);margin:0;line-height:1.2}.chat__sub{font-size:13px;color:var(--ink-muted);margin:5px 0 0;line-height:1.3}.badge{display:inline-flex;align-items:center;font-size:11px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:var(--surface-sunken);border:1px solid var(--line);border-radius:3px;padding:4px 8px;white-space:nowrap;flex:none}.thread{flex:1;overflow-y:auto;padding:20px;display:flex}.thread__ph{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;border:1px dashed var(--line-strong);border-radius:6px;padding:24px}.thread__label{font-size:12.5px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin:0}.thread__note{font-size:14px;line-height:1.55;color:var(--ink-muted);margin:0;max-width:36ch}.composer{display:flex;align-items:flex-end;gap:10px;padding:14px 16px;border-top:1px solid var(--line);background:var(--surface-raised)}.composer__input{flex:1;min-width:0;font-family:inherit;font-size:15px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:8px;padding:11px 14px;line-height:1.4;resize:none}.composer__input::placeholder{color:var(--ink-faint)}.composer__send{flex:none;width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface);color:var(--ink-muted);cursor:not-allowed}.composer__send svg{width:18px;height:18px}.filterstrip{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px;padding:14px 18px;background:var(--surface-raised);border:1px solid var(--line);border-radius:6px}.filter{display:flex;flex-direction:column;gap:5px}.filter__label{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.filter__select{font-family:inherit;font-size:15px;color:var(--ink);background:var(--surface);border:1px solid var(--line-strong);border-radius:6px;padding:8px 12px;min-height:40px;min-width:96px}.filter__select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.panel{background:var(--surface-raised);border:1px solid var(--line);border-radius:6px;padding:16px 18px;display:flex;flex-direction:column;gap:12px;min-width:0}.panel__title{font-size:12.5px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin:0}.panel__hint,.panel__title .panel__hint{font-weight:400;letter-spacing:.02em;text-transform:none;color:var(--ink-muted);font-size:12px}.panel__state{font-size:14px;color:var(--ink-muted);margin:0}.panel__state--error{color:var(--clay)}.score{display:flex;align-items:stretch;flex-wrap:wrap;gap:20px;padding:16px 20px;background:var(--surface-raised);border:1px solid var(--line);border-radius:6px;min-height:72px}.score__fig{display:flex;flex-direction:column;gap:6px}.score__label{font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-muted)}.score__value{font-size:26px;font-weight:600;line-height:1;color:var(--ink);display:inline-flex;align-items:center;gap:8px}.score__div{width:1px;background:var(--line);align-self:stretch}.tag{font-family:var(--font-mono);font-size:.7em;font-weight:600;letter-spacing:.04em;color:var(--ink-muted);border:1px solid var(--line-strong);border-radius:3px;padding:1px 4px;line-height:1}.tbl{width:100%;border-collapse:collapse;font-size:14px}.tbl th{text-align:left;font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);padding:6px 8px;border-bottom:1px solid var(--line-strong)}.tbl td{padding:7px 8px;border-bottom:1px solid var(--line-soft);color:var(--ink);vertical-align:top}.tbl__num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.tbl tfoot .tbl__total td{border-top:2px solid var(--line-strong);border-bottom:none;font-weight:600}.mono{font-family:var(--font-mono);font-size:.92em;color:var(--ink-muted)}.tbl--select tbody tr.is-drillable,.tbl--select tbody tr[role=button]{cursor:pointer}.tbl--select tbody tr.is-static{cursor:default}.tbl--select tbody tr[role=button]:hover{background:var(--surface-sunken)}.tbl--select tbody tr.is-selected{background:var(--surface-sunken);font-weight:600;box-shadow:inset 3px 0 0 var(--ink)}.tbl--select tbody tr:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.panel--trend{gap:8px}.trend{display:flex;align-items:stretch;gap:0}.trend__yaxis{flex:none;display:block}.trend__scroll{flex:1 1 auto;min-width:0;overflow-x:auto;overflow-y:hidden}.trend__plot{display:block}.trend__unit{font-size:11px;fill:var(--ink-muted);text-anchor:middle;letter-spacing:.04em}.trend__tick{font-size:10px;fill:var(--ink-muted);text-anchor:end;font-variant-numeric:tabular-nums}.trend__fu{font-size:10px;fill:var(--ink-faint);text-anchor:end;font-weight:600}.trend__base{stroke:var(--line-strong);stroke-width:1.25}.trend__grid{stroke:var(--line-soft);stroke-width:1}.trend__ydiv{stroke:var(--line-strong);stroke-width:1;stroke-dasharray:2 3}.trend__colhl{fill:var(--surface-sunken)}.trend__bar{fill:var(--ink);opacity:.4}.trend__bar--f{opacity:.28}.trend__bar.is-hl{opacity:1}.trend__mlbl{font-size:8.5px;fill:var(--ink-faint);text-anchor:middle}.trend__mlbl.is-hl{fill:var(--ink);font-weight:600}.trend__ylbl{font-size:11px;fill:var(--ink-muted);text-anchor:middle;font-weight:500;letter-spacing:.04em}.trend__ylbl.is-hl{fill:var(--ink);font-weight:600}@media(max-width:880px){.app{height:auto;min-height:100vh}.dashboard{overflow-y:visible}.chat{min-height:440px}}@media(max-width:720px){.row2{grid-template-columns:minmax(0,1fr)}.score{gap:14px}.score__div{display:none}}
