
/* 驭客 Steer console. Tokens come from tokens.ts; nothing below defines a palette. */
:root{
 --st-canvas:#ffffff;--st-surface:#ffffff;--st-surface-2:#f7f7f9;--st-sunken:#efeef4;
 --st-line:#e6e5ed;--st-line-strong:#d7d6e0;--st-hover:#f2f1f6;--st-selected:#ebeaf2;
 --st-text:#1b1a22;--st-text-2:#4a4955;--st-muted:#73727e;
 --st-accent:#5a4fe3;--st-accent-ink:#4a3fd0;--st-accent-soft:#efedfd;--st-accent-line:#d9d5fb;--st-on-accent:#ffffff;
 --st-ok:#2f7a52;--st-ok-soft:#e8f3ec;--st-warn:#94600f;--st-warn-soft:#f8efdd;--st-bad:#b03e33;--st-bad-soft:#f8e8e5;
 --st-mark-a:#7b72ee;--st-mark-b:#5a4fe3;--st-mark-fold:#3f36b0;--st-mark-end:#2a2470;
 --st-lift:0 1px 2px rgba(27,26,34,.06);--st-float:0 18px 48px -18px rgba(42,36,112,.28),0 2px 8px rgba(27,26,34,.06);
 --primary:var(--st-accent);--st-primary-bg:var(--st-accent);--st-primary-fg:var(--st-on-accent);--st-primary-hover:var(--st-accent-ink);--st-primary:var(--st-accent);
 --st-gold:var(--st-accent);--st-gold-ink:var(--st-accent-ink);--st-gold-soft:var(--st-accent-soft);--st-gold-line:var(--st-accent-line);
 --st-fs-micro:12px;--st-fs-meta:12px;--st-fs-body:13px;--st-fs-item:14px;--st-fs-head:16px;--st-fs-page:20px;--st-fs-metric:24px;
 --st-r-tag:4px;--st-r-control:6px;--st-r-surface:12px;--st-r-pill:999px;
 --st-r-xl:var(--st-r-surface);--st-r-lg:var(--st-r-surface);--st-r-md:var(--st-r-control);--st-r-sm:var(--st-r-control);
 --st-ctl:32px;--st-ctl-sm:30px;--st-sidebar-w:224px;--st-sidebar-rail:60px;--st-rail-w:320px;
 --st-font:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Hiragino Sans GB","Microsoft YaHei","Noto Sans SC","Segoe UI",sans-serif;
 --st-font-num:"SF Pro Display",-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif;
 --st-font-mono:"SF Mono",ui-monospace,Menlo,Consolas,monospace;
 --st-ease:cubic-bezier(.2,.8,.2,1);--st-t-fast:150ms;--st-t-base:200ms;--st-t-slow:250ms;
 --border:var(--st-line);--amber:var(--st-warn);--red:var(--st-bad);--green:var(--st-ok);
 --nav-text:var(--st-text);--nav-muted:var(--st-muted);--nav-selected:var(--st-selected);
 --rv-surface:var(--st-surface);--rv-canvas:var(--st-surface-2);--rv-line:var(--st-line);--rv-line-2:var(--st-line-strong);
 --rv-ink:var(--st-text);--rv-muted:var(--st-muted);--rv-primary:var(--st-accent);--rv-primary-2:var(--st-accent-ink);
 --rv-soft:var(--st-accent-soft);--rv-soft-ink:var(--st-accent-ink);--rv-ok:var(--st-ok);--rv-warn:var(--st-warn);--rv-err:var(--st-bad);
 --rv-shadow:var(--st-float);
 --radius:8px;
 --background:var(--st-canvas);--foreground:var(--st-text);--card:var(--st-surface);--card-foreground:var(--st-text);
 --popover:var(--st-surface);--popover-foreground:var(--st-text);--primary-foreground:var(--st-on-accent);
 --secondary:var(--st-surface-2);--secondary-foreground:var(--st-text);--muted:var(--st-surface-2);--muted-foreground:var(--st-muted);
 --accent:var(--st-hover);--accent-foreground:var(--st-text);--destructive:var(--st-bad);
 --input:var(--st-line-strong);--ring:var(--st-accent);
 --chart-1:var(--st-accent);--chart-2:var(--st-ok);--chart-3:var(--st-warn);--chart-4:var(--st-text-2);--chart-5:var(--st-bad);
 --sidebar:var(--st-surface-2);--sidebar-foreground:var(--st-text);--sidebar-primary:var(--st-accent);--sidebar-primary-foreground:var(--st-on-accent);
 --sidebar-accent:var(--st-selected);--sidebar-accent-foreground:var(--st-text);--sidebar-border:var(--st-line);--sidebar-ring:var(--st-accent);}
:root[data-theme=dark],:root.dark{
 --st-canvas:#18181d;--st-surface:#18181d;--st-surface-2:#121216;--st-sunken:#24242c;
 --st-line:#2a2a33;--st-line-strong:#3a3a45;--st-hover:#22222a;--st-selected:#2a2933;
 --st-text:#ecebf3;--st-text-2:#c3c2cf;--st-muted:#9a99a8;
 --st-accent:#8c84ff;--st-accent-ink:#a9a3ff;--st-accent-soft:#25223f;--st-accent-line:#3d3870;--st-on-accent:#141218;
 --st-ok:#7fcfa2;--st-ok-soft:#18281f;--st-warn:#e3b064;--st-warn-soft:#2c2418;--st-bad:#ee9284;--st-bad-soft:#2f1c1a;
 --st-mark-a:#b3adff;--st-mark-b:#8c84ff;--st-mark-fold:#6a62e0;--st-mark-end:#4a43b8;
 --st-lift:0 1px 2px rgba(0,0,0,.35);--st-float:0 18px 48px -18px rgba(0,0,0,.7),0 2px 8px rgba(0,0,0,.3);
 color-scheme:dark;}
@media (prefers-color-scheme:dark){:root:not([data-theme=light]):not(.light){
 --st-canvas:#18181d;--st-surface:#18181d;--st-surface-2:#121216;--st-sunken:#24242c;
 --st-line:#2a2a33;--st-line-strong:#3a3a45;--st-hover:#22222a;--st-selected:#2a2933;
 --st-text:#ecebf3;--st-text-2:#c3c2cf;--st-muted:#9a99a8;
 --st-accent:#8c84ff;--st-accent-ink:#a9a3ff;--st-accent-soft:#25223f;--st-accent-line:#3d3870;--st-on-accent:#141218;
 --st-ok:#7fcfa2;--st-ok-soft:#18281f;--st-warn:#e3b064;--st-warn-soft:#2c2418;--st-bad:#ee9284;--st-bad-soft:#2f1c1a;
 --st-mark-a:#b3adff;--st-mark-b:#8c84ff;--st-mark-fold:#6a62e0;--st-mark-end:#4a43b8;
 --st-lift:0 1px 2px rgba(0,0,0,.35);--st-float:0 18px 48px -18px rgba(0,0,0,.7),0 2px 8px rgba(0,0,0,.3);
 color-scheme:dark;}}

/* base */
::selection{background:var(--st-gold-soft);color:var(--st-text)}
html{scrollbar-color:var(--st-line-strong) var(--st-canvas);scroll-padding-top:88px}
input,textarea{caret-color:var(--st-gold-ink)}
a{text-underline-offset:3px}
*,*::before,*::after{box-sizing:border-box}
html,body{margin:0}
body{background:var(--st-canvas);color:var(--st-text);font:var(--st-fs-body)/1.55 var(--st-font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,p,dl,dd,blockquote{margin:0}
h1,h2,h3{font-weight:600}
h3{font-size:var(--st-fs-item);margin-bottom:8px}
button,input,textarea,select{font:inherit;color:inherit}
a{color:inherit;text-decoration:none}
a.link{color:var(--st-text-2);border-bottom:1px solid var(--st-line-strong)}
a.link:hover{color:var(--st-text);border-color:var(--st-text)}
:focus-visible{outline:2px solid var(--st-text);outline-offset:2px;border-radius:var(--st-r-control)}
.muted{color:var(--st-muted)} .small{font-size:var(--st-fs-body)} .tiny{font-size:var(--st-fs-meta)}
.num,.st-num{font-family:var(--st-font-num);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.mono{font-family:var(--st-font-mono);font-size:var(--st-fs-meta);color:var(--st-text-2);word-break:break-all}
.nowrap{white-space:nowrap}
.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.spacer{flex:1}
.stack{display:flex;flex-direction:column;gap:12px}
.grad{color:inherit}
.st-icon{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.st-icon-sm{width:14px;height:14px}

/* shell: a labelled rail that collapses to icons (cookie st_rail, so it never renders wide and snaps shut) */
body.app{display:grid;grid-template-columns:var(--st-sidebar-w) minmax(0,1fr);min-height:100vh;min-height:100dvh}
body.app.is-rail{--st-sidebar-w:var(--st-sidebar-rail)}
.sidebar{position:sticky;top:0;height:100vh;height:100dvh;display:flex;flex-direction:column;padding:0 0 10px;border-right:1px solid var(--st-line);background:var(--st-surface-2);z-index:20}
.sidebar-head{display:flex;align-items:center;gap:8px;height:68px;padding:0 16px 0 20px;flex:none}
.brand{display:flex;align-items:center;gap:9px;min-width:0;color:var(--st-text)}
.brand svg{width:17px;height:24px;flex:none}
.brand-name{font-size:var(--st-fs-body);font-weight:600;letter-spacing:.01em;white-space:nowrap}
.rail-btn{margin-left:auto}
.nav{display:flex;flex-direction:column;gap:24px;padding:16px 12px 0;overflow-y:auto;scrollbar-width:none}
.nav::-webkit-scrollbar{display:none}
.nav-group{display:flex;flex-direction:column;gap:4px}
.nav-group-label{padding:0 8px 5px;font-size:var(--st-fs-micro);font-weight:500;color:var(--st-muted);letter-spacing:.06em;white-space:nowrap}
.nav-item{position:relative;display:flex;align-items:center;gap:9px;height:38px;padding:0 10px;border-radius:var(--st-r-control);color:var(--st-text-2);font-size:var(--st-fs-body);white-space:nowrap;transition:background-color var(--st-t-fast) var(--st-ease),color var(--st-t-fast) var(--st-ease)}
.nav-glyph{display:grid;place-items:center;width:18px;height:18px;flex:none;color:var(--st-muted)}
.nav-label{min-width:0;overflow:hidden;text-overflow:ellipsis}
.nav-item:hover{background:var(--st-sunken);color:var(--st-text)}
.nav-item:hover .nav-glyph{color:var(--st-text-2)}
.nav-item.active{background:var(--st-surface);color:var(--st-text);font-weight:600;box-shadow:inset 0 0 0 1px var(--st-line)}
.nav-item.active .nav-glyph{color:var(--st-text)}
.nav-badge{margin-left:auto;min-width:17px;height:17px;padding:0 5px;border-radius:var(--st-r-pill);background:var(--st-primary-bg);color:var(--st-primary-fg);font-size:var(--st-fs-micro);font-weight:600;display:grid;place-items:center;font-family:var(--st-font-num)}
body.is-rail .brand-name,body.is-rail .nav-label,body.is-rail .nav-group-label{display:none}
body.is-rail .sidebar-head{padding:0;justify-content:center}
body.is-rail .rail-btn{display:none}
body.is-rail .nav{align-items:center;gap:10px}
body.is-rail .nav-group{width:100%;align-items:center}
body.is-rail .nav-group+.nav-group{padding-top:10px;border-top:1px solid var(--st-line)}
body.is-rail .nav-item{width:34px;justify-content:center;padding:0;gap:0}
body.is-rail .nav-badge{position:absolute;top:-2px;right:-4px;margin:0}
.sidebar-foot{margin-top:auto;display:flex;align-items:center;gap:6px;padding:10px 12px 0;border-top:1px solid var(--st-line)}
body.is-rail .sidebar-foot{flex-direction:column;padding-inline:0}
.icon-btn{display:grid;place-items:center;width:28px;height:28px;border-radius:var(--st-r-control);border:1px solid transparent;background:none;color:var(--st-muted);cursor:pointer;transition:color var(--st-t-fast) var(--st-ease),background-color var(--st-t-fast) var(--st-ease)}
.icon-btn:hover{color:var(--st-text);background:var(--st-sunken)}
.operator{display:grid;place-items:center;width:26px;height:26px;margin-left:auto;border-radius:50%;background:var(--st-sunken);color:var(--st-text-2);font-size:var(--st-fs-micro);font-weight:600}
body.is-rail .operator{margin:0}
.operator:hover{box-shadow:0 0 0 1px var(--st-line-strong)}

.workspace{min-width:0;display:flex;flex-direction:column}
.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:14px;min-height:68px;padding:12px 32px;background:var(--st-surface);border-bottom:1px solid var(--st-line)}
.agent-now{display:flex;align-items:center;gap:8px;min-width:0;font-size:var(--st-fs-meta);color:var(--st-text-2)}
.agent-text{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.agent-text b{font-weight:600;color:var(--st-text);margin-left:.25em}
.agent-ago{color:var(--st-muted);white-space:nowrap}
.topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px}
.search{display:flex;align-items:center;gap:6px;width:210px;height:var(--st-ctl);padding:0 10px;border:1px solid var(--st-line);border-radius:var(--st-r-control);background:var(--st-surface);color:var(--st-muted)}
.search:focus-within{border-color:var(--st-line-strong);box-shadow:0 0 0 3px var(--st-sunken)}
.search svg{width:14px;height:14px}
.search input{flex:1;min-width:0;border:0;outline:0;background:transparent;font-size:var(--st-fs-body);color:var(--st-text)}
.search input::placeholder{color:var(--st-muted)}
.store-pill{display:inline-flex;align-items:center;height:var(--st-ctl);padding:0 2px 0 10px;border:1px solid var(--st-line);border-radius:var(--st-r-control);background:var(--st-surface)}
.store-select{border:0;background:transparent;font-size:var(--st-fs-body);height:calc(var(--st-ctl) - 2px);padding:0 4px 0 0;max-width:180px;color:var(--st-text);cursor:pointer;min-height:0}
.store-select:focus{outline:0}
.store-empty{font-size:var(--st-fs-body);color:var(--st-muted);padding-right:8px}
.content{width:100%;max-width:1480px;margin:0 auto;padding:32px 36px 64px;display:flex;flex-direction:column;gap:0}
.page-head{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:28px}
h1{font-size:var(--st-fs-page);line-height:1.25;letter-spacing:-.015em}
.h1-meta{font-size:var(--st-fs-item);font-weight:500;color:var(--st-muted)}
.subtitle{color:var(--st-muted);font-size:var(--st-fs-meta)}
.page-head .subtitle::before{content:"";display:inline-block;width:1px;height:11px;margin-right:10px;background:var(--st-line-strong);vertical-align:-1px}
@media (max-width:1180px) and (min-width:901px){
  body.app{grid-template-columns:var(--st-sidebar-rail) minmax(0,1fr)}
  .brand-name,.nav-label,.nav-group-label{display:none}
  .sidebar-head{padding:0;justify-content:center}
  .rail-btn{display:none}
  .nav{align-items:center}
  .nav-group{width:100%;align-items:center}
  .nav-group+.nav-group{padding-top:10px;border-top:1px solid var(--st-line)}
  .nav-item{width:34px;justify-content:center;padding:0;gap:0}
  .nav-badge{position:absolute;top:-2px;right:-4px;margin:0}
  .sidebar-foot{flex-direction:column;padding-inline:0}
  .search{width:150px}
}

/* status dot (semantic state only) */
.st-dot{position:relative;display:inline-block;width:8px;height:8px;border-radius:50%;flex:none;background:var(--st-muted)}
.st-dot-ok{background:var(--st-ok)} .st-dot-warn{background:var(--st-warn)} .st-dot-bad{background:var(--st-bad)}
.st-dot-idle{background:none;box-shadow:inset 0 0 0 1.5px var(--st-muted)}
.st-dot-ai{background:var(--st-gold)}
.st-dot-ai.is-running::after{content:"";position:absolute;inset:-4px;border-radius:50%;background:var(--st-gold);opacity:0;animation:st-breathe 2.4s var(--st-ease) infinite}

/* banners */
.banner{display:block;padding:12px 16px;border-radius:var(--st-r-surface);font-size:var(--st-fs-body);border:1px solid;margin:0 0 12px;color:var(--st-text);line-height:1.6}
.banner-amber{background:var(--st-warn-soft);border-color:color-mix(in srgb,var(--st-warn) 28%,transparent)}
.banner-red{background:var(--st-bad-soft);border-color:color-mix(in srgb,var(--st-bad) 28%,transparent)}
.banner-violet{background:var(--st-gold-soft);border-color:var(--st-gold-line)}
.banner-green{background:var(--st-ok-soft);border-color:color-mix(in srgb,var(--st-ok) 28%,transparent)}
.banner a.link{margin-left:6px;white-space:nowrap}

/* surfaces */
.card{background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-surface);padding:16px 18px}
.panel{padding:0}
.panel+.panel{margin-top:28px}
.panel-title{font-size:var(--st-fs-body);font-weight:600;margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--st-line-strong)}
.panel>details>summary.panel-title{margin-bottom:10px}
.block{margin-top:32px}
.block+.section-head,.block+section{margin-top:32px}
.section-head{display:flex;align-items:baseline;gap:12px;margin-bottom:16px;padding-bottom:0;flex-wrap:wrap}
.section-title{font-size:var(--st-fs-head);font-weight:600;letter-spacing:-.012em;color:var(--st-text)}
.section-head .muted.small,.section-head .st-help{color:var(--st-muted)}
.section-head+.toolbar{margin-top:2px}
.section-head .muted.small{font-size:var(--st-fs-meta)}
/* A toolbar is one row: what you are looking at on the left, what you can do on the right. */
.toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.toolbar .filters-more{flex-basis:auto;margin:0}
.toolbar>.spacer{flex:1 1 auto;min-width:0}
.live{display:inline-flex;align-items:center;gap:5px;font-size:var(--st-fs-meta);color:var(--st-muted)}
.live::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--st-ok)}
.empty{padding:26px 20px;border:1px solid var(--st-line);border-radius:var(--st-r-surface);background:var(--st-surface-2);color:var(--st-muted);font-size:var(--st-fs-body);text-align:left}
.footnote{margin:28px 0 0;color:var(--st-muted);font-size:var(--st-fs-meta);line-height:1.7;max-width:960px}
.st-help{font-size:var(--st-fs-meta);color:var(--st-muted)}
.st-link{display:inline-flex;align-items:center;gap:4px;color:var(--st-text-2);font-size:var(--st-fs-meta);border-bottom:1px solid var(--st-line-strong);line-height:1.3}
.st-link:hover{color:var(--st-text);border-color:var(--st-text)}
.section-head .st-link{margin-left:auto}

/* KPI tiles */
.kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-surface)}
.kpi{padding:14px 18px;display:flex;flex-direction:column;gap:5px;min-width:0;border-left:1px solid var(--st-line)}
.kpi:first-child{border-left:0}
.kpi-dot{display:none}
.kpi-label{font-size:var(--st-fs-meta);font-weight:500;color:var(--st-muted);order:-1}
.kpi-num{font-family:var(--st-font-num);font-variant-numeric:tabular-nums;letter-spacing:-.025em;font-size:var(--st-fs-metric);font-weight:600;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:var(--st-fs-meta);color:var(--st-muted)}
@media (max-width:1100px){.kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi:nth-child(3){border-left:0}.kpi:nth-child(n+3){border-top:1px solid var(--st-line)}}
.chip{height:20px;display:inline-flex;align-items:center;padding:0 7px;border-radius:var(--st-r-control);font-size:var(--st-fs-micro);font-weight:500;background:var(--st-sunken);color:var(--st-text-2)}
.kpi.outline .kpi-num{color:var(--st-gold-ink)}
.main-grid{display:grid;grid-template-columns:minmax(0,1fr) var(--st-rail-w);gap:28px;margin-top:0;align-items:start}

/* buttons: primary (one per view) · ink/ghost (secondary) · danger */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:var(--st-ctl);padding:0 12px;border-radius:var(--st-r-control);border:1px solid transparent;background:none;cursor:pointer;font-size:var(--st-fs-body);font-weight:500;white-space:nowrap;transition:background-color var(--st-t-fast) var(--st-ease),border-color var(--st-t-fast) var(--st-ease),color var(--st-t-fast) var(--st-ease)}
.btn:active:not(:disabled){transform:scale(.985)}
.btn:disabled{opacity:.45;cursor:not-allowed}
.btn-primary{background:var(--st-primary-bg);color:var(--st-primary-fg)} .btn-primary:hover:not(:disabled){background:var(--st-primary-hover)}
.btn-ink{border-color:var(--st-line-strong);color:var(--st-text);background:var(--st-surface)} .btn-ink:hover:not(:disabled){border-color:var(--st-text)}
.btn-ghost{border-color:var(--st-line);color:var(--st-text-2);background:var(--st-surface)} .btn-ghost:hover:not(:disabled){border-color:var(--st-line-strong);color:var(--st-text)}
.btn-danger{border-color:color-mix(in srgb,var(--st-bad) 30%,transparent);color:var(--st-bad);background:var(--st-surface)} .btn-danger:hover:not(:disabled){background:var(--st-bad-soft)}
.btn-sm{height:var(--st-ctl-sm);padding:0 9px;font-size:var(--st-fs-meta)}
.btn-lg{height:38px;padding:0 16px}
.btn-muted{display:flex;align-items:center;justify-content:center;height:var(--st-ctl);margin-top:8px;border:1px solid var(--st-line);border-radius:var(--st-r-control);font-size:var(--st-fs-meta);color:var(--st-text-2)}
.btn-muted:hover{border-color:var(--st-line-strong);color:var(--st-text)}
.circle-btn{width:var(--st-ctl-sm);height:var(--st-ctl-sm);border-radius:var(--st-r-control);border:1px solid var(--st-line);background:var(--st-surface);display:grid;place-items:center;color:var(--st-muted)}
.circle-btn:hover{border-color:var(--st-line-strong);color:var(--st-text)}

/* tables */
.table-wrap{overflow-x:auto}
table.data{width:100%;border-collapse:collapse}
.data th{font-size:var(--st-fs-micro);font-weight:500;color:var(--st-muted);text-align:left;padding:0 16px 7px 0;white-space:nowrap;border-bottom:1px solid var(--st-line-strong);letter-spacing:.02em}
.data td{padding:10px 16px 10px 0;border-bottom:1px solid var(--st-line);vertical-align:middle;font-size:var(--st-fs-body)}
.data th:last-child,.data td:last-child{padding-right:0}
.data tbody tr:last-child td{border-bottom:0}
.data tbody tr:hover td{background:color-mix(in srgb,var(--st-sunken) 55%,transparent)}
.data tbody tr:hover td:first-child{box-shadow:inset 2px 0 0 var(--st-line-strong)}
.data.compact td{padding:8px 14px 8px 0;font-size:var(--st-fs-meta)}
.id-pill{display:inline-grid;place-items:center;min-width:30px;height:20px;padding:0 6px;border-radius:var(--st-r-control);border:1px solid var(--st-line-strong);font-family:var(--st-font-num);font-variant-numeric:tabular-nums;font-size:var(--st-fs-meta);font-weight:600;color:var(--st-text-2)}
.id-pill.hot{border-color:var(--st-gold-line);color:var(--st-gold-ink);background:var(--st-gold-soft)}
.primary{font-size:var(--st-fs-body);font-weight:600}
.secondary{font-size:var(--st-fs-meta);color:var(--st-muted);margin-top:1px}
.quote-cell{color:var(--st-text-2);font-size:var(--st-fs-body)}

/* badges (pill): gold = key state / AI executing, never decoration */
.status{display:inline-flex;align-items:center;gap:5px;height:20px;padding:0 8px;border-radius:var(--st-r-pill);font-size:var(--st-fs-micro);font-weight:500;white-space:nowrap;vertical-align:middle;background:var(--st-sunken);color:var(--st-text-2)}
.s-green{background:var(--st-ok-soft);color:var(--st-ok)} .s-amber{background:var(--st-warn-soft);color:var(--st-warn)} .s-red{background:var(--st-bad-soft);color:var(--st-bad)}
.s-violet,.s-coral{background:var(--st-gold-soft);color:var(--st-gold-ink);box-shadow:inset 0 0 0 1px var(--st-gold-line)}
.s-coral-soft{background:none;color:var(--st-text-2);box-shadow:inset 0 0 0 1px var(--st-line-strong)}
.s-neutral{background:var(--st-sunken);color:var(--st-text-2)}
.mode-pill{display:inline-flex;align-items:center;height:20px;padding:0 8px;border-radius:var(--st-r-pill);font-size:var(--st-fs-micro);font-weight:500;white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}
.mode-live{box-shadow:inset 0 0 0 1px var(--st-line-strong);color:var(--st-text-2)}
.mode-simulation{background:var(--st-warn-soft);color:var(--st-warn);box-shadow:none}
.mode-none{background:var(--st-bad-soft);color:var(--st-bad)}

/* unfinished-feature placeholders: dashed, neutral, never look actionable */
.ph-tag{display:inline-flex;align-items:center;height:20px;padding:0 8px;margin-left:6px;border:1px dashed var(--st-line-strong);border-radius:var(--st-r-control);font-size:var(--st-fs-micro);font-weight:500;color:var(--st-muted);background:var(--st-surface-2);white-space:nowrap;vertical-align:middle;cursor:help}
.btn-placeholder{background:var(--st-surface-2);color:var(--st-muted);border:1px dashed var(--st-line-strong);cursor:help}
.btn-placeholder:disabled{opacity:1;cursor:help}
.btn-placeholder .ph-tag{border:0;background:transparent;padding:0;margin-left:4px;height:auto}
.ph-block{border:1px dashed var(--st-line-strong);border-radius:var(--st-r-lg);background:var(--st-surface-2);padding:16px 18px;color:var(--st-muted);font-size:var(--st-fs-body);line-height:1.6}
.ph-block p{margin:4px 0 0}
.ph-head{display:flex;align-items:center;gap:6px}
.ph-title{font-size:var(--st-fs-body);font-weight:600;color:var(--st-text-2)}
.ph-head .ph-tag{margin-left:0}

/* activity stream (Steer 动态) */
.activity{list-style:none;margin:0;padding:0;position:relative}
.activity::before{content:"";position:absolute;left:4px;top:10px;bottom:16px;width:1px;background:var(--st-line)}
.activity li{position:relative;padding:10px 0 12px 22px;display:grid;gap:4px}
.activity li::before{content:"";position:absolute;left:0;top:16px;width:9px;height:9px;border-radius:50%;background:var(--st-surface);box-shadow:inset 0 0 0 1.5px var(--st-line-strong)}
.activity li:first-child::before{background:var(--st-gold);box-shadow:0 0 0 3px var(--st-gold-soft)}
.act-icon{display:none}
.act-title{font-size:var(--st-fs-body);line-height:1.5;font-weight:500}
.act-desc{font-size:var(--st-fs-meta);color:var(--st-text-2);line-height:1.55;word-break:break-word}
.act-time{font-family:var(--st-font-mono);font-size:var(--st-fs-micro);color:var(--st-muted);order:-1}
.rail{position:sticky;top:72px;display:flex;flex-direction:column;gap:12px;padding-left:24px;border-left:1px solid var(--st-line)}
.rail-card{padding:0}
.rail-head{display:flex;align-items:center;gap:7px;margin-bottom:6px;padding-bottom:7px;border-bottom:1px solid var(--st-line-strong)}
.rail-head h2{font-size:var(--st-fs-body);font-weight:600}
.rail-head .live{margin-left:auto}
.rail-note{font-size:var(--st-fs-meta);color:var(--st-muted);line-height:1.6;padding:0 4px}

/* metrics */
.stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border-top:1px solid var(--st-line-strong);border-bottom:1px solid var(--st-line)}
.stat{padding:11px 16px 12px 0}
.stat+.stat{padding-left:16px;border-left:1px solid var(--st-line)}
.stat-label{font-size:var(--st-fs-meta);color:var(--st-muted)}
.stat-num{font-family:var(--st-font-num);font-variant-numeric:tabular-nums;letter-spacing:-.025em;font-size:var(--st-fs-item);font-weight:600;margin-top:2px}
.stat-group-title{font-size:var(--st-fs-item);font-weight:600;margin:24px 0 10px}
@media (max-width:1100px){.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.stat:nth-child(4){border-left:0}.stat:nth-child(n+4){border-top:1px solid var(--st-line)}}
.stat-group-title:first-child{margin-top:0}
.funnel{display:grid;grid-template-columns:repeat(auto-fit,minmax(92px,1fr));border-top:1px solid var(--st-line-strong);border-bottom:1px solid var(--st-line);overflow-x:auto}
.funnel-step{position:relative;padding:12px 16px 13px 0;display:grid;gap:1px}
.funnel-step+.funnel-step{padding-left:16px;border-left:1px solid var(--st-line)}
.funnel-step .num{font-size:var(--st-fs-metric);font-weight:600;line-height:1.15;font-family:var(--st-font-num);font-variant-numeric:tabular-nums;letter-spacing:-.025em}
.briefing{margin:0;padding:0;list-style:none;border-top:1px solid var(--st-line-strong)}
.briefing li{padding:10px 0;font-size:var(--st-fs-body);border-bottom:1px solid var(--st-line)}
.briefing li:last-child{border-bottom:0}

/* leads */
.lead-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:12px}
.lead-list{background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-lg);overflow:hidden}
.lead-head,.lead-row{display:grid;grid-template-columns:56px minmax(0,1fr) 190px 190px 110px 108px;gap:14px;align-items:center}
.lead-head{padding:8px 16px;border-bottom:1px solid var(--st-line);background:var(--st-surface-2);font-size:var(--st-fs-micro);color:var(--st-muted);letter-spacing:.04em}
.lead-row{position:relative;padding:10px 16px;border-bottom:1px solid var(--st-line);transition:background var(--st-t-fast) var(--st-ease)}
.lead-row:last-child{border-bottom:none}
.lead-row:hover{background:var(--st-surface-2)}
.lead-row:has(.lead-open:focus-visible){background:var(--st-surface-2);outline:2px solid var(--st-text);outline-offset:-2px}
.lead-open::after{content:"";position:absolute;inset:0;z-index:0}
.lead-open{color:inherit;text-decoration:none}
.lead-col-score{display:flex;flex-direction:column;align-items:flex-start;gap:1px}
.lead-row .lead-score{font-size:var(--st-fs-page);font-weight:500;color:var(--st-text-2);margin:0}
.lead-row.is-hot .lead-score{color:var(--st-gold-ink);font-weight:600}
.lead-tier{font-size:var(--st-fs-micro);color:var(--st-muted)}
.lead-col-signal{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:9px;row-gap:3px;align-items:center;min-width:0}
.lead-col-signal .avatar{grid-row:1/3}
.avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 auto;border-radius:50%;background:var(--st-sunken);color:var(--st-muted);font-size:var(--st-fs-meta);overflow:hidden}
.avatar-fallback{display:block;width:56%;height:56%;color:var(--st-muted)}
.avatar img[hidden],.acct-avatar img[hidden]{display:none!important}
.avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.avatar-sm{width:22px;height:22px;font-size:var(--st-fs-micro)}
.avatar-lg{width:40px;height:40px;font-size:var(--st-fs-item)}
.lead-row-quote{font-size:var(--st-fs-body);line-height:1.45;color:var(--st-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lead-row-meta{display:flex;align-items:center;gap:6px;font-size:var(--st-fs-micro);color:var(--st-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.row-flag{border:1px solid var(--st-line-strong);border-radius:var(--st-r-control);padding:0 5px;line-height:15px;font-size:var(--st-fs-micro);color:var(--st-text-2)}
.lead-col-why{display:flex;flex-wrap:wrap;gap:4px;min-width:0}
.lead-col-why .ev{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.lead-col-origin{display:flex;flex-direction:column;gap:2px;min-width:0;font-size:var(--st-fs-micro);color:var(--st-muted)}
.lead-origin-post{color:var(--st-text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lead-origin-query{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lead-col-origin .link{position:relative;z-index:1}
.lead-col-owner{display:flex;align-items:center;gap:6px;min-width:0;font-size:var(--st-fs-meta);color:var(--st-text-2)}
.lead-owner-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lead-col-status{display:flex;flex-direction:column;align-items:flex-end;gap:1px;font-size:var(--st-fs-meta);color:var(--st-muted);text-align:right;white-space:nowrap}
.lead-col-status.is-wait{color:var(--st-gold-ink)}
.lead-col-status.is-stop{color:var(--st-bad)}
.lead-stage{font-size:var(--st-fs-micro);color:var(--st-muted)}
@media (max-width:1400px){
  .lead-head,.lead-row{grid-template-columns:56px minmax(0,1fr) 190px 110px 108px}
  .lead-head span:nth-child(3),.lead-col-why{display:none}
}
@media (max-width:1120px){
  .lead-head,.lead-row{grid-template-columns:56px minmax(0,1fr) 108px}
  .lead-head span:nth-child(4),.lead-head span:nth-child(5),.lead-col-origin,.lead-col-owner{display:none}
}
.chips{display:flex;flex-wrap:wrap;gap:5px}
.ev-lines{list-style:none;margin:6px 0 0;padding:0;display:grid;gap:3px}
.ev-lines li{position:relative;padding-left:12px;font-size:var(--st-fs-meta);color:var(--st-text-2);line-height:1.55}
.ev-lines li::before{content:"";position:absolute;left:3px;top:8px;width:3px;height:3px;border-radius:50%;background:var(--st-line-strong)}
.ev,.chip-neutral{display:inline-flex;align-items:center;height:20px;padding:0 7px;border-radius:var(--st-r-control);border:1px solid var(--st-line);background:var(--st-surface-2);color:var(--st-text-2);font-size:var(--st-fs-micro);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
details.breakdown summary{cursor:pointer;font-size:var(--st-fs-meta);color:var(--st-text-2);list-style:none;display:inline-flex;align-items:center;gap:6px;height:var(--st-ctl-sm);padding:0 9px;border-radius:var(--st-r-control);border:1px solid var(--st-line);background:var(--st-surface-2)}
details.breakdown summary::-webkit-details-marker{display:none}
details.breakdown[open] summary{border-color:var(--st-text);color:var(--st-text)}
details.breakdown[open]>*:not(summary){animation:st-enter var(--st-t-base) var(--st-ease)}
.bar-row{display:grid;grid-template-columns:96px 1fr 52px;gap:10px;align-items:center;font-size:var(--st-fs-meta);color:var(--st-text-2);margin-top:10px}
.bar-reason{font-size:var(--st-fs-meta);color:var(--st-muted);margin:2px 0 0 106px;line-height:1.4}
.bar{height:4px;background:var(--st-sunken);border-radius:999px;overflow:hidden;display:block}
.bar i{display:block;height:100%;background:var(--st-gold);border-radius:999px}
.next{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid var(--st-line);padding-top:10px;margin-top:2px;font-size:var(--st-fs-meta);color:var(--st-text-2);flex-wrap:wrap}
.ev-more{cursor:help}
.next b{font-weight:600;color:var(--st-text)}

.detail-grid{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:0 32px;align-items:start}
.detail-grid>*+*{padding-left:32px;margin-left:-32px;border-left:1px solid var(--st-line)}
@media (max-width:1000px){.detail-grid{grid-template-columns:minmax(0,1fr);gap:28px}.detail-grid>*+*{padding-left:0;margin-left:0;border-left:0}}
.kv{display:grid;grid-template-columns:auto minmax(0,1fr);gap:0;font-size:var(--st-fs-body);margin:0}
.kv dt{padding:7px 18px 7px 0;color:var(--st-muted);font-size:var(--st-fs-meta);white-space:nowrap;border-bottom:1px solid var(--st-line)}
.kv dd{margin:0;padding:7px 0;word-break:break-word;border-bottom:1px solid var(--st-line)}
.kv dt:last-of-type,.kv dd:last-of-type{border-bottom:0}
.kv-missing{margin:10px 0 0;font-size:var(--st-fs-meta);color:var(--st-muted)}
.timeline{list-style:none;margin:0;padding:0}
.timeline li{padding:10px 0;border-bottom:1px solid var(--st-line);font-size:var(--st-fs-body)}
.timeline li:last-child{border-bottom:0}
.guards{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:4px}
.guards li{font-size:var(--st-fs-meta);display:flex;gap:8px;align-items:flex-start}
.guards .g-ok{color:var(--st-ok)} .guards .g-review{color:var(--st-warn)} .guards .g-block{color:var(--st-bad)}

/* accounts */
.acct-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,380px),1fr));gap:20px;align-items:stretch}
.acct{background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-surface);padding:22px;display:flex;flex-direction:column;gap:16px;min-width:0}
.acct-top{display:flex;gap:14px;align-items:center}
.acct-avatar{position:relative;display:grid;place-items:center;flex:none;width:46px;height:46px;border-radius:50%;background:var(--st-sunken);color:var(--st-text-2);font-weight:600;font-size:var(--st-fs-head)}
.acct-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.acct-avatar .st-dot{position:absolute;right:3px;bottom:3px;width:10px;height:10px;box-shadow:0 0 0 2px var(--st-surface);z-index:1}
.acct-avatar .st-dot-idle{background:var(--st-surface);box-shadow:0 0 0 2px var(--st-surface),inset 0 0 0 1.5px var(--st-muted)}
.acct-xhs{display:flex;flex-direction:column;gap:10px}
.acct-bio{margin:0;font-size:var(--st-fs-body);color:var(--st-text-2);line-height:1.55}
.acct-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;font-size:var(--st-fs-meta);color:var(--st-muted)}
.acct-stats span{display:grid}
.acct-stats b{order:-1;font-family:var(--st-font-num);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:var(--st-fs-page);color:var(--st-text);font-weight:600}
.acct-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.acct-note{display:flex;flex-direction:column;gap:4px;min-width:0}
.acct-note img,.acct-note-empty{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--st-r-surface);background:var(--st-sunken);display:block}
.acct-note:hover .acct-note-title{color:var(--st-text)}
.acct-note-title{font-size:var(--st-fs-meta);line-height:1.35;color:var(--st-text-2);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.acct-pos{min-height:3.1em;margin:0;font-size:var(--st-fs-meta);color:var(--st-muted);line-height:1.55}
.acct-meta{font-size:var(--st-fs-meta);color:var(--st-muted);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 12px;padding-block:16px;border-block:1px solid var(--st-line)}
.acct-meta span{display:flex;flex-direction:column;gap:4px}
.acct-meta b{font-size:var(--st-fs-head);font-weight:600;color:var(--st-text);font-variant-numeric:tabular-nums}
.acct-top .primary{font-size:var(--st-fs-item);overflow-wrap:anywhere}
.acct-details{border-top:1px solid var(--st-line);padding-top:12px}
.acct-details>summary{cursor:pointer;font-size:var(--st-fs-meta);color:var(--st-text-2);padding:4px 0}
.acct-details[open]>summary{margin-bottom:14px}
.acct-detail-body{display:grid;gap:14px}
.acct-capabilities{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.section-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.acct-foot{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;align-items:center;padding-top:14px;border-top:1px solid var(--st-line)}
.density{display:flex;align-items:center;gap:10px}
.density .bar{width:110px}

/* conversations */
.thread{display:flex;flex-direction:column;gap:10px}
.msg{max-width:78%;padding:10px 14px;border-radius:var(--st-r-surface);font-size:var(--st-fs-body);line-height:1.6;white-space:pre-wrap;word-break:break-word}
.msg-in{background:var(--st-surface);border:1px solid var(--st-line);align-self:flex-start;border-top-left-radius:4px}
.msg-out{background:var(--st-sunken);align-self:flex-end;border-top-right-radius:4px}
.msg-meta{font-size:var(--st-fs-meta);color:var(--st-muted);margin-top:4px;white-space:normal}

/* content calendar */
.calendar{display:grid;grid-template-columns:160px repeat(7,minmax(120px,1fr));gap:8px;min-width:1100px}
.cal-head{font-size:var(--st-fs-meta);color:var(--st-muted);padding:4px 6px}
.cal-acct{font-size:var(--st-fs-body);font-weight:600;padding:8px 6px}
.cal-cell{background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-surface);padding:8px;min-height:68px;display:flex;flex-direction:column;gap:6px}
.cal-post{font-size:var(--st-fs-meta);line-height:1.4;border-radius:var(--st-r-control);padding:5px 8px;background:var(--st-surface-2);border:1px solid var(--st-line)}

/* forms */
form.stack label,.field{display:flex;flex-direction:column;gap:5px;font-size:var(--st-fs-meta);font-weight:500;color:var(--st-text-2)}
input[type=text],input[type=password],input[type=number],input[type=url],input[type=datetime-local],input[type=search],select,textarea{font-size:var(--st-fs-body);font-weight:400;color:var(--st-text);background:var(--st-surface);border:1px solid var(--st-line-strong);border-radius:var(--st-r-control);padding:0 10px;height:var(--st-ctl);width:100%;transition:border-color var(--st-t-fast) var(--st-ease),box-shadow var(--st-t-fast) var(--st-ease)}
select{padding-right:6px;cursor:pointer}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--st-text-2);box-shadow:0 0 0 3px var(--st-sunken)}
input::placeholder,textarea::placeholder{color:var(--st-muted)}
textarea{min-height:84px;height:auto;padding:8px 10px;resize:vertical;line-height:1.6}
textarea.code{font-family:var(--st-font-mono);font-size:var(--st-fs-meta);min-height:200px}
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px 14px;align-items:end}
.inline-form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.inline-form input,.inline-form select{width:auto;min-width:140px}
.filters{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.filters input,.filters select{width:auto;min-width:0}
.filters-more{flex-basis:auto;margin:0}
.filters-more[open]{flex-basis:100%}
.filters-more summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:6px;height:var(--st-ctl-sm);padding:0 9px;border:1px solid var(--st-line);border-radius:var(--st-r-control);background:var(--st-surface);color:var(--st-text-2);font-size:var(--st-fs-meta)}
.filters-more summary::-webkit-details-marker{display:none}
.filters-more[open] summary{border-style:solid;border-color:var(--st-text);color:var(--st-text)}
.filters-more-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.section-head .filters-more{margin-left:auto}
.section-head .filters-more[open] .filters-more-row{position:absolute;right:0;top:calc(100% + 6px);z-index:30;width:max-content;max-width:min(560px,80vw);padding:10px;background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-surface);box-shadow:var(--st-lift),0 16px 36px -20px rgba(0,0,0,.3)}
.section-head .filters-more{position:relative}
/* 对话: a Xiaohongshu-shaped inbox — people on the left, the thread on the right, the composer under it */
.im{display:grid;grid-template-columns:316px minmax(0,1fr);height:min(760px,calc(100dvh - 250px));min-height:460px;border:1px solid var(--st-line);border-radius:var(--st-r-lg);background:var(--st-surface);overflow:hidden}
.im-list{display:flex;flex-direction:column;min-width:0;border-right:1px solid var(--st-line);background:var(--st-surface)}
.im-list-head{display:flex;align-items:center;gap:10px;padding:14px 16px 10px}
.im-list-title{font-size:var(--st-fs-item);font-weight:600}
.im-tabs{display:inline-flex;gap:2px;margin-left:auto;padding:2px;border:1px solid var(--st-line);border-radius:var(--st-r-control);background:var(--st-surface-2)}
.im-tab{display:inline-flex;align-items:center;gap:5px;height:24px;padding:0 9px;border-radius:var(--st-r-tag);color:var(--st-text-2);font-size:var(--st-fs-meta)}
.im-tab:hover{color:var(--st-text)}
.im-tab.is-on{background:var(--st-surface);color:var(--st-text);font-weight:600;box-shadow:0 1px 1px rgba(0,0,0,.04),inset 0 0 0 1px var(--st-line)}
.view-tabs .im-tab{height:var(--st-ctl-sm);padding:0 11px;font-size:var(--st-fs-body)}
.im-people{flex:1;overflow-y:auto;padding:4px 8px 8px}
.im-person{display:flex;gap:10px;align-items:flex-start;padding:10px;border-radius:var(--st-r-surface);color:inherit}
.im-person:hover{background:var(--st-surface-2)}
.im-person.is-open{background:var(--st-sunken)}
.im-person-body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}
.im-person-top{display:flex;align-items:baseline;gap:8px}
.im-person-name{flex:1;min-width:0;font-size:var(--st-fs-body);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.im-person-time{flex:none;font-size:var(--st-fs-micro);color:var(--st-muted)}
.im-person-preview{font-size:var(--st-fs-meta);color:var(--st-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.im-person-foot{display:flex;align-items:center;gap:6px;font-size:var(--st-fs-micro);color:var(--st-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.im-flag{flex:none;padding:0 6px;border-radius:999px;background:var(--st-sunken);color:var(--st-text-2);font-size:var(--st-fs-micro);line-height:16px}
.im-flag-warn{background:var(--st-warn-soft);color:var(--st-warn)}
.im-flag-quiet{background:transparent;border:1px solid var(--st-line);color:var(--st-muted)}
.im-new{display:block;padding:12px 16px;border-top:1px solid var(--st-line);color:var(--st-text-2);font-size:var(--st-fs-meta)}
.im-new:hover{background:var(--st-surface-2);color:var(--st-text)}
.im-list-empty{margin:24px 16px;color:var(--st-muted);font-size:var(--st-fs-meta);line-height:1.7}
.im-main{display:flex;flex-direction:column;min-width:0;background:var(--st-surface-2)}
.im-head{display:flex;align-items:center;gap:10px;padding:12px 18px;border-bottom:1px solid var(--st-line);background:var(--st-surface)}
.im-head-body{min-width:0}
.im-head-name{display:flex;align-items:center;gap:8px;font-size:var(--st-fs-body);font-weight:600}
.im-head-meta{font-size:var(--st-fs-micro);color:var(--st-muted);margin-top:2px}
.im-back{display:none;font-size:var(--st-fs-body);color:var(--st-text-2)}
.im-handoff{padding:10px 18px;background:var(--st-warn-soft);border-bottom:1px solid color-mix(in srgb,var(--st-warn) 26%,transparent);color:var(--st-warn);font-size:var(--st-fs-meta)}
.im-extract{border-bottom:1px solid var(--st-line);background:var(--st-surface)}
.im-extract summary{cursor:pointer;list-style:none;padding:9px 18px;font-size:var(--st-fs-meta);color:var(--st-text-2)}
.im-extract summary::-webkit-details-marker{display:none}
.im-extract[open] summary{color:var(--st-text)}
.im-extract-body{padding:0 18px 14px}
.im-thread{flex:1;overflow-y:auto;padding:18px 20px;display:flex;flex-direction:column;gap:12px}
.im-day{align-self:center;font-size:var(--st-fs-micro);color:var(--st-muted);margin:6px 0}
.im-msg{display:flex;gap:8px;align-items:flex-end;max-width:76%}
.im-msg.is-out{flex-direction:row-reverse;align-self:flex-end}
.im-msg-body{min-width:0}
.im-bubble{padding:9px 13px;border-radius:var(--st-r-surface);font-size:var(--st-fs-body);line-height:1.65;white-space:pre-wrap;word-break:break-word;background:var(--st-surface);border:1px solid var(--st-line);border-bottom-left-radius:5px}
.is-out .im-bubble{background:var(--st-primary-bg);color:var(--st-primary-fg);border-color:transparent;border-bottom-left-radius:14px;border-bottom-right-radius:5px}
.im-msg-meta{margin-top:4px;font-size:var(--st-fs-micro);color:var(--st-muted)}
.is-out .im-msg-meta{text-align:right}
.im-draft{padding:10px 12px;border-radius:var(--st-r-surface);background:var(--st-gold-soft);border:1px solid var(--st-gold-line)}
.im-draft-head{font-size:var(--st-fs-micro);font-weight:600;color:var(--st-gold-ink);margin-bottom:6px}
.im-draft textarea{min-height:76px;font-size:var(--st-fs-body);background:var(--st-surface)}
.im-compose{border-top:1px solid var(--st-line);background:var(--st-surface);padding:12px 18px 14px}
.im-compose-label{display:block;font-size:var(--st-fs-meta);color:var(--st-text-2);margin-bottom:6px}
.im-compose textarea{min-height:70px;border-radius:var(--st-r-surface);background:var(--st-surface-2);font-size:var(--st-fs-body)}
.im-compose-foot{display:flex;align-items:center;gap:12px;margin-top:8px}
.im-compose-foot .st-help{flex:1;min-width:0}
.im-compose.is-blocked{color:var(--st-muted);font-size:var(--st-fs-meta)}
.im-compose-new .form-grid{margin-bottom:10px}
.im-explain{align-items:center;justify-content:center;padding:28px}
.im-explain-body{max-width:640px}
.im-explain-title{margin:0 0 6px;font-size:var(--st-fs-head);font-weight:600}
.im-explain-text{margin:0 0 18px;color:var(--st-text-2);font-size:var(--st-fs-body);line-height:1.7}
.im-explain .flow{margin-bottom:16px}
@media (max-width:900px){
  .im{grid-template-columns:1fr;height:auto;min-height:0}
  .im-head{flex-wrap:wrap;row-gap:6px;padding:10px 14px}
  .im-back,.im-head .link{white-space:nowrap}
  .im-head-body{flex:1 1 auto;min-width:150px}
  .im-list{border-right:0;border-bottom:1px solid var(--st-line)}
  .im-people{max-height:340px}
  .im.has-open .im-list{display:none}
  .im.has-open .im-back{display:inline}
  .im-thread{max-height:60dvh}
  .im-msg{max-width:88%}
}
/* 「?」: the explanation stays out of the page until someone asks for it */
.hint{display:inline-block;position:relative;vertical-align:middle;margin-left:6px}
.hint>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1px solid var(--st-line-strong);color:var(--st-muted);font-size:var(--st-fs-micro);font-weight:600;line-height:1}
.hint>summary::-webkit-details-marker{display:none}
.hint>summary:hover{color:var(--st-text);border-color:var(--st-text-2)}
.hint[open]>summary{background:var(--st-sunken);color:var(--st-text)}
.hint-body{position:absolute;z-index:60;top:22px;left:-8px;width:min(340px,78vw);padding:10px 12px;border:1px solid var(--st-line);border-radius:var(--st-r-md);background:var(--st-surface);box-shadow:var(--st-lift);font-size:var(--st-fs-meta);line-height:1.7;font-weight:400;color:var(--st-text-2);text-align:left;white-space:normal}
.hint-body p{margin:0 0 6px}
.hint-body p:last-child{margin:0}

.acct-voice, .acct-adv{margin-top:2px}
.acct-voice>summary, .acct-adv>summary{cursor:pointer;list-style:none}
.acct-voice>summary::-webkit-details-marker, .acct-adv>summary::-webkit-details-marker{display:none}
.acct-voice>summary::before, .acct-adv>summary::before{content:"▸ ";color:var(--st-muted)}
.acct-voice[open]>summary::before, .acct-adv[open]>summary::before{content:"▾ "}
.acct-voice .veh-list{margin-top:6px;font-size:var(--st-fs-meta)}

/* 车型库: the line-up as photo cards — facts on the left of a card page, AI material on the right */
.veh-stat-row{display:flex;gap:16px;flex-wrap:wrap;margin:0}
.veh-stat{font-size:var(--st-fs-meta);color:var(--st-muted)}
.veh-stat b{font-family:var(--st-font-num);font-size:var(--st-fs-body);font-weight:600;color:var(--st-text);margin-right:3px}
.veh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(246px,1fr));gap:16px}
.veh-library{margin-top:40px;padding-top:28px;border-top:1px solid var(--st-line)}
.veh{display:flex;flex-direction:column;border:1px solid var(--st-line);border-radius:var(--st-r-lg);background:var(--st-surface);color:inherit;overflow:hidden;transition:border-color var(--st-t-fast) var(--st-ease),box-shadow var(--st-t-fast) var(--st-ease)}
.veh:hover{border-color:var(--st-line-strong);box-shadow:var(--st-lift)}
.veh.is-archived{opacity:.62}
.veh-cover{position:relative;aspect-ratio:16/10;background:var(--st-sunken);overflow:hidden}
.veh-cover img{width:100%;height:100%;object-fit:cover;display:block}
.veh-cover.is-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px;text-align:center}
.veh-cover-text{font-size:var(--st-fs-head);font-weight:600;color:var(--st-text-2);letter-spacing:.02em}
.veh-cover-note{font-size:var(--st-fs-micro);color:var(--st-muted)}
.veh-body{display:flex;flex-direction:column;gap:6px;padding:11px 12px 12px;min-width:0;flex:1}
.veh-name{font-size:var(--st-fs-body);font-weight:600;line-height:1.4}
.veh-trim{display:block;font-size:var(--st-fs-meta);font-weight:400;color:var(--st-muted);margin-top:2px}
.veh-price-row{display:flex;align-items:baseline;gap:7px;flex-wrap:wrap}
.veh-price{font-family:var(--st-font-num);font-size:var(--st-fs-head);font-weight:600}
.veh-price-lg .veh-price{font-size:var(--st-fs-metric)}
.veh-price-note{font-size:var(--st-fs-micro);color:var(--st-muted)}
.veh-price-was{font-size:var(--st-fs-meta);color:var(--st-muted);text-decoration:line-through}
.veh-cut{font-size:var(--st-fs-micro);color:var(--st-bad);background:var(--st-bad-soft);border-radius:var(--st-r-control);padding:1px 6px}
.veh-spec-line{font-size:var(--st-fs-meta);color:var(--st-text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.veh-foot{display:flex;align-items:center;gap:6px;font-size:var(--st-fs-micro);color:var(--st-muted);white-space:nowrap;overflow:hidden;margin-top:auto;padding-top:2px}
.veh-foot>span+span::before,.veh-foot>.veh-stock+span::before{content:"·";margin-right:6px;color:var(--st-line-strong)}
.veh-stock.is-on{color:var(--st-ok)}
.veh-stock.is-off{color:var(--st-muted)}
.veh-flag{border:1px solid var(--st-line);border-radius:var(--st-r-control);padding:1px 6px;font-size:var(--st-fs-micro)}
.veh-flag.is-ai{border-color:var(--st-gold-line);color:var(--st-gold-ink);background:var(--st-gold-soft)}
.veh-flag.is-todo{color:var(--st-warn)}
.veh-flag.is-off{color:var(--st-muted)}
.veh-detail{display:flex;flex-direction:column;gap:16px}
.veh-hero{display:grid;grid-template-columns:minmax(0,340px) minmax(0,1fr);gap:18px;align-items:start}
.veh-hero-cover{position:relative;aspect-ratio:16/10;border-radius:var(--st-r-lg);background:var(--st-sunken);overflow:hidden;border:1px solid var(--st-line)}
.veh-hero-cover img{width:100%;height:100%;object-fit:cover;display:block}
.veh-hero-cover.is-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center}
.veh-hero-body{display:flex;flex-direction:column;gap:10px;min-width:0}
.veh-hero-name{margin:0;font-size:var(--st-fs-page);font-weight:600;line-height:1.35}
.veh-gallery{display:flex;gap:10px;overflow-x:auto;padding-bottom:4px}
.veh-gallery img{width:180px;height:112px;object-fit:cover;border-radius:var(--st-r-md);border:1px solid var(--st-line);flex:none}
.veh-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-items:start}
.veh-block{display:flex;flex-direction:column;gap:7px}
.veh-block h3{margin:0;font-size:var(--st-fs-meta);font-weight:600;color:var(--st-muted);letter-spacing:.04em}
.veh-specs{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:10px}
.veh-specs>div{display:flex;flex-direction:column;gap:2px;padding:9px 11px;border-radius:var(--st-r-md);background:var(--st-sunken)}
.veh-spec-label{font-size:var(--st-fs-micro);color:var(--st-muted)}
.veh-spec-value{font-family:var(--st-font-num);font-size:var(--st-fs-head);font-weight:600}
.veh-spec-value i{font-style:normal;font-size:var(--st-fs-micro);font-weight:400;color:var(--st-muted);margin-left:2px}
.veh-colors{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.veh-colors li{display:flex;align-items:center;gap:8px;font-size:var(--st-fs-body)}
.veh-color-name{min-width:96px}
.veh-offers{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px;font-size:var(--st-fs-body);line-height:1.6}
.veh-list{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:5px;font-size:var(--st-fs-body);line-height:1.6}
.veh-desc{margin:0;font-size:var(--st-fs-body);line-height:1.75;white-space:pre-wrap}
.veh-faq{margin:0;font-size:var(--st-fs-body)}
.veh-faq dt{font-weight:600;margin-top:9px}
.veh-faq dt:first-child{margin-top:0}
.veh-faq dd{margin:3px 0 0;color:var(--st-text-2);line-height:1.7}
@media (max-width:980px){.veh-hero{grid-template-columns:1fr}.veh-cols{grid-template-columns:1fr}}

/* 消息中心: the three notification tabs, one wide list of what other people did to us */
.ntf-pane{display:flex;flex-direction:column;gap:10px}
.ntf-head{display:flex;align-items:center;gap:10px;padding-bottom:6px}
.ntf-head-title{font-size:var(--st-fs-body);font-weight:600}
.ntf-list{display:flex;flex-direction:column;gap:8px}
.ntf{display:flex;gap:12px;padding:13px 14px;border:1px solid var(--st-line);border-radius:var(--st-r-lg);background:var(--st-surface)}
.ntf.is-new{border-color:var(--st-line-strong)}
.ntf.is-new::before{content:"";width:6px;height:6px;margin-top:17px;border-radius:50%;background:var(--st-warn);flex:none}
.ntf-body{display:flex;flex-direction:column;gap:7px;min-width:0;flex:1}
.ntf-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ntf-name{font-size:var(--st-fs-body);font-weight:600}
.ntf-said{font-size:var(--st-fs-meta);color:var(--st-muted)}
.ntf-time{font-family:var(--st-font-num);font-size:var(--st-fs-micro);color:var(--st-muted);white-space:nowrap}
.ntf-text{margin:0;padding:9px 12px;border-left:1px solid var(--st-line-strong);border-radius:0 var(--st-r-control) var(--st-r-control) 0;background:var(--st-sunken);font-size:var(--st-fs-body);line-height:1.6;white-space:pre-wrap;word-break:break-word}
.ntf-foot{font-size:var(--st-fs-micro);color:var(--st-muted)}
.ntf-note{color:var(--st-text-2)}
.ntf-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:2px}
.ntf-reply{display:inline-block}
.ntf-reply>summary{display:inline-flex;align-items:center;list-style:none;cursor:pointer}
.ntf-reply>summary::-webkit-details-marker{display:none}
.ntf-reply[open]>summary{border-color:var(--st-line-strong)}
.ntf-reply-body{display:flex;flex-direction:column;gap:8px;margin-top:8px;width:min(520px,100%)}
.ntf-reply-body textarea{min-height:64px}
@media (max-width:720px){.ntf{padding:11px}.ntf-actions{gap:6px}}

/* 内容: one line of flow, tab views, and notes that look like the notes they will become */
.view-tabs{display:inline-flex;align-self:flex-start;width:fit-content;max-width:100%;gap:2px;flex-wrap:wrap;margin:0;padding:2px;border:1px solid var(--st-line);border-radius:var(--st-r-control);background:var(--st-surface-2)}
.view-tabs>a{display:inline-flex;align-items:center;gap:6px;height:var(--st-ctl-sm);padding:0 11px;border-radius:var(--st-r-tag);color:var(--st-text-2);font-size:var(--st-fs-body);white-space:nowrap;transition:background-color var(--st-t-fast) var(--st-ease),color var(--st-t-fast) var(--st-ease)}
.view-tabs>a:hover{color:var(--st-text)}
.view-tabs>a.is-on{background:var(--st-surface);color:var(--st-text);font-weight:600;box-shadow:0 1px 1px rgba(0,0,0,.04),inset 0 0 0 1px var(--st-line)}
.tab-n{margin-left:6px;font-family:var(--st-font-num);font-size:var(--st-fs-micro);color:var(--st-muted)}
.im-tab.is-on .tab-n{color:var(--st-text)}
.note-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:14px}
.note{display:flex;flex-direction:column;gap:8px;padding:8px;border:1px solid var(--st-line);border-radius:var(--st-r-lg);background:var(--st-surface);color:inherit}
.note:hover{border-color:var(--st-line-strong);box-shadow:var(--st-lift)}
.note-cover{position:relative;display:flex;align-items:flex-end;aspect-ratio:4/5;padding:11px;border-radius:var(--st-r-surface);background:var(--st-sunken);overflow:hidden}
.note-cover-text{font-size:var(--st-fs-item);font-weight:600;line-height:1.45;color:var(--st-text-2);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.note-cover.is-blank{align-items:center;justify-content:center}
.note-cover-note{font-size:var(--st-fs-micro);color:var(--st-muted)}
.note-body{display:flex;flex-direction:column;gap:5px;min-width:0}
.note-title{font-size:var(--st-fs-body);font-weight:600;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.note-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.note-meta-text{font-size:var(--st-fs-micro);color:var(--st-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.note-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:2px}
.note-checks{display:flex;gap:8px;flex-wrap:wrap;font-size:var(--st-fs-micro);color:var(--st-ok)}
.note-check.is-bad{color:var(--st-bad)}
.note-stats{display:flex;gap:14px;flex-wrap:wrap;margin-top:2px}
.note-stat{display:flex;flex-direction:column;line-height:1.25;font-size:var(--st-fs-micro);color:var(--st-muted)}
.note-stat b{font-family:var(--st-font-num);font-size:var(--st-fs-item);font-weight:600;color:var(--st-text)}
.board{display:grid;grid-template-columns:120px repeat(7,minmax(110px,1fr));gap:0;min-width:calc(120px + 7 * 110px)}
.board-head{font-size:var(--st-fs-meta);color:var(--st-muted);padding:8px;border-bottom:1px solid var(--st-line);position:sticky;top:0;z-index:2;background:var(--st-surface)}
.board-head.is-today{color:var(--st-accent-ink);font-weight:600}
.board-date{margin-left:6px;font-family:var(--st-font-num);font-size:var(--st-fs-micro)}
.board-acct{display:flex;flex-direction:column;gap:2px;padding:12px 8px 12px 0;border-bottom:1px solid var(--st-line);min-width:0}
.board-acct-name{font-size:var(--st-fs-body);font-weight:600}
.board-cell{display:flex;flex-direction:column;gap:8px;min-height:96px;padding:8px;border:0;border-left:1px solid var(--st-line);border-bottom:1px solid var(--st-line);border-radius:0;background:none}
.board-cell.is-today{background:color-mix(in srgb,var(--st-accent-soft) 55%,transparent)}
.board-cell .note{padding:6px;background:var(--st-surface);border-radius:var(--st-r-control)}
.board-cell .note-cover{aspect-ratio:5/4;padding:7px;border-radius:var(--st-r-tag)}
.board-cell .note-cover-text{font-size:var(--st-fs-meta);-webkit-line-clamp:3}
.board-empty{display:none}
.reply-list{display:flex;flex-direction:column;gap:12px}
.reply-card{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border:1px solid var(--st-line);border-radius:var(--st-r-lg);background:var(--st-surface)}
.reply-quote{font-size:var(--st-fs-body);line-height:1.6}
.reply-text{font-size:var(--st-fs-body);color:var(--st-text-2);line-height:1.6}
.reply-card textarea{min-height:64px}
@media (max-width:700px){.note-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}
/* 对话 / 内容: the flow strip. 内容 adds live counts and makes each step a filter link */
.cal-head.is-today{color:var(--st-text);font-weight:600}
.cal-date{margin-left:6px;font-family:var(--st-font-num);font-size:var(--st-fs-micro);color:var(--st-muted)}
/* 对话: the four-step flow strip shown when no thread is open */
@media (max-width:1180px){.flow.flow-5{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:760px){.flow.flow-5{grid-template-columns:repeat(2,minmax(0,1fr))}}
.empty-title{margin:0 0 6px;font-size:var(--st-fs-body);font-weight:600;color:var(--st-text)}
.empty p{margin:0 0 10px;max-width:62ch;line-height:1.7}
.empty .btn{margin-top:2px}
@media (max-width:900px){.flow{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.flow{grid-template-columns:1fr}}
/* In the section head it is a control, so it opens as a popover instead of pushing the list down. */
.legend{position:relative;margin:0}
.section-head .legend{margin-left:auto}
.legend[open] .legend-body{position:absolute;right:0;top:calc(100% + 8px);z-index:40;width:min(680px,80vw);box-shadow:var(--st-lift),0 18px 40px -20px rgba(0,0,0,.35)}
.legend summary{cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:6px;font-size:var(--st-fs-meta);color:var(--st-text-2)}
.legend summary::-webkit-details-marker{display:none}
.legend summary::before{content:"?";display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:1px solid var(--st-line-strong);font-size:var(--st-fs-micro)}
.legend[open] summary{color:var(--st-text)}
.legend-body{margin-top:10px;padding:14px 16px;background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-lg)}
.legend-head{margin:0 0 6px;font-size:var(--st-fs-meta);font-weight:600;color:var(--st-text-2)}
.legend-head:not(:first-child){margin-top:14px}
.legend-grid{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 14px;font-size:var(--st-fs-meta);color:var(--st-text-2)}
.legend-term{display:flex;align-items:baseline;gap:6px;color:var(--st-text);font-weight:600;white-space:nowrap}
.legend-n{font-family:var(--st-font-num);font-variant-numeric:tabular-nums;font-weight:400;color:var(--st-muted);font-size:var(--st-fs-micro)}
.legend-note{margin:14px 0 0;font-size:var(--st-fs-meta);color:var(--st-muted);line-height:1.6}
@media (max-width:640px){.legend-grid{grid-template-columns:minmax(0,1fr);gap:2px}.legend-term{margin-top:8px}}
.filters select,.filters input{width:auto;min-width:112px;height:var(--st-ctl);padding:0 10px;border-radius:var(--st-r-control);border-color:var(--st-line);background:var(--st-surface);font-size:var(--st-fs-body)}
.filters input[type=text],.filters input[type=search]{width:190px}
.pager{display:flex;gap:6px;justify-content:flex-end;margin-top:14px}

/* setup */
.setup{max-width:1080px}
.setup-next{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-lg);padding:14px 18px}
.setup-progress{display:flex;gap:18px;flex-wrap:wrap;list-style:none;margin:0;padding:0;font-size:var(--st-fs-body);color:var(--st-muted)}
.setup-progress .done{color:var(--st-text-2)}
.setup-progress .done::before{content:"✓";color:var(--st-ok);margin-right:6px}
.setup-progress .todo{color:var(--st-text);font-weight:600}
.setting{display:grid;grid-template-columns:200px minmax(0,1fr);gap:32px;padding-block:28px;border-top:1px solid var(--st-line)}
.setup-next+.setting{border-top:0;margin-top:8px}
.setup>.setting:first-child{border-top:0;padding-top:8px}
.setting-head h2{font-size:var(--st-fs-item)}
.setting-head p{margin:6px 0 0;font-size:var(--st-fs-meta);line-height:1.6;color:var(--st-muted)}
.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}
.fields .wide{grid-column:1/-1}
.fields label>span:first-child{color:var(--st-text-2)}
.opt{margin-left:6px;font-size:var(--st-fs-meta);font-weight:400;color:var(--st-muted)}
.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
details.adder{margin-top:14px}
details.adder>summary{list-style:none}
details.adder>summary::-webkit-details-marker{display:none}
details.adder[open]>summary{margin-bottom:14px}

/* overlays */
.modal{position:fixed;inset:0;background:rgba(19,19,18,.45);display:grid;place-items:center;z-index:50;padding:16px}
.modal-card{background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-xl);padding:24px;max-width:420px;width:100%;text-align:center;box-shadow:var(--st-lift)}
.modal-card h3{font-size:var(--st-fs-item)}
.qr-img[hidden]{display:none!important}
.qr-img{width:240px;height:240px;image-rendering:pixelated;margin:12px auto;display:block;border-radius:var(--st-r-surface);border:1px solid var(--st-line);background:#fff}
.toast{position:fixed;left:50%;bottom:28px;z-index:60;display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--st-r-surface);background:var(--st-primary-bg);color:var(--st-primary-fg);font-size:var(--st-fs-body);box-shadow:var(--st-lift);transform:translate(-50%,12px);opacity:0;pointer-events:none;transition:transform var(--st-t-base) var(--st-ease),opacity var(--st-t-base) var(--st-ease);max-width:calc(100% - 32px)}
.toast.show{transform:translate(-50%,0);opacity:1}
.toast.err{background:var(--st-bad);color:var(--st-surface)} .toast.ok{background:var(--st-ok);color:var(--st-surface)}

/* bare pages (login, errors) */
body.bare{background:var(--st-canvas)}
.bare-main{padding:0 16px}
.login-card{width:100%;max-width:440px;margin:10vh auto 0;background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-xl);padding:40px}
.login-card.stack{gap:28px}
.login-intro{display:grid;gap:12px}
.login-intro p{line-height:1.8}
.login-card form{gap:20px}
.login-card input,.login-card .btn{min-height:44px}
.login-footer{display:flex;justify-content:space-between;gap:12px;padding-top:20px;border-top:1px solid var(--st-line);color:var(--st-muted);font-size:var(--st-fs-meta)}
.login-brand{display:flex;align-items:center;gap:12px;font-size:var(--st-fs-head);font-weight:600}
.login-brand svg{width:22px;height:32px}

/* ───────── 今日 (kit: agent hero, command bar, needs-you bento, pipeline, fleet) ───────── */
.today{display:grid;grid-template-columns:minmax(0,1fr) var(--st-rail-w);gap:28px;align-items:start}
.today-main{display:flex;flex-direction:column;gap:32px;min-width:0}
.st-card{background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-lg);transition:border-color var(--st-t-fast) var(--st-ease),transform var(--st-t-base) var(--st-ease),box-shadow var(--st-t-base) var(--st-ease)}
.st-card.is-interactive:hover{border-color:var(--st-line-strong);transform:translateY(-1px);box-shadow:var(--st-lift)}
/* Space between sections is larger than space inside one: that ratio is what makes a page readable without boxes. */
.st-section{display:flex;flex-direction:column;gap:12px}
.today-main>.st-section+.st-section{margin-top:0}
.st-section>*{min-width:0}
/* 待办清单: one row, one job. The count is a number, not a badge; the action is a link, not an icon button. */
.todo-list{display:flex;flex-direction:column;border-top:1px solid var(--st-line)}
.todo{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px 10px;border-bottom:1px solid var(--st-line);color:inherit;transition:background-color var(--st-t-fast) var(--st-ease)}
.todo:hover{background:color-mix(in srgb,var(--st-sunken) 55%,transparent)}
.todo-n{font-size:var(--st-fs-head);font-weight:600;line-height:1;text-align:right;color:var(--st-text-2);font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.todo.is-urgent .todo-n{color:var(--st-gold-ink)}
.todo-title{font-size:var(--st-fs-body);font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.todo-go{display:inline-flex;align-items:center;gap:3px;font-size:var(--st-fs-meta);color:var(--st-muted);transition:color var(--st-t-fast) var(--st-ease)}
.todo-go svg{width:13px;height:13px;transition:transform var(--st-t-fast) var(--st-ease)}
.todo:hover .todo-go,.todo:focus-visible .todo-go{color:var(--st-text)}
.todo:hover .todo-go svg{transform:translateX(2px)}

.st-lede{max-width:74ch;color:var(--st-text-2)}
.st-lede .st-num{color:var(--st-text);font-weight:600}
.funnel-step.is-final .num{color:var(--st-gold-ink)}
.st-command{padding:16px 18px;background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-surface)}
.st-command form{display:grid;gap:10px}
.st-label{font-size:var(--st-fs-meta);font-weight:500;color:var(--st-text-2)}
.st-command-box{display:flex;align-items:center;gap:10px;padding:0 4px 0 12px;border-radius:var(--st-r-control);border:1px solid var(--st-line-strong);background:var(--st-surface);transition:border-color var(--st-t-fast) var(--st-ease),box-shadow var(--st-t-fast) var(--st-ease)}
.st-command-box:focus-within{border-color:var(--st-text-2);box-shadow:0 0 0 3px var(--st-sunken)}
.st-command-box svg.st-mark{width:13px;height:18px;flex:none;color:var(--st-muted)}
input.st-command-input{flex:1;min-width:0;border:0;background:none;font-size:var(--st-fs-body);height:38px;padding:0;box-shadow:none}
input.st-command-input:focus{outline:0;box-shadow:none}
.st-suggest{display:flex;flex-wrap:wrap;gap:6px}
.st-chip{display:inline-flex;align-items:center;height:var(--st-ctl-sm);padding:0 9px;border-radius:var(--st-r-control);border:1px solid var(--st-line);background:var(--st-surface-2);color:var(--st-text-2);font-size:var(--st-fs-meta);white-space:nowrap;cursor:pointer;transition:border-color var(--st-t-fast) var(--st-ease),color var(--st-t-fast) var(--st-ease)}
.st-chip:hover{border-color:var(--st-line-strong);color:var(--st-text)}
/* 现在的情况: the people get the column, the one-number facts get a ruled stack. No boxes. */
.now{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);gap:0 32px;align-items:start}
.now-main{min-width:0}
.now-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding-bottom:7px;border-bottom:1px solid var(--st-line-strong)}
.now-title{font-size:var(--st-fs-body);font-weight:600;margin:0}
.now-n{font-size:var(--st-fs-item);font-weight:600;letter-spacing:-.02em}
.now-note{font-size:var(--st-fs-meta);color:var(--st-muted)}
.now-note b{color:var(--st-text-2);font-weight:600}
.now-head .st-link{margin-left:auto}
.now-leads{display:flex;flex-direction:column}
.now-side{display:flex;flex-direction:column;border-top:1px solid var(--st-line-strong)}
.fact{display:flex;flex-direction:column;gap:5px;padding:12px 2px;border-bottom:1px solid var(--st-line);color:inherit;transition:background-color var(--st-t-fast) var(--st-ease)}
a.fact:hover{background:color-mix(in srgb,var(--st-sunken) 55%,transparent)}
.fact-head{display:flex;align-items:baseline;gap:10px}
.fact-label{font-size:var(--st-fs-meta);color:var(--st-muted)}
.fact-n{margin-left:auto;font-size:var(--st-fs-item);font-weight:600;line-height:1;letter-spacing:-.02em}
.fact-n-sep{margin:0 4px;color:var(--st-muted);font-weight:400}
.fact-body{display:block;font-size:var(--st-fs-meta);color:var(--st-text-2);line-height:1.55;overflow:hidden;text-overflow:ellipsis}
.fact-quiet{color:var(--st-muted)}
.fact-meta{display:block;margin-top:2px;font-size:var(--st-fs-micro);color:var(--st-muted)}
.st-mini-lead{display:grid;grid-template-columns:46px minmax(0,1fr);gap:14px;padding:11px 2px;border-bottom:1px solid var(--st-line);color:inherit;transition:background-color var(--st-t-fast) var(--st-ease)}
.st-mini-lead:hover{background:color-mix(in srgb,var(--st-sunken) 55%,transparent)}
.st-mini-score{font-size:var(--st-fs-item);font-weight:600;line-height:1.2;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.st-mini-score small{display:block;font-family:var(--st-font);font-size:var(--st-fs-micro);font-weight:400;letter-spacing:0;color:var(--st-muted)}
.st-mini-body{display:block;min-width:0}
.st-mini-line{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 8px;font-size:var(--st-fs-meta);color:var(--st-muted)}
.st-mini-line strong{font-size:var(--st-fs-body);color:var(--st-text);font-weight:600}
.st-mini-quote{display:block;margin-top:3px;font-size:var(--st-fs-meta);color:var(--st-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.st-empty-inline{padding:14px 2px;font-size:var(--st-fs-meta);color:var(--st-muted)}
.st-segs{display:flex;gap:3px}
.st-seg{flex:1;height:4px;border-radius:var(--st-r-tag)}
.st-seg-done{background:var(--st-text)} .st-seg-review{background:var(--st-gold)} .st-seg-draft{box-shadow:inset 0 0 0 1.5px var(--st-line-strong)}
@media (max-width:1100px){.now{grid-template-columns:minmax(0,1fr);gap:24px}}

.st-pipeline{display:grid;grid-template-columns:repeat(7,minmax(92px,1fr));overflow-x:auto;border-top:1px solid var(--st-line-strong);border-bottom:1px solid var(--st-line)}
.st-pipe{padding:12px 16px 13px 0;display:grid;gap:1px}
.st-pipe+.st-pipe{padding-left:16px;border-left:1px solid var(--st-line)}
.st-pipe-label{font-size:var(--st-fs-meta);color:var(--st-muted)}
.st-pipe-num{font-size:var(--st-fs-metric);font-weight:600;line-height:1.15;letter-spacing:-.025em}
.st-pipe-delta{font-size:var(--st-fs-micro);color:var(--st-muted)}
.st-pipe.is-won .st-pipe-num{color:var(--st-gold-ink)}
.st-fleet{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.st-fleet-item{padding:13px 15px;display:grid;gap:7px;align-content:start}
.st-fleet-top{display:flex;align-items:center;gap:12px}
.st-avatar{position:relative;display:grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;background:var(--st-sunken);color:var(--st-text-2);font-weight:600;font-size:var(--st-fs-body)}
.st-avatar img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
.st-avatar .st-dot{position:absolute;right:1px;bottom:1px;box-shadow:0 0 0 2px var(--st-surface);z-index:1}
.st-avatar .st-dot-idle{background:var(--st-surface);box-shadow:0 0 0 2px var(--st-surface),inset 0 0 0 1.5px var(--st-muted)}
.st-fleet-name{font-size:var(--st-fs-body);font-weight:600;line-height:1.3}
.st-fleet-role{font-size:var(--st-fs-meta);color:var(--st-muted)}
.st-fleet-state{display:flex;align-items:center;gap:6px;font-size:var(--st-fs-meta);color:var(--st-text-2)}
.st-fleet-task{font-size:var(--st-fs-meta);color:var(--st-muted);line-height:1.5}
.st-fleet-task b{color:var(--st-text);font-weight:500}
.st-empty-inline{padding:14px 0;border-top:1px solid var(--st-line);color:var(--st-muted);font-size:var(--st-fs-body)}

/* workflow run progress (系统 → 任务进度) */
.run-summary{padding:24px 24px 20px;display:flex;flex-direction:column;gap:14px;border-radius:var(--st-r-xl)}
.run-head{display:flex;align-items:flex-start;gap:16px;flex-wrap:wrap}
.run-head-text{flex:1;min-width:0;display:grid;gap:6px}
.run-meta{font-size:var(--st-fs-body);color:var(--st-muted)}
.run-headline{font-size:var(--st-fs-page);line-height:1.3;letter-spacing:-.01em}
.run-summary.is-bad .run-headline{color:var(--st-bad)}
.run-summary.is-ok .run-headline{color:var(--st-ok)}
.run-goal{font-size:var(--st-fs-body);color:var(--st-text-2)}
.run-actions{display:flex;gap:8px;flex-wrap:wrap}
.run-cancel [data-run-cancel-confirm]{margin-top:8px;max-width:34ch}
.run-cancel [data-run-cancel-confirm] p{margin-bottom:8px}
[data-run-cancel-feedback]:not(:empty){margin-bottom:8px;color:var(--st-text-2)}
.run-progress{display:flex;gap:4px}
.run-seg{flex:1;height:8px;border-radius:var(--st-r-tag);background:var(--st-sunken)}
.run-seg.is-done{background:var(--st-ok)}
.run-seg.is-skipped{background:repeating-linear-gradient(135deg,var(--st-line-strong) 0 3px,var(--st-sunken) 3px 6px)}
.run-seg.is-running{background:linear-gradient(90deg,var(--st-gold) 0%,var(--st-gold-line) 50%,var(--st-gold) 100%);background-size:200% 100%;animation:st-shimmer 1.6s linear infinite}
.run-seg.is-failed{background:var(--st-bad)}
.run-seg.is-waiting{background:none;box-shadow:inset 0 0 0 1.5px var(--st-line-strong)}
.run-progress-text{display:flex;align-items:baseline;gap:10px;font-size:var(--st-fs-body);color:var(--st-muted)}
.run-progress-text b{font-size:var(--st-fs-head);color:var(--st-text);font-weight:600}
.run-live{margin-left:auto;font-size:var(--st-fs-meta)}
.run-summary .banner{margin:0}
.run-section{margin-top:28px}
.run-steps{list-style:none;margin:0;padding:6px 20px;background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-lg);position:relative}
.run-step{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr);gap:14px;padding:14px 0}
.run-step+.run-step{border-top:1px solid var(--st-line)}
.run-step-mark{margin-top:1px;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:var(--st-fs-meta);font-weight:700;box-shadow:inset 0 0 0 1.5px var(--st-line-strong);color:var(--st-muted)}
.run-step.is-done .run-step-mark{background:var(--st-ok);box-shadow:none;color:var(--st-primary-fg)}
.run-step.is-done .run-step-mark::after{content:"✓"}
.run-step.is-failed .run-step-mark{background:var(--st-bad);box-shadow:none;color:var(--st-surface)}
.run-step.is-failed .run-step-mark::after{content:"!"}
.run-step.is-skipped .run-step-mark::after{content:"−"}
.run-step.is-running .run-step-mark{box-shadow:inset 0 0 0 1.5px var(--st-gold)}
.run-step.is-running .run-step-mark::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--st-gold);animation:st-pulse 1.4s var(--st-ease) infinite}
.run-step-body{display:grid;gap:4px;min-width:0}
.run-step-top{display:flex;align-items:baseline;gap:10px}
.run-step-title{font-size:var(--st-fs-body);font-weight:600}
.run-step.is-waiting .run-step-title{color:var(--st-muted);font-weight:500}
.run-step-state{margin-left:auto;font-size:var(--st-fs-meta);color:var(--st-muted);white-space:nowrap}
.run-step.is-failed .run-step-state{color:var(--st-bad)}
.run-step.is-running .run-step-state{color:var(--st-gold-ink)}
.run-step-summary{font-size:var(--st-fs-body);color:var(--st-text-2)}
.run-step-problem{font-size:var(--st-fs-body);color:var(--st-bad)}
.run-step.is-skipped .run-step-problem{color:var(--st-muted)}
.run-step-purpose{font-size:var(--st-fs-meta);color:var(--st-muted)}
.tech-details{margin-top:28px;border:1px dashed var(--st-line-strong);border-radius:var(--st-r-lg);padding:12px 18px;background:var(--st-surface-2)}
.tech-details>summary{cursor:pointer;font-size:var(--st-fs-body);color:var(--st-text-2);font-weight:500}
.tech-details[open]>summary{margin-bottom:12px}
.tech-details .table-wrap{margin-top:12px}
@keyframes st-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.7)}}
@keyframes st-shimmer{from{background-position:200% 0}to{background-position:-200% 0}}

/* motion */
@keyframes st-breathe{0%{transform:scale(.6);opacity:.45}70%,100%{transform:scale(1.6);opacity:0}}
@keyframes st-enter{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
/* A work tool does not animate its own content on every page load; only the things that open do. */
details.hint[open] .hint-body,details.breakdown[open]>*:not(summary){animation:st-enter var(--st-t-fast) var(--st-ease)}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition-duration:1ms!important}
}

/* Shared spacing and responsive controls. */
.st-section>.section-head{margin-bottom:0}
.acct-pos:empty{display:none}
@media (max-width:900px){
  :root{--st-ctl:44px;--st-ctl-sm:40px}
  .topbar-right{flex-wrap:wrap;max-width:100%}
  .login-card{margin:6vh auto 0;padding:28px}
  .hint-body{max-width:calc(100vw - 48px)}
}
/* responsive */
@media (max-width:1280px){
  .today,.main-grid{grid-template-columns:minmax(0,1fr)}
  .rail{position:static}
}
@media (max-width:1100px){
  .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .detail-grid,.lead-grid{grid-template-columns:minmax(0,1fr)}
  .lead-head{display:none}
  .lead-row{grid-template-columns:40px minmax(0,1fr);row-gap:4px}
  .lead-col-status{grid-column:2;align-items:flex-start;text-align:left}
  .stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .acct-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr))}
}
@media (max-width:900px){
  body.app,body.app.is-rail{grid-template-columns:minmax(0,1fr)}
  .sidebar{position:static;height:auto;flex-direction:row;align-items:center;gap:10px;padding:8px 16px;border-right:0;border-bottom:1px solid var(--st-line);overflow-x:auto;scrollbar-width:none}
  .sidebar::-webkit-scrollbar{display:none}
  .sidebar-head{height:auto;padding:0;flex:none}
  .brand-name,.rail-btn,.nav-group-label{display:none}
  .brand{margin:0}
  .nav{flex-direction:row;align-items:center;gap:8px;padding:0;width:auto;overflow:visible}
  .nav-group{flex-direction:row;gap:2px}
  .nav-group+.nav-group{margin-left:2px;padding-left:10px;border-left:1px solid var(--st-line)}
  .nav-item,body.is-rail .nav-item{width:auto;height:40px;flex-direction:row;gap:6px;padding:0 9px;white-space:nowrap}
  .nav-label{display:inline}
  .nav-badge,body.is-rail .nav-badge{position:static;margin-left:2px}
  .sidebar-foot,body.is-rail .sidebar-foot{flex-direction:row;margin:0 0 0 auto;padding:0;border:0}
  .operator{margin:0}
  .topbar{position:static;padding:0 16px;height:auto;min-height:56px;flex-wrap:wrap;gap:8px 12px;padding-block:8px}
  .search,.mode-pill{display:none}
  .content{padding:20px 16px 40px}
  .st-bento{grid-template-columns:minmax(0,1fr)}
  .st-tile-leads{grid-row:auto}
  .setting{grid-template-columns:minmax(0,1fr);gap:14px;padding-block:22px}
  .fields{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .funnel{grid-template-columns:repeat(2,minmax(0,1fr))}
  .funnel-step:nth-child(odd){border-left:0}
  .funnel-step:nth-child(n+3){border-top:1px solid var(--st-line)}
  .st-command-btn-label{display:none}
  .kpi{padding:14px 16px}
  .kpi-num{font-size:var(--st-fs-metric)}
  .acct-grid{grid-template-columns:minmax(0,1fr)}
  .stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .agent-ago{display:none}
  .section-head:has(.section-actions) .spacer{display:none}
  .section-actions{width:100%}
  .section-actions .btn{flex:1}
  .kv{grid-template-columns:minmax(0,1fr)}
  .data thead{display:none}
  .data tr{display:block;padding:10px 0;border-bottom:1px solid var(--st-line)}
  .data td{display:block;border:0;padding:3px 0}
  .msg{max-width:92%}
}

::selection{background:var(--st-accent-soft);color:var(--st-text)}
input,textarea{caret-color:var(--st-accent)}
:focus-visible{outline:2px solid var(--st-accent);outline-offset:3px}
body.app{height:100dvh;min-height:0;overflow:hidden;grid-template-rows:minmax(0,1fr)}
.app .sidebar{height:100%;position:relative;padding:0 12px 12px;background:var(--st-surface-2)}
.app .sidebar-head{height:56px;padding:0 8px;gap:4px}.app .brand-name{font-size:var(--st-fs-item);letter-spacing:0}.brand-wordmark{color:var(--st-muted);font-size:var(--st-fs-meta);font-weight:400;margin-left:5px}
.sidebar-store{padding:12px 8px 18px;font-size:var(--st-fs-meta);font-weight:500;overflow-wrap:anywhere}.sidebar-store small{display:block;color:var(--st-muted);font-size:var(--st-fs-micro);font-weight:400;margin-top:4px}
.app .nav{padding:8px 0 0;gap:22px;align-items:stretch}.app .nav-group{gap:3px;align-items:stretch;width:auto;border:0;padding:0}.app .nav-group-label{display:block;padding:0 10px 7px;letter-spacing:0}.app .nav-item{height:32px;width:auto;justify-content:flex-start;padding:0 10px;gap:9px;font-size:var(--st-fs-meta);color:var(--st-muted)}.app .nav-label{display:block}.app .nav-item.active{background:var(--st-selected);box-shadow:none;color:var(--st-text);font-weight:550}.app .nav-item:hover{background:var(--st-hover)}.app .nav-glyph .st-icon{width:15px;height:15px}.app .nav-badge{position:static;margin-left:auto}.app .sidebar-foot{flex-direction:row;padding:12px 6px 0}.app .brand-name{display:block}.app .rail-btn{display:grid}.app .operator{margin-left:auto}
.app.is-rail .sidebar{padding-inline:8px}.app.is-rail .brand-name,.app.is-rail .nav-label,.app.is-rail .nav-group-label,.app.is-rail .sidebar-store{display:none}.app.is-rail .sidebar-head{padding:0;justify-content:center}.app.is-rail .rail-btn{display:none}.app.is-rail .nav-item{justify-content:center;padding:0}.app.is-rail .sidebar-foot{flex-direction:column}.app.is-rail .operator{margin:0}.app.is-rail .nav-badge{position:absolute;top:0;right:0}.app.is-rail .brand-wordmark{display:none}
.app .workspace{min-width:0;min-height:0;overflow:hidden}.app .topbar{position:relative;min-height:56px;flex:none;padding:10px 24px;gap:12px;flex-wrap:wrap}.workspace-heading{display:flex;align-items:center;gap:10px;min-width:0}.workspace-heading h1{font-size:var(--st-fs-item);line-height:1.5;letter-spacing:0;display:flex;align-items:center;gap:4px}.workspace-heading .hint{font-weight:400}.app .topbar-right{gap:8px}.app .search{height:30px;width:180px;border:0;padding:0;background:none}.app .search:focus-within{outline:2px solid var(--st-primary-bg);outline-offset:3px;box-shadow:none}.app .search input{font-size:var(--st-fs-meta)}.app .store-pill{height:30px;background:none;border-color:var(--st-line)}.app .store-select{font-size:var(--st-fs-meta);height:28px}.app .content{min-height:0;flex:1;overflow:auto;max-width:none;margin:0;padding:24px}.workspace-status{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:9px 20px;border-top:1px solid var(--st-line);flex:none;font-size:var(--st-fs-micro);color:var(--st-muted)}.workspace-status .agent-now{font-size:var(--st-fs-micro)}.workspace-status .agent-ago{font-size:var(--st-fs-micro)}.workspace-status .mode-pill{height:auto;background:none;box-shadow:none;border:0;padding:0}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.workspace-heading .subtitle{font-size:var(--st-fs-meta);color:var(--st-muted);max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:1px solid var(--st-line);padding-left:12px}.mobile-nav{display:none}.skip-link{position:fixed;top:-80px;left:16px;padding:10px;background:var(--st-surface);z-index:100}.skip-link:focus{top:8px}
.app .banner{font-size:var(--st-fs-meta);padding:10px 12px;border-radius:var(--st-r-control)}
.app .section-head{border-bottom:1px solid var(--st-line);padding-bottom:12px;margin-bottom:16px;gap:12px}.app .section-title,.app .panel-title{font-size:var(--st-fs-item)}.app .block,.app .st-section{margin-top:28px}.app .block:first-child,.app .st-section:first-child{margin-top:0}.app .card:not(form){box-shadow:none}.app .kpis{border-inline:0;border-radius:0}.app .kpi-num{font-size:var(--st-fs-metric)}
.app .btn{font-size:var(--st-fs-meta);box-shadow:none}.app .btn-ghost:hover,.app .icon-btn:hover{background:var(--st-hover)}.app .btn:active:not(:disabled){transform:none;filter:brightness(.94)}.app .btn[aria-busy=true]{cursor:wait;opacity:.75}.app .btn[aria-busy=true]::before{content:'';width:12px;height:12px;border:1px solid currentColor;border-right-color:transparent;border-radius:50%;animation:control-spin .8s linear infinite}.btn[disabled]{cursor:not-allowed}
@keyframes control-spin{to{transform:rotate(360deg)}}
.app input:not([type=checkbox]):not([type=radio]),.app select,.app textarea{font-size:var(--st-fs-meta);border-radius:var(--st-r-control)}.app input[readonly],.app textarea[readonly]{background:var(--st-surface-2);color:var(--st-muted)}input::placeholder,textarea::placeholder{color:var(--st-muted);opacity:1}
[aria-invalid=true]{border-color:var(--st-bad)!important;outline-color:var(--st-bad)!important}.field-error,.form-error{font-size:var(--st-fs-micro);color:var(--st-bad);line-height:1.7;margin:5px 0 0}.form-error{padding:10px 0}.form-error:empty{display:none}
.app .toast{background:var(--st-surface);color:var(--st-text);border:1px solid var(--st-line-strong);box-shadow:0 6px 24px #0002;font-size:var(--st-fs-meta)}.app .toast.err{color:var(--st-bad)}
.app .data th{height:34px;background:var(--st-surface-2);padding:8px 12px;border-bottom-color:var(--st-line);letter-spacing:0;font-weight:400}.app .data td{padding:12px;min-height:58px;font-size:var(--st-fs-meta)}.app .data tbody tr:hover td:first-child{box-shadow:none}.app .data tbody tr:hover td{background:var(--st-hover)}.app .table-wrap{max-width:100%}.app .lead-list{border-inline:0;border-radius:0}.app .lead-row:hover{background:var(--st-hover)}.app .lead-row .primary{font-weight:500}.app .avatar{width:30px;height:30px}.app .msg{font-size:var(--st-fs-body)}
.app .s-neutral{color:var(--st-muted)}.app .chip-neutral{border-radius:var(--st-r-control);background:var(--st-surface-2)}
.app .veh{border:0;border-radius:0;background:none}.app .veh:hover{box-shadow:none}.app .veh-cover{border-radius:var(--st-r-control)}.app .veh-body{padding:14px 0;border-bottom:1px solid var(--st-line)}.app .veh-grid{gap:24px}.app .rail{top:0}.app .act-time{font-family:var(--st-font)}.app .activity::before,.app .activity li::before{display:none}.app .activity li{padding:14px 0;border-bottom:1px solid var(--st-line)}.app .st-fleet-item{border:0;border-radius:0;border-bottom:1px solid var(--st-line);padding:12px 0;box-shadow:none}.app .st-fleet{gap:20px}.app .now{border-radius:0}.app .setting{padding:24px 0}.app .setting:first-child{padding-top:0}
.account-workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:0;min-width:0}.account-workspace.has-inspector{grid-template-columns:minmax(0,1fr) 344px}.account-register{min-width:0}.account-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:0 0 16px}.account-tools input{max-width:240px}.account-tools select{max-width:150px}.account-register .data{table-layout:fixed}.account-register .data td{height:58px}.account-register .data th:first-child{width:48%}.account-row-link{display:flex;align-items:center;gap:10px;background:none;border:0;padding:0;text-align:left;cursor:pointer;width:100%}.account-row-link .acct-avatar{width:28px;height:28px;font-size:var(--st-fs-meta)}.account-row-link .acct-avatar .st-dot{display:none}.account-row-link .primary,.account-row-link .secondary{display:block}.account-row-link .primary{font-size:var(--st-fs-meta);font-weight:500;overflow-wrap:anywhere}.account-row-link .secondary{font-size:var(--st-fs-micro)}.account-row.is-selected{background:var(--st-selected)}.account-inspector{border-left:1px solid var(--st-line);padding-inline:20px;margin-left:20px;min-width:0}.inspector-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:20px;color:var(--st-muted);font-size:var(--st-fs-micro)}.account-inspector .acct{border:0;padding:0;background:none;box-shadow:none;gap:18px}.account-inspector .acct-top .primary{font-size:var(--st-fs-head)}.account-inspector .acct-pos{min-height:0}.account-inspector .acct-meta b{font-size:var(--st-fs-head)}.account-inspector .acct-foot{gap:8px}.account-inspector .acct-capabilities{grid-template-columns:1fr}.account-register-footer{padding:16px 12px;color:var(--st-muted);font-size:var(--st-fs-micro)}.account-add{margin-top:24px}.account-add>summary{width:max-content;margin-bottom:12px}.account-research{margin-bottom:20px}.account-register [hidden],.account-inspector[hidden],.account-inspector .acct[hidden]{display:none!important}



.app .im{border-radius:var(--st-r-control)}.app .im-main{background:var(--st-surface)}.app .im-person{border-radius:var(--st-r-control)}.app .im-person.is-open{background:var(--st-selected)}.app .im-bubble{border-radius:var(--st-r-control)}.app .im-draft{background:var(--st-surface-2);border-color:var(--st-line)}
.app .modal{z-index:80}.app .modal-card{border-radius:var(--st-r-surface);box-shadow:0 16px 48px #0003}
@media(min-width:901px) and (max-width:1180px){body.app{grid-template-columns:190px minmax(0,1fr)}body.app.is-rail{grid-template-columns:var(--st-sidebar-rail) minmax(0,1fr)}.app .brand-name{display:block}.app.is-rail .brand-name{display:none}.app .topbar .search{width:130px}.account-workspace.has-inspector{grid-template-columns:minmax(0,1fr) 310px}}
@media(max-width:900px){
 :root{--st-ctl:44px;--st-ctl-sm:44px}
 body.app,body.app.is-rail{display:grid;grid-template-columns:minmax(0,1fr)}.app .sidebar{display:none}.app .sidebar.mobile-open{display:flex;flex-direction:column;align-items:stretch;overflow-x:hidden;overflow-y:auto;gap:0;position:fixed;inset:56px auto 0 0;width:216px;z-index:40;height:calc(100dvh - 56px);box-shadow:8px 0 28px #0002}.app .sidebar.mobile-open .nav,.app .sidebar.mobile-open .nav-group{flex-direction:column;align-items:stretch;flex-shrink:0}.app .sidebar.mobile-open .sidebar-head{flex-shrink:0}.app .sidebar.mobile-open .sidebar-foot{margin-top:auto}.app.is-rail .sidebar.mobile-open .brand-name,.app.is-rail .sidebar.mobile-open .nav-label,.app.is-rail .sidebar.mobile-open .nav-group-label,.app.is-rail .sidebar.mobile-open .sidebar-store{display:block}.app.is-rail .sidebar.mobile-open .nav-item{justify-content:flex-start;padding-inline:10px}.mobile-nav{display:grid}.workspace-heading .subtitle{display:none}.app .topbar{min-height:56px;padding:8px 16px}.app .topbar-right{flex-wrap:wrap;justify-content:flex-end}.app .topbar .search{display:none}.app .store-select{max-width:135px}.app .content{padding:20px 16px}.app .workspace-status{padding:8px 16px}.workspace-status .agent-ago{display:none}.app .agent-now{max-width:70%}.account-workspace.has-inspector{grid-template-columns:minmax(0,1fr)}.account-inspector:not([hidden]){position:fixed;inset:0;background:var(--st-surface);margin:0;padding:20px;overflow:auto;z-index:50;border:0}.app .account-inspector .acct{max-width:600px;margin:0 auto}.inspector-toolbar{position:sticky;top:-20px;background:var(--st-surface);padding:12px 0;z-index:2}.account-register .data thead{display:table-header-group}.account-register .data tr{display:table-row;padding:0}.account-register .data td{display:table-cell;height:64px;border-bottom:1px solid var(--st-line)}.account-register .data th:first-child{width:55%}.account-row-link{gap:8px}.account-register .data th,.account-register .data td{padding-inline:8px}.account-register .data .account-owner{display:none}.app .account-inspector .acct-top{flex-wrap:nowrap}.app .account-inspector .acct-foot{flex-direction:row}.app .account-inspector .acct-foot .btn{width:auto;flex:none}
 .app form input:not([type=checkbox]):not([type=radio]),.app form select,.app form textarea,.app .inline-form input,.app .msg textarea{font-size:var(--st-fs-head)}
}
@media(max-width:540px){.app .topbar{gap:8px}.app .topbar-right>.btn{font-size:var(--st-fs-micro);padding-inline:8px}.app .store-select{max-width:100px}.app .content{padding:16px}.workspace-status .agent-now{max-width:65%}.workspace-status .mode-pill{font-size:var(--st-fs-micro)}.account-tools input{max-width:100%;flex:1;min-width:140px}.account-tools select{flex:1}.account-register .data th:last-child,.account-register .data td:last-child{width:45px}.account-register .data td{font-size:var(--st-fs-micro)}}
@media(max-width:900px){.app .mobile-nav{width:44px;height:44px;min-width:44px}.app .topbar{min-height:64px}.app .sidebar.mobile-open{top:64px;height:calc(100dvh - 64px)}.app .cv-new-link,.app .cv-lead-link{min-width:44px;min-height:44px}.app .cv .im-back{min-height:44px;display:flex;align-items:center}.app .cv .im-compose-foot{flex-wrap:wrap}.app .store-select{min-height:44px}.app .store-pill{height:auto}}
.app nav.toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-bottom:20px}.app nav.toolbar>a:not(.btn){padding:10px 0;text-underline-offset:5px}.app .lead-row-quote{color:var(--st-text);text-decoration:none}.app a.lead-row-quote:hover{text-decoration:underline;text-underline-offset:3px}.app details.panel>summary{cursor:pointer;padding:12px 0}.app details.panel[open]>summary{margin-bottom:16px}.app [id]{scroll-margin-top:20px}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.nav-item.active,.account-row.is-selected{outline:1px solid Highlight}.field-error{color:CanvasText}}

.app .connection-indicator{position:relative;flex:none}
.app .connection-indicator>summary{min-height:32px;padding:0 10px;gap:7px;display:flex;align-items:center;justify-content:center;cursor:pointer;list-style:none;border:1px solid var(--st-line);border-radius:var(--st-r-control);color:var(--st-text-2);font-size:var(--st-fs-meta);white-space:nowrap}
.app .connection-indicator>summary::-webkit-details-marker{display:none}
.app .connection-dot{width:6px;height:6px;border-radius:50%;background:var(--st-warn);flex:none}
.app .connection-indicator>summary svg{width:12px;height:12px;color:var(--st-muted)}
.app .connection-indicator>summary:hover,.app .connection-indicator[open]>summary{background:var(--st-hover);color:var(--st-text)}
.app .connection-indicator>summary:focus-visible{outline:2px solid var(--st-primary-bg);outline-offset:2px}
.app .connection-popover{position:absolute;right:0;top:calc(100% + 10px);z-index:60;width:min(336px,calc(100vw - 32px));max-height:min(480px,70dvh);overflow:auto;padding:0;background:var(--st-surface);color:var(--st-text);border:1px solid var(--st-line);border-radius:var(--st-r-surface);font-size:var(--st-fs-body);line-height:1.6}
.app .connection-popover>header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-bottom:1px solid var(--st-line)}
.app .connection-popover>header>strong{font-size:var(--st-fs-item);font-weight:600}
.app .connection-popover>header>span{font-size:var(--st-fs-meta);color:var(--st-muted)}
.app .connection-notice{padding:16px 18px;color:var(--st-text-2)}
.app .connection-notice+.connection-notice{border-top:1px solid var(--st-line)}
.app .connection-notice>strong,.app .connection-notice>b{display:block;color:var(--st-text);font-weight:600;margin-bottom:6px}
.app .connection-notice>span{display:block}
.app .connection-notice .link{display:inline-flex;align-items:center;min-height:30px;margin-top:10px;font-weight:500;color:var(--st-primary-bg);text-underline-offset:4px}
@media(max-width:900px){.app .connection-indicator>summary{min-height:44px}.app .connection-indicator{position:static}.app .connection-popover{top:calc(100% + 8px);right:16px}.app .connection-notice .link{min-height:44px}}
@media(forced-colors:active){.app .connection-dot{background:LinkText;forced-color-adjust:none}}

.app .lead-recommendation{font-size:var(--st-fs-micro);font-weight:600;line-height:1.6;color:var(--st-text);text-decoration:none}
.app .lead-reason-details{position:relative;z-index:2;margin-top:6px;font-size:var(--st-fs-micro);color:var(--st-muted)}
.app .lead-reason-details summary{cursor:pointer;list-style:none;text-decoration:underline;text-underline-offset:3px}
.app .lead-reason-details p{white-space:normal;line-height:1.7;margin-top:8px}

.app [data-settings-editor][hidden],.app [data-settings-view][hidden]{display:none!important}
.app .saved-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 40px;margin:0 0 24px}
.app .saved-settings>div:last-child{grid-column:1/-1}
.app .saved-settings dt{font-size:var(--st-fs-micro);color:var(--st-muted);margin-bottom:6px}
.app .saved-settings dd{margin:0;font-size:var(--st-fs-item);line-height:1.6;color:var(--st-text);overflow-wrap:anywhere}
.app .saved-settings dd.muted{color:var(--st-muted)}
@media(max-width:600px){.app .saved-settings{grid-template-columns:1fr;gap:20px}}
.vehicle-links{display:flex;gap:16px;margin-top:10px}
.setting .adder>summary{cursor:pointer;margin-top:10px;font-size:var(--st-fs-body);font-weight:600;color:var(--st-accent-ink)}

.kb{max-width:1320px}.kb h2{font-size:var(--st-fs-head);margin:0 0 12px}.kb p{line-height:1.65}.kb-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:24px 0}.kb-heading p{margin:0}.kb-layout{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);border-top:1px solid var(--st-line);border-bottom:1px solid var(--st-line);margin-top:16px}.kb-register{padding:20px 20px 24px 0;border-right:1px solid var(--st-line)}.kb-detail{padding:24px;min-width:0}.kb-filters{display:grid;gap:12px}.kb-row{display:grid;gap:7px;padding:16px 12px;border-bottom:1px solid var(--st-line);color:var(--st-text);text-decoration:none;overflow-wrap:anywhere}.kb-row:hover{background:var(--st-surface-2)}.kb-row[aria-current]{background:var(--st-sunken)}.kb-row small,.kb-row span{font-size:var(--st-fs-meta);color:var(--st-text-2)}.kb-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.kb-fields label,.kb-editor>label,.kb-preview label{display:flex;flex-direction:column;gap:7px;min-width:0}.kb-fields input,.kb-fields select{width:100%;min-width:0}.kb-meta{margin:20px 0}.kb-meta>div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;padding:8px 0}.kb-meta dt{color:var(--st-text-2)}.kb-meta dd{margin:0;overflow-wrap:anywhere}.kb-prose{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.85;max-width:75ch;padding:20px 0;border-block:1px solid var(--st-line)}.kb-actions{margin:20px 0;flex-wrap:wrap}.kb-section{border-top:1px solid var(--st-line);padding:16px 0}.kb-section summary{cursor:pointer;font-weight:600}.kb-section[open]>summary{margin-bottom:20px}.kb-history{padding-left:20px}.kb-history li{margin:12px 0}.kb-history span{display:block;color:var(--st-text-2);margin-top:6px}.kb-preview{padding:28px 0}.kb-search-result{margin-top:20px;overflow-wrap:anywhere}.kb-search-result blockquote{margin:12px 0;padding:12px 16px;border:1px solid var(--st-line);white-space:pre-wrap}.kb-search-result article{padding:16px 0;border-top:1px solid var(--st-line)}.kb-search-result[data-status=conflict] h3{color:var(--st-bad)}.kb-search-result[data-status=clarify] h3,.kb-search-result[data-status=missing] h3{color:var(--st-warn)}
.cv-memory{border-bottom:1px solid var(--st-line);padding:12px 20px;flex-shrink:0;max-height:42%;overflow:auto}.cv-memory>summary{cursor:pointer;font-weight:600;display:list-item}.cv-memory>summary span{font-weight:400;color:var(--st-text-2);margin-left:12px}.cv-memory-body{padding-top:16px}.cv-memory .kb-meta{margin:0 0 16px}.cv-memory h3{font-size:var(--st-fs-item);margin:20px 0 12px}.cv-memory p{line-height:1.65}.cv-question{padding:12px 0;border-top:1px solid var(--st-line)}.cv-question-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.cv-question p{margin:8px 0}.cv-question-status{color:var(--st-warn);font-size:var(--st-fs-meta)}.cv-memory blockquote{margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}.cv-memory summary{cursor:pointer}.cv-memory .kb-prose{margin:0}.cv-handoff-form{display:grid;gap:10px;max-width:640px}.cv-handoff-form textarea{min-height:64px}.cv-history-entry{padding:12px 0;border-top:1px solid var(--st-line)}.cv-history-entry dl{margin:8px 0}.im-msg[id]:target{outline:2px solid var(--st-accent);outline-offset:-2px}
@media(max-width:900px){.kb-layout{grid-template-columns:minmax(200px,260px) minmax(0,1fr)}.kb-detail{padding:20px 16px}.kb-fields{grid-template-columns:1fr}.cv-memory{padding:12px 16px}.kb-heading{align-items:flex-start}}
@media(max-width:700px){.kb-layout{display:block}.kb-register{padding:16px 0;border-right:0;border-bottom:1px solid var(--st-line)}.kb-detail{padding:24px 0}.kb-list{max-height:280px;overflow:auto}.kb-filters{grid-template-columns:1fr 1fr}.kb-filters button{grid-column:1/-1}.kb-meta>div{grid-template-columns:1fr;gap:4px}.kb-heading{flex-wrap:wrap}.cv-memory{max-height:38%}}

.content[data-page=conversations]:has(>.cv){display:flex;flex-direction:column;overflow:hidden;padding-bottom:0}
.content[data-page=conversations]:has(>.cv)>.banner{flex:none}
.cv{display:flex;flex-direction:column;flex:1;min-height:0;min-width:0}
.cv>.view-tabs{flex:none;margin:0;width:100%;gap:24px;padding-bottom:0}
.cv .im{flex:1;height:auto;min-height:0;display:grid;grid-template-columns:272px minmax(0,1fr);border:0;border-radius:0;overflow:hidden;margin:0}
.cv .im-list{display:flex;flex-direction:column;min-height:0;border-right:1px solid var(--st-line);background:var(--st-surface-2);padding:0}
.cv .im-list-head{padding:20px 16px 12px;display:flex;justify-content:space-between;align-items:center;border:0;flex:none}
.cv .im-list-title{font-size:var(--st-fs-item);font-weight:600;display:flex;align-items:center;gap:8px}
.cv .im-list-title span{font-weight:400;color:var(--st-muted);font-size:var(--st-fs-meta)}
.cv-new-link{display:grid;place-items:center;width:28px;height:28px;border-radius:var(--st-r-control);color:var(--st-muted)}
.cv-new-link:hover{background:var(--st-hover);color:var(--st-text)}
.cv-new-link svg,.cv-search svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;flex:none}
.cv-search{display:flex;align-items:center;margin:0 16px 12px;border:1px solid var(--st-line);border-radius:var(--st-r-control);background:var(--st-surface);padding:0 9px;gap:7px;color:var(--st-muted)}
.app .cv-search input{border:0;box-shadow:none;min-width:0;height:32px;padding:0;background:transparent;width:100%;outline:none}
.cv-search:focus-within{outline:2px solid var(--st-primary-bg);outline-offset:2px}
.cv .im-tabs{display:flex;flex:none;margin:0 16px;gap:20px;justify-content:flex-start}
.cv .im-tab{display:inline-flex;gap:6px;align-items:center;white-space:nowrap;font-size:var(--st-fs-meta)}
.cv .im-tab span{font-variant-numeric:tabular-nums;color:var(--st-muted)}
.cv .im-people{flex:1;overflow-y:auto;padding:8px;min-height:0;scrollbar-width:thin;scrollbar-color:var(--st-line-strong) transparent}
.cv .im-person{padding:13px 10px;gap:10px;border-radius:var(--st-r-control);align-items:flex-start;min-height:88px;border:1px solid transparent;transition:background .15s ease}
.cv .im-person .avatar{width:30px;height:30px;flex:none;font-size:var(--st-fs-meta);margin-top:2px;background:var(--st-sunken)}
.cv .im-person:hover{background:var(--st-hover)}
.cv .im-person.is-open{background:var(--st-surface);border-color:var(--st-line-strong);box-shadow:none}
.cv .im-person-body{min-width:0;display:block;flex:1}
.cv .im-person-top{display:flex;align-items:baseline;gap:8px}
.cv .im-person-name{font-size:var(--st-fs-body);font-weight:550;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.cv .im-person-time{margin-left:auto;font-size:var(--st-fs-micro);color:var(--st-muted);white-space:nowrap}
.cv .im-person-preview{font-size:var(--st-fs-meta);line-height:1.6;margin:5px 0;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--st-text-2)}
.cv .im-person-foot{display:flex;gap:6px;align-items:center;font-size:var(--st-fs-micro);line-height:1.6;color:var(--st-muted)}
.cv-account-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}
.cv-state{display:inline-flex;gap:4px;align-items:center;white-space:nowrap;font-size:var(--st-fs-micro);font-weight:500;color:var(--st-muted)}
.cv-state::before{content:'';width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}
.cv-state.is-attention{color:var(--st-warn)}.cv-state.is-danger{color:var(--st-bad)}.cv-state.is-pending{color:var(--st-primary-bg)}
.cv-list-footer{display:flex;justify-content:space-between;gap:10px;padding:14px 16px;border-top:1px solid var(--st-line);font-size:var(--st-fs-micro);color:var(--st-muted);flex:none}
.cv-list-footer a{color:var(--st-text-2);text-decoration:underline;text-underline-offset:3px}
.cv-list-empty{padding:28px 12px;color:var(--st-muted);font-size:var(--st-fs-meta);line-height:1.8}
.cv-list-empty strong{display:block;color:var(--st-text-2);font-weight:500;margin-bottom:6px}.cv-list-empty p{margin:0 0 12px}
.cv [hidden]{display:none!important}
.cv .im-main{display:flex;flex-direction:column;min-height:0;min-width:0;background:var(--st-surface);overflow:hidden}
.cv .im-head{display:flex;align-items:center;gap:12px;padding:20px 24px;border-bottom:1px solid var(--st-line);background:var(--st-surface);flex:none;min-height:80px}
.cv .im-head>.avatar{width:36px;height:36px;font-size:var(--st-fs-body);flex:none}
.cv .im-head-body{min-width:0;flex:1}
.cv .im-head-name{font-size:var(--st-fs-head);font-weight:600;display:flex;gap:8px;align-items:center;flex-wrap:wrap;line-height:1.5}
.cv .im-head-meta{font-size:var(--st-fs-meta);color:var(--st-muted);margin-top:3px;overflow-wrap:anywhere}
.cv .im-back{display:none}.cv-lead-link{margin-left:auto;flex:none}
.cv .im-handoff{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 24px;background:var(--st-gold-soft);color:var(--st-gold-ink);border:0;border-bottom:1px solid var(--st-line);font-size:var(--st-fs-meta);flex:none;line-height:1.7}
.cv .im-handoff strong{font-weight:600}.cv .im-handoff p{margin:2px 0 0}.cv .im-handoff a{white-space:nowrap;font-weight:500;color:inherit;text-decoration:underline;text-underline-offset:3px}
.cv-context{flex:none;border-bottom:1px solid var(--st-line)}
.cv-context>summary{padding:11px 24px;font-size:var(--st-fs-meta);color:var(--st-text-2);cursor:pointer;list-style:none;display:flex;gap:10px;align-items:center}
.cv-context>summary::before,.cv-inbound>summary::before{content:' ';border:solid currentColor;border-width:0 1px 1px 0;width:5px;height:5px;transform:rotate(-45deg);margin-right:3px;transition:transform .15s}
.cv-context[open]>summary::before,.cv-inbound[open]>summary::before{transform:rotate(45deg)}
.cv-context>summary span{margin-left:auto;color:var(--st-muted);font-size:var(--st-fs-micro)}
.cv-context-body{padding:4px 24px 16px;max-height:200px;overflow:auto;font-size:var(--st-fs-meta)}
.cv-context-body .kv{display:grid;grid-template-columns:110px minmax(0,1fr)}.cv-appointments{border-top:1px solid var(--st-line);margin-top:12px;padding-top:12px}
.cv .im-thread{flex:1;min-height:120px;overflow-y:auto;padding:18px 28px;display:flex;flex-direction:column;gap:18px;scrollbar-width:thin;scrollbar-color:var(--st-line-strong) transparent}
.cv .im-day{display:flex;gap:14px;align-items:center;justify-content:center;font-size:var(--st-fs-micro);color:var(--st-muted);margin:0;flex:none}
.cv .im-day::before,.cv .im-day::after{content:'';height:1px;background:var(--st-line);flex:1;max-width:90px}.cv .im-day span{background:none}
.cv .im-msg{display:flex;max-width:88%;align-self:flex-start;gap:0;flex:none}.cv .im-msg.is-out{align-self:flex-end;flex-direction:row}
.cv .im-msg-body{min-width:0;max-width:65ch}.cv-message-by{font-size:var(--st-fs-micro);color:var(--st-muted);margin-bottom:6px}.is-out .cv-message-by{text-align:right}
.cv .im-bubble{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;font-size:var(--st-fs-body);padding:10px 14px;background:var(--st-surface-2);border:1px solid var(--st-line);border-radius:var(--st-r-surface);color:var(--st-text)}
.cv .is-out .im-bubble{background:var(--st-selected);border-color:transparent;color:var(--st-text);border-radius:var(--st-r-surface)}
.cv .im-msg-meta{font-size:var(--st-fs-micro);line-height:1.6;margin-top:6px;color:var(--st-muted)}.cv .is-out .im-msg-meta{text-align:right}
.cv .im-msg-meta .status{font-size:inherit;color:inherit}
.cv-waiting,.cv-thread-empty{font-size:var(--st-fs-meta);color:var(--st-muted);line-height:1.8;margin:16px 0;text-align:center}
.cv-thread-empty strong{color:var(--st-text-2);font-weight:500}
.cv-workbench{display:flex;flex-direction:column;min-height:0;border-top:1px solid var(--st-line);padding:0 24px;flex:none;max-height:62%;overflow:auto;background:var(--st-surface);scrollbar-width:thin}
.cv-reply-queue{min-height:0;overflow:visible;flex:none;scrollbar-width:thin}.cv-workbench-title{display:flex;justify-content:space-between;gap:12px;padding:14px 0 10px;font-size:var(--st-fs-meta);font-weight:550}.cv-workbench-title span:last-child{color:var(--st-muted);font-size:var(--st-fs-micro);font-weight:400}
.cv-draft{padding:0 0 12px}.cv-draft+ .cv-draft{border-top:1px solid var(--st-line);padding-top:12px}
.cv-draft>summary{display:flex;gap:10px;align-items:center;flex-wrap:wrap;list-style:none;cursor:pointer;font-size:var(--st-fs-meta);font-weight:500}
.cv-draft>summary time{font-size:var(--st-fs-micro);color:var(--st-muted);font-weight:400;margin-left:auto}
.cv-draft>summary::after{content:' ';border:solid var(--st-muted);border-width:0 1px 1px 0;width:5px;height:5px;transform:rotate(45deg);margin:0 2px}.cv-draft[open]>summary::after{transform:rotate(225deg)}
.cv-draft-body{padding-top:10px}.cv-draft-hint{font-size:var(--st-fs-micro);line-height:1.7;color:var(--st-muted);margin:0 0 8px}
.app .cv-draft textarea{min-height:144px;height:144px;resize:vertical;font-size:var(--st-fs-body);line-height:1.8;background:var(--st-surface);padding:10px 12px;width:100%;display:block}
.cv-draft-actions{position:sticky;bottom:0;background:var(--st-surface);z-index:1;display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding-top:10px}
.cv-send-notice{padding:10px 12px;background:var(--st-surface-2);border-radius:var(--st-r-control);font-size:var(--st-fs-meta);line-height:1.7;margin-bottom:10px;color:var(--st-text-2)}
.cv-send-notice strong{font-weight:550}.cv-send-notice p{margin:2px 0}.cv-send-notice a{display:inline-block;margin-top:2px;text-decoration:underline;text-underline-offset:3px;color:inherit}.cv-send-notice.is-failed{color:var(--st-bad)}.cv-send-notice.is-uncertain{color:var(--st-warn)}
.cv-reply-feedback{padding:10px 0;font-size:var(--st-fs-meta);line-height:1.7;color:var(--st-bad)}.cv-reply-feedback a{display:inline-block;text-decoration:underline;margin-left:6px}
.cv-edit-warning{font-size:var(--st-fs-micro);color:var(--st-warn);margin:8px 0 0;line-height:1.7}
.cv-manual-confirm{border-top:1px solid var(--st-line);padding-top:10px;margin-top:12px;font-size:var(--st-fs-meta);line-height:1.7}.cv-manual-confirm p{margin:0 0 8px}
.cv-inbound{flex:none;max-height:100%;overflow:auto;border-top:1px solid var(--st-line);padding:14px 0}.cv-inbound:first-child{border:0}
.cv-inbound>summary{display:flex;align-items:center;gap:8px;font-size:var(--st-fs-meta);font-weight:500;cursor:pointer;list-style:none}.cv-inbound>summary span{margin-left:auto;color:var(--st-muted);font-size:var(--st-fs-micro);font-weight:400}
.cv .im-compose{border:0;background:transparent;padding:12px 0 0;flex:none}.cv .im-compose-label{font-size:var(--st-fs-meta);font-weight:500;margin:0 0 8px;display:block}
.cv .im-compose textarea{min-height:78px;height:78px;line-height:1.7;resize:vertical}.cv .im-compose-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.cv .im-compose-foot>span{font-size:var(--st-fs-micro);color:var(--st-muted);line-height:1.7}
.cv-retired{font-size:var(--st-fs-meta);line-height:1.8;padding:14px 0;color:var(--st-muted)}.cv-retired summary{cursor:pointer;color:var(--st-text-2)}.cv-retired>div{border-top:1px solid var(--st-line);padding:10px 0}.cv-retired time{font-size:var(--st-fs-micro)}.cv-retired p{white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0}.cv-blocked{padding:20px 0;font-size:var(--st-fs-meta);line-height:1.8;color:var(--st-muted)}.cv-blocked strong{color:var(--st-text-2);font-weight:500}.cv-blocked p{margin:4px 0 12px}
.cv .cv-empty{justify-content:center;padding:40px clamp(24px,5vw,72px);overflow:auto}.cv-empty-content{max-width:460px;margin:0 auto}.cv-empty h2{font-size:var(--st-fs-page);font-weight:600;line-height:1.5;letter-spacing:-.02em;margin:0 0 14px;text-wrap:balance}.cv-empty-description{font-size:var(--st-fs-body);line-height:1.9;color:var(--st-muted);margin:0 0 24px}.cv-empty-actions{display:flex;gap:8px;flex-wrap:wrap}.cv-empty-note{border-top:1px solid var(--st-line);margin-top:48px;padding-top:20px;font-size:var(--st-fs-meta);line-height:1.9}.cv-empty-note strong{font-weight:500;color:var(--st-text-2)}.cv-empty-note p{margin:6px 0 0;color:var(--st-muted)}
.cv .cv-new-person{overflow:auto}.cv-new-body{padding:28px;max-width:720px;width:100%;margin:0 auto}.cv-new-body h3{font-size:var(--st-fs-head);margin-bottom:10px}.cv .im-compose-new .form-grid{grid-template-columns:1fr;gap:16px;margin-bottom:20px}.cv .im-compose-new label{font-size:var(--st-fs-meta)}.cv .im-compose-new textarea{height:128px}.cv .im-compose-new .im-compose-foot{align-items:flex-start;flex-wrap:wrap}
.cv-notifications{overflow:auto;display:block}.cv-notifications>.view-tabs{margin-bottom:20px}
@media(max-width:1100px) and (min-width:701px){.cv .im{grid-template-columns:240px minmax(0,1fr)}.cv .im-head{padding:16px}.cv-workbench{padding-inline:16px}.cv .im-thread{padding-inline:20px}.cv .im-handoff{padding-inline:16px}.cv .cv-empty{padding-inline:28px}}
@media(max-width:700px){
 .content[data-page=conversations]:has(>.cv){padding:12px 0 0}.content[data-page=conversations]:has(>.cv)>.banner{margin:0 12px 12px}.cv>.view-tabs{padding:0 16px;gap:20px;white-space:nowrap;flex-wrap:nowrap;overflow-x:auto}.cv .im{display:flex;flex-direction:column;min-height:0}.cv .im-list{flex:1;min-height:0;border:0}.cv .im:not(.has-open)>.im-main{display:none}.cv .im.has-open>.im-list{display:none}.cv .im.has-open>.im-main{flex:1;min-height:0;display:flex}.cv .im.is-empty>.im-list{display:none}.cv .im.is-empty>.im-main{display:flex;flex:1;padding:32px 24px;justify-content:flex-start}.cv .im.is-empty .cv-empty-content{padding-top:24px}.cv .im-head{padding:12px 16px;gap:10px;flex-wrap:wrap;min-height:76px}.cv .im-back{display:block;width:100%;font-size:var(--st-fs-meta);color:var(--st-muted);margin-bottom:2px}.cv .im-head-name{font-size:var(--st-fs-item)}.cv .im-head-meta{font-size:var(--st-fs-micro)}.cv .im-head>.avatar{width:30px;height:30px}.cv .cv-lead-link{height:30px;font-size:var(--st-fs-micro);padding:0}.cv .im-handoff{padding:10px 16px;gap:10px}.cv-context>summary{padding:10px 16px}.cv-context-body{padding-inline:16px}.cv .im-thread{padding:16px;gap:16px;min-height:100px}.cv .im-msg{max-width:94%}.cv-workbench{padding-inline:16px}.app .cv-draft textarea,.app .cv-search input{font-size:var(--st-fs-head)}.cv .im-compose textarea{font-size:var(--st-fs-head)}.cv .im-compose-foot{align-items:flex-start}.cv .im-compose-foot .btn{flex:none}.cv-draft-actions{gap:6px}.cv-draft-actions .btn{font-size:var(--st-fs-micro);padding-inline:8px}.cv-draft-actions .spacer{display:none}.cv-inbound>summary{flex-wrap:wrap}.cv-new-body{padding:24px 16px}.cv .im-list-head{padding-top:18px}.cv .im-person{min-height:92px}.cv .im-people:has(.cv-list-empty:only-child){display:block}
}
@media(prefers-reduced-motion:reduce){.cv *{transition:none!important}}
.cv-outreach{display:flex;flex-direction:column;gap:8px;padding:14px 0 12px}
.cv-outreach-head{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:var(--st-fs-meta);color:var(--st-muted)}
.cv-outreach textarea{min-height:144px;resize:vertical;font-size:var(--st-fs-item);line-height:1.75;background:var(--st-surface);padding:10px 12px;width:100%;display:block}
.cv-outreach textarea[readonly]{background:var(--st-surface-2)}
.cv-outreach .cv-quiet{border-color:transparent;color:var(--st-muted)}
.cv-outreach .cv-quiet:hover{color:var(--st-bad);background:var(--st-bad-soft)}
.cv-outreach [data-armed="1"]{border-color:var(--st-warn);color:var(--st-warn);background:var(--st-warn-soft)}
.cv-notifications .ntf-pane{border:1px solid var(--st-line);border-radius:var(--st-r-surface);overflow:hidden;background:var(--st-surface)}.cv-notifications .ntf-head{padding:16px;border-bottom:1px solid var(--st-line)}.cv-notifications .ntf-list{padding:0 16px;min-height:220px}.cv-notifications .ntf-pane .empty{border:0}.cv .view-tabs .im-tab{min-height:44px;display:inline-flex;align-items:center;gap:6px}.cv-review-position{display:flex;justify-content:space-between;align-items:center;gap:16px;flex:none;padding:10px 24px;border-bottom:1px solid var(--st-line);font-size:var(--st-fs-meta);color:var(--st-muted)}.cv-review-position a{color:var(--st-primary);text-decoration:underline;text-underline-offset:3px}.cv-draft-actions .btn,.cv-manual-confirm .btn{min-height:44px;white-space:nowrap}.unified-console .cv .cv-draft-actions .btn,.unified-console .cv .cv-manual-confirm .btn{min-height:44px;height:auto;white-space:nowrap}.cv-draft-actions [data-conversation-action=approve]{min-width:154px}.cv-outreach [data-outreach-action=send]{order:5}.cv-outreach [data-outreach-action=cancel]{order:4}.cv-outreach [data-outreach-action=mark-sent]{order:3}.cv-outreach .spacer{display:none}.cv-workbench textarea{flex:none}.cv-outreach{flex:none}.cv .im-list .im-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-inline:12px}.cv .im-list .im-tabs .im-tab{display:flex;align-items:center;justify-content:center;gap:4px;padding-inline:2px;white-space:nowrap}.cv .im-list{width:100%}

.cv-batch{padding:12px;border-bottom:1px solid var(--border);max-height:60vh;overflow:auto}.cv-batch summary{cursor:pointer;font-weight:600}.cv-batch-item{display:grid;grid-template-columns:20px 1fr;gap:8px;padding:12px 0;border-bottom:1px solid var(--border);font-size:12px}.cv-batch-item [data-batch-result],.cv-batch-item a{grid-column:2}.cv-batch-item[data-completed]{color:var(--st-muted)}.cv-batch [data-batch-feedback]{padding:12px 0}.cv-batch [hidden]{display:none!important}

.contact-results{padding:24px;min-width:0;color:var(--st-text)}
.cr-heading{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}
.cr-heading h2{font-size:var(--st-fs-head);margin:0 0 6px}.cr-heading p{margin:0;color:var(--st-muted);font-size:var(--st-fs-body)}
.cr-tabs{display:flex;gap:24px;border-bottom:1px solid var(--st-line);margin-bottom:20px;overflow:auto}
.cr-tabs a{white-space:nowrap;padding:10px 0;color:var(--st-muted);text-decoration:none;border-bottom:2px solid transparent;display:flex;gap:8px}.cr-tabs a[aria-current]{color:var(--st-text);border-color:var(--st-accent);font-weight:600}.cr-tabs span{font-variant-numeric:tabular-nums}
.cr-filters,.cr-batch{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.cr-filters{margin-bottom:16px}.contact-results input:not([type=checkbox]):not([type=hidden]),.contact-results select{background:var(--st-surface);color:var(--st-text);border:1px solid var(--st-line-strong);border-radius:var(--st-r-control);padding:6px 10px;font:inherit;min-height:32px}.cr-filters select{width:180px;flex:0 1 180px}.cr-filters input[name=q]{width:280px;max-width:100%}.cr-batch{background:var(--st-surface-2);padding:12px;border-radius:var(--st-r-control)}.cr-batch input{width:130px}.cr-batch [data-contact-count]{min-width:72px;font-variant-numeric:tabular-nums}.cr-feedback{margin:8px 0;min-height:1.5em;font-size:var(--st-fs-meta);color:var(--st-muted)}.cr-feedback[data-error]{color:var(--st-bad)}
.cr-table{border-collapse:collapse;width:100%;table-layout:fixed;font-size:var(--st-fs-body)}.cr-table th{color:var(--st-muted);font-weight:500;text-align:left;padding:10px 8px;border-bottom:1px solid var(--st-line)}.cr-table th:first-child{width:32px}.cr-table th:last-child{width:96px}.cr-table td{vertical-align:top;padding:18px 8px;border-bottom:1px solid var(--st-line);overflow-wrap:anywhere}.cr-table tbody:has(input:checked)>tr:first-child{background:var(--st-accent-soft)}.cr-table strong{font-weight:500}.cr-attention{color:var(--st-warn)}.cr-name{font-weight:600;color:var(--st-text);text-decoration:none}.cr-name:hover{text-decoration:underline}.cr-meta{display:block;color:var(--st-muted);font-size:var(--st-fs-meta);margin-top:6px;line-height:1.5}.cr-contact span{display:block;margin-bottom:6px}.cr-contact strong{font-variant-numeric:tabular-nums;color:var(--st-text)}.cr-need{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cr-table input[type=checkbox]{accent-color:var(--st-accent);width:16px;height:16px;cursor:pointer}.cr-expanded[hidden]{display:none}.cr-expanded td{padding:0}.cr-summary{padding:20px 40px;background:var(--st-surface-2)}.cr-summary dl{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px;margin:0 0 16px;max-width:850px}.cr-summary dt{color:var(--st-muted)}.cr-summary dd{margin:0;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.cr-pagination{display:flex;gap:20px;padding:20px 0;color:var(--st-muted);font-size:var(--st-fs-meta)}.cr-empty{padding:64px 20px;text-align:center}.cr-empty h3{font-size:var(--st-fs-head)}.cr-empty p{color:var(--st-muted)}
@media(max-width:1000px){.cr-summary{padding:16px}.cr-heading{align-items:flex-start}}
@media(max-width:700px){.contact-results{padding:16px}.cr-heading{flex-direction:column;margin-bottom:16px}.cr-tabs{gap:20px}.cr-filters input[name=q]{width:100%}.cr-filters select{max-width:46%}.cr-batch{gap:8px}.cr-batch [data-contact-count]{width:100%}.cr-table,.cr-table tbody{display:block}.cr-table thead{display:block}.cr-table thead tr{display:block}.cr-table th{display:none}.cr-table th:first-child{display:block;width:auto;border:0}.cr-table tbody>tr:first-child{display:grid;grid-template-columns:26px minmax(0,1fr) minmax(0,1fr);padding:14px 0;border-bottom:1px solid var(--st-line);gap:12px 8px}.cr-table td{display:block;padding:0;border:0}.cr-table td:first-child{grid-column:1;grid-row:1 / span 4}.cr-table td:nth-child(2){grid-column:2 / 4}.cr-table td:nth-child(3){grid-column:2 / 4}.cr-table td:nth-child(4){grid-column:2 / 4}.cr-table td:nth-child(5){display:block;grid-column:2 / 4}.cr-table td:nth-child(6){grid-column:2}.cr-table td:nth-child(7){grid-column:3;text-align:right}.cr-table td[data-label]:before{content:attr(data-label);display:block;color:var(--st-muted);font-size:var(--st-fs-meta);margin-bottom:4px}.cr-table td:nth-child(2):before{display:none}.cr-summary dl{grid-template-columns:1fr;gap:4px}.cr-summary dd{margin-bottom:12px}.cr-expanded:not([hidden]){display:block}.cr-expanded td{display:block}.cr-pagination{flex-wrap:wrap}}

.content-week-help{margin-top:12px}
/* Sections carry rules; only the actual note or vehicle is an object surface. */
.content-week-grid .board-cell{border-radius:0!important;box-shadow:none}.content-week-grid .board-cell.is-today{background:var(--st-accent-soft)}.content-week-grid .board-head.is-today{color:var(--st-accent-ink);background:var(--st-accent-soft);box-shadow:inset 0 -2px var(--st-accent)}.content-week-grid .board-head{top:0;z-index:3}.content-week-grid .note-cover{border-radius:0}.veh-detail .veh-cols>.stack>.panel{border:0;border-radius:0;background:none;box-shadow:none;padding-inline:0}.veh-detail .veh-block{border-radius:0;background:none;box-shadow:none}.vehicle-search{gap:6px}.vehicle-search input[type=search]{width:200px}.vehicle-adder{position:relative}.vehicle-adder>summary{list-style:none}.vehicle-adder>summary::-webkit-details-marker{display:none}.vehicle-adder>form{position:absolute;right:0;top:calc(100% + 10px);width:min(660px,calc(100vw - 48px));padding:20px;border:1px solid var(--st-line);border-radius:var(--st-r-surface);background:var(--st-surface);box-shadow:var(--st-float);z-index:20;max-height:70dvh;overflow:auto}.vehicle-adder form .fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.vehicle-adder label{display:grid;gap:6px}.vehicle-adder label input,.vehicle-adder label select{width:100%}@media(max-width:700px){.vehicle-adder>form{position:fixed;left:16px;right:16px;top:80px;width:auto;max-height:calc(100dvh - 110px)}.vehicle-adder form .fields{grid-template-columns:1fr}.vehicle-search input[type=search]{max-width:100%;width:170px}}

.post-upload-drop{border:1px dashed var(--st-line);border-radius:var(--st-r-control);padding:20px;text-align:center;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap}.post-upload-drop p{flex-basis:100%;margin:0}.post-upload-drop.is-dragging{border-color:var(--st-accent);background:var(--st-accent-soft)}

.content-page-controls .filters-more{position:relative}.content-page-controls .filters-more[open]>.filters-more-row{position:absolute;right:0;top:100%;z-index:20;min-width:240px;max-width:calc(100vw - 48px);display:flex;flex-direction:column;align-items:stretch;padding:12px;background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-surface)}
.content-week-grid{width:100%;min-width:0;max-width:100%;overflow:visible}.content-week-grid .board{grid-template-columns:100px repeat(7,minmax(0,1fr));min-width:0;width:100%}.content-week-grid .board>*{min-width:0;overflow-wrap:anywhere}.content-week-grid .board-head{position:sticky;top:0;background:var(--st-surface);z-index:1}.content-week-grid .board-cell{border-radius:0;background:transparent}.content-week-grid .board-empty{visibility:hidden}.note-cover,.content-week-grid .board-cell .note-cover{aspect-ratio:3/4}.note-cover:has(.note-cover-text){display:grid;place-items:center;text-align:center;padding:16px}.note-cover .note-cover-text{font-size:var(--st-fs-page);line-height:1.4}.board-cell .note-cover .note-cover-text,.content-agenda .note-cover .note-cover-text{font-size:var(--st-fs-head)}.note-cover img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.content-agenda{display:none}.post-phone{max-width:375px;margin-inline:auto;border:1px solid var(--st-line);border-radius:var(--st-r-surface);overflow:hidden;background:var(--st-surface)}.post-phone-account{padding:12px 16px;font-weight:600}.post-phone>h2,.post-phone>p,.post-phone>.post-preview-body{margin:12px 16px}.post-phone [data-post-cover]{aspect-ratio:3/4;background:var(--st-surface-2);overflow:hidden}.post-phone [data-post-cover] img{height:100%;max-height:none;object-fit:contain}.post-phone [data-post-cover] .post-media-placeholder{height:100%}
@media(max-width:700px){.content-week-grid{display:none}.content-agenda{display:grid;gap:24px}.content-agenda section{border-top:1px solid var(--st-line);padding-top:16px}.content-agenda .is-today>h3{color:var(--st-accent-ink);border-left:2px solid var(--st-accent);padding-left:10px}.content-agenda h3{font-size:var(--st-fs-head);margin:0 0 12px}.content-agenda .note{display:grid;grid-template-columns:96px minmax(0,1fr);gap:12px;margin-bottom:12px}.content-agenda .note-body{padding:0}.content-agenda .note-cover{width:96px}}
.content-review{grid-template-columns:minmax(0,1.2fr) minmax(300px,1fr);margin-top:16px;align-items:start}
.content-review>.post-preview{grid-column:1;grid-row:1 / span 2}.content-review> :nth-child(2),.content-review> :nth-child(3){grid-column:2}.post-preview{position:sticky;top:16px}.post-preview h2{font-size:var(--st-fs-head);line-height:1.5}.post-preview-body{white-space:pre-wrap;line-height:1.9;font-size:var(--st-fs-body);overflow-wrap:anywhere}
[data-post-cover] img{width:100%;max-height:360px;object-fit:contain;background:var(--st-surface-2)}
.post-media-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}
.post-media-inspect{display:block;width:100%;padding:0;border:0;background:transparent;cursor:zoom-in}.post-media-inspect:focus-visible{outline:2px solid var(--st-primary);outline-offset:3px}[data-visual-progress] progress{width:100%;height:5px;accent-color:var(--st-primary)}
.post-media-grid figure{margin:0;min-width:0}.post-media-grid img{width:100%;height:100px;object-fit:contain;background:var(--st-surface-2)}
.post-media-grid figcaption{font-size:var(--st-fs-micro);display:flex;gap:4px;align-items:center;flex-wrap:wrap}.post-media-grid .btn{padding:4px 6px}
.post-media-placeholder{min-height:80px;display:grid;place-items:center;background:var(--st-surface-2);color:var(--st-muted);font-size:var(--st-fs-micro);padding:12px;text-align:center}
[data-image-upload]{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}.post-media label:has([data-image-upload]){position:relative;cursor:pointer}.post-media label:has([data-image-upload]:focus-visible){outline:2px solid var(--st-primary);outline-offset:3px}
[data-media-feedback]:not(:empty){padding:8px 0;font-size:var(--st-fs-micro)}

@media(max-width:700px){.content-review{grid-template-columns:1fr}.content-review>.post-preview,.content-review> :nth-child(2),.content-review> :nth-child(3){grid-column:1;grid-row:auto}.post-media-grid .btn{min-height:44px}.post-preview{position:static}}

.onboard-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;border:1px solid var(--st-line);border-radius:var(--st-r-surface);background:var(--st-surface);color:var(--st-text);overflow:auto}
.onboard-dialog::backdrop{background:#0008}
.onboard-dialog [hidden]{display:none!important}
.onboard-heading{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--st-line);gap:16px}
.onboard-heading h2{font-size:var(--st-fs-head);margin:0}.onboard-body{padding:24px;display:flex;flex-direction:column;gap:16px}.onboard-body p{margin:0;line-height:1.65}
.onboard-status{font-weight:600}.onboard-qr{width:224px;height:224px;object-fit:contain;align-self:center;background:#ffffff;padding:12px;border-radius:var(--st-r-control)}.onboard-qr[hidden]{display:none}
.onboard-progress{display:flex;flex-direction:column;gap:12px}.onboard-progress progress{display:block;width:100%;height:4px;border:0;border-radius:var(--st-r-tag);overflow:hidden;accent-color:var(--st-primary-bg);background:var(--st-line)}.onboard-progress progress::-webkit-progress-bar{background:var(--st-line);border-radius:var(--st-r-tag)}.onboard-progress progress::-webkit-progress-value{background:var(--st-primary-bg);border-radius:var(--st-r-tag)}.onboard-progress progress::-moz-progress-bar{background:var(--st-primary-bg)}.onboard-progress progress:indeterminate{background:var(--st-line)}.onboard-progress progress:indeterminate::-webkit-progress-bar{background:linear-gradient(90deg,var(--st-line) 0%,var(--st-primary-bg) 50%,var(--st-line) 100%);background-size:200% 100%;animation:onboard-loading 1.8s ease-in-out infinite}.onboard-progress .onboard-status{font-size:var(--st-fs-body);font-weight:500;color:var(--st-text-2)}@keyframes onboard-loading{from{background-position:100% 0}to{background-position:-100% 0}}@media(prefers-reduced-motion:reduce){.onboard-progress progress:indeterminate::-webkit-progress-bar{animation:none}}
.onboard-actions{display:flex;flex-wrap:wrap;gap:8px}.onboard-actions:empty{display:none}
.onboard-error{color:var(--red);font-size:var(--st-fs-body)}.onboard-error:empty{display:none}
.onboard-profile{display:flex;gap:14px;align-items:center;padding:16px 0;border-bottom:1px solid var(--st-line)}.onboard-profile img{width:52px;height:52px;border-radius:50%;object-fit:cover}.onboard-profile h3{margin:0 0 4px}
@media(max-width:540px){.onboard-heading,.onboard-body{padding:18px}.onboard-body input:not([type=checkbox]){font-size:var(--st-fs-head)}}

.workers{min-width:0}.workers-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.workers-toolbar h3{margin:0}.workers-toolbar>p{max-width:65ch}.workers-layout{display:grid;grid-template-columns:minmax(230px,30%) minmax(0,1fr);margin-top:20px;border-top:1px solid var(--st-line)}
.workers-register{border-right:1px solid var(--st-line)}.worker-row{display:flex;justify-content:space-between;gap:12px;padding:18px 16px;border-bottom:1px solid var(--st-line);overflow-wrap:anywhere}.worker-row>span{display:flex;flex-direction:column;gap:6px}.worker-row>span:last-child{align-items:flex-end;flex-shrink:0}.worker-row:hover{background:var(--st-hover)}.worker-row.is-selected{background:var(--st-selected)}.worker-row strong{font-size:var(--st-fs-item);font-weight:600}
.worker-detail{min-width:0;padding:24px}.worker-detail h2{font-size:var(--st-fs-head)}.worker-placeholder{display:flex;flex-direction:column;gap:8px}.worker-section{padding:24px 0;border-bottom:1px solid var(--st-line)}.worker-section:last-child{border-bottom:0}.worker-section>p{margin-top:8px}.worker-instructions{white-space:pre-wrap;overflow-wrap:anywhere;max-width:75ch}.worker-grants{padding:0;margin:0;list-style:none;display:flex;flex-wrap:wrap;gap:12px}.worker-grants li{display:flex;align-items:center;gap:8px}
.worker-error{color:var(--st-bad);white-space:pre-wrap;overflow-wrap:anywhere}.worker-error:empty{display:none}.worker-empty{padding:16px 0}.worker-task{border-bottom:1px solid var(--st-line)}.worker-task>summary{display:flex;align-items:center;gap:12px;cursor:pointer;padding:14px 0;flex-wrap:wrap}.worker-task>summary:before{content:'';width:7px;height:7px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:rotate(-45deg);margin-right:4px}.worker-task[open]>summary:before{transform:rotate(45deg)}.worker-task>summary>span:first-of-type{flex:1}.worker-task time{color:var(--st-muted);font-size:var(--st-fs-meta);font-variant-numeric:tabular-nums}.worker-task-body{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:0 0 18px}.worker-task pre{max-width:100%;max-height:360px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--st-surface-2);padding:16px;font-size:var(--st-fs-meta);margin:0;width:100%}
.worker-dialog{width:min(580px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--st-line);border-radius:var(--st-r-surface);background:var(--st-surface);color:var(--st-text);overflow:auto}.worker-dialog::backdrop{background:#0008}.worker-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--st-line);gap:16px}.worker-dialog-head h2{font-size:var(--st-fs-head);margin:0}.worker-form{padding:24px;display:flex;flex-direction:column;gap:20px}.worker-form label{display:flex;flex-direction:column;gap:6px}.worker-form input:not([type=checkbox]),.worker-form textarea,.worker-form select{width:100%;min-width:0}.worker-form textarea{resize:vertical;min-height:96px}.worker-form fieldset{border:0;padding:0;margin:0;min-width:0}.worker-form legend{font-weight:600;margin-bottom:8px}.worker-form .worker-choice{display:flex;flex-direction:row;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--st-line)}.worker-choice input{width:16px;height:16px;flex:none;margin-top:3px;accent-color:var(--st-primary-bg)}.worker-choice small{display:block;color:var(--st-muted);font-size:var(--st-fs-meta);line-height:1.6}.worker-form-footer{display:flex;justify-content:flex-end;gap:8px}.worker-form [hidden]{display:none}.workers-layout>.empty{grid-column:1/-1;width:100%}
@media(max-width:1100px){.workers-layout{grid-template-columns:minmax(210px,32%) minmax(0,1fr)}.worker-row{flex-direction:column}.worker-row>span:last-child{align-items:flex-start;flex-direction:row}.worker-detail{padding:20px}}
@media(max-width:700px){.workers-layout{grid-template-columns:1fr}.workers-register{border-right:0;max-height:280px;overflow:auto;border-bottom:1px solid var(--st-line)}.worker-row{flex-direction:row;padding:14px 8px}.worker-row>span:last-child{flex-direction:column;align-items:flex-end}.worker-detail{padding:20px 0}.worker-dialog-head,.worker-form{padding:18px}.worker-form input:not([type=checkbox]),.worker-form select,.worker-form textarea{font-size:var(--st-fs-head)}}

.worker-progress[hidden]{display:none}
.worker-progress{padding:16px 0;border-bottom:1px solid var(--st-line)}
.worker-progress-item+.worker-progress-item{margin-top:20px}
.worker-progress-item strong{display:block;font-size:var(--st-fs-body);font-weight:600}
.worker-progress progress{display:block;width:100%;height:6px;margin:12px 0 8px;accent-color:var(--st-primary-bg);border:0;border-radius:var(--st-r-tag);overflow:hidden;background:var(--st-sunken)}
.worker-progress progress::-webkit-progress-bar{background:var(--st-sunken)}
.worker-progress progress::-webkit-progress-value{background:var(--st-primary-bg)}
.worker-progress progress:indeterminate{background:linear-gradient(90deg,var(--st-sunken) 0%,var(--st-primary-bg) 45%,var(--st-sunken) 80%);background-size:200% 100%;animation:worker-progress-slide 1.6s linear infinite}
.worker-progress progress:indeterminate::-webkit-progress-bar{background:transparent}
.worker-progress-item[data-state=FAILED] progress{accent-color:var(--st-bad)}
@keyframes worker-progress-slide{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){.worker-progress progress:indeterminate{animation:none}}

.app .sidebar{background:var(--st-surface);padding:0 16px 16px}.app .sidebar-head,.app .topbar{height:64px;min-height:64px}.app .nav-item{height:36px;color:var(--st-text);border-radius:var(--st-r-control);font-size:var(--st-fs-body)}.app .nav-item.active{background:var(--st-selected)}.app .content{padding:28px}.app .btn{border-radius:var(--st-r-control)}.app .card{border:1px solid var(--st-line);border-radius:var(--st-r-surface);background:var(--st-surface)}.app .kpis{border:1px solid var(--st-line);border-radius:var(--st-r-surface)}.app .empty{border:1px dashed var(--st-line);border-radius:var(--st-r-surface);background:var(--st-surface)}
@media(max-width:900px){.app .content{padding:18px}}

body.unified-console{--st-sidebar-w:256px;background:var(--st-surface)}
body.unified-console.is-rail{--st-sidebar-w:64px}
.unified-console .sidebar{border:0;padding:16px;gap:0}.unified-console .sidebar-head{height:56px;min-height:56px;padding:0 8px}.unified-console .sidebar-head>.rail-btn{display:none}.brand-subtitle{display:block;font-size:var(--st-fs-micro);color:var(--st-muted);font-weight:400;line-height:1.7}.unified-console .brand-name{font-size:var(--st-fs-head);font-weight:600;line-height:1.5}.unified-console .brand .st-mark{height:32px;width:25px}.unified-console .nav{padding-top:20px;gap:22px;flex:1;min-height:0;overflow:auto}.unified-console .nav-item{height:34px;font-size:var(--st-fs-body);color:var(--st-text)}.unified-console .nav-group{gap:3px}.unified-console .nav-group-label{font-size:var(--st-fs-micro);padding:0 8px 8px}.nav-business summary{display:flex;justify-content:space-between;align-items:center;list-style:none;cursor:pointer;font-size:var(--st-fs-micro);color:var(--st-muted);padding:8px;margin-bottom:4px}.nav-business summary::-webkit-details-marker{display:none}.nav-business summary svg{width:14px;height:14px}.nav-business[open]>summary svg{transform:rotate(90deg)}.sidebar-context{padding:12px;border:1px solid var(--st-line);border-radius:var(--st-r-control);font-size:var(--st-fs-micro);margin-top:20px}.sidebar-context strong{font-weight:500}.sidebar-context p{font-size:var(--st-fs-micro);color:var(--st-muted);line-height:1.8;margin-top:8px}.unified-console .sidebar-store{padding:14px 8px 6px;font-size:var(--st-fs-micro);color:var(--st-muted)}.unified-console .sidebar-foot{border:0;justify-content:flex-end;padding:4px}.unified-console .sidebar-foot>[data-action=theme]{display:none}.unified-console .workspace{margin:8px 8px 8px 0;border:1px solid var(--st-line);border-radius:var(--st-r-surface);overflow:hidden;height:calc(100dvh - 16px);min-width:0}.unified-console .topbar{height:64px;padding:0 24px;background:var(--st-surface)}.unified-console .workspace-heading{gap:14px}.breadcrumb-home{font-size:var(--st-fs-body);color:var(--st-muted);border-left:1px solid var(--st-line);padding-left:14px}.breadcrumb-current{font-size:var(--st-fs-body);font-weight:500;max-width:260px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.workspace-heading>svg{width:13px;height:13px;color:var(--st-muted)}.unified-console .search{width:160px}.unified-console .store-pill{border:1px solid var(--st-line);border-radius:var(--st-r-control);padding-inline:8px}.unified-console .content{padding:32px;scroll-padding-top:24px}.business-page-head{margin-bottom:28px}.business-page-head h1{font-size:var(--st-fs-metric);line-height:1.4;font-weight:650;letter-spacing:-.02em;overflow-wrap:anywhere}.business-page-head p{font-size:var(--st-fs-item);color:var(--st-muted);margin-top:8px;max-width:72ch}.business-page-body{width:100%;max-width:1440px;margin-inline:auto}.unified-console .workspace-status{background:var(--st-surface);padding:10px 24px;font-size:var(--st-fs-micro)}.unified-console .banner{border-radius:var(--st-r-control);margin-bottom:20px}.unified-console .toolbar{margin-bottom:22px;gap:12px}.unified-console .view-tabs,.unified-console .im-tabs{display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;width:auto;max-width:100%;background:none;border:0;border-bottom:1px solid var(--st-line);border-radius:0;padding:0;gap:20px;margin:0}.unified-console .view-tabs>a,.unified-console .im-tab{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0;margin-bottom:-1px;border:0;border-bottom:2px solid transparent;border-radius:0;background:none;box-shadow:none;color:var(--st-muted);font-size:var(--st-fs-body);font-weight:400;white-space:nowrap}.unified-console .view-tabs>a:hover,.unified-console .im-tab:hover{color:var(--st-text)}.unified-console .tab-n{color:var(--st-muted);font-weight:400;font-variant-numeric:tabular-nums}.unified-console .view-tabs>a.is-on,.unified-console .im-tab.is-on{background:none;box-shadow:none;color:var(--st-text);font-weight:600;border-bottom-color:var(--st-text)}.unified-console .btn{height:var(--st-ctl);min-height:0;font-size:var(--st-fs-body);font-weight:500;padding:0 12px;border-radius:var(--st-r-control);letter-spacing:0}.unified-console .btn-sm{height:var(--st-ctl-sm);font-size:var(--st-fs-meta);padding:0 10px}.unified-console .btn-lg{height:var(--st-ctl);padding:0 14px}.unified-console .btn-primary{background:var(--st-primary-bg);border-color:var(--st-primary-bg);color:var(--st-primary-fg)}.unified-console .btn-primary:hover:not(:disabled){background:var(--st-primary-hover);border-color:var(--st-primary-hover)}.unified-console .btn-ink{background:var(--st-surface);border:1px solid var(--st-line-strong);color:var(--st-text)}.unified-console .btn-ink:hover:not(:disabled){border-color:var(--st-text-2);background:var(--st-hover)}.unified-console .btn-ghost{border:1px solid var(--st-line);background:var(--st-surface)}.unified-console .btn-ghost:hover{background:var(--st-selected)}.unified-console input:not([type=checkbox]):not([type=radio]):not([type=file]),.unified-console select{height:var(--st-ctl);min-height:0;font-size:var(--st-fs-body);border-color:var(--st-line-strong);background:var(--st-surface)}.unified-console :is(.search,.cv-search,.st-command-box) input:not([type=checkbox]):not([type=radio]):not([type=file]){min-height:0;border:0;box-shadow:none;background:transparent;padding:0}.unified-console .search input:not([type=checkbox]):not([type=radio]):not([type=file]){height:100%}.unified-console .st-command-box input:not([type=checkbox]):not([type=radio]):not([type=file]){height:var(--st-ctl)}.unified-console .cv-search input:not([type=checkbox]):not([type=radio]):not([type=file]){height:32px}.unified-console :is(.search,.cv-search,.st-command-box) input:focus{box-shadow:none}.unified-console input:focus,.unified-console select:focus,.unified-console textarea:focus{outline:0;border-color:var(--st-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--st-accent) 22%,transparent)}.unified-console textarea{border-color:var(--st-line-strong);background:var(--st-surface);font-size:var(--st-fs-body);line-height:1.7}.unified-console .fields{gap:20px}.unified-console .fields label,.unified-console .stack>label{font-size:var(--st-fs-body);gap:8px}.unified-console .card,.unified-console .veh-card,.unified-console .note-card{border:1px solid var(--st-line);border-radius:var(--st-r-surface);background:var(--st-surface);box-shadow:none}.unified-console .panel{border:0;border-top:1px solid var(--st-line);border-radius:0;background:none;box-shadow:none}.unified-console .panel .card{box-shadow:none}.unified-console .panel{padding:20px 0 0}.unified-console .panel+.panel{margin-top:32px}.unified-console .panel-title{font-size:var(--st-fs-head)}.unified-console .section-head{padding-bottom:14px;margin-bottom:20px}.unified-console .section-title{font-size:var(--st-fs-head)}.unified-console .status{height:20px;padding:0 6px;border-radius:var(--st-r-tag);font-size:var(--st-fs-micro);font-weight:500;box-shadow:none}.unified-console .data{border-collapse:separate;border-spacing:0;border:1px solid var(--st-line);border-radius:var(--st-r-surface);overflow:hidden;background:var(--st-surface)}.unified-console .data th{font-size:var(--st-fs-micro);background:var(--st-surface-2);font-weight:500;color:var(--st-muted);padding:12px 16px}.unified-console .data td{padding:16px;font-size:var(--st-fs-body)}.unified-console .data tr:last-child td{border-bottom:0}.unified-console .data tbody tr:hover{background:var(--st-surface-2)}.unified-console .filters{padding:0 0 16px;border:0;border-bottom:1px solid var(--st-line);border-radius:0;margin-bottom:16px;background:none}.unified-console .filters input,.unified-console .filters select{height:var(--st-ctl)}.unified-console .empty{padding:24px 0;text-align:left;border:0;border-radius:0;background:none;color:var(--st-muted);font-size:var(--st-fs-body)}.unified-console .empty h2{font-size:var(--st-fs-head)}.unified-console .empty p{max-width:65ch;margin:8px 0}.unified-console .detail-grid{gap:24px}.unified-console .account-register,.unified-console .workers-register{border:1px solid var(--st-line);border-radius:var(--st-r-surface);overflow:hidden;background:var(--st-surface)}.unified-console .account-inspector,.unified-console .worker-detail{border:1px solid var(--st-line);border-radius:var(--st-r-surface);background:var(--st-surface)}.unified-console .account-row,.unified-console .worker-row{padding:16px}.unified-console .account-row.is-selected,.unified-console .worker-row.is-selected{background:var(--st-selected);box-shadow:none}.unified-console .acct-top{padding:22px}.unified-console .acct-detail-body{padding:22px}.unified-console .workers-toolbar,.unified-console .account-tools{margin-bottom:24px}.unified-console .veh-grid{gap:20px}.unified-console .veh-hero{border:1px solid var(--st-line);border-radius:var(--st-r-surface);overflow:hidden}.unified-console .veh-block{padding:20px 0 0;border:0;border-top:1px solid var(--st-line);border-radius:0}.unified-console .convo-workspace{border:1px solid var(--st-line);border-radius:var(--st-r-surface);overflow:hidden}.unified-console .board{border:0;border-radius:0;overflow:visible}.unified-console .inline-form{gap:10px}.unified-console dialog{border:1px solid var(--st-line);border-radius:var(--st-r-surface)}.unified-console .kpis{gap:0;margin-bottom:24px}.unified-console .kpi{padding:20px}.unified-console .kpi-label{font-size:var(--st-fs-micro)}.unified-console .kpi-num{font-size:var(--st-fs-metric)}
.is-rail .nav-business summary,.is-rail .sidebar-context,.is-rail .brand-subtitle,.is-rail .sidebar-store{display:none}.is-rail .nav-business:not([open])>.nav-group{display:flex}.is-rail .nav-item{padding:0;justify-content:center}
@media(max-width:1100px){.unified-console .search{display:none}.unified-console .content{padding:24px}.breadcrumb-current{max-width:180px}}
@media(max-width:900px){.unified-console .workspace{margin:0;border:0;border-radius:0;height:100dvh}.unified-console .topbar{padding:0 16px}.unified-console .content{padding:20px}.unified-console .topbar .rail-btn{display:none}.unified-console .topbar .mobile-nav{display:flex}.unified-console .sidebar.mobile-open{padding:16px;background:var(--st-surface)}.unified-console .breadcrumb-current{max-width:130px}.unified-console .topbar-right{gap:6px}.unified-console .store-pill{max-width:130px}.business-page-head h1{font-size:var(--st-fs-page)}.business-page-head p{font-size:var(--st-fs-body)}.unified-console .panel{padding:16px 0 0}.unified-console .toolbar{gap:8px}.unified-console .workspace-status{padding:10px 16px}}
@media(max-width:550px){.breadcrumb-home{display:none}.unified-console .topbar .workspace-heading{gap:8px}.unified-console .breadcrumb-current{max-width:110px}.unified-console .content{padding:18px 16px}.unified-console .data td{padding:12px}.unified-console .topbar-right{margin-left:auto}}

.unified-console .account-tools{padding:16px;margin:0;border-bottom:1px solid var(--st-line)}.unified-console .account-register .data{border:0;border-radius:0}.unified-console .account-register-footer{margin:0;padding:14px 16px}.unified-console .account-workspace.has-inspector{gap:20px}.unified-console .content-review>.post-preview{grid-row:auto;grid-column:auto}.unified-console .content-review>.review-controls{grid-column:auto;display:flex;flex-direction:column;gap:20px;min-width:0}.unified-console .content-review .panel{margin:0}.unified-console .review-controls>.stack{gap:20px}.unified-console .content-review{align-items:start;gap:24px}.unified-console .content[data-page=conversations]{display:flex;flex-direction:column;overflow:hidden}.unified-console .content[data-page=conversations]>.business-page-head,.unified-console .content[data-page=conversations]>.banner{flex:none}.unified-console .content[data-page=conversations]>.business-page-body{display:flex;flex-direction:column;flex:1;min-height:0;width:100%}.unified-console .cv>.im{border:1px solid var(--st-line);border-radius:var(--st-r-surface);overflow:hidden}.unified-console .cv .im-list{background:var(--st-surface)}.unified-console .cv .im-head{background:var(--st-surface);padding:20px}.unified-console .workers-layout{gap:20px}.unified-console .worker-detail{padding:24px}.unified-console .cv .im-compose{border-radius:var(--st-r-control)}
@media(max-width:900px){.unified-console .account-inspector:not([hidden]){border-radius:0}.unified-console .account-workspace.has-inspector{gap:0}.unified-console .content[data-page=conversations]>.business-page-head{margin-bottom:16px}.unified-console .cv>.im{border-radius:var(--st-r-control)}.unified-console .content-review{grid-template-columns:1fr}.unified-console .content-review>.post-preview{position:static}.unified-console .content-review>.review-controls{grid-column:1}.unified-console .worker-detail{padding:18px}}
.unified-console .veh{border:1px solid var(--st-line);border-radius:var(--st-r-surface);background:var(--st-surface);overflow:hidden}.unified-console .veh:hover{border-color:var(--st-line-strong);box-shadow:0 2px 8px #00000008}.unified-console .veh-cover{border-radius:0}.unified-console .veh-body{padding:18px;border-bottom:0}

.unified-console .veh-cover.is-empty{min-height:96px;height:96px;aspect-ratio:auto;background:var(--st-surface-2);display:flex;flex-direction:column;justify-content:center;gap:6px}.unified-console [data-image-fallback]{font-size:var(--st-fs-micro);color:var(--st-text-2);padding:16px;text-align:center}

/* Keep reply state, editor and actions together; the page scrolls instead of clipping half a workbench. */
.unified-console .content[data-page=conversations]{overflow-y:auto;display:block}
.unified-console .content[data-page=conversations]>.business-page-body{display:block;min-height:0}
.unified-console .cv{display:block;flex:none}
.unified-console .cv>.im{height:auto;min-height:520px;overflow:visible;align-items:start}
.unified-console .cv .im-main{overflow:visible;min-height:520px}
.unified-console .cv .im-list{max-height:calc(100dvh - 130px);position:sticky;top:0;min-height:400px;overflow:auto}
.unified-console .cv .im-thread{flex:none;max-height:320px;min-height:120px}
.unified-console .cv-workbench{flex:none;max-height:none;overflow:visible;padding-bottom:16px}
.unified-console .cv-reply-queue{flex:none;overflow:visible}
.unified-console .cv-draft-actions{position:static;padding-bottom:6px}
@media(max-width:700px){.unified-console .cv .im-list{position:static;max-height:none}.unified-console .cv .im.has-open>.im-main{min-height:0}.unified-console .cv .im-thread{max-height:260px}.unified-console .cv-workbench{max-height:none}.unified-console .cv-draft-actions .btn{height:auto;min-height:44px;white-space:normal}}

@media(max-width:900px){.unified-console .cv>.im{grid-template-columns:minmax(0,1fr)}.unified-console .cv .im.has-open>.im-list{display:none}.unified-console .cv .im.has-open>.im-main{display:flex;grid-column:1;width:100%}.unified-console .cv .im:not(.has-open):not(.is-empty)>.im-main{display:none}.unified-console .cv .im-list{grid-column:1;position:static;max-height:none}.unified-console .cv .im-back{display:block}.unified-console .cv .im-head{flex-wrap:wrap}}

.unified-console .acct-note-empty:not([hidden]){display:grid;place-items:center;aspect-ratio:auto;min-height:64px;padding:10px 4px;font-size:var(--st-fs-micro);color:var(--st-text-2);text-align:center}.unified-console [data-image-fallback][hidden]{display:none}

.goal-field-label{display:none}
@media(max-width:700px){.unified-console .goal-register .data tr{display:block;padding:14px 12px;border-bottom:1px solid var(--st-line)}.unified-console .goal-register .data td{display:block;padding:3px 0;border:0;min-height:0;height:auto;line-height:1.6}.unified-console .goal-register .data td:first-child{padding-bottom:6px}.unified-console .goal-register .data td:empty{display:none}.unified-console .goal-register .goal-field-label{display:inline;color:var(--st-muted);font-size:var(--st-fs-micro)}.unified-console .goal-register .data td:nth-child(3){padding-top:6px}.unified-console .goal-register .data .primary{line-height:1.5}.unified-console .goal-register .data .secondary{margin-top:3px}}
/* Compact navigation; restore button remains visible in the content header. */
@media(min-width:901px){
 body.unified-console{grid-template-columns:192px minmax(0,1fr);--st-sidebar-w:192px}
 body.unified-console.is-rail{grid-template-columns:56px minmax(0,1fr);--st-sidebar-w:56px}
 .unified-console .sidebar{padding:12px 8px}
 .unified-console .brand{gap:8px;min-width:0}
 .unified-console .brand-name{font-size:var(--st-fs-item)}
 .unified-console .brand-subtitle{font-size:var(--st-fs-micro)}
 .unified-console .topbar .rail-btn{display:grid;margin-left:0;flex-shrink:0}
 .unified-console.is-rail .sidebar{padding-inline:8px}
 .unified-console.is-rail .nav-business>summary{display:none}
 .unified-console.is-rail .nav-item{width:40px;min-height:36px}
}
.unified-console :is(.filters,.inline-form) .btn,.unified-console .filters .filters-more>summary{height:var(--st-ctl)}
/* 更多操作 opens as a menu under its button instead of pushing the page down. */
.unified-console .toolbar .filters-more{position:relative;flex-basis:auto}.unified-console .toolbar .filters-more[open] .filters-more-row{position:absolute;right:0;top:calc(100% + 6px);z-index:30;display:flex;flex-direction:column;align-items:stretch;gap:4px;width:max-content;min-width:180px;margin:0;padding:6px;background:var(--st-surface);border:1px solid var(--st-line);border-radius:var(--st-r-control);box-shadow:var(--st-float)}.unified-console .toolbar .filters-more-row .btn{justify-content:flex-start;border-color:transparent}
/* One disclosure mark: a chevron that turns, never the browser's ▶ (custom summaries above keep their own). */
.unified-console details:not(.global-tasks,.hint,.legend,.filters-more,.cv-inbound)>summary:is(:not([class]),.small,.panel-title,.section-title){list-style:none;display:inline-flex;align-items:center;gap:6px;cursor:pointer}.unified-console details:not(.global-tasks,.hint,.legend,.filters-more,.cv-inbound)>summary:is(:not([class]),.small,.panel-title,.section-title)::-webkit-details-marker{display:none}.unified-console details:not(.global-tasks,.hint,.legend,.filters-more,.cv-inbound)>summary:is(:not([class]),.small,.panel-title,.section-title)::before{content:"";flex:none;width:6px;height:6px;margin:0 3px 0 1px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(-45deg);opacity:.55;transition:transform var(--st-t-fast) var(--st-ease)}.unified-console details:not(.global-tasks,.hint,.legend,.filters-more,.cv-inbound)[open]>summary:is(:not([class]),.small,.panel-title,.section-title)::before{transform:rotate(45deg) translate(-1px,-1px)}.unified-console details>summary:is(.panel-title,.section-title){display:flex}
/* A phone is used with a thumb: controls grow to a tappable height there. */
@media(max-width:900px){.unified-console .btn{height:40px}.unified-console .btn-sm{height:36px}.unified-console input:not([type=checkbox]):not([type=radio]):not([type=file]),.unified-console select{height:40px}}
/* Shared navigation geometry for the React workspace and server-rendered pages. */
:is(.unified-console .sidebar,[data-slot=sidebar-inner]){background:var(--st-surface-2);color:var(--nav-text);font-family:var(--st-font)}
.unified-console .sidebar-head,[data-slot=sidebar-header]{height:56px;min-height:56px;padding:0 8px;display:flex;justify-content:center;flex-direction:column}
:is(.unified-console .sidebar,[data-slot=sidebar-inner]) .brand{padding:0;gap:8px;display:flex;align-items:center;text-decoration:none}
:is(.unified-console .sidebar,[data-slot=sidebar-inner]) .brand :is(b,.brand-name){font-size:var(--st-fs-item);font-weight:600;line-height:21px}
:is(.unified-console .sidebar,[data-slot=sidebar-inner]) .brand small{display:block;font-size:var(--st-fs-micro);font-weight:400;line-height:17px;color:var(--nav-muted)}
.unified-console .nav,[data-slot=sidebar-content]{padding-top:20px;gap:22px;display:flex;flex-direction:column;overflow:auto;min-height:0;flex:1}
[data-slot=sidebar-group]{padding:0}
.unified-console .nav-group,[data-slot=sidebar-menu]{display:flex;flex-direction:column;gap:3px;padding:0;margin:0}
.unified-console .nav-group-label,[data-slot=sidebar-group-label]{height:26px;min-height:26px;padding:0 8px 8px;font-size:var(--st-fs-micro);line-height:18px;color:var(--nav-muted);font-weight:400}
.unified-console .nav-business>summary,.nav-details>summary{height:30px;padding:4px 8px;margin:0 0 4px;font-size:var(--st-fs-micro);line-height:22px;color:var(--nav-muted);list-style:none;display:flex;align-items:center;justify-content:space-between;cursor:pointer}
.nav-details>summary::-webkit-details-marker{display:none}
.unified-console .nav-item,[data-slot=sidebar-menu-button]{height:34px;min-height:34px;padding:0 8px;gap:8px;display:flex;align-items:center;font-size:var(--st-fs-body);font-weight:400;line-height:20px;border-radius:var(--st-r-control);color:var(--nav-text);text-decoration:none}
.unified-console .nav-item:hover,[data-slot=sidebar-menu-button]:hover,.unified-console .nav-item.active,[data-slot=sidebar-menu-button][data-active=true]{background:var(--nav-selected);color:var(--nav-text)}
.unified-console .nav-glyph,.unified-console .nav-glyph svg,[data-slot=sidebar-menu-button]>svg{width:16px;height:16px;flex-shrink:0}
.unified-console .sidebar-store,.nav-store{padding:14px 8px 6px;font-size:var(--st-fs-micro);line-height:17px;color:var(--nav-muted);overflow-wrap:anywhere}
[data-slot=sidebar-footer]{padding:0;gap:0}
.unified-console .sidebar-foot,.nav-account{height:36px;padding:4px;display:flex;justify-content:flex-end}
.nav-account a{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--nav-selected);color:var(--nav-muted)}
@media(min-width:901px){
 .unified-console .sidebar{padding:12px 8px}
 [data-slot=sidebar-container]{padding:12px 8px}
 [data-slot=sidebar][data-collapsible=icon] [data-slot=sidebar-container]{width:56px}
 [data-slot=sidebar][data-collapsible=icon] [data-slot=sidebar-header]{padding:0;align-items:center}
 [data-slot=sidebar][data-collapsible=icon] [data-slot=sidebar-menu-button]{width:40px!important;height:34px!important;padding:0!important;justify-content:center}
 [data-slot=sidebar][data-collapsible=icon] [data-slot=sidebar-group-label]{display:none}
 [data-slot=sidebar][data-collapsible=icon] .nav-details>summary{display:none}
 .unified-console.is-rail .sidebar-head{padding:0;align-items:center}
}
@media(min-width:768px) and (max-width:900px){[data-slot=sidebar-inset]{margin:0!important;border-radius:0!important}}

.nav-account svg,.unified-console .operator svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.5}
.unified-console .sidebar-head,[data-slot=sidebar-header]{align-items:stretch}
.unified-console .nav-group-label{margin-bottom:-3px}
:is(.unified-console .sidebar,[data-slot=sidebar-inner]) .brand>svg{width:25px;height:32px;flex-shrink:0}
.unified-console .nav-business summary svg{flex-shrink:0}

/* A quiet utility bar; the content heading names the page once. */
.unified-console .topbar,.workspace-topbar{height:56px;min-height:56px;padding:0 24px;gap:12px}
.unified-console .workspace-heading{gap:10px;flex:none}
/* the page title reads the same on every page, 工作台 included */
@media (min-width:901px){.unified-console .topbar .topbar-title{font-size:var(--st-fs-head)}}
.unified-console .topbar-right{margin-left:auto}
@media(max-width:900px){.unified-console .topbar,.workspace-topbar{padding-inline:16px}}

.unified-console .nav>*,[data-slot=sidebar-content]>*,[data-slot=sidebar-header],[data-slot=sidebar-footer],.unified-console .sidebar-store,.unified-console .sidebar-foot{flex-shrink:0}
.unified-console .nav,[data-slot=sidebar-content]{scrollbar-width:none;overflow-anchor:none}
.unified-console .nav::-webkit-scrollbar,[data-slot=sidebar-content]::-webkit-scrollbar{display:none}
@media(min-width:901px){
 body.unified-console.is-rail .nav{gap:22px;align-items:stretch}
 body.unified-console.is-rail .nav-item,[data-collapsible=icon] [data-slot=sidebar-menu-button]{height:34px!important;min-height:34px!important;width:40px!important;padding:0!important;justify-content:center}
}

/* Keep both renderers on the same baseline; no component utility may own rail sizing. */
:is(.unified-console .sidebar,[data-slot=sidebar-inner]) .brand>span{line-height:21px}
:is(.unified-console .sidebar,[data-slot=sidebar-inner]) .brand b{display:block}
:is(body.unified-console .sidebar-foot,body.unified-console.is-rail .sidebar-foot,.nav-account){flex-direction:row;padding:4px;align-items:center;gap:0}
:is(body.unified-console .sidebar-foot,body.unified-console.is-rail .sidebar-foot,.nav-account)>a{display:grid;place-items:center;width:28px;height:28px;margin:0;border-radius:50%;background:var(--nav-selected);color:var(--nav-muted)}
.unified-console .nav-item.active,[data-slot=sidebar-menu-button][data-active=true]{font-weight:500}
[data-slot=sidebar-menu-badge]{height:17px;min-width:17px;padding:0 5px;border-radius:var(--st-r-pill);background:var(--st-accent);color:var(--st-on-accent);font-size:var(--st-fs-micro);font-weight:600;line-height:17px;top:8.5px;right:8px}
@media(min-width:901px){
 [data-slot=sidebar-inset]{border:1px solid var(--border);border-radius:var(--st-r-surface);box-shadow:none}
 [data-collapsible=icon] [data-slot=sidebar-menu-badge]{display:flex;top:0;right:0}
}

body.unified-console .nav-glyph .st-icon{width:16px;height:16px}

@media(min-width:901px){[data-collapsible=icon] [data-slot=sidebar-menu-button]>span{display:none}}

/* The collapsed rail looks the same in both shells: a divider above every group after the first (server pages draw
   it as body.is-rail .nav-group+.nav-group), so icons do not shift when a link crosses from one shell to the other. */
@media(min-width:901px){[data-slot=sidebar][data-collapsible=icon] [data-slot=sidebar-group]+[data-slot=sidebar-group]{padding-top:10px;border-top:1px solid var(--st-line)}}

.app .topbar,.workspace-topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:12px;height:56px;min-height:56px;padding:0 20px;background:var(--st-surface);border-bottom:1px solid var(--st-line);flex-wrap:nowrap}
.workspace-heading{display:flex;align-items:center;gap:10px;min-width:0;flex:1}
.topbar-title{display:flex;align-items:center;gap:6px;margin:0;font-size:var(--st-fs-head);font-weight:650;line-height:1.3;color:var(--st-text);white-space:nowrap;min-width:0;letter-spacing:0}
.topbar-title .hint{font-size:var(--st-fs-body);font-weight:400}
.topbar-title a{color:inherit;text-decoration:none}
.workspace-heading .subtitle{font-size:var(--st-fs-meta);color:var(--st-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:280px;padding-left:10px;border-left:1px solid var(--st-line)}
.topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px;flex:none}
.app .topbar .mode-pill,.workspace-topbar .mode-pill{display:inline-flex;align-items:center;height:22px;padding:0 8px;border-radius:var(--st-r-tag);font-size:var(--st-fs-micro);font-weight:600;white-space:nowrap}
.mode-simulation{background:var(--st-warn-soft);color:var(--st-warn)}
.mode-none{background:var(--st-bad-soft);color:var(--st-bad)}
.topbar .search,.workspace-topbar .search{display:flex;align-items:center;gap:6px;width:200px;height:30px;padding:0 10px;border:1px solid var(--st-line);border-radius:var(--st-r-control);background:var(--st-surface);color:var(--st-muted)}
.topbar .search input,.workspace-topbar .search input{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;font-size:var(--st-fs-meta);color:var(--st-text);padding:0;box-shadow:none}
.topbar .search svg,.workspace-topbar .search svg{width:14px;height:14px;flex:none}
.topbar .store-pill,.workspace-topbar .store-pill{display:inline-flex;align-items:center;height:var(--st-ctl);padding:0 2px 0 10px;border:1px solid var(--st-line);border-radius:var(--st-r-control);background:var(--st-surface)}
.topbar .store-select,.workspace-topbar .store-select{border:0;background:transparent;font-size:var(--st-fs-meta);height:calc(var(--st-ctl) - 2px);padding:0 4px 0 0;max-width:160px;color:var(--st-text);cursor:pointer;min-height:0}
.sub-links{display:flex;gap:18px;margin:0 0 20px;border-bottom:1px solid var(--st-line);font-size:var(--st-fs-body);overflow-x:auto;scrollbar-width:none}
.sub-links a{padding:0 0 9px;color:var(--st-muted);text-decoration:none;white-space:nowrap}.sub-links a:hover{color:var(--st-text)}
.sub-links a.is-on{color:var(--st-text);font-weight:600;box-shadow:inset 0 -2px 0 var(--st-text)}
.ops-heading-links{display:inline-flex;gap:14px}
@media (max-width:900px){.app .topbar,.workspace-topbar{padding:0 12px;gap:8px}.topbar .search,.workspace-topbar .search,.workspace-heading .subtitle{display:none}.topbar-title{font-size:var(--st-fs-item)}}
@media (max-width:520px){
.app .topbar,.workspace-topbar{height:auto;min-height:96px;flex-wrap:wrap;padding-block:8px;gap:6px 10px;align-content:center}
.topbar-right{display:contents}.workspace-heading{flex:1}.topbar .store-pill,.workspace-topbar .store-pill{display:inline-flex;order:5;flex:1 1 190px;min-width:0;height:32px}
.topbar .store-select,.workspace-topbar .store-select{max-width:100%;width:100%}
.app .topbar .mode-pill,.workspace-topbar .mode-pill{display:inline-flex;order:6;max-width:100%;height:28px}
.topbar .icon-btn,.workspace-topbar [data-slot=button],.topbar .hint>summary,.workspace-topbar .hint>summary{min-width:44px;min-height:44px}
.topbar .rv-trigger,.workspace-topbar .rv-trigger{margin-left:auto}
.workspace-topbar .workspace-heading{flex:0 0 auto}
.workspace-topbar>.global-tasks{flex:1 1 100px;margin-left:0}
.workspace-topbar>.global-tasks>summary{max-width:100%;min-width:0}
.hint[open] .hint-body{position:fixed;left:16px;right:16px;top:104px;width:auto;max-width:none;max-height:calc(100dvh - 128px);overflow:auto}
}
.nav-glyph svg,[data-slot=sidebar-menu-button]>svg,.search svg,.st-icon,.rv-icon,.btn svg:not(.rv-mascot){stroke-width:1.75}
.btn svg:not(.rv-mascot){width:16px;height:16px}
.reference-model>summary::before{display:none!important}
.empty.rv-empty{display:flex;align-items:center;gap:16px;padding:24px 0;border:0;background:transparent;border-radius:0;color:var(--st-muted)}
.empty.rv-empty .rv-empty-pet{width:56px;height:52px;flex:none}


:root{--rv-ease:cubic-bezier(.2,.8,.2,1)}

/* mascot */
.rv-mascot{display:block;overflow:visible;width:100%;height:100%}
.rv-mascot .rv-rig,.rv-mascot .rv-body,.rv-mascot .rv-wl,.rv-mascot .rv-wr,.rv-mascot .rv-face,.rv-mascot .rv-shadow{transform-box:view-box}
.rv-mascot .rv-rig{transform-origin:150px 160px;animation:rv-float 3.8s ease-in-out infinite}
.rv-mascot .rv-wl{transform-origin:112px 161px}.rv-mascot .rv-wr{transform-origin:224px 189px}
.rv-mascot .rv-shadow{transform-origin:155px 252px;animation:rv-shadow 3.8s ease-in-out infinite}
.rv-mascot .rv-eye{display:none}
.rv-mascot .rv-eye-default{animation:rv-blink 6.4s ease-in-out infinite;transform-origin:151px 175px;transform-box:view-box}
.rv-mascot[data-expression=default] .rv-eye-default,.rv-mascot[data-expression=thinking] .rv-eye-thinking,.rv-mascot[data-expression=happy] .rv-eye-happy,.rv-mascot[data-expression=focused] .rv-eye-focused,.rv-mascot[data-expression=confused] .rv-eye-confused,.rv-mascot[data-expression=sleeping] .rv-eye-sleeping{display:inline}
.rv-mascot .rv-sym{display:none}
.rv-mascot[data-state=thinking] .rv-wl{animation:rv-think-l 2.4s ease-in-out infinite}
.rv-mascot[data-state=thinking] .rv-wr{animation:rv-think-r 2.4s ease-in-out infinite}
.rv-mascot[data-state=thinking] .rv-rig{animation:rv-ponder 2.4s ease-in-out infinite}
.rv-mascot[data-state=working] .rv-rig{animation:rv-working .46s ease-in-out infinite}
.rv-mascot[data-state=working] .rv-wl{animation:rv-flap-l .23s ease-in-out infinite alternate}
.rv-mascot[data-state=working] .rv-wr{animation:rv-flap-r .23s ease-in-out infinite alternate}
.rv-mascot[data-state=working] .rv-speed{display:inline}
.rv-mascot[data-state=success] .rv-rig{animation:rv-celebrate 2.6s var(--rv-ease) infinite}
.rv-mascot[data-state=success] .rv-wl{animation:rv-open-l 2.6s var(--rv-ease) infinite}
.rv-mascot[data-state=success] .rv-wr{animation:rv-open-r 2.6s var(--rv-ease) infinite}
.rv-mascot[data-state=success] .rv-rays{display:inline;animation:rv-rays 2.6s ease-out infinite}
.rv-mascot[data-state=alert] .rv-wl{animation:rv-alert-l 2.1s ease-in-out infinite}
.rv-mascot[data-state=alert] .rv-alert{display:inline;animation:rv-attention 2.1s ease-in-out infinite}
.rv-mascot[data-state=waiting] .rv-rig{animation:rv-breathe 3.3s ease-in-out infinite}
.rv-mascot[data-state=waiting] .rv-clock{display:inline}
.rv-mascot .rv-hand{transform-origin:245px 48px;transform-box:view-box;animation:rv-turn 5s linear infinite}
.rv-mascot[data-state=sleeping] .rv-rig{animation:rv-sleep 4.5s ease-in-out infinite}
.rv-mascot[data-state=sleeping] .rv-wl{transform:translate(18px,27px) rotate(-14deg)}
.rv-mascot[data-state=sleeping] .rv-wr{transform:translate(-13px,28px) rotate(15deg)}
.rv-mascot[data-state=sleeping] .rv-zz{display:inline;animation:rv-zzz 3s ease-in-out infinite}
.rv-mascot.is-still .rv-rig,.rv-mascot.is-still .rv-shadow,.rv-mascot.is-still .rv-wl,.rv-mascot.is-still .rv-wr{animation:none}
.rv-mascot.is-tiny .rv-shadow,.rv-mascot.is-tiny .rv-sym{display:none!important}
html.rv-paused .rv-mascot *{animation-play-state:paused!important}
@keyframes rv-float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-7px) rotate(1deg)}}
@keyframes rv-shadow{0%,100%{transform:scaleX(1);opacity:.8}50%{transform:scaleX(.86);opacity:.55}}
@keyframes rv-blink{0%,43%,47%,100%{transform:scaleY(1)}45%{transform:scaleY(.08)}}
@keyframes rv-think-l{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(9deg)}}
@keyframes rv-think-r{0%,100%{transform:rotate(7deg)}50%{transform:rotate(-9deg)}}
@keyframes rv-ponder{0%,100%{transform:translateY(2px) rotate(-4deg)}50%{transform:translateY(-3px) rotate(4deg)}}
@keyframes rv-working{0%,100%{transform:translate(-5px,1px) rotate(-6deg)}50%{transform:translate(5px,-2px) rotate(-2deg)}}
@keyframes rv-flap-l{to{transform:rotate(12deg) scaleX(.94)}}
@keyframes rv-flap-r{to{transform:rotate(-12deg) scaleX(.94)}}
@keyframes rv-celebrate{0%,65%,100%{transform:translateY(0) rotate(0)}18%{transform:translateY(-18px) rotate(-5deg)}34%{transform:translateY(2px) rotate(3deg)}46%{transform:translateY(-5px)}}
@keyframes rv-open-l{0%,65%,100%{transform:rotate(0)}18%,34%{transform:rotate(-14deg)}}
@keyframes rv-open-r{0%,65%,100%{transform:rotate(0)}18%,34%{transform:rotate(13deg)}}
@keyframes rv-rays{0%,65%,100%{opacity:.15}15%,35%{opacity:1}}
@keyframes rv-alert-l{0%,100%,50%{transform:rotate(0)}15%,35%{transform:rotate(17deg)}25%{transform:rotate(10deg)}}
@keyframes rv-attention{0%,50%,100%{transform:translateY(0)}25%{transform:translateY(-8px)}}
@keyframes rv-breathe{0%,100%{transform:scale(1) translateY(0)}50%{transform:scale(1.025) translateY(-3px)}}
@keyframes rv-turn{to{transform:rotate(360deg)}}
@keyframes rv-sleep{0%,100%{transform:translateY(11px) scaleY(.87)}50%{transform:translateY(8px) scaleY(.9)}}
@keyframes rv-zzz{0%,100%{opacity:.4;transform:translateY(2px)}50%{opacity:1;transform:translateY(-7px)}}

/* absorbed page actions live in the panel; the work tray and footer agent line are Rovi's now */
.rv-absorbed,html.rv-on .global-tasks,html.rv-on .workspace-status .agent-now{display:none!important}

/* topbar trigger */
.rv-trigger{display:inline-flex;align-items:center;gap:7px;height:32px;padding:0 10px 0 4px;border:1px solid var(--rv-line-2);border-radius:999px;background:var(--rv-surface);color:var(--rv-ink);font:600 12px/1 inherit;cursor:pointer;position:relative;flex:none;transition:border-color .15s,box-shadow .15s}
.rv-trigger:hover{border-color:color-mix(in srgb,var(--rv-primary) 45%,var(--rv-line-2));box-shadow:0 0 0 3px color-mix(in srgb,var(--rv-primary) 10%,transparent)}
.rv-trigger[aria-expanded=true]{border-color:var(--rv-primary);background:var(--rv-soft)}
.rv-trigger:focus-visible{outline:2px solid var(--rv-primary);outline-offset:2px}
.rv-trigger-pet{width:30px;height:28px;margin:-2px 0 0}
.rv-trigger-text{display:flex;flex-direction:column;gap:2px;line-height:1}
.rv-trigger-name{font-size:var(--st-fs-micro);font-weight:650;letter-spacing:.01em}
.rv-trigger-state{font-size:var(--st-fs-micro);font-weight:500;color:var(--rv-muted);white-space:nowrap}
.rv-trigger[data-state=working] .rv-trigger-state,.rv-trigger[data-state=thinking] .rv-trigger-state,.rv-trigger[data-state=waiting] .rv-trigger-state{color:var(--rv-soft-ink)}
.rv-trigger[data-state=success] .rv-trigger-state{color:var(--rv-ok)}
.rv-trigger[data-state=alert] .rv-trigger-state{color:var(--rv-warn)}
.rv-trigger-badge{position:absolute;top:-5px;right:-5px;min-width:17px;height:17px;padding:0 5px;border-radius:var(--st-r-surface);background:var(--rv-primary);color:var(--st-on-accent);font:600 10.5px/17px inherit;text-align:center;box-shadow:0 0 0 2px var(--rv-surface)}
.rv-trigger-badge[hidden]{display:none}
@media (max-width:900px){.rv-trigger{height:36px}.rv-trigger-text{display:none}.rv-trigger{padding:0 4px}}

/* panel */
.rv-panel{position:fixed;z-index:60;top:10px;right:10px;bottom:auto;max-height:calc(100dvh - 20px);width:min(404px,calc(100vw - 20px));display:flex;flex-direction:column;background:var(--rv-surface);color:var(--rv-ink);border:1px solid var(--rv-line);border-radius:var(--st-r-surface);box-shadow:var(--rv-shadow);font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;font-size:var(--st-fs-body);transform:translateX(calc(100% + 24px));opacity:0;visibility:hidden;transition:transform .32s var(--rv-ease),opacity .2s,visibility 0s .32s}
.rv-panel.is-open{transform:none;opacity:1;visibility:visible;transition:transform .32s var(--rv-ease),opacity .2s}
@media (max-width:640px){.rv-form textarea{font-size:var(--st-fs-head)}.rv-panel{top:auto;right:0;bottom:0;left:0;width:auto;height:min(86vh,720px);border-radius:var(--st-r-surface) var(--st-r-surface) 0 0;transform:translateY(104%)}}
.rv-head{display:flex;align-items:center;gap:12px;padding:14px 12px 12px 14px;border-bottom:1px solid var(--rv-line)}
.rv-head-pet{width:58px;height:54px;flex:none}
.rv-head-copy{flex:1;min-width:0}
.rv-head-copy strong{display:block;font-size:var(--st-fs-head);font-weight:650;letter-spacing:.01em}
.rv-status{display:flex;align-items:center;gap:6px;margin-top:5px;font-size:var(--st-fs-micro);color:var(--rv-muted);min-width:0}
.rv-status span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rv-dot{width:7px;height:7px;border-radius:50%;background:var(--st-ok);flex:none}
.rv-panel[data-state=working] .rv-dot,.rv-panel[data-state=thinking] .rv-dot,.rv-panel[data-state=waiting] .rv-dot{background:var(--rv-primary);animation:rv-pulse 1.2s ease-in-out infinite}
.rv-panel[data-state=alert] .rv-dot{background:var(--st-warn)}
.rv-panel[data-state=sleeping] .rv-dot{background:var(--st-muted)}
@keyframes rv-pulse{50%{opacity:.35}}
.rv-icon-btn{width:30px;height:30px;display:grid;place-items:center;border:0;border-radius:var(--st-r-control);background:transparent;color:var(--rv-muted);cursor:pointer;flex:none}
.rv-icon-btn:hover{background:var(--rv-soft);color:var(--rv-ink)}
.rv-icon-btn:focus-visible,.rv-item:focus-visible,.rv-send:focus-visible{outline:2px solid var(--rv-primary);outline-offset:1px}
.rv-icon{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:none}
.rv-scroll{flex:0 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:14px 14px 4px}
.rv-log{display:flex;flex-direction:column;gap:8px;margin:14px 0 8px}.rv-log:empty{display:none}.rv-greet{margin-bottom:2px}
.rv-msg{max-width:92%;padding:10px 13px;border-radius:var(--st-r-surface);line-height:1.65;font-size:var(--st-fs-body);white-space:pre-line;word-break:break-word}
.rv-msg.is-rovi{align-self:flex-start;background:var(--rv-canvas);border:1px solid var(--rv-line);border-top-left-radius:4px}
.rv-msg.is-user{align-self:flex-end;background:var(--rv-primary);color:var(--st-on-accent);border-top-right-radius:4px}
.rv-msg.is-ok{border-color:color-mix(in srgb,var(--rv-ok) 30%,var(--rv-line))}
.rv-msg.is-err{border-color:color-mix(in srgb,var(--rv-err) 35%,var(--rv-line));color:var(--rv-ink)}
.rv-msg a{display:inline-flex;align-items:center;gap:3px;margin-top:6px;color:var(--rv-soft-ink);font-weight:600;text-decoration:none}
.rv-msg a:hover{text-decoration:underline}
.rv-sec{margin:18px 0 4px}
.rv-sec[hidden]{display:none}
.rv-sec h3{display:flex;align-items:baseline;gap:6px;margin:0 0 4px;font-size:var(--st-fs-meta);font-weight:600;color:var(--rv-muted)}
.rv-sec-n{font-family:var(--st-font-num);font-variant-numeric:tabular-nums;color:var(--rv-ink)}
.rv-list{display:flex;flex-direction:column}
.rv-todo{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:9px 2px;border-bottom:1px solid var(--rv-line);color:var(--rv-ink);text-decoration:none;font-size:var(--st-fs-item)}
.rv-todo:hover .rv-todo-label{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--rv-line-2)}
.rv-todo-n{font-family:var(--st-font-num);font-variant-numeric:tabular-nums;font-weight:650;font-size:var(--st-fs-head)}
.rv-work{display:flex;flex-direction:column;gap:2px;padding:9px 2px;border-bottom:1px solid var(--rv-line);color:var(--rv-ink);text-decoration:none}
.rv-work:hover b{text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--rv-line-2)}
.rv-work-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}
.rv-work-head b{font-weight:600;font-size:var(--st-fs-body)}
.rv-work-meta{flex:none;font-size:var(--st-fs-micro);color:var(--rv-muted);font-family:var(--st-font-num);font-variant-numeric:tabular-nums}
.rv-work[data-state=running] .rv-work-meta{color:var(--rv-soft-ink)}
.rv-work[data-state=failed] .rv-work-meta{color:var(--rv-err)}
.rv-work-detail{font-size:var(--st-fs-meta);line-height:1.55;color:var(--rv-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rv-dock{flex:none;border-top:1px solid var(--rv-line);padding-top:10px}
.rv-suggest{display:flex;flex-wrap:wrap;gap:8px;padding:0 14px;max-height:144px;overflow:auto;scrollbar-width:thin}
.rv-suggest::-webkit-scrollbar{display:none}
.rv-suggest[hidden]{display:none}
.rv-chip{flex:none;min-height:36px;height:auto;padding:0 10px;border:1px solid var(--rv-line-2);border-radius:var(--st-r-pill);background:var(--rv-surface);color:var(--rv-ink);font:inherit;font-size:var(--st-fs-meta);cursor:pointer;white-space:nowrap}
.rv-chip:hover{border-color:var(--rv-primary);color:var(--rv-soft-ink)}
.rv-chip[aria-disabled=true]{opacity:.6;cursor:progress}
.rv-chip:focus-visible{outline:2px solid var(--rv-primary);outline-offset:1px}
.rv-bar{height:3px;border-radius:var(--st-r-tag);background:var(--rv-line);overflow:hidden;margin-top:4px}
.rv-bar i{display:block;height:100%;width:40%;border-radius:var(--st-r-tag);background:linear-gradient(90deg,var(--st-accent-line),var(--rv-primary));animation:rv-indet 1.4s ease-in-out infinite}
@keyframes rv-indet{0%{transform:translateX(-100%)}100%{transform:translateX(260%)}}
.rv-form{display:flex;gap:8px;padding:10px 14px 14px}
.rv-form textarea{flex:1;min-width:0;height:42px;max-height:120px;resize:none;border:1px solid var(--rv-line-2);border-radius:var(--st-r-surface);padding:11px 12px;background:var(--rv-surface);color:var(--rv-ink);font:inherit;font-size:var(--st-fs-body);line-height:1.45;caret-color:var(--rv-primary)}
.rv-form textarea::placeholder{color:var(--rv-muted)}
.rv-form textarea:focus{outline:none;border-color:var(--rv-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--rv-primary) 14%,transparent)}
.rv-send{width:42px;height:42px;border:0;border-radius:var(--st-r-surface);background:var(--rv-primary);color:var(--st-on-accent);display:grid;place-items:center;cursor:pointer;flex:none}
.rv-send:hover{background:var(--rv-primary-2)}
.rv-send[disabled]{opacity:.55;cursor:progress}
.rv-send .rv-icon{width:18px;height:18px}

/* notice (bottom-right) */
.rv-notice{position:fixed;z-index:61;right:18px;bottom:18px;width:min(340px,calc(100vw - 36px));display:flex;align-items:center;gap:12px;padding:10px 36px 10px 8px;background:var(--rv-surface);color:var(--rv-ink);border:1px solid var(--rv-line);border-radius:var(--st-r-surface);box-shadow:var(--rv-shadow);font-family:-apple-system,BlinkMacSystemFont,'PingFang SC','Microsoft YaHei',sans-serif;cursor:pointer;transform:translateY(16px);opacity:0;transition:transform .3s var(--rv-ease),opacity .2s}
.rv-notice.is-in{transform:none;opacity:1}
.rv-notice-pet{width:56px;height:50px;flex:none}
.rv-notice strong{display:block;font-size:var(--st-fs-body);margin-bottom:3px}
.rv-notice p{margin:0;font-size:var(--st-fs-micro);line-height:1.55;color:var(--rv-muted)}
.rv-notice .rv-icon-btn{position:absolute;top:6px;right:6px;width:24px;height:24px}
html.rv-open .rv-notice{display:none}
html.rv-on #toast{visibility:hidden!important}
@media(max-width:640px){.rv-scroll{flex:1}.rv-chip{min-height:44px}.rv-icon-btn{width:44px;height:44px}.rv-suggest{max-height:144px}}

/* Rovi on a page. One rule: the character marks what Rovi did or is doing, and stands still unless its state is news. */
.rv-art{display:inline-block;flex:none;line-height:0;vertical-align:middle}
.rv-art>.rv-mascot{width:100%;height:100%}
.rv-btn-pet{display:inline-block;width:20px;height:18px;margin:-3px 3px -3px -4px;vertical-align:middle;flex:none}
[aria-busy=true] .rv-btn-pet .rv-rig{animation:rv-working .46s ease-in-out infinite}
[aria-busy=true] .rv-btn-pet .rv-wl{animation:rv-flap-l .23s ease-in-out infinite alternate}
[aria-busy=true] .rv-btn-pet .rv-wr{animation:rv-flap-r .23s ease-in-out infinite alternate}
.rv-empty{display:flex;align-items:center;gap:14px}
.rv-empty-pet{width:46px;height:42px;opacity:.92}
.rv-tag{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px 0 3px;border-radius:var(--st-r-control);background:var(--rv-soft);color:var(--rv-soft-ink);font-size:var(--st-fs-micro);font-weight:550;line-height:1;white-space:nowrap;vertical-align:middle}
.rv-tag-pet{width:19px;height:17px}
.rv-title-pet{width:24px;height:22px;margin:-5px 5px -5px 0}
summary.rv-titled{display:list-item}
.rv-command{display:grid;grid-template-columns:auto 1fr;gap:4px 16px;align-items:start}
.rv-command-pet{width:76px;height:70px;margin-top:-4px}
.rv-command form{min-width:0}
.rv-bubble{position:relative;display:block;margin:0;padding:10px 14px;border:1px solid var(--rv-line);border-radius:var(--st-r-surface);border-top-left-radius:4px;background:var(--rv-canvas);color:var(--rv-muted);font-size:var(--st-fs-body);line-height:1.6;font-weight:400;max-width:62ch}
.rv-bubble b{display:block;margin-bottom:2px;color:var(--rv-ink);font-size:var(--st-fs-item);font-weight:600}
.rv-command>div>.btn{margin-top:10px}
@media (max-width:640px){.rv-command{grid-template-columns:1fr}.rv-command-pet{width:56px;height:52px}}
.rv-run-pet{width:64px;height:58px;margin:-6px -4px -6px -6px}
.rv-studio-pet{width:52px;height:48px;flex:none}
.studio-progress:not([hidden]){display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.studio-progress progress{flex:1;min-width:140px}
.studio-progress [data-studio-phase]{flex-basis:100%;margin:0}
.rv-studio-empty-pet{display:block;width:96px;height:88px;margin:0 auto 10px}
.rv-greeting{align-items:center!important;gap:16px}
.rv-greeting>div{flex:1;min-width:0}
.rv-greeting-pet{width:78px;height:72px;margin:-8px -4px -8px -8px}
@media (max-width:640px){.rv-greeting{flex-wrap:wrap}.rv-greeting-pet{width:56px;height:52px}}
.rv-run-icon{width:24px;height:22px}
.rv-note{display:flex;align-items:center;gap:12px;margin:0 0 16px;padding:10px 12px 10px 8px;border:1px solid var(--st-line);border-radius:var(--st-r-surface);background:var(--st-surface)}
.rv-note-pet{width:34px;height:32px}
.rv-note p{flex:1;min-width:0;margin:0;font-size:var(--st-fs-body);color:var(--st-text-2);line-height:1.55}
.rv-note .btn{flex:none}
@media (max-width:640px){.rv-note{flex-wrap:wrap}.rv-note .btn{margin-left:46px}}
.rv-cv-pet{display:block;width:72px;height:66px;margin-bottom:8px}
@media (prefers-reduced-motion:reduce){.rv-mascot *,.rv-panel,.rv-notice{animation:none!important;transition:none!important}.rv-mascot[data-state=success] .rv-wl{transform:rotate(-12deg)}.rv-mascot[data-state=success] .rv-wr{transform:rotate(12deg)}}
