:root { --font-sans:Inter,"Avenir Next",Avenir,"Segoe UI",Roboto,Helvetica,Arial,sans-serif; --surface:#fff; --raised:#f5f7fa; --ink:#17212b; --muted:#485766; --action:#075a9c; --focus:#005fcc; --error:#a12622; --pending:#8a4b00; --stale:#6b4f00; --border:#c7d0d9; color:var(--ink); font-family:var(--font-sans); }
* { box-sizing:border-box; } body { margin:0; line-height:1.5; } a { color:var(--action); text-underline-offset:2px; } button,input { font:inherit; } button,.button,.story-add { min-height:44px; } :focus-visible { outline:3px solid var(--focus); outline-offset:2px; }
.skip-link { left:1rem; position:absolute; top:-5rem; z-index:20; } .skip-link:focus { background:#fff; padding:.75rem; top:1rem; } .app-header { align-items:center; border-bottom:1px solid var(--border); display:flex; justify-content:space-between; padding:1rem max(1rem,calc((100% - 1120px)/2)); } .wordmark { color:var(--ink); font-size:1.25rem; font-weight:750; text-decoration:none; } .session-user,.page-intro,.feed-panel__heading p,.story-card__status,.story-bar__empty,.change-card__type,.change-card__evidence,.field-help { color:var(--muted); }
.app-main { margin:0 auto; max-width:1120px; padding:2rem 1rem 3rem; } .story-bar { align-items:stretch; border-block:1px solid var(--border); display:flex; gap:.75rem; margin:1.5rem 0; padding:.75rem 0; } .story-bar__items { display:flex; flex:1; gap:.75rem; min-width:0; overflow-x:auto; scroll-snap-type:x proximity; } .story-bar__item { flex:0 0 auto; } .story-card { background:var(--raised); border:1px solid var(--border); border-radius:8px; color:var(--ink); display:grid; gap:.125rem; grid-template-columns:2.5rem minmax(9rem,1fr); min-height:70px; padding:.5rem .75rem; scroll-snap-align:start; text-align:left; text-decoration:none; } .story-card:focus-visible { outline:3px solid var(--action); outline-offset:2px; } .story-card.is-selected { border-color:var(--action); box-shadow:inset 0 0 0 1px var(--action); } .story-card__initials { align-items:center; background:#d9eaf7; border-radius:50%; display:inline-flex; grid-row:span 2; height:2.5rem; justify-content:center; width:2.5rem; } .story-card__name { font-weight:700; } .story-card__status--error { color:var(--error); } .story-card__status--stale { color:var(--stale); } .story-bar__filter { margin:.25rem 0 0; } .story-bar__filter button { background:transparent; border:0; color:var(--action); cursor:pointer; font:inherit; padding:.25rem .1rem; text-decoration:underline; } .story-add,.button { align-items:center; border:1px solid var(--action); border-radius:4px; display:inline-flex; justify-content:center; padding:.5rem .75rem; } .story-add { border-radius:8px; font-weight:700; gap:.4rem; white-space:nowrap; }
.feed-panel { max-width:760px; } .feed-panel__heading { align-items:baseline; display:flex; gap:1rem; justify-content:space-between; } .change-feed__list { display:grid; gap:1rem; list-style:none; margin:0; padding:0; } .change-card { border:1px solid var(--border); border-left:5px solid var(--action); border-radius:8px; padding:1rem; } .change-card.is-read { border-left-color:var(--muted); } .change-card h3 { font-size:1.125rem; margin:.15rem 0 .5rem; } .change-card__meta { display:flex; flex-wrap:wrap; gap:.5rem 1.25rem; margin:.75rem 0; } .change-card__meta div { display:grid; gap:.1rem; } .change-card__meta dt { color:var(--muted); font-size:.75rem; font-weight:700; text-transform:uppercase; } .change-card__meta dd { margin:0; } .feed-pagination { margin-top:1rem; } .status-block { border:1px solid var(--border); border-radius:8px; margin:1rem 0; padding:1rem; } .status-block--error { border-left:5px solid var(--error); } .status-block--pending { border-left:5px solid var(--pending); } .status-block--stale { border-left:5px solid var(--stale); } .status-block--empty { border-left:5px solid var(--muted); } .visually-hidden { clip:rect(0,0,0,0); height:1px; margin:-1px; overflow:hidden; position:absolute; white-space:nowrap; width:1px; } .is-loading { opacity:.65; }
.auth-main { max-width:480px; } .auth-card { background:var(--raised); border:1px solid var(--border); border-radius:8px; padding:1.5rem; } .auth-card label { display:block; font-weight:700; margin-bottom:.25rem; } .auth-card input { border:1px solid var(--border); border-radius:4px; min-height:44px; padding:.5rem; width:100%; }
@media (max-width:767px) { .app-header,.story-bar,.feed-panel__heading { align-items:flex-start; flex-direction:column; } .app-header { padding:1rem; } .app-main { padding:1.5rem 1rem 2rem; } .story-add { width:100%; } .change-card__meta { display:grid; } } @media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; } }
.client-header,.file-section,.note-card,.evidence-drawer { border:1px solid var(--border); border-radius:8px; margin:1rem 0; padding:1rem; } .client-header--archived { border-left:5px solid var(--muted); } .client-header__eyebrow { color:var(--muted); font-weight:700; margin:0; } .client-header__meta,.metric-context { display:flex; flex-wrap:wrap; gap:.75rem 1.5rem; } .client-header__meta div,.metric-context div { display:grid; } .client-header__meta dt,.metric-context dt { color:var(--muted); font-size:.75rem; font-weight:700; text-transform:uppercase; } .client-header__meta dd,.metric-context dd { margin:0; } .file-blocks { display:grid; gap:.75rem; list-style:none; padding:0; } .file-block { border-left:4px solid var(--action); padding-left:.75rem; } .file-block--hypothesis { border-left-color:#7a2e88; } .file-block--source_document { border-left-color:var(--muted); } .selectable-text { display:block; white-space:pre-wrap; } .supporting-fact { color:var(--muted); display:block; font-size:.875rem; } .evidence-drawer { background:var(--raised); max-width:720px; }
.agent-panel { background:var(--raised); border:1px solid var(--border); border-radius:8px; padding:1rem; } .agent-panel form { display:grid; gap:.5rem; } .agent-panel textarea,.agent-panel input { box-sizing:border-box; max-width:100%; width:100%; } #agent-status { margin:.75rem 0; min-height:1.5em; }
.operations__header { align-items:flex-start; display:flex; gap:1rem; justify-content:space-between; } .operations__links { display:flex; flex-wrap:wrap; gap:.5rem; } .operations-panel { border:1px solid var(--border); border-radius:8px; margin:1rem 0; padding:1rem; } .operations-metrics { display:grid; gap:1rem; grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); } .operations-metrics article { background:var(--raised); border-radius:6px; padding:.75rem; } .operations-metrics h3 { margin-top:0; } .status-pill { color:var(--pending); font-weight:700; } .table-scroll { overflow-x:auto; } table { border-collapse:collapse; width:100%; } th,td { border-bottom:1px solid var(--border); padding:.65rem; text-align:left; vertical-align:top; } .actions { display:grid; gap:.5rem; min-width:18rem; } .actions form { align-items:end; display:flex; flex-wrap:wrap; gap:.4rem; } .actions label { display:grid; } .button--danger { border-color:var(--error); color:var(--error); }
@media (max-width:767px) { .operations__header { display:block; } .operations__links { margin-block:1rem; } .actions { min-width:14rem; } }

/* The client file is a reading surface with its own navigation and research rail. */
html { scroll-behavior:smooth; }
.client-view { max-width:1580px; padding-top:1.5rem; }
.client-view .back-link { color:var(--muted); display:inline-block; font-size:.9rem; margin-bottom:1rem; text-decoration:none; }
.client-view .back-link:hover { color:var(--action); text-decoration:underline; }
.client-view .client-header { background:#f8fafb; border-color:#e1e7eb; border-radius:14px; margin:0 0 1.75rem; padding:1.5rem 2rem; }
.client-header__title { align-items:flex-start; display:flex; gap:1rem; justify-content:space-between; }
.client-header__title h1 { font-size:clamp(2rem,3vw,3rem); letter-spacing:-.035em; line-height:1.12; margin:.25rem 0 .45rem; }
.client-header__lede { color:var(--muted); margin:0; }
.client-header__revision { background:#e9eff3; border-radius:99px; color:#384b5b; flex:none; font-size:.8rem; font-weight:700; padding:.35rem .75rem; }
.client-view .client-header__meta { border-top:1px solid #dce3e8; gap:1rem 2.5rem; margin:1.5rem 0 0; padding-top:1rem; }
.client-view .client-header__meta dt { letter-spacing:.06em; }
.client-view .inline-action { align-items:end; display:flex; flex-wrap:wrap; gap:.65rem; margin-top:1.25rem; }
.client-view .inline-action label { color:var(--muted); font-size:.85rem; font-weight:650; }
.client-view input,.client-view textarea { background:#fff; border:1px solid #bfcbd4; border-radius:7px; color:var(--ink); font:inherit; padding:.65rem .75rem; }
.client-view input:not([type=hidden]) { min-height:42px; }
.client-view .button { background:#075a9c; color:#fff; cursor:pointer; font-weight:650; text-decoration:none; }
.client-view .button:hover { background:#064a80; }
.client-view .button--secondary { background:#fff; color:var(--action); }
.client-view .button--secondary:hover { background:#edf5fb; }
.client-layout { align-items:start; display:grid; gap:clamp(1rem,2vw,2rem); grid-template-columns:minmax(150px,190px) minmax(0,1fr) minmax(240px,300px); }
.client-toc,.agent-panel { align-self:start; min-width:0; position:sticky; top:1rem; }
.client-toc__inner,.agent-panel__inner { max-height:calc(100vh - 2rem); overflow-y:auto; }
.client-toc__label,.section-kicker { color:#617483; font-size:.73rem; font-weight:800; letter-spacing:.11em; margin:0 0 .7rem; text-transform:uppercase; }
.client-toc { font-size:.85rem; }
.client-toc a { border-left:2px solid transparent; color:#415361; display:block; line-height:1.3; padding:.43rem .6rem; text-decoration:none; }
.client-toc a:hover,.client-toc a[aria-current=location] { background:#edf5fb; border-left-color:var(--action); color:#064d86; }
.client-toc__overview { font-weight:700; }
.client-toc ol { border-top:1px solid #e2e8ec; list-style:none; margin:.65rem 0 0; padding:.6rem 0 0; }
.client-toc__empty { color:#8996a0!important; }
.client-toc__secondary { border-top:1px solid #e2e8ec; margin-top:.6rem; padding-top:.6rem; }
.client-article { min-width:0; }
.client-file__heading { border-bottom:1px solid #dce4e9; margin-bottom:1.25rem; padding-bottom:1.3rem; }
.client-file__heading h2 { font-size:clamp(1.6rem,2.2vw,2.15rem); letter-spacing:-.025em; line-height:1.2; margin:0 0 .55rem; }
.client-file__heading p:last-child { color:var(--muted); margin:0; }
.source-notice { background:#f4f8fb; border:1px solid #dce9f1; border-left:4px solid #3979a7; border-radius:8px; color:#345062; display:grid; font-size:.88rem; gap:.25rem; margin:0 0 1.7rem; padding:.8rem 1rem; }
.source-notice strong { color:#1d3c54; }
.client-view .file-section { border:0; border-bottom:1px solid #dce4e9; border-radius:0; margin:0; padding:1.8rem 0 2.2rem; scroll-margin-top:1rem; }
.file-section__heading { align-items:baseline; display:flex; gap:.8rem; margin-bottom:1rem; }
.file-section__heading h3 { font-size:1.55rem; letter-spacing:-.025em; line-height:1.24; margin:0; }
.file-section__number { color:#8ba0ae; font-size:.85rem; font-variant-numeric:tabular-nums; font-weight:800; }
.file-section__summary { color:var(--muted); font-size:.9rem; margin:0 0 1rem; }
.client-view .file-blocks { display:grid; gap:1.35rem; }
.client-view .file-block { border-left:0; padding:0; }
.client-view .file-block:not(.file-block--source_document) { background:#f7f9fb; border:1px solid #e0e7ec; border-left:3px solid var(--action); border-radius:7px; padding:1rem; }
.client-view .file-block--hypothesis { border-left-color:#80529b!important; }
.file-block__kind { color:#516777; display:block; font-size:.76rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.pamphlet-card { background:#fff; border:1px solid #dce5eb; border-radius:11px; box-shadow:0 2px 8px rgba(29,60,84,.035); margin:1.35rem 0 1.7rem; overflow:hidden; }
.pamphlet-card__title { background:#f5f8fa; border-bottom:1px solid #dce5eb; color:#203746; font-size:1.14rem; letter-spacing:-.012em; line-height:1.36; margin:0; padding:1rem 1.2rem; }
.pamphlet-card__body { padding:1.2rem; }
.pamphlet-card__body > :last-child { margin-bottom:0; }
.pamphlet-standalone { margin:1.65rem 0; }
.pamphlet-paragraph { font-size:1rem; line-height:1.72; margin:0 0 1.2rem; max-width:74ch; white-space:pre-line; }
.pamphlet-table-scroll { border:1px solid #d8e2e9; border-radius:8px; margin:1.25rem 0 1.5rem; max-width:100%; overflow-x:auto; }
.pamphlet-table { border-collapse:separate; border-spacing:0; font-size:.89rem; line-height:1.48; min-width:100%; width:100%; }
.pamphlet-table--wide { min-width:620px; }
.pamphlet-table th,.pamphlet-table td { border-bottom:1px solid #e4eaee; display:table-cell; padding:.72rem .85rem; }
.pamphlet-table .selectable-text { display:block; }
.pamphlet-table thead th { background:#eaf1f6; color:#254457; font-size:.78rem; font-weight:800; letter-spacing:.02em; white-space:nowrap; }
.pamphlet-table tbody th { background:#f9fbfc; color:#263b49; font-weight:680; min-width:10rem; }
.pamphlet-table tbody tr:nth-child(even) td,.pamphlet-table tbody tr:nth-child(even) th { background:#f5f8fa; }
.pamphlet-table tbody tr:last-child th,.pamphlet-table tbody tr:last-child td { border-bottom:0; }
.section-empty { background:#f8fafb; border-radius:7px; color:#667986; margin:0; padding:.85rem 1rem; }
.client-extras { margin-top:2.5rem; scroll-margin-top:1rem; }
.client-extras h2 { border-bottom:1px solid #dce4e9; font-size:1.4rem; margin:0 0 1.1rem; padding-bottom:.65rem; }
.client-view .note-editor { display:grid; gap:.45rem; }
.client-view .note-editor label { color:#405565; font-size:.85rem; font-weight:700; }
.client-view .note-editor .button { justify-self:start; margin-top:.5rem; }
.client-view .note-card { margin-top:1rem; }
.client-view .note-card p { white-space:pre-wrap; }
.client-view .note-card details { margin:1rem 0; }
.client-view .note-card summary { color:var(--action); cursor:pointer; }
.client-view .agent-panel { background:transparent; border:0; padding:0; }
.agent-panel__toggle { display:none; }
.agent-panel__inner { background:#f7fafc; border:1px solid #dce5eb; border-radius:12px; padding:1.2rem; }
.agent-panel h2 { font-size:1.2rem; letter-spacing:-.02em; line-height:1.28; margin:0 0 .7rem; }
.agent-panel p:not(.section-kicker) { color:#526675; font-size:.88rem; line-height:1.55; margin:0 0 1.15rem; }
.agent-panel label { color:#344c5c; font-size:.82rem; font-weight:700; margin-top:.3rem; }
.agent-panel textarea { resize:vertical; }
.agent-panel textarea[readonly] { background:#eef3f6; color:#465e6e; }
.agent-panel .button { width:100%; }
#agent-result { border-top:1px solid #dce5eb; margin-top:1rem; padding-top:1rem; }
#agent-result h3 { font-size:1rem; margin:.1rem 0 .6rem; }
#agent-result [data-agent-answer] { color:var(--ink); white-space:pre-wrap; }
@media (max-width:980px) {
  .client-view { padding-bottom:6rem; }
  .client-view .client-header { padding:1.2rem; }
  .client-header__title { display:block; }
  .client-header__revision { display:inline-block; margin-top:.8rem; }
  .client-layout { display:block; }
  .client-toc { background:#fff; border-bottom:1px solid #dce4e9; margin:0 -1rem 1.5rem; position:sticky; top:0; z-index:5; }
  .client-toc__inner { align-items:center; display:flex; gap:.25rem; max-height:none; overflow-x:auto; padding:.55rem 1rem; white-space:nowrap; }
  .client-toc__label { display:none; }
  .client-toc ol,.client-toc__secondary { align-items:center; border:0; display:flex; flex:none; margin:0; padding:0; }
  .client-toc a { border:0; border-bottom:2px solid transparent; padding:.55rem .65rem; }
  .client-toc a[aria-current=location] { border-bottom-color:var(--action); }
  .client-view .file-section,.client-extras { scroll-margin-top:4.5rem; }
  .client-layout .agent-panel { bottom:1rem; left:1rem; margin:0; position:fixed; right:1rem; top:auto; z-index:10; }
  .agent-panel__toggle { align-items:center; background:#075a9c; border:1px solid #075a9c; border-radius:999px; box-shadow:0 5px 20px rgba(23,33,43,.2); color:#fff; cursor:pointer; display:flex; font:inherit; font-weight:700; gap:.75rem; justify-content:space-between; margin-left:auto; padding:.75rem 1rem; }
  .agent-panel__inner { display:none; max-height:calc(100vh - 8rem); overflow-y:auto; }
  .agent-panel.is-open .agent-panel__inner { display:block; margin-top:.5rem; }
  .agent-panel.is-open .agent-panel__toggle { width:100%; }
  .file-section__heading h3 { font-size:1.35rem; }
}

/* Client dossier: an editorial reading surface with a persistent research conversation. */
body.client-detail-page { background:#f3f4f1; color:#192925; font-family:var(--font-sans); }
.client-detail-page .app-header { background:#182b27; border-bottom:1px solid #31443e; color:#e9eee9; min-height:68px; padding:0 clamp(1.25rem,3vw,3.5rem); }
.client-detail-page .wordmark { color:#fff; font-size:1.3rem; font-weight:800; letter-spacing:-.06em; }
.client-detail-page .wordmark::after { background:#c9de74; border-radius:50%; content:""; display:inline-block; height:7px; margin:0 0 2px 3px; width:7px; }
.client-detail-page .session-user { color:#b7c9bf; font-size:.78rem; letter-spacing:.01em; margin:0; }
.client-detail-page .client-view { max-width:1840px; padding:1.5rem clamp(1.25rem,3vw,3.5rem) 5rem; }
.client-detail-page .back-link { align-items:center; color:#536660; display:inline-flex; font-size:.78rem; font-weight:750; gap:.55rem; letter-spacing:.03em; margin-bottom:1.25rem; }
.client-detail-page .back-link:hover { color:#14594e; text-decoration:none; }
.client-detail-page .back-link span { font-size:1.15rem; line-height:1; }
.client-detail-page .client-header { background:#1c342d; border:1px solid #1c342d; border-radius:18px; box-shadow:0 16px 36px rgba(23,47,38,.11); color:#f7faf6; margin:0 0 2rem; overflow:hidden; padding:0; }
.client-detail-page .client-header__title { align-items:flex-start; padding:2.3rem clamp(1.5rem,3vw,3rem) 2rem; }
.client-detail-page .client-header__eyebrow { align-items:center; color:#d4e4aa; display:flex; font-size:.72rem; font-weight:800; gap:.6rem; letter-spacing:.18em; text-transform:uppercase; }
.client-header__eyebrow-mark { background:#cce083; border-radius:3px; display:inline-block; height:10px; transform:rotate(45deg); width:10px; }
.client-detail-page .client-header__title h1 { color:#fff; font-family:var(--font-sans); font-size:clamp(2.3rem,3.2vw,3.8rem); font-weight:650; letter-spacing:-.035em; line-height:1.08; margin:.7rem 0 .7rem; max-width:22ch; }
.client-detail-page .client-header__lede { color:#c4d3c8; font-size:1rem; }
.client-detail-page .client-header__revision { background:#35564a; border:1px solid #4d6a5c; color:#e2eddf; font-size:.72rem; letter-spacing:.04em; }
.client-detail-page .client-header__meta { background:#253e34; border-top:1px solid #426050; display:grid; gap:0; grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; padding:0 clamp(1.5rem,3vw,3rem); }
.client-detail-page .client-header__meta div { border-right:1px solid #426050; gap:.2rem; min-width:0; padding:1.1rem 1.3rem; }
.client-detail-page .client-header__meta div:first-child { padding-left:0; }
.client-detail-page .client-header__meta div:last-child { border-right:0; }
.client-detail-page .client-header__meta dt { color:#a8c0ae; font-size:.68rem; letter-spacing:.13em; }
.client-detail-page .client-header__meta dd { color:#fff; font-size:.9rem; font-weight:650; overflow-wrap:anywhere; }
.client-detail-page .client-header .inline-action { border-top:1px solid #426050; margin:0; padding:1rem clamp(1.5rem,3vw,3rem); }
.client-detail-page .client-header .inline-action label { color:#d4e4d6; }
.client-detail-page .client-header .button--secondary { background:#e0ebbe; border-color:#e0ebbe; color:#19392b; }
.client-detail-page .client-header__research { background:#1c342d; border-top:1px solid #426050; }
.client-detail-page .client-header__research summary { align-items:center; color:#dce9d9; cursor:pointer; display:flex; font-size:.78rem; font-weight:750; gap:.5rem; list-style:none; padding:.8rem clamp(1.5rem,3vw,3rem); width:max-content; }
.client-detail-page .client-header__research summary::-webkit-details-marker { display:none; }
.client-detail-page .client-header__research summary:hover { color:#f0f6d4; }
.client-detail-page .client-header__research summary span { color:#d2e89d; font-size:1rem; }
.client-detail-page .client-layout { align-items:start; gap:clamp(1.2rem,2vw,2.25rem); grid-template-columns:minmax(185px,215px) minmax(0,1fr) minmax(325px,365px); }
.client-detail-page .client-toc,.client-detail-page .agent-panel { top:1.25rem; }
.client-detail-page .client-toc { padding:.6rem .2rem 1rem 0; }
.client-detail-page .client-toc__inner { max-height:calc(100vh - 2.5rem); }
.client-detail-page .client-toc__label { color:#7b8b82; font-size:.68rem; letter-spacing:.15em; margin:0 0 1.05rem .85rem; }
.client-detail-page .client-toc a { border-left:2px solid transparent; border-radius:0 7px 7px 0; color:#50645a; font-size:.82rem; line-height:1.35; padding:.65rem .8rem; }
.client-detail-page .client-toc a:hover,.client-detail-page .client-toc a[aria-current=location] { background:#e3ebe2; border-left-color:#28695b; color:#184c41; }
.client-detail-page .client-toc a[aria-current=location] { font-weight:750; }
.client-detail-page .client-toc ol,.client-detail-page .client-toc__secondary { border-color:#dce3dc; }
.client-detail-page .client-article { background:#fff; border:1px solid #e3e8e2; border-radius:14px; box-shadow:0 9px 26px rgba(26,47,35,.045); padding:clamp(1.5rem,3vw,3rem); }
.client-detail-page .client-file__heading { border-color:#e5eae4; margin-bottom:.5rem; padding-bottom:1.5rem; }
.client-detail-page .section-kicker { color:#41806c; font-size:.68rem; letter-spacing:.17em; }
.client-detail-page .client-file__heading h2 { color:#21352d; font-family:var(--font-sans); font-size:clamp(1.9rem,2.25vw,2.65rem); font-weight:650; letter-spacing:-.025em; }
.client-detail-page .client-file__heading p:last-child { color:#64756a; font-size:.9rem; line-height:1.6; max-width:65ch; }
.client-detail-page .source-notice { background:#f8f7f0; border:1px solid #e9e3cd; border-left:3px solid #b69a58; color:#786942; font-size:.8rem; margin:1.4rem 0 1rem; padding:.8rem 1rem; }
.client-detail-page .source-notice strong { color:#665424; }
.client-detail-page .file-section { border-color:#e8ece6; padding:2rem 0 2.3rem; }
.client-detail-page .file-section__heading { align-items:center; gap:1rem; margin-bottom:1.05rem; }
.client-detail-page .file-section__number { align-items:center; background:#e9f0e8; border-radius:50%; color:#28705d; display:inline-flex; flex:none; font-size:.68rem; height:29px; justify-content:center; width:29px; }
.client-detail-page .file-section__heading h3 { color:#1d3129; font-family:var(--font-sans); font-size:clamp(1.55rem,1.8vw,2rem); font-weight:650; letter-spacing:-.025em; }
.client-detail-page .file-section__summary { color:#6e7f73; font-size:.85rem; }
.client-detail-page .file-blocks { gap:1.55rem; }
.client-detail-page .file-block:not(.file-block--source_document) { background:#f9faf7; border:1px solid #e3e9df; border-left:3px solid #3a8871; border-radius:9px; padding:1.15rem 1.3rem; }
.client-detail-page .file-block__kind { color:#39725d; font-size:.68rem; }
.client-detail-page .file-block:not(.file-block--source_document) .selectable-text { color:#23352b; line-height:1.65; margin:.5rem 0; }
.client-detail-page .pamphlet-card { border:1px solid #e3e8df; border-radius:10px; box-shadow:0 4px 14px rgba(30,48,30,.045); margin:1.45rem 0 1.8rem; }
.client-detail-page .pamphlet-card__title { background:#f5f8f2; border-color:#e2e9dc; color:#20372b; font-size:1.06rem; font-weight:750; letter-spacing:-.01em; padding:1rem 1.25rem; }
.client-detail-page .pamphlet-card__body { padding:1.25rem; }
.client-detail-page .pamphlet-standalone { margin:1.55rem 0; }
.client-detail-page .pamphlet-paragraph { color:#37463b; font-size:.97rem; line-height:1.75; margin-bottom:1.2rem; }
.client-detail-page .pamphlet-table-scroll { border:1px solid #e0e7df; border-radius:7px; margin:.8rem 0 1.1rem; }
.client-detail-page .pamphlet-table { color:#304238; font-size:.84rem; font-variant-numeric:tabular-nums; }
.client-detail-page .pamphlet-table th,.client-detail-page .pamphlet-table td { border-color:#e8ede6; display:table-cell; padding:.7rem .8rem; }
.client-detail-page .pamphlet-table thead th { background:#eaf1e8; color:#345c47; font-size:.72rem; }
.client-detail-page .pamphlet-table tbody th { background:#fafbf8; color:#25392e; }
.client-detail-page .pamphlet-table tbody tr:nth-child(even) td,.client-detail-page .pamphlet-table tbody tr:nth-child(even) th { background:#f7f9f5; }
.client-detail-page .pamphlet-table tbody tr:hover td,.client-detail-page .pamphlet-table tbody tr:hover th { background:#eff5ea; }
.client-detail-page .client-extras h2 { border-color:#e3e9e1; color:#20372b; font-family:var(--font-sans); font-size:1.7rem; font-weight:650; }
.client-detail-page .button { background:#205f4e; border-color:#205f4e; border-radius:8px; }
.client-detail-page .button:hover { background:#174a3d; }
.client-detail-page .button--secondary { background:#fff; color:#205f4e; }
.client-detail-page .button--secondary:hover { background:#edf4ed; }
.client-detail-page input:focus,.client-detail-page textarea:focus { border-color:#357c68; outline:2px solid rgba(53,124,104,.17); outline-offset:0; }

.client-detail-page .agent-panel { align-self:start; margin:0; }
.client-detail-page .agent-panel__inner { background:#fff; border:1px solid #dce5dc; border-radius:15px; box-shadow:0 14px 38px rgba(25,48,34,.09); display:flex; flex-direction:column; height:calc(100vh - 2.5rem); max-height:850px; min-height:530px; overflow:hidden; padding:0; }
.agent-conversation { display:flex; flex:1; flex-direction:column; gap:1.1rem; min-height:0; overflow-y:auto; padding:1.25rem 1rem; scrollbar-color:#b9cabb transparent; }
.agent-empty[hidden],.agent-answer[hidden] { display:none; }
.agent-empty { margin:auto 0; padding:.75rem .15rem; }
.client-detail-page .agent-empty p { color:#6b7b70; font-size:.82rem; line-height:1.55; margin:0 0 1.2rem; }
.agent-message { font-size:.83rem; line-height:1.62; max-width:90%; overflow-wrap:anywhere; }
.agent-message p { margin:.3rem 0; }
.agent-message--user { align-self:flex-end; background:#e8f0e5; border-radius:12px 12px 3px 12px; color:#213a2b; padding:.8rem .9rem; }
.agent-message--assistant { align-self:flex-start; border-left:2px solid #a9c990; color:#2f4236; padding:.2rem .3rem .2rem .8rem; white-space:pre-wrap; }
.client-detail-page .agent-message__context { border-left:2px solid #8aae91; color:#6b806d; font-size:.72rem; margin:0 0 .6rem; max-height:5.4em; overflow:hidden; padding-left:.55rem; }
.client-detail-page .agent-answer { align-self:flex-start; border:0; margin:0; padding:0; width:100%; }
.client-detail-page .agent-answer [data-agent-answer] { color:#2d4234; font-size:.83rem; line-height:1.65; margin:0 0 .9rem; white-space:pre-wrap; }
.agent-panel__composer-area { background:#fbfcf9; border-top:1px solid #e7ece5; flex:none; padding:.75rem .85rem .7rem; }
.client-detail-page #agent-task-form { display:block; }
.agent-composer { align-items:end; background:#fff; border:1px solid #becfc0; border-radius:12px; box-shadow:0 2px 8px rgba(31,56,37,.04); display:flex; gap:.4rem; padding:.36rem; }
.agent-composer:focus-within { border-color:#39846d; box-shadow:0 0 0 3px rgba(57,132,109,.12); }
.client-detail-page .agent-composer textarea { border:0; box-shadow:none; color:#1e3529; flex:1; font-size:.83rem; line-height:1.45; max-height:110px; min-height:44px; padding:.56rem .5rem; resize:vertical; }
.client-detail-page .agent-composer textarea:focus { outline:0; }
.agent-composer__send { align-items:center; background:#205f4e; border:0; border-radius:9px; color:#fff; cursor:pointer; display:flex; flex:none; font-size:1.2rem; height:36px; justify-content:center; margin-bottom:3px; min-height:36px; width:36px; }
.agent-composer__send:hover { background:#144d3e; }
.agent-composer__send:disabled { cursor:wait; opacity:.48; }
.client-detail-page #agent-status { color:#557866; font-size:.7rem; line-height:1.3; margin:.3rem 0 0; min-height:0; }
.client-detail-page #agent-status:empty { display:none; }
.client-detail-page #agent-status[data-kind="error"] { color:#a04435; }
@media (max-width:1180px) {
  .client-detail-page .client-layout,.client-detail-page .pamphlet-layout { display:block; }
  .client-detail-page .client-toc { background:#f3f4f1; border-bottom:1px solid #dce4d9; margin:0 0 1rem; padding:0; position:sticky; top:0; z-index:5; }
  .client-detail-page .client-toc__inner { align-items:center; display:flex; gap:.2rem; max-height:none; overflow-x:auto; padding:.5rem .15rem; white-space:nowrap; }
  .client-detail-page .client-toc__label { display:none; }
  .client-detail-page .client-toc ol,.client-detail-page .client-toc__secondary { align-items:center; border:0; display:flex; flex:none; margin:0; padding:0; }
  .client-detail-page .client-toc a { border:0; border-bottom:2px solid transparent; border-radius:6px 6px 0 0; padding:.55rem .7rem; }
  .client-detail-page .client-toc a[aria-current=location] { border-bottom-color:#28695b; }
  .client-detail-page .client-layout .agent-panel,.client-detail-page .pamphlet-layout .agent-panel { bottom:1rem; left:auto; position:fixed; right:1rem; top:auto; width:min(380px,calc(100vw - 2rem)); z-index:10; }
  .client-detail-page .agent-panel__toggle { align-items:center; background:#205f4e; border:1px solid #205f4e; border-radius:99px; box-shadow:0 8px 25px rgba(23,53,35,.25); color:#fff; cursor:pointer; display:flex; font-size:.85rem; font-weight:750; gap:.5rem; justify-content:space-between; margin-left:auto; padding:.75rem 1rem; }
  .agent-panel__toggle-icon { color:#d9ebae; font-size:1.2rem; }
  .client-detail-page .agent-panel__inner { display:none; height:min(680px,calc(100vh - 7rem)); margin-top:.5rem; max-height:none; min-height:0; }
  .client-detail-page .agent-panel.is-open .agent-panel__inner { display:flex; }
  .client-detail-page .agent-panel.is-open .agent-panel__toggle { width:100%; }
  .client-detail-page .file-section,.client-detail-page .client-extras { scroll-margin-top:4.5rem; }
}
@media (max-width:700px) {
  .client-detail-page .app-header { align-items:center; flex-direction:row; min-height:58px; padding:0 1rem; }
  .client-detail-page .session-user { font-size:.68rem; max-width:60%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .client-detail-page .client-view { padding:1rem .8rem 6rem; }
  .client-detail-page .client-header__title { padding:1.65rem 1.25rem; }
  .client-detail-page .client-header__meta { grid-template-columns:repeat(2,minmax(0,1fr)); padding:0 1.25rem; }
  .client-detail-page .client-header__meta div { border-bottom:1px solid #426050; padding:.85rem .6rem; }
  .client-detail-page .client-header__meta div:nth-child(odd) { padding-left:0; }
  .client-detail-page .client-header__meta div:nth-child(even) { border-right:0; }
  .client-detail-page .client-header__meta div:nth-last-child(-n+2) { border-bottom:0; }
  .client-detail-page .client-article { padding:1.2rem; }
  .client-detail-page .pamphlet-card__body { padding:.9rem; }
  .client-detail-page .client-layout .agent-panel,.client-detail-page .pamphlet-layout .agent-panel { bottom:.75rem; right:.75rem; width:calc(100vw - 1.5rem); }
  .client-detail-page .agent-panel__inner { height:min(650px,calc(100dvh - 6.5rem)); }
}

/* Shared TCI identity and the customer overview. */
:root { --surface:#fff; --raised:#fff; --ink:#192925; --muted:#627369; --action:#205f4e; --focus:#347f67; --border:#dce5dc; font-family:var(--font-sans); }
body { background:#f3f4f1; }
.app-header,.client-detail-page .app-header { background:#fff; border-bottom:1px solid #e3e9e1; color:#213a2b; display:block; min-height:82px; padding:0 clamp(1rem,3vw,3.5rem); }
.app-header__inner { align-items:center; display:flex; gap:2rem; justify-content:space-between; margin:0 auto; max-width:1730px; min-height:82px; }
.wordmark,.client-detail-page .wordmark { align-items:center; display:inline-flex; flex:none; line-height:1; }
.wordmark img { display:block; height:auto; width:164px; }
.client-detail-page .wordmark::after { display:none; }
.app-header__right { align-items:center; display:flex; gap:2rem; }
.app-header__nav { align-items:center; display:flex; gap:.35rem; }
.app-header__nav a { border-radius:7px; color:#52685a; font-size:.81rem; font-weight:700; padding:.6rem .85rem; text-decoration:none; }
.app-header__nav a:hover,.app-header__nav a[aria-current="page"] { background:#eaf1e6; color:#205f4e; }
.app-header .session-user,.client-detail-page .app-header .session-user { border-left:1px solid #e4eae2; color:#7b8c7e; font-size:.75rem; margin:0; padding-left:1.4rem; }
.button,.story-add { background:#205f4e; border-color:#205f4e; border-radius:8px; color:#fff; cursor:pointer; font-weight:700; text-decoration:none; }
.button:hover,.story-add:hover { background:#174a3d; color:#fff; text-decoration:none; }
.button--secondary { background:#fff; color:#205f4e; }
.button--secondary:hover { background:#edf4ed; color:#174a3d; }
.app-main:not(.client-view):not(.home-view) { max-width:1160px; }
.auth-card,.operations-panel,.note-card { background:#fff; border-color:#e0e7dd; border-radius:12px; }

.home-view { max-width:1730px; padding:2rem clamp(1rem,3vw,3.5rem) 5rem; }
.home-hero { align-items:stretch; background:#1c342d; border:1px solid #1c342d; border-radius:18px; box-shadow:0 16px 36px rgba(23,47,38,.1); color:#fff; display:grid; gap:2rem; grid-template-columns:minmax(0,1fr) minmax(310px,390px); min-height:360px; overflow:hidden; padding:clamp(2rem,4vw,4rem); position:relative; }
.home-hero::after { border:1px solid rgba(207,231,184,.12); border-radius:50%; content:""; height:440px; pointer-events:none; position:absolute; right:22%; top:-285px; width:440px; }
.home-hero__copy { align-self:center; position:relative; z-index:1; }
.home-hero__eyebrow { align-items:center; color:#d5e7a9; display:flex; font-size:.71rem; font-weight:800; gap:.55rem; letter-spacing:.18em; margin:0 0 1.5rem; }
.home-hero__eyebrow span { font-size:1rem; }
.home-hero h1 { color:#fff; font-family:var(--font-sans); font-size:clamp(2.6rem,4vw,4.7rem); font-weight:650; letter-spacing:-.045em; line-height:1.05; margin:0 0 1.25rem; }
.home-hero h1 em { color:#d9eab0; font-style:normal; }
.home-hero__copy > p:last-child { color:#c0d0c3; font-size:.98rem; line-height:1.65; margin:0; max-width:58ch; }
.home-hero__stats { align-self:stretch; background:#294439; border:1px solid #41624b; border-radius:14px; display:grid; margin:0; padding:.55rem 1.4rem; position:relative; z-index:1; }
.home-hero__stats div { align-items:center; border-bottom:1px solid #456351; display:flex; justify-content:space-between; }
.home-hero__stats div:last-child { border-bottom:0; }
.home-hero__stats dt { color:#bbd1bb; font-size:.8rem; font-weight:650; }
.home-hero__stats dd { color:#f8fbf0; font-family:var(--font-sans); font-size:2.1rem; font-variant-numeric:tabular-nums; margin:0; }
.home-section { margin-top:2.8rem; }
.home-section__heading { align-items:end; display:flex; gap:1rem; justify-content:space-between; margin-bottom:1.1rem; }
.home-section__heading .section-kicker { color:#52806c; margin:0 0 .35rem; }
.home-section__heading h2 { align-items:center; color:#1e3229; display:flex; font-family:var(--font-sans); font-size:clamp(1.9rem,2.3vw,2.5rem); font-weight:650; gap:.7rem; letter-spacing:-.025em; line-height:1.15; margin:0 .0rem .45rem; }
.home-section__heading p:last-child { color:#64756a; font-size:.87rem; margin:0; }
.home-section__count { align-items:center; background:#e3ece0; border-radius:99px; color:#2d6650; display:inline-flex; font-family:var(--font-sans); font-size:.76rem; font-weight:800; height:24px; justify-content:center; letter-spacing:0; min-width:24px; padding:0 .4rem; }
.home-view .story-add { box-shadow:0 5px 13px rgba(22,70,49,.12); flex:none; font-size:.83rem; gap:.45rem; padding:.65rem 1rem; }
.home-view .story-add span { font-size:1.2rem; line-height:1; }
.home-view .story-bar { border:0; display:block; margin:0; padding:0; }
.home-view .story-bar__items { display:grid; gap:1rem; grid-template-columns:repeat(auto-fill,minmax(275px,1fr)); overflow:visible; scroll-snap-type:none; }
.home-view .story-bar__item { background:#fff; border:1px solid #e0e7dd; border-radius:13px; box-shadow:0 5px 15px rgba(26,47,35,.04); min-width:0; overflow:hidden; }
.home-view .story-card { align-items:flex-start; background:transparent; border:0; border-radius:0; color:#1e3528; display:flex; gap:.85rem; min-height:113px; padding:1.2rem 1.2rem .9rem; text-decoration:none; }
.home-view .story-card:hover { background:#f7faf4; }
.home-view .story-card.is-selected { box-shadow:inset 0 3px 0 #71ac57; }
.home-view .story-card__initials { background:#e5efdb; border:1px solid #d4e5c7; color:#2f6d50; flex:none; font-family:var(--font-sans); font-size:.96rem; font-weight:700; grid-row:auto; height:42px; width:42px; }
.home-view .story-card__content { display:grid; flex:1; gap:.37rem; min-width:0; }
.home-view .story-card__name { color:#21382b; font-size:1rem; font-weight:750; line-height:1.3; overflow-wrap:anywhere; }
.home-view .story-card__status { color:#718174; font-size:.76rem; line-height:1.35; }
.home-view .story-card__status--error { color:#a04435; }
.home-view .story-card__status--stale { color:#866223; }
.home-view .story-card__arrow { color:#609171; font-size:1.25rem; line-height:1; }
.home-view .story-bar__filter { border-top:1px solid #e8ede6; margin:0; }
.home-view .story-bar__filter button { align-items:center; color:#286b51; display:flex; font-size:.76rem; font-weight:750; justify-content:space-between; min-height:43px; padding:.6rem 1.2rem; text-decoration:none; width:100%; }
.home-view .story-bar__filter button:hover { background:#f0f6ec; }
.home-view .story-bar__filter button span { font-size:1rem; }
.home-view .story-bar__empty { background:#fff; border:1px dashed #c5d4c3; border-radius:12px; color:#607465; margin:0; padding:2rem; }
.home-view .feed-panel { max-width:none; }
.home-view .feed-panel__heading { border-bottom:1px solid #dfe6dc; padding-bottom:1.05rem; }
.feed-panel__filter { align-items:center; background:#e9f1e5; border-radius:8px; color:#315d47; display:flex; font-size:.76rem; font-weight:700; gap:.8rem; padding:.5rem .65rem; }
.feed-panel__filter a { color:#286b51; text-decoration:none; }
.feed-panel__filter a:hover { text-decoration:underline; }
.home-view .change-feed__list { gap:.8rem; }
.home-view .change-card { background:#fff; border:1px solid #e0e7dd; border-left:3px solid #70a969; border-radius:10px; box-shadow:0 5px 15px rgba(26,47,35,.035); padding:1.2rem 1.35rem; }
.home-view .change-card.is-read { border-left-color:#c4cfc2; }
.home-view .change-card__type { color:#598066; font-size:.7rem; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.home-view .change-card h3 { color:#23392c; font-size:1.05rem; }
.home-view .change-card__meta dt { color:#7b8a7b; font-size:.68rem; }
.home-view .change-card__meta dd { color:#2e4333; font-size:.8rem; }
.home-view .change-empty { align-items:center; background:#fff; border:1px solid #dfe7db; border-radius:13px; box-shadow:0 5px 15px rgba(26,47,35,.035); display:flex; gap:1.5rem; margin:0; min-height:190px; padding:2rem; }
.home-view .change-empty__icon { align-items:center; background:#edf4e8; border:1px solid #d9e8cf; border-radius:16px; color:#57906b; display:inline-flex; flex:none; font-size:2rem; height:64px; justify-content:center; width:64px; }
.home-view .change-empty h3 { color:#20372b; font-family:var(--font-sans); font-size:1.5rem; font-weight:650; margin:0 0 .35rem; }
.home-view .change-empty p { color:#66776a; font-size:.85rem; line-height:1.6; margin:0; max-width:64ch; }
.home-view .feed-pagination { margin-top:1.3rem; }

@media (max-width:900px) {
  .home-hero { grid-template-columns:1fr; min-height:0; }
  .home-hero__stats { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .home-hero__stats div { align-items:flex-start; border-bottom:0; border-right:1px solid #456351; flex-direction:column; justify-content:center; padding:.8rem; }
  .home-hero__stats div:last-child { border-right:0; }
  .home-hero__stats dd { font-size:1.7rem; }
}
@media (max-width:700px) {
  .app-header,.client-detail-page .app-header { min-height:70px; padding:0 .85rem; }
  .app-header__inner { gap:.5rem; min-height:70px; }
  .wordmark img { width:128px; }
  .app-header__right { gap:.4rem; }
  .app-header__nav { gap:0; }
  .app-header__nav a { font-size:.71rem; padding:.4rem .5rem; }
  .app-header .session-user,.client-detail-page .app-header .session-user { display:none; }
  .home-view { padding:1rem .8rem 3rem; }
  .home-hero { border-radius:14px; gap:1.7rem; padding:1.7rem 1.3rem; }
  .home-hero h1 { font-size:clamp(2.1rem,9vw,3rem); }
  .home-hero__copy > p:last-child { font-size:.85rem; }
  .home-hero__stats { padding:.4rem; }
  .home-hero__stats div { padding:.4rem .35rem; }
  .home-hero__stats dt { font-size:.62rem; line-height:1.3; }
  .home-hero__stats dd { font-size:1.5rem; }
  .home-section { margin-top:2rem; }
  .home-section__heading { align-items:flex-start; flex-direction:column; gap:.75rem; }
  .home-view .story-add { align-self:stretch; justify-content:center; }
  .home-view .story-bar__items { grid-template-columns:1fr; }
  .home-view .change-empty { align-items:flex-start; flex-direction:column; gap:.8rem; padding:1.35rem; }
  .feed-panel__filter { flex-wrap:wrap; }
}

/* Focused shell: target customer, changes, and the pamphlet reading view. */
.app-header,.client-detail-page .app-header { min-height:68px; }
.app-header__inner { min-height:68px; }
.app-header__brand { align-items:center; display:flex; gap:clamp(.9rem,1.5vw,1.6rem); min-width:0; }
.wordmark img { width:142px; }
.app-header__tools { align-items:center; display:flex; gap:1.25rem; min-width:0; }
.header-target-menu { position:relative; }
.header-target-menu summary { align-items:center; background:#f5f7f3; border:1px solid #dce5da; border-radius:999px; cursor:pointer; display:flex; gap:.55rem; list-style:none; max-width:300px; min-height:42px; padding:.3rem .65rem .3rem .35rem; }
.header-target-menu summary::-webkit-details-marker { display:none; }
.header-target-menu summary:hover,.header-target-menu[open] summary { background:#edf3eb; border-color:#cbdac8; }
.header-target-menu__logo,.header-target-menu__item-logo { align-items:center; background:#fff; border:1px solid #dbe4d9; border-radius:50%; color:#2c674e; display:inline-flex; flex:none; font-family:var(--font-sans); font-size:.68rem; font-weight:800; justify-content:center; overflow:hidden; }
.header-target-menu__logo { height:32px; width:32px; }
.header-target-menu__item-logo { height:36px; width:36px; }
.header-target-menu__logo img,.header-target-menu__item-logo img { height:100%; object-fit:contain; padding:5px; width:100%; }
.header-target-menu__label { display:grid; min-width:0; text-align:left; }
.header-target-menu__label small { color:#718077; font-size:.58rem; font-weight:800; letter-spacing:.08em; line-height:1.2; text-transform:uppercase; }
.header-target-menu__label strong { color:#263b2e; font-size:.75rem; line-height:1.3; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.header-target-menu__chevron { color:#64766a; font-size:.8rem; }
.header-target-menu[open] .header-target-menu__chevron { transform:rotate(180deg); }
.header-target-menu__popover { background:#fff; border:1px solid #dce5da; border-radius:12px; box-shadow:0 14px 35px rgba(27,49,36,.14); display:grid; gap:.2rem; min-width:280px; padding:.45rem; position:absolute; right:0; top:calc(100% + .5rem); z-index:30; }
.header-target-menu__popover a { align-items:center; border-radius:8px; color:#2b4032; display:flex; font-size:.78rem; font-weight:700; gap:.65rem; padding:.45rem .55rem; text-decoration:none; }
.header-target-menu__popover a:hover,.header-target-menu__popover a[aria-current="page"] { background:#edf3eb; color:#174a3d; }
.app-header .session-user,.client-detail-page .app-header .session-user { align-items:center; border:0; color:#56685d; display:flex; font-size:.78rem; gap:.55rem; max-width:min(42vw,320px); overflow:hidden; padding:0; text-overflow:ellipsis; white-space:nowrap; }
.session-user__avatar { align-items:center; background:#e4f0e7; border-radius:50%; color:#205f4e; display:inline-flex; flex:none; font-size:.68rem; font-weight:800; height:30px; justify-content:center; width:30px; }
.session-user__name { overflow:hidden; text-overflow:ellipsis; }

.home-view { max-width:980px; padding:3rem clamp(1rem,4vw,2.5rem) 5rem; }
.target-stories { border-bottom:1px solid #dce4dc; padding-bottom:1.8rem; }
.target-stories__heading { margin-bottom:1.35rem; }
.target-stories__heading .section-kicker { margin-bottom:.35rem; }
.target-stories__heading h1 { color:#1d3328; font-family:var(--font-sans); font-size:clamp(1.8rem,3vw,2.35rem); font-weight:650; letter-spacing:-.025em; line-height:1.15; margin:0; }
.target-stories__rail { display:flex; gap:1.2rem; overflow-x:auto; padding:.25rem .15rem .65rem; scroll-snap-type:x proximity; }
.target-story { align-items:center; color:#34493c; display:flex; flex:0 0 88px; flex-direction:column; gap:.55rem; scroll-snap-align:start; text-align:center; text-decoration:none; }
.target-story__ring { align-items:center; border:2px solid #d2dcd0; border-radius:50%; display:flex; height:74px; justify-content:center; padding:3px; transition:border-color .15s ease,transform .15s ease; width:74px; }
.target-story__logo { align-items:center; background:#fff; border:1px solid #e0e7de; border-radius:50%; color:#2e6650; display:flex; font-family:var(--font-sans); font-size:1rem; font-weight:700; height:64px; justify-content:center; overflow:hidden; position:relative; width:64px; }
.target-story__logo img { height:100%; object-fit:contain; padding:9px; width:100%; }
.target-story__name { display:-webkit-box; font-size:.72rem; font-weight:700; line-height:1.25; max-width:88px; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.target-story:hover .target-story__ring { border-color:#7fa58b; transform:translateY(-2px); }
.target-story.is-selected .target-story__ring { border-color:#205f4e; box-shadow:0 0 0 3px #dce9df; }
.target-story.is-selected .target-story__name { color:#174a3d; }
.target-stories__action { display:flex; justify-content:flex-end; margin-top:.65rem; }
.pamphlet-link { align-items:center; color:#205f4e; display:inline-flex; font-size:.82rem; font-weight:750; gap:.4rem; min-height:44px; text-decoration:none; white-space:nowrap; }
.pamphlet-link:hover { text-decoration:underline; }
.target-stories__empty { color:var(--muted); margin:0; }
.home-view .feed-panel { margin-top:2.5rem; }
.home-view .feed-panel__heading { align-items:center; border:0; margin:0 0 .9rem; padding:0; }
.home-view .feed-panel__heading h2 { color:#1f3429; font-family:var(--font-sans); font-size:1.55rem; font-weight:650; margin:0; }
.feed-panel__filter { background:transparent; padding:0; }
.feed-panel__filter span { color:#5f7266; font-weight:650; }
.feed-panel__filter a { border-left:1px solid #d5ddd4; font-weight:650; padding-left:.8rem; }
.home-view .change-feed__list { background:#fff; border:1px solid #dfe6dc; border-radius:12px; gap:0; overflow:hidden; }
.home-view .change-card,.home-view .change-card.is-read { border:0; border-bottom:1px solid #e6ebe4; border-radius:0; box-shadow:none; padding:1.1rem 1.25rem; }
.home-view .change-card:last-child { border-bottom:0; }
.home-view .change-card:hover { background:#fafcf9; }
.change-card__main-link { color:inherit; display:block; text-decoration:none; }
.change-card__main-link:focus-visible { border-radius:6px; outline:2px solid var(--action); outline-offset:4px; }
.change-card__sources { margin:.75rem 0 0; }
.change-card__topline { align-items:center; display:flex; justify-content:space-between; }
.change-card__topline time { color:#7a897f; font-size:.74rem; }
.home-view .change-card__type { color:#3e765a; margin:0; }
.home-view .change-card.is-read .change-card__type { color:#7a897f; }
.home-view .change-card h3 { font-size:1rem; margin:.35rem 0 .3rem; }
.home-view .change-card__meta { color:#738078; display:block; font-size:.76rem; margin:0; }
.home-view .change-card__relevance { color:#3d4d43; font-size:.86rem; line-height:1.55; margin:.75rem 0 0; max-width:74ch; }
.home-view .change-empty { box-shadow:none; min-height:0; padding:1.5rem; }

.client-detail-page .app-header__inner { gap:1.25rem; max-width:none; }
.pamphlet-header-context { align-items:center; border-left:1px solid #dce5dc; display:flex; gap:.85rem; min-width:0; padding-left:clamp(.9rem,1.5vw,1.5rem); }
.pamphlet-header-context__back { align-items:center; color:#51665a; display:flex; flex:none; font-size:.7rem; font-weight:750; gap:.35rem; text-decoration:none; }
.pamphlet-header-context__back:hover { color:#174a3d; }
.pamphlet-header-context__back span:first-child { font-size:1rem; }
.pamphlet-header-context__title { align-items:baseline; display:flex; gap:.5rem; min-width:0; }
.pamphlet-header-context__title > span { color:#648274; font-size:.58rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.pamphlet-header-context__title h1 { color:#1d3328; font-size:.88rem; font-weight:750; margin:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pamphlet-header-context__title small { color:#839188; flex:none; font-size:.62rem; font-weight:700; white-space:nowrap; }
.client-detail-page .client-view { margin:0; max-width:none; padding:0; width:100%; }
.pamphlet-layout { align-items:start; display:grid; gap:0; grid-template-columns:minmax(120px,10vw) minmax(0,1fr) minmax(360px,33vw); width:100%; }
.pamphlet-main { min-width:0; padding:1.5rem clamp(1.5rem,3vw,3.5rem) 5rem; }
.client-detail-page .client-toc { height:100vh; margin:0; overflow-y:auto; padding:2.5rem .75rem 2rem clamp(.75rem,1vw,1.25rem); position:sticky; top:0; }
.client-detail-page .client-toc__inner { max-height:none; }
.client-detail-page .client-article { box-shadow:none; width:100%; }
.client-detail-page .pamphlet-paragraph { max-width:76ch; }
.client-detail-page .source-notice { margin:0 0 1rem; }
.client-detail-page .file-section:first-of-type { padding-top:.5rem; }
.client-detail-page .file-section__heading h2 { color:#1d3129; font-family:var(--font-sans); font-size:clamp(1.5rem,2vw,1.9rem); font-weight:650; letter-spacing:-.025em; line-height:1.2; margin:0; }

/* The research conversation is a quiet page rail, not a separate card. */
.client-detail-page .agent-panel { align-self:start; background:#fff; border:0; height:100vh; margin:0; padding:0; position:sticky; top:0; }
.client-detail-page .agent-panel__inner { background:#fff; border:0; border-radius:0; box-shadow:none; display:flex; flex-direction:column; height:100vh; max-height:none; min-height:0; overflow:hidden; padding:0; }
.client-detail-page .agent-conversation { background:#fff; flex:1; gap:1.15rem; overflow-y:auto; padding:clamp(1.5rem,2.4vw,2.75rem); }
.client-detail-page .agent-empty { margin:auto 0; padding:0; }
.client-detail-page .agent-empty p { color:#819087; font-size:.8rem; line-height:1.55; margin:0; max-width:32ch; }
.client-detail-page .agent-message--assistant { border:0; padding:0; }
.client-detail-page .agent-message__context { border:0; color:#829087; padding:0; }
.client-detail-page .agent-answer [data-agent-answer] { margin:0; }
.client-detail-page .agent-panel__composer-area { background:#fff; border:0; padding:1rem clamp(1.5rem,2.4vw,2.75rem) 1.5rem; }
.agent-context-chips { display:flex; flex-wrap:wrap; gap:.4rem; margin-bottom:.65rem; }
.agent-context-chips[hidden] { display:none; }
.agent-context-chip { align-items:center; background:#edf3ed; border-radius:999px; color:#355344; display:inline-flex; font-size:.68rem; font-weight:700; gap:.25rem; line-height:1.25; max-width:100%; min-height:28px; padding:.32rem .42rem .32rem .65rem; }
.agent-context-chip > span:first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.agent-context-chip button { align-items:center; background:transparent; border:0; border-radius:50%; color:#6d8073; cursor:pointer; display:inline-flex; flex:none; font-size:.9rem; height:20px; justify-content:center; min-height:20px; padding:0; width:20px; }
.agent-context-chip button:hover { background:#dbe7dc; color:#193b2d; }
.agent-context-chip--sent { min-height:24px; padding:.25rem .55rem; }
.agent-message__chips { display:flex; flex-wrap:wrap; gap:.35rem; margin-bottom:.45rem; }
.client-detail-page .agent-composer { border:1px solid #cbd6cd; border-radius:14px; box-shadow:none; padding:.4rem; }
.selection-menu { background:#193a2e; border:0; border-radius:8px; bottom:1rem; box-shadow:0 8px 24px rgba(18,42,32,.2); color:#fff; cursor:pointer; font-size:.72rem; font-weight:750; left:50%; min-height:34px; padding:.45rem .7rem; position:fixed; transform:translateX(-50%); z-index:60; }
.selection-menu:hover { background:#0f2f24; }
.selection-menu[hidden] { display:none; }

@media (max-width:1180px) {
  .client-detail-page .client-view { padding-bottom:6rem; }
  .client-detail-page .pamphlet-layout { display:block; }
  .pamphlet-main { padding:1.5rem clamp(1rem,4vw,2.5rem) 4rem; }
  .client-detail-page .client-toc { background:#f3f4f1; border-bottom:1px solid #dce4d9; height:auto; margin:0; overflow:visible; padding:0 clamp(1rem,4vw,2.5rem); position:sticky; top:0; z-index:5; }
  .client-detail-page .client-toc__inner { align-items:center; display:flex; gap:.2rem; max-height:none; overflow-x:auto; padding:.5rem 0; white-space:nowrap; }
  .client-detail-page .client-toc__label { display:none; }
  .client-detail-page .client-toc ol,.client-detail-page .client-toc__secondary { align-items:center; border:0; display:flex; flex:none; margin:0; padding:0; }
  .client-detail-page .client-toc a { border:0; border-bottom:2px solid transparent; border-radius:6px 6px 0 0; padding:.55rem .7rem; }
  .client-detail-page .client-toc a[aria-current=location] { border-bottom-color:#28695b; }
  .client-detail-page .pamphlet-layout .agent-panel { bottom:1rem; height:auto; left:auto; position:fixed; right:1rem; top:auto; width:min(430px,calc(100vw - 2rem)); z-index:10; }
  .client-detail-page .agent-panel__toggle { align-items:center; background:#205f4e; border:1px solid #205f4e; border-radius:99px; box-shadow:0 8px 25px rgba(23,53,35,.25); color:#fff; cursor:pointer; display:flex; font-size:.85rem; font-weight:750; gap:.5rem; justify-content:space-between; margin-left:auto; padding:.75rem 1rem; }
  .client-detail-page .agent-panel__inner { display:none; height:min(720px,calc(100dvh - 7rem)); margin-top:.5rem; }
  .client-detail-page .agent-panel.is-open .agent-panel__inner { display:flex; }
  .client-detail-page .agent-panel.is-open .agent-panel__toggle { width:100%; }
  .client-detail-page .file-section { scroll-margin-top:4.5rem; }
}

@media (max-width:760px) {
  .app-header,.client-detail-page .app-header { padding:0 1rem; }
  .app-header__inner { gap:.75rem; min-height:64px; }
  .pamphlet-header-context__back span:last-child,.pamphlet-header-context__title > span,.pamphlet-header-context__title small { display:none; }
  .pamphlet-header-context__title h1 { max-width:24vw; }
  .wordmark img { width:122px; }
  .app-header__tools { gap:.55rem; }
  .header-target-menu summary { max-width:170px; }
  .header-target-menu__label strong { max-width:95px; }
  .header-target-menu__popover { min-width:min(280px,calc(100vw - 2rem)); right:0; }
  .app-header .session-user,.client-detail-page .app-header .session-user { display:flex; font-size:.7rem; max-width:20vw; }
  .home-view { padding:2rem 1rem 3rem; }
  .target-stories__rail { gap:.9rem; margin-inline:-.25rem; }
  .target-story { flex-basis:78px; }
  .target-story__ring { height:68px; width:68px; }
  .target-story__logo { height:58px; width:58px; }
  .target-story__name { max-width:78px; }
  .target-stories__action { justify-content:flex-start; }
  .pamphlet-link { white-space:normal; }
  .home-view .feed-panel { margin-top:2rem; }
  .home-view .feed-panel__heading { align-items:flex-start; }
  .pamphlet-layout { display:block; }
  .client-detail-page .client-toc { margin-bottom:1rem; position:sticky; top:0; }
}

@media (max-width:520px) {
  .app-header__inner { gap:.5rem; }
  .wordmark img { width:108px; }
  .pamphlet-header-context { display:none; }
  .header-target-menu summary { max-width:145px; }
  .header-target-menu__label strong { max-width:75px; }
  .header-target-menu__popover { right:-2.5rem; }
  .app-header .session-user,.client-detail-page .app-header .session-user { max-width:none; }
  .session-user__name { display:none; }
}

/* Dropbox Dash-inspired three-pane pamphlet workspace. */
body.client-detail-page { background:#f1f1ef; height:100dvh; overflow:hidden; }
.client-detail-page .skip-link { z-index:100; }
.client-detail-page .dash-workspace { display:grid; gap:7px; grid-template-columns:clamp(190px,12.5vw,235px) clamp(300px,20.5vw,375px) minmax(0,1fr); height:100dvh; margin:0; max-width:none; overflow:hidden; padding:8px; transition:grid-template-columns .22s ease; width:100%; }
.client-detail-page .dash-workspace.is-chat-collapsed { grid-template-columns:clamp(190px,12.5vw,235px) minmax(0,1fr); }
.client-detail-page .dash-workspace.is-chat-collapsed .workspace-chat { display:none; }

.workspace-sidebar { color:#252724; display:flex; flex-direction:column; height:calc(100dvh - 16px); min-height:0; overflow:hidden; padding:13px 13px 10px 8px; }
.workspace-sidebar__brand-row { align-items:center; display:flex; min-height:55px; padding:0 9px 12px; }
.workspace-brand { display:inline-flex; }
.workspace-brand img { display:block; height:auto; width:142px; }
.workspace-primary-nav { border-bottom:1px solid #dededb; display:grid; gap:3px; padding:9px 0 17px; }
.workspace-primary-nav a { align-items:center; border-radius:9px; color:#5f615d; display:flex; font-size:.87rem; font-weight:560; gap:12px; min-height:40px; padding:8px 11px; text-decoration:none; }
.workspace-primary-nav a > span:first-child { align-items:center; color:#656761; display:inline-flex; font-size:1.15rem; justify-content:center; width:20px; }
.workspace-primary-nav a:hover,.workspace-primary-nav a[aria-current="page"] { background:#e5e5e2; color:#1d1f1c; }
.workspace-sidebar__group { border:0; margin:0; min-width:0; padding:20px 0 0; }
.workspace-sidebar__group h2,.workspace-sidebar .client-toc__label { color:#5e605b; font-size:.75rem; font-weight:740; letter-spacing:0; margin:0 10px 8px; text-transform:none; }
.workspace-targets { flex:none; }
.workspace-targets__heading { align-items:center; display:flex; justify-content:space-between; padding-right:4px; }
.workspace-targets__heading h2 { margin-bottom:8px; }
.workspace-targets__heading a { align-items:center; border-radius:7px; color:#656761; display:inline-flex; font-size:1rem; height:30px; justify-content:center; margin-top:-5px; text-decoration:none; width:30px; }
.workspace-targets__heading a:hover { background:#e3e3df; color:#20221f; }
.workspace-targets__list { display:grid; gap:2px; max-height:176px; overflow-y:auto; padding-right:3px; }
.workspace-targets__list a { align-items:center; border-radius:9px; color:#656761; display:flex; font-size:.78rem; font-weight:560; gap:9px; min-height:38px; overflow:hidden; padding:5px 9px; text-decoration:none; }
.workspace-targets__list a > span:last-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.workspace-targets__list a:hover,.workspace-targets__list a[aria-current="page"] { background:#e3e3df; color:#20221f; }
.workspace-targets__list a[aria-current="page"] { font-weight:690; }
.workspace-targets__logo { align-items:center; background:#fff; border:1px solid #dbdcd8; border-radius:7px; color:#356350; display:flex; flex:none; font-size:.58rem; font-weight:800; height:27px; justify-content:center; overflow:hidden; width:27px; }
.workspace-targets__logo img { height:100%; object-fit:contain; padding:4px; width:100%; }
.workspace-chats { display:flex; flex:1; flex-direction:column; min-height:120px; overflow:hidden; padding-right:3px; }
.workspace-chats__heading { align-items:center; display:flex; flex:none; justify-content:space-between; padding-right:5px; }
.workspace-chats__heading h2 { margin-bottom:0; }
.workspace-chats__heading button,.agent-toolbar__actions button { align-items:center; background:transparent; border:0; border-radius:7px; color:#656761; cursor:pointer; display:inline-flex; font:inherit; height:30px; justify-content:center; width:30px; }
.workspace-chats__heading button:hover,.agent-toolbar__actions button:hover { background:#e3e3df; color:#20221f; }
.workspace-chats__list { display:grid; gap:2px; margin-top:7px; overflow-y:auto; }
.workspace-chats__list > p { color:#8a8c86; font-size:.7rem; line-height:1.45; margin:7px 10px; }
.workspace-chats__list a { align-items:flex-start; border-radius:9px; color:#62645f; display:flex; gap:9px; min-height:43px; padding:7px 9px; text-decoration:none; }
.workspace-chats__list a:hover,.workspace-chats__list a[aria-current="page"] { background:#e3e3df; color:#20221f; }
.workspace-chats__list a > span:first-child { color:#767872; flex:none; font-size:.72rem; padding-top:3px; }
.workspace-chats__list a > span:last-child { display:grid; min-width:0; }
.workspace-chats__list strong { font-size:.72rem; font-weight:620; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.workspace-chats__list small { color:#969791; font-size:.59rem; margin-top:2px; }
.workspace-sidebar__account { align-items:center; border-top:1px solid #dededb; color:#5f615d; display:flex; flex:none; gap:10px; min-height:58px; padding:12px 9px 2px; }
.workspace-sidebar__account > span:last-child { display:grid; min-width:0; }
.workspace-sidebar__account small { color:#8a8c86; font-size:.59rem; line-height:1.25; }
.workspace-sidebar__account strong { color:#4e504b; font-size:.7rem; font-weight:620; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.workspace-sidebar__account .session-user__avatar { background:#dcecdf; color:#2f6750; height:30px; width:30px; }

.client-detail-page .workspace-chat,.document-pane { background:#fff; border:1px solid #e7e7e4; border-radius:14px; box-shadow:0 2px 10px rgba(23,24,22,.035); height:calc(100dvh - 16px); min-height:0; overflow:hidden; }
.client-detail-page .workspace-chat { align-self:auto; margin:0; padding:0; position:static; }
.client-detail-page .workspace-chat .agent-panel__inner { background:#fff; border:0; border-radius:0; box-shadow:none; display:flex; height:100%; max-height:none; min-height:0; overflow:hidden; }
.agent-toolbar,.document-toolbar { align-items:center; border-bottom:1px solid #efefec; display:flex; flex:none; height:64px; justify-content:space-between; padding:0 22px; }
.agent-toolbar__titles { display:grid; min-width:0; }
.agent-toolbar__titles small { color:#8a8c86; font-size:.58rem; font-weight:590; line-height:1.3; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.client-detail-page .agent-toolbar h2 { color:#222421; font-size:.82rem; font-weight:720; letter-spacing:-.015em; margin:2px 0 0; max-width:30ch; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.agent-toolbar__actions { display:flex; flex:none; gap:3px; }
.agent-toolbar__actions button { background:#f0f0ee; }
.client-detail-page .workspace-chat .agent-conversation { background:#fff; gap:18px; padding:24px 25px; scrollbar-color:#c8c6bf transparent; }
.client-detail-page .workspace-chat .agent-empty { margin:0; padding:1rem .1rem 0; }
.client-detail-page .workspace-chat .agent-empty__eyebrow { color:#8a8c86; display:block; font-size:.58rem; font-weight:720; letter-spacing:.06em; margin-bottom:9px; text-transform:uppercase; }
.client-detail-page .workspace-chat .agent-empty h3 { color:#242623; font-size:1rem; letter-spacing:-.02em; line-height:1.3; margin:0 0 7px; }
.client-detail-page .workspace-chat .agent-empty p { color:#777a74; font-size:.72rem; line-height:1.5; margin:0 0 18px; max-width:34ch; }
.agent-starters { display:grid; gap:7px; }
.agent-starters button { align-items:center; background:#f6f6f3; border:1px solid transparent; border-radius:11px; color:#292b28; cursor:pointer; display:flex; font-family:inherit; gap:10px; min-height:58px; padding:9px 11px; text-align:left; width:100%; }
.agent-starters button:hover,.agent-starters button:focus-visible { background:#f0f1ed; border-color:#dfe2dc; outline:0; }
.agent-starters button > span:first-child { align-items:center; background:#fff; border:1px solid #e2e3df; border-radius:8px; color:#4f5f54; display:flex; flex:none; font-size:.76rem; height:30px; justify-content:center; width:30px; }
.agent-starters button > span:last-child { display:grid; gap:2px; min-width:0; }
.agent-starters strong { font-size:.7rem; font-weight:680; }
.agent-starters small { color:#888a85; font-size:.6rem; line-height:1.3; }
.client-detail-page .workspace-chat .agent-message { color:#292b28; font-size:.82rem; line-height:1.6; max-width:92%; }
.client-detail-page .workspace-chat .agent-message--user { background:#efefed; border-radius:16px 16px 4px 16px; padding:10px 13px; }
.client-detail-page .workspace-chat .agent-message--assistant { border:0; padding:0 2px; }
.client-detail-page .workspace-chat .agent-message--system { color:#8a8c86; font-size:.72rem; padding:0 2px; }
.client-detail-page .workspace-chat .agent-answer [data-agent-answer] { color:#292b28; font-size:.82rem; line-height:1.65; }
.client-detail-page .workspace-chat .agent-panel__composer-area { background:#fff; border:0; padding:12px 16px 16px; }
.agent-composer-shell { background:#fff; border:1px solid #d7d7d3; border-radius:18px; box-shadow:0 2px 9px rgba(23,24,22,.045); padding:9px; transition:border-color .15s ease,box-shadow .15s ease; }
.agent-composer-shell:focus-within { border-color:#9ea19a; box-shadow:0 0 0 3px rgba(69,91,76,.08); }
.client-detail-page .agent-composer-shell .agent-context-chips { margin:0 0 6px; padding:1px; }
.client-detail-page .agent-composer-shell .agent-context-chip { background:#eef1ec; color:#425348; font-size:.65rem; max-width:100%; }
.client-detail-page .agent-composer-shell .agent-composer { align-items:flex-end; border:0; border-radius:0; box-shadow:none; min-height:94px; padding:0; }
.client-detail-page .agent-composer-shell .agent-composer:focus-within { border:0; box-shadow:none; }
.client-detail-page .agent-composer-shell .agent-composer textarea { color:#292b28; font-size:.82rem; line-height:1.5; max-height:150px; min-height:86px; padding:7px 8px; resize:none; }
.client-detail-page .agent-composer-shell .agent-composer textarea::placeholder { color:#898b86; }
.client-detail-page .agent-composer-shell .agent-composer__send { background:#252824; border-radius:50%; height:35px; margin:0 1px 1px; min-height:35px; width:35px; }
.client-detail-page .agent-composer-shell .agent-composer__send:hover { background:#3d433d; }
.client-detail-page #agent-status { margin:6px 6px 0; }

.document-pane { display:flex; flex-direction:column; min-width:0; position:relative; }
.document-toolbar { color:#666861; padding:0 24px; }
.document-toolbar__left,.document-toolbar__meta { align-items:center; display:flex; gap:15px; }
.document-toolbar__left > span:last-child,.document-toolbar__meta > span { font-size:.68rem; font-weight:650; }
.document-toolbar a { align-items:center; border-radius:7px; color:#60625d; display:inline-flex; font-size:1.05rem; height:32px; justify-content:center; text-decoration:none; width:32px; }
.document-toolbar a:hover { background:#f0f0ee; color:#1e201d; }
.document-toolbar__divider { background:#dedfdb; height:19px; width:1px; }
.document-toolbar__action { align-items:center; background:transparent; border:0; border-radius:8px; color:#60625d; cursor:pointer; display:inline-flex; font-family:inherit; font-size:.66rem; font-weight:650; gap:6px; min-height:34px; padding:0 10px; }
.document-toolbar__action:hover,.document-toolbar__action[aria-expanded="false"] { background:#f0f0ee; color:#1e201d; }
.research-update-form { display:flex; margin:0; }
.document-toolbar__action.research-update-button { background:#252824; color:#fff; padding-inline:12px; }
.document-toolbar__action.research-update-button:hover { background:#3b3f3a; color:#fff; }
.document-toolbar__action.research-update-button:disabled { background:#e8e9e5; color:#686b65; cursor:default; }
.research-update-button__icon { display:inline-block; font-size:.9rem; line-height:1; }
.research-update-button:disabled .research-update-button__icon { animation:research-update-spin 1.2s linear infinite; }
.research-update-status { align-items:center; background:#f7f8f5; border-bottom:1px solid #e8eae5; display:flex; flex:none; gap:28px; justify-content:space-between; min-height:68px; padding:11px 24px; }
.research-update-status[hidden] { display:none; }
.research-update-status__activity { align-items:center; display:flex; gap:11px; min-width:0; }
.research-update-status__activity > span:last-child { display:grid; gap:3px; min-width:0; }
.research-update-status__activity strong { color:#2d302c; font-size:.72rem; font-weight:690; line-height:1.3; }
.research-update-status__activity small { color:#767a73; font-size:.62rem; line-height:1.35; }
.research-update-status__indicator { background:#92968f; border-radius:50%; box-shadow:0 0 0 4px rgba(111,119,110,.1); flex:none; height:8px; width:8px; }
.research-update-status.is-active .research-update-status__indicator { animation:research-update-pulse 1.5s ease-in-out infinite; background:#527460; box-shadow:0 0 0 4px rgba(82,116,96,.12); }
.research-update-status.is-complete { background:#f4f8f3; }
.research-update-status.is-complete .research-update-status__indicator { background:#3f7855; box-shadow:0 0 0 4px rgba(63,120,85,.12); }
.research-update-status.is-error { background:#fbf5f3; }
.research-update-status.is-error .research-update-status__indicator { background:#a64f43; box-shadow:0 0 0 4px rgba(166,79,67,.1); }
.research-update-status__progress { align-items:center; display:flex; flex:0 0 min(32vw,300px); gap:10px; }
.research-update-status__track { appearance:none; background:#e1e3de; border:0; border-radius:999px; height:5px; overflow:hidden; width:100%; }
.research-update-status__track::-webkit-progress-bar { background:#e1e3de; border-radius:999px; }
.research-update-status__track::-webkit-progress-value { background:#506f5d; border-radius:999px; }
.research-update-status__track::-moz-progress-bar { background:#506f5d; border-radius:999px; }
.research-update-status.is-complete .research-update-status__track::-webkit-progress-value { background:#3f7855; }
.research-update-status.is-complete .research-update-status__track::-moz-progress-bar { background:#3f7855; }
.research-update-status.is-error .research-update-status__track::-webkit-progress-value { background:#a64f43; }
.research-update-status.is-error .research-update-status__track::-moz-progress-bar { background:#a64f43; }
.research-update-status__progress > span { color:#747871; flex:none; font-size:.61rem; font-variant-numeric:tabular-nums; min-width:28px; text-align:right; }
@keyframes research-update-spin { to { transform:rotate(360deg); } }
@keyframes research-update-pulse { 50% { box-shadow:0 0 0 7px rgba(82,116,96,.05); opacity:.72; } }
.document-body { display:grid; flex:1; grid-template-columns:clamp(220px,14vw,260px) minmax(0,1fr); min-height:0; }
.document-outline { border-right:1px solid #efefec; height:auto; max-height:none; min-width:0; overflow-y:auto; padding:35px 12px 35px 14px; position:static; }
.document-outline .client-toc__inner { max-height:none; overflow:visible; }
.document-outline .client-toc__label { color:#8a8c86; font-size:.62rem; font-weight:720; letter-spacing:.04em; margin:0 8px 11px; text-transform:uppercase; }
.document-outline ol { border:0; display:grid; gap:2px; list-style:none; margin:0; padding:0; }
.document-outline a { align-items:center; border:0; border-radius:8px; color:#767872; display:flex; font-size:.66rem; font-weight:540; gap:6px; justify-content:space-between; line-height:1.35; padding:7px 8px; text-decoration:none; }
.document-outline a:hover,.document-outline a[aria-current="location"] { background:#f0f0ed; color:#252724; }
.document-outline a[aria-current="location"] { font-weight:680; }
.document-outline .client-toc__empty { color:#a5a6a1!important; }
.client-toc__notification { align-items:center; background:#f4d45f; border:1px solid #ddbd46; border-radius:999px; color:#5a4700; display:inline-flex; flex:0 0 18px; height:18px; justify-content:center; width:18px; }
.client-toc__notification svg { fill:currentColor; height:11px; width:11px; }
.document-scroll { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-color:#bbb9b2 transparent; }
.client-detail-page .document-scroll .pamphlet-main { margin:0 auto; max-width:980px; padding:clamp(62px,7.2vh,94px) clamp(44px,6vw,92px) 110px; }
.document-heading { margin:0 0 50px; }
.document-heading > p { color:#70726d; font-size:.66rem; font-weight:720; letter-spacing:.08em; margin:0 0 13px; text-transform:uppercase; }
.document-heading h1 { color:#171916; font-size:clamp(2.6rem,3.6vw,4.5rem); font-weight:710; letter-spacing:-.045em; line-height:1.01; margin:0; overflow-wrap:anywhere; }
.document-heading > span { color:#83857f; display:block; font-size:.68rem; margin-top:15px; }
.client-detail-page .document-scroll .client-article { background:transparent; border:0; border-radius:0; box-shadow:none; padding:0; width:100%; }
.client-detail-page .document-scroll .source-notice { background:#f5f4ef; border:0; border-radius:9px; color:#6f6548; margin:0 0 42px; padding:13px 15px; }
.client-detail-page .document-scroll .file-section { border:0; margin:0; padding:0 0 66px; scroll-margin-top:28px; }
.client-detail-page .document-scroll .file-section__heading { align-items:baseline; gap:13px; margin:0 0 20px; }
.client-detail-page .document-scroll .file-section__number { background:transparent; border-radius:0; color:#a2a39e; font-size:.63rem; height:auto; justify-content:flex-start; width:auto; }
.client-detail-page .document-scroll .file-section__heading h2 { color:#1d1f1c; font-size:clamp(1.75rem,2.15vw,2.7rem); font-weight:700; letter-spacing:-.032em; line-height:1.08; }
.client-detail-page .document-scroll .file-section__summary { color:#676964; font-size:.82rem; line-height:1.6; margin:-7px 0 22px 32px; }
.client-detail-page .document-scroll .file-blocks { gap:26px; }
.client-detail-page .document-scroll .file-block:not(.file-block--source_document) { background:#f7f7f5; border:0; border-radius:9px; padding:16px 18px; }
.client-detail-page .document-scroll .file-block--update:not(.file-block--source_document) { background:#fff8d6; border:1px solid #ead27a; box-shadow:0 5px 16px rgba(118,91,10,.08); position:relative; }
.client-detail-page .document-scroll .file-block--current-update:not(.file-block--source_document) { border-left:4px solid #d4a900; }
.file-block__update-label { background:#f4d45f; border-radius:999px; color:#5a4700; display:inline-flex; font-size:.64rem; font-weight:850; letter-spacing:.07em; line-height:1; margin:0 0 .45rem; padding:.35rem .55rem; text-transform:uppercase; }
.update-focus-target { scroll-margin-block:90px; }
.update-focus-target:focus { outline:0; }
.update-focus-target.is-update-focus-visible { animation:update-focus-pulse 1.25s ease-out 1; }
.client-detail-page .document-scroll .file-block.update-focus-target { background:#fff5bb; box-shadow:0 0 0 3px rgba(224,183,25,.24),0 8px 24px rgba(92,72,0,.1); }
.client-detail-page .document-scroll .file-section.update-focus-target { background:linear-gradient(90deg,rgba(255,246,190,.56),rgba(255,246,190,0)); border-radius:10px; margin-inline:-14px; padding-inline:14px; }
.update-focus-mark { background:#ffe36b; border-radius:3px; box-decoration-break:clone; color:inherit; padding:.08em .18em; -webkit-box-decoration-break:clone; }
.client-detail-page .pamphlet-table .update-focus-cell { background:#fff1a3!important; box-shadow:inset 0 0 0 2px #e3bd24; }
.update-source-chips { display:inline-flex; flex-wrap:wrap; gap:5px; margin-left:.42rem; vertical-align:middle; }
.update-source-chip { align-items:center; background:#fff7ca; border:1px solid #d9bd4c; border-radius:999px; color:#645414; display:inline-flex; font-size:.62rem; font-weight:800; letter-spacing:.02em; line-height:1; padding:.34rem .52rem; text-decoration:none; white-space:nowrap; }
.update-source-chip:hover { background:#f8e99d; color:#423707; }
.update-source-chip:focus-visible { outline:3px solid rgba(214,177,25,.34); outline-offset:2px; }
@keyframes update-focus-pulse { 0% { box-shadow:0 0 0 0 rgba(225,185,27,.48); } 100% { box-shadow:0 0 0 12px rgba(225,185,27,0); } }
.client-detail-page .document-scroll .file-block__kind { color:#777a74; font-size:.62rem; }
.client-detail-page .document-scroll .file-block:not(.file-block--source_document) .selectable-text { color:#272a26; font-size:.9rem; line-height:1.72; }
.source-preview { align-items:stretch; display:grid; gap:18px; grid-template-columns:138px minmax(0,1fr); }
.source-preview__visual { align-items:center; background:linear-gradient(145deg,#f0f2ec,#e2e7de); border:1px solid #d1d8cd; border-radius:8px; color:#31584c; display:flex; flex-direction:column; justify-content:center; min-height:104px; overflow:hidden; padding:22px 10px 12px; position:relative; text-align:center; }
.source-preview__visual strong { font-size:1.35rem; letter-spacing:-.04em; }
.source-preview__visual small { color:#62756c; font-size:.58rem; margin-top:5px; max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.source-preview__browser { align-items:center; background:rgba(255,255,255,.72); display:flex; gap:3px; height:15px; left:0; padding:0 6px; position:absolute; right:0; top:0; }
.source-preview__browser i { background:#c4cdc2; border-radius:50%; display:block; height:4px; width:4px; }
.source-preview__body { align-self:center; min-width:0; }
.source-preview__eyebrow { color:#728078; font-size:.65rem; font-weight:720; letter-spacing:.04em; margin:0 0 6px; text-transform:uppercase; }
.source-preview__body h3 { color:#222822; font-size:.98rem; line-height:1.35; margin:0 0 8px; }
.source-preview--drawer { margin:12px 0 18px; }
.evidence-drawer__stance { color:#39725d; font-size:.75rem; letter-spacing:.04em; margin:0 0 6px; text-transform:uppercase; }
.evidence-drawer__excerpt { background:#f5f6f2; border-left:3px solid #d5b442; border-radius:0 7px 7px 0; color:#303730; line-height:1.55; margin:0 0 16px; padding:12px 14px; }
@media (max-width:620px) { .source-preview { grid-template-columns:1fr; } .source-preview__visual { min-height:86px; } }
.client-detail-page .document-scroll .pamphlet-card { background:transparent; border:0; border-radius:0; box-shadow:none; margin:27px 0 35px; overflow:visible; }
.client-detail-page .document-scroll .pamphlet-card__title { background:transparent; border:0; color:#242623; font-size:1.12rem; font-weight:720; line-height:1.4; padding:0 0 10px; }
.client-detail-page .document-scroll .pamphlet-card__body { padding:0; }
.client-detail-page .document-scroll .pamphlet-paragraph { color:#343733; font-size:.94rem; line-height:1.77; max-width:75ch; }
.client-detail-page .document-scroll .pamphlet-paragraph--lead { border-left:3px solid #b9c99d; color:#20241f; font-size:1.02rem; font-weight:520; line-height:1.7; margin-bottom:1.55rem; padding:.15rem 0 .15rem 1rem; }
.client-detail-page .document-scroll .pamphlet-paragraph--finding,
.client-detail-page .document-scroll .pamphlet-paragraph--action,
.client-detail-page .document-scroll .pamphlet-paragraph--caveat { border-left:3px solid #78977c; border-radius:0 8px 8px 0; margin:1.35rem 0; padding:.85rem 1rem; }
.client-detail-page .document-scroll .pamphlet-paragraph--finding { background:#f1f5ef; }
.client-detail-page .document-scroll .pamphlet-paragraph--action { background:#edf5f1; border-left-color:#34745f; }
.client-detail-page .document-scroll .pamphlet-paragraph--caveat { background:#fff8df; border-left-color:#d0aa2f; }
.pamphlet-paragraph__label { color:#264d40; font-weight:780; }
.pamphlet-paragraph--caveat .pamphlet-paragraph__label { color:#6a5410; }
.pamphlet-term { background:#e8f0df; border:1px solid #d2dfc3; border-radius:4px; box-decoration-break:clone; color:#274c3f; cursor:pointer; display:inline; font:inherit; font-size:.88em; font-weight:790; letter-spacing:.015em; line-height:inherit; min-height:0; padding:.09em .32em; text-decoration:underline; text-decoration-color:transparent; text-decoration-thickness:1px; text-underline-offset:2px; white-space:nowrap; -webkit-box-decoration-break:clone; }
.pamphlet-term:hover { background:#dce9d0; border-color:#b8cba5; text-decoration-color:#54705d; }
.pamphlet-term:focus-visible { outline:3px solid rgba(52,116,95,.25); outline-offset:2px; }
.client-detail-page .document-scroll .pamphlet-table-scroll { border:1px solid #e4e4e0; border-radius:8px; }
.client-detail-page .document-scroll .pamphlet-table { color:#333632; font-size:.76rem; }
.client-detail-page .document-scroll .pamphlet-table thead th { background:#f0f0ed; color:#4e514c; }
.client-detail-page .document-scroll .pamphlet-table tbody th { background:#fafaf8; }
.client-detail-page .document-scroll .pamphlet-table tbody tr:nth-child(even) td,.client-detail-page .document-scroll .pamphlet-table tbody tr:nth-child(even) th { background:#f7f7f4; }
.client-detail-page .document-scroll .section-empty { background:#f5f5f2; color:#858781; font-size:.8rem; }
.client-detail-page .selection-menu { background:#222521; border-radius:999px; box-shadow:0 8px 24px rgba(18,20,17,.18); min-height:36px; padding:7px 13px; }
.dash-workspace > #evidence-drawer-region:empty { display:none; }
.evidence-overlay { align-items:stretch; background:rgba(20,28,24,.38); display:flex; inset:0; justify-content:flex-end; padding:18px; position:fixed; z-index:90; }
.evidence-drawer { background:#fff; border:1px solid #d9ded8; border-radius:14px; box-shadow:0 24px 70px rgba(14,24,19,.25); margin:0; max-width:760px; overflow-y:auto; padding:0; position:relative; width:min(760px,calc(100vw - 36px)); }
.evidence-drawer__header { align-items:center; background:rgba(255,255,255,.96); border-bottom:1px solid #e4e7e2; display:flex; justify-content:space-between; padding:18px 20px 15px; position:sticky; top:0; z-index:2; }
.evidence-drawer__header p { color:#778078; font-size:.63rem; font-weight:790; letter-spacing:.1em; margin:0 0 2px; text-transform:uppercase; }
.evidence-drawer__header h2 { color:#183329; font-size:1.55rem; letter-spacing:-.03em; line-height:1.1; margin:0; }
.evidence-drawer__close { align-items:center; background:#f1f3ef; border:1px solid #d9ded7; border-radius:999px; color:#26332d; cursor:pointer; display:inline-flex; flex:0 0 42px; font-size:1.55rem; height:42px; justify-content:center; line-height:1; min-height:42px; padding:0 0 3px; width:42px; }
.evidence-drawer__close:hover { background:#e7ebe5; }
.evidence-drawer__content { padding:20px; }
.evidence-drawer .metric-context { border-top:1px solid #e1e5df; display:grid; gap:14px 20px; grid-template-columns:repeat(2,minmax(0,1fr)); margin:20px 0 0; padding-top:18px; }
.evidence-drawer .metric-context div:last-child { grid-column:1 / -1; }
.evidence-drawer .metric-context code { overflow-wrap:anywhere; }
body.has-evidence-drawer { overflow:hidden; }
.dash-workspace > #topic-lens-region:empty { display:none; }
.topic-lens-overlay { align-items:stretch; background:rgba(20,28,24,.34); display:flex; inset:0; justify-content:flex-end; padding:18px; position:fixed; z-index:80; }
.topic-lens { background:#fbfcf9; border:1px solid #d7ded3; border-radius:14px; box-shadow:0 24px 70px rgba(14,24,19,.24); max-width:780px; overflow-y:auto; width:min(780px,calc(100vw - 36px)); }
.topic-lens__header { align-items:center; background:rgba(251,252,249,.97); border-bottom:1px solid #e0e6dc; display:flex; justify-content:space-between; padding:18px 22px 16px; position:sticky; top:0; z-index:2; }
.topic-lens__kicker { color:#738174; font-size:.62rem; font-weight:800; letter-spacing:.11em; margin:0 0 3px; text-transform:uppercase; }
.topic-lens__header h2 { color:#17372c; font-size:1.65rem; letter-spacing:-.035em; line-height:1.1; margin:0; }
.topic-lens__close { align-items:center; background:#eef2eb; border:1px solid #d5ddd1; border-radius:999px; color:#26352e; cursor:pointer; display:inline-flex; flex:0 0 42px; font-size:1.55rem; height:42px; justify-content:center; line-height:1; min-height:42px; padding:0 0 3px; width:42px; }
.topic-lens__close:hover { background:#e3e9df; }
.topic-lens__content { padding:22px; }
.topic-lens__summary { background:#edf4e7; border-left:3px solid #789565; border-radius:0 8px 8px 0; color:#294437; font-size:.92rem; line-height:1.62; margin:0; padding:13px 15px; }
.topic-lens__meta { border-bottom:1px solid #e1e6de; color:#6d776e; display:flex; flex-wrap:wrap; font-size:.68rem; font-weight:720; gap:8px 18px; padding:13px 2px 16px; }
.topic-lens__digest { background:#f4f6f1; border:1px solid #e1e6dd; border-radius:9px; margin:18px 0 24px; padding:14px 16px; }
.topic-lens__digest h3 { color:#53635a; font-size:.65rem; font-weight:820; letter-spacing:.08em; margin:0 0 9px; text-transform:uppercase; }
.topic-lens__digest ul { display:grid; gap:9px; list-style:none; margin:0; padding:0; }
.topic-lens__digest li { color:#39433d; display:grid; font-size:.76rem; gap:2px; line-height:1.48; padding-left:13px; position:relative; }
.topic-lens__digest li::before { background:#789565; border-radius:50%; content:""; height:5px; left:0; position:absolute; top:.52em; width:5px; }
.topic-lens__digest strong { color:#2d5143; font-size:.62rem; letter-spacing:.025em; text-transform:uppercase; }
.topic-lens__section { margin:24px 0 0; }
.topic-lens__section > h3 { color:#294437; font-size:.72rem; font-weight:820; letter-spacing:.06em; margin:0 0 9px; text-transform:uppercase; }
.topic-reference { background:#fff; border:1px solid #e0e5dd; border-radius:9px; margin:0 0 10px; padding:14px 15px; }
.topic-reference__context { color:#718078; font-size:.65rem; font-weight:760; letter-spacing:.035em; margin:0 0 6px; text-transform:uppercase; }
.topic-reference__text { color:#2f3731; font-size:.83rem; line-height:1.58; margin:0; }
.topic-reference__actions { align-items:center; border-top:1px solid #edf0eb; display:flex; flex-wrap:wrap; gap:8px 12px; margin-top:11px; padding-top:10px; }
.topic-reference__jump,.topic-reference__source { background:transparent; border:0; color:#276553; cursor:pointer; font-size:.68rem; font-weight:750; min-height:0; padding:0; text-decoration:underline; text-underline-offset:2px; }
.topic-reference__unlinked { color:#929891; font-size:.65rem; }
.is-topic-jump-visible { animation:topic-jump-pulse 1.5s ease-out 1; }
body.has-topic-lens { overflow:hidden; }
@keyframes topic-jump-pulse { 0% { background:#e7f2d8; box-shadow:0 0 0 7px rgba(116,154,90,.22); } 100% { background:transparent; box-shadow:0 0 0 14px rgba(116,154,90,0); } }

@media (max-width:1280px) {
  .client-detail-page .dash-workspace { grid-template-columns:220px minmax(0,1fr); }
  .client-detail-page .dash-workspace.is-chat-collapsed { grid-template-columns:220px minmax(0,1fr); }
  .client-detail-page .workspace-chat { background:transparent; border:0; bottom:16px; box-shadow:none; height:auto; position:fixed; right:16px; width:min(430px,calc(100vw - 32px)); z-index:40; }
  .client-detail-page .workspace-chat .agent-panel__toggle { align-items:center; background:#252824; border:0; border-radius:999px; box-shadow:0 8px 28px rgba(20,22,19,.2); color:#fff; display:flex; font-size:.8rem; font-weight:680; gap:10px; justify-content:space-between; margin-left:auto; padding:10px 14px; }
  .client-detail-page .workspace-chat .agent-panel__inner { border:1px solid #deded9; border-radius:14px; box-shadow:0 16px 46px rgba(20,22,19,.16); display:none; height:min(720px,calc(100dvh - 88px)); margin-top:8px; }
  .client-detail-page .workspace-chat.is-open .agent-panel__inner { display:flex; }
  .client-detail-page .workspace-chat.is-open .agent-panel__toggle { width:100%; }
}

@media (max-width:720px) {
  body.client-detail-page { overflow:hidden; }
  .client-detail-page .dash-workspace { display:block; padding:6px; }
  .workspace-sidebar { align-items:center; background:#f1f1ef; flex-direction:row; height:58px; justify-content:space-between; left:6px; overflow:visible; padding:5px 9px; position:fixed; right:6px; top:6px; z-index:25; }
  .workspace-sidebar__brand-row { min-height:0; padding:0; }
  .workspace-brand img { width:112px; }
  .workspace-primary-nav { border:0; display:flex; padding:0; }
  .workspace-primary-nav a { min-height:38px; padding:7px 10px; }
  .workspace-primary-nav a > span:first-child { font-size:1rem; }
  .workspace-primary-nav a > span:last-child { display:none; }
  .workspace-targets,.workspace-chats,.workspace-sidebar__account { display:none!important; }
  .document-pane { height:calc(100dvh - 70px); margin-top:64px; }
  .document-toolbar { height:54px; padding:0 13px; }
  .document-toolbar__left > span:last-child,.document-toolbar__meta > span { display:none; }
  .document-toolbar__action { font-size:0; gap:0; padding:0; width:34px; }
  .document-toolbar__action span { font-size:.9rem; }
  .research-update-button [data-research-update-button-label] { display:none; }
  .research-update-status { align-items:stretch; flex-direction:column; gap:9px; min-height:86px; padding:11px 14px; }
  .research-update-status__progress { flex-basis:auto; width:100%; }
  .document-body { grid-template-columns:1fr; }
  .document-outline { display:none; }
  .client-detail-page .document-scroll .pamphlet-main { padding:42px 24px 90px; }
  .document-heading { margin-bottom:38px; }
  .document-heading h1 { font-size:clamp(2.25rem,11vw,3.2rem); }
  .client-detail-page .document-scroll .file-section__heading h2 { font-size:1.65rem; }
  .client-detail-page .document-scroll .file-section__summary { margin-left:0; }
  .client-detail-page .workspace-chat { bottom:10px; right:10px; width:calc(100vw - 20px); }
  .evidence-overlay { padding:8px; }
  .evidence-drawer { border-radius:12px; width:calc(100vw - 16px); }
  .evidence-drawer__content { padding:16px; }
  .evidence-drawer .metric-context { grid-template-columns:1fr; }
  .evidence-drawer .metric-context div:last-child { grid-column:auto; }
  .topic-lens-overlay { padding:8px; }
  .topic-lens { border-radius:12px; width:calc(100vw - 16px); }
  .topic-lens__content { padding:16px; }
}

/* Landing workspace: the same frame, rhythm and surfaces as the pamphlet view. */
body.workspace-home-page { background:#f1f1ef; height:100dvh; overflow:hidden; }
.workspace-home-page .skip-link { z-index:100; }
.home-workspace { display:grid; gap:7px; grid-template-columns:clamp(190px,12.5vw,235px) minmax(0,1fr); height:100dvh; margin:0; max-width:none; overflow:hidden; padding:8px; width:100%; }
.home-workspace.home-view { max-width:none; padding:8px; }
.home-sidebar .workspace-targets { flex:1; min-height:0; }
.home-sidebar .workspace-targets__list { max-height:none; }
.home-pane { background:#fff; border:1px solid #e7e7e4; border-radius:14px; box-shadow:0 2px 10px rgba(23,24,22,.035); display:flex; flex-direction:column; height:calc(100dvh - 16px); min-height:0; overflow:hidden; }
.home-toolbar { flex:none; gap:12px; justify-content:flex-start; overflow:visible; position:relative; z-index:20; }
.home-toolbar__title { min-width:0; }
.home-toolbar__title h1 { color:#252724; font-size:.84rem; font-weight:690; letter-spacing:-.012em; line-height:1.25; margin:0; white-space:nowrap; }
.home-target-menu { margin-left:0; }
.home-target-menu summary { max-width:320px; min-width:210px; }
.home-target-menu__popover a { height:auto; justify-content:flex-start; min-height:46px; padding:.45rem .55rem; width:100%; }
.home-target-menu__popover a:hover { background:#edf3eb; color:#174a3d; }
.home-scroll { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-color:#bbb9b2 transparent; }
.home-content { margin:0 auto; max-width:1200px; min-height:100%; padding:22px clamp(28px,4vw,56px) 56px; width:100%; }
.home-content .target-stories { border-bottom:1px solid #e5e5e1; padding-bottom:36px; }
.home-content .target-stories__heading { align-items:flex-end; display:flex; gap:20px; justify-content:space-between; margin-bottom:26px; }
.home-content .target-stories__heading .section-kicker,.home-content .feed-panel__heading .section-kicker,.home-content .ecb-report-panel__heading .section-kicker { color:#8a8c86; font-size:.62rem; font-weight:720; letter-spacing:.07em; margin:0 0 8px; text-transform:uppercase; }
.home-content .target-stories__heading h1 { color:#171916; font-size:clamp(2.3rem,3.4vw,4rem); font-weight:710; letter-spacing:-.045em; line-height:1.02; }
.target-stories__add { align-items:center; background:#252824; border-radius:9px; color:#fff; display:inline-flex; flex:none; font-size:.7rem; font-weight:680; gap:7px; min-height:40px; padding:8px 13px; text-decoration:none; }
.target-stories__add:hover { background:#3b3f3a; color:#fff; }
.home-content .target-stories__rail { gap:1.35rem; padding:.25rem .15rem .5rem; }
.home-content .target-story { flex-basis:96px; gap:.65rem; }
.home-content .target-story__ring { border-color:#d8d8d4; height:80px; width:80px; }
.home-content .target-story__logo { border-color:#e5e5e1; height:70px; width:70px; }
.home-content .target-story__name { color:#5f615d; font-size:.7rem; font-weight:620; max-width:96px; }
.home-content .target-story:hover .target-story__ring { border-color:#9ea19a; }
.home-content .target-story.is-selected .target-story__ring { border-color:#252824; box-shadow:0 0 0 3px #e5e5e2; }
.home-content .target-story.is-selected .target-story__name { color:#222421; font-weight:700; }
.ecb-report-panel { border-bottom:1px solid #e5e5e1; margin-bottom:28px; padding:8px 0 30px; }
.ecb-report-panel__heading { align-items:flex-end; display:flex; gap:20px; justify-content:space-between; margin-bottom:18px; }
.ecb-report-panel__heading h2 { color:#1d1f1c; font-size:clamp(1.65rem,2.2vw,2.25rem); font-weight:700; letter-spacing:-.032em; line-height:1.08; margin:0; }
.ecb-report-panel__heading > span { color:#737670; font-size:.72rem; font-weight:650; }
.ecb-report-panel__reports { display:grid; gap:12px; }
.ecb-report-card { background:#f7f9f6; border:1px solid #dfe7dc; border-radius:11px; padding:18px 19px; }
.ecb-report-card > header { align-items:center; display:flex; gap:20px; justify-content:space-between; }
.ecb-report-card > header p { color:#315a42; font-size:.82rem; margin:0; }
.ecb-report-card > header p strong { font-size:1.1rem; }
.ecb-report-card > header time { color:#7a817b; font-size:.72rem; }
.ecb-report-card ul { display:grid; gap:0; list-style:none; margin:14px 0 12px; padding:0; }
.ecb-report-card li { align-items:center; border-top:1px solid #e3e9e1; display:flex; gap:14px; justify-content:space-between; padding:11px 0; }
.ecb-report-card li > span { display:grid; gap:3px; }
.ecb-report-card li strong { color:#292d29; font-size:.82rem; }
.ecb-report-card li small { color:#717870; font-size:.7rem; }
.ecb-report-card code { background:#edf1eb; border-radius:5px; color:#5f685f; font-family:ui-monospace,SFMono-Regular,Menlo,monospace; font-size:.65rem; padding:4px 6px; }
.ecb-report-card > a { color:#3e6b50; font-size:.72rem; font-weight:680; text-decoration:none; }
.ecb-report-card > a:hover { text-decoration:underline; }
.home-content .feed-panel { margin:0; max-width:none; }
.home-content .feed-panel__heading { align-items:flex-end; margin-bottom:18px; }
.home-content .feed-panel__heading h2 { color:#1d1f1c; font-size:clamp(1.65rem,2.2vw,2.25rem); font-weight:700; letter-spacing:-.032em; line-height:1.08; }
.home-content .feed-panel__filter span { color:#676964; }
.home-content .feed-panel__filter a { border-left-color:#deded9; color:#4f5f54; }
.home-content .change-feed__list { border-color:#e4e4e0; border-radius:10px; }
.home-content .change-card,.home-content .change-card.is-read { border-bottom-color:#ededE9; padding:17px 19px; }
.home-content .change-card:hover { background:#f8f8f6; }
.home-content .change-card__type { color:#4f6f5c; }
.home-content .change-card h3 { color:#252724; }
.home-content .change-card__relevance { color:#4e514c; }
.home-content .change-card__main-link,.home-content .change-card__main-link:hover { color:inherit; text-decoration:none; }
.home-content .change-card__main-link:hover h3 { color:#174a3d; }
.home-content .change-empty { border-color:#e4e4e0; border-radius:10px; color:#676964; }
.home-content .change-empty h3 { color:#252724; font-size:1.05rem; font-weight:680; }
.home-content .feed-client-filter { border-bottom:1px solid #e5e5e1; margin:0 0 26px; padding:2px 0 20px; }
.home-content .feed-client-filter .target-stories__rail { gap:1rem; padding:.15rem .15rem .35rem; }
.home-content .feed-client-filter .target-story { flex-basis:82px; gap:.48rem; }
.home-content .feed-client-filter .target-story__ring { height:66px; width:66px; }
.home-content .feed-client-filter .target-story__logo { height:56px; width:56px; }
.home-content .feed-client-filter .target-story__name { font-size:.67rem; line-height:1.2; max-width:82px; }
.feed-client-filter__all-logo { background:#f2f2ef; color:#565a54; }
.change-feed-days { display:grid; gap:26px; }
.change-day__heading { color:#7b7e77; font-size:.68rem; font-weight:720; letter-spacing:.07em; margin:0 0 8px; text-transform:uppercase; }
.change-day__runs { display:grid; gap:12px; }
.change-run { background:#fff; border:1px solid #e1e2dd; border-radius:11px; overflow:hidden; }
.change-run__header { align-items:center; background:#f7f7f4; display:flex; gap:9px; min-height:46px; padding:8px 13px; }
.change-run__logo { align-items:center; background:#fff; border:1px solid #e1e3de; border-radius:50%; color:#37634b; display:inline-flex; flex:0 0 28px; font-size:.58rem; font-weight:750; height:28px; justify-content:center; overflow:hidden; width:28px; }
.change-run__logo img { height:100%; object-fit:contain; padding:3px; width:100%; }
.change-run__header strong { color:#2d302c; font-size:.78rem; font-weight:690; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.change-run__meta { align-items:center; color:#888a84; display:flex; flex:none; font-size:.65rem; gap:6px; margin-left:auto; white-space:nowrap; }
.change-run__list { list-style:none; margin:0; padding:0; }
.change-row { border-top:1px solid #ecece8; position:relative; transition:opacity .16s ease,transform .16s ease; }
.change-row:first-child { border-top:0; }
.change-row a { align-items:center; color:#2f322e; display:grid; font-size:.82rem; gap:16px; grid-template-columns:minmax(0,1fr) auto; line-height:1.42; min-height:46px; padding:10px 13px 10px 15px; text-decoration:none; transition:background .15s ease,color .15s ease,padding-right .15s ease; }
.change-row.is-unread a { box-shadow:inset 2px 0 0 #638b70; }
.change-row a:hover { background:#f8f8f5; color:#183f2e; }
.change-row__digest { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
.change-row__arrow { color:#8b8d87; font-size:1rem; transition:opacity .12s ease,transform .15s ease; }
.change-row a:hover .change-row__arrow { color:#285c43; transform:translateX(2px); }
.change-row__archive { background:linear-gradient(90deg,rgba(248,248,245,0),#f8f8f5 18%); opacity:0; padding-left:22px; pointer-events:none; position:absolute; right:8px; top:50%; transform:translate(5px,-50%); transition:opacity .14s ease,transform .14s ease; }
.change-row__archive button { background:#fff; border:1px solid #d9d9d4; border-radius:7px; color:#696b65; cursor:pointer; font:inherit; font-size:.68rem; font-weight:650; min-height:30px; padding:5px 10px; white-space:nowrap; }
.change-row__archive button:hover,.change-row__archive button:focus-visible { background:#f1eee9; border-color:#c9c5bd; color:#4d4b47; outline:none; }
.change-row:hover a,.change-row:focus-within a { padding-right:108px; }
.change-row:hover .change-row__arrow,.change-row:focus-within .change-row__arrow { opacity:0; }
.change-row:hover .change-row__archive,.change-row:focus-within .change-row__archive { opacity:1; pointer-events:auto; transform:translate(0,-50%); }
.change-row.is-archiving { opacity:0; pointer-events:none; transform:translateX(8px); }

@media (max-width:900px) {
  .home-workspace { grid-template-columns:190px minmax(0,1fr); }
  .home-content { padding:20px 28px 48px; }
}

@media (max-width:720px) {
  body.workspace-home-page { overflow:hidden; }
  .home-workspace,.home-workspace.home-view { display:block; padding:6px; }
  .home-sidebar { align-items:center; background:#f1f1ef; flex-direction:row; height:58px; justify-content:space-between; left:6px; overflow:visible; padding:5px 9px; position:fixed; right:6px; top:6px; z-index:25; }
  .home-sidebar .workspace-primary-nav { margin-left:auto; }
  .home-sidebar .workspace-targets { display:none; }
  .home-sidebar .workspace-sidebar__account { border:0; display:flex!important; min-height:0; padding:0 3px 0 10px; }
  .home-sidebar .workspace-sidebar__account > span:last-child { display:none; }
  .home-pane { height:calc(100dvh - 70px); margin-top:64px; }
  .home-toolbar { height:54px; padding:0 13px; }
  .home-toolbar__title h1 { font-size:.74rem; }
  .home-target-menu summary { max-width:175px; min-width:0; }
  .home-target-menu .header-target-menu__label strong { max-width:92px; }
  .home-target-menu__popover { right:0; }
  .home-content { padding:16px 16px 40px; }
  .home-content .feed-client-filter { margin-bottom:20px; padding-bottom:15px; }
  .home-content .feed-client-filter .target-stories__rail { gap:.75rem; margin-inline:-.2rem; }
  .home-content .feed-client-filter .target-story { flex-basis:72px; }
  .home-content .feed-client-filter .target-story__ring { height:60px; width:60px; }
  .home-content .feed-client-filter .target-story__logo { height:50px; width:50px; }
  .home-content .feed-client-filter .target-story__name { max-width:72px; }
  .home-content .target-stories__heading h1 { font-size:clamp(2.15rem,10vw,3rem); }
  .home-content .target-stories__heading { align-items:flex-start; flex-direction:column; }
  .home-content .target-stories__rail { gap:.9rem; margin-inline:-.25rem; }
  .home-content .target-story { flex-basis:78px; }
  .home-content .target-story__ring { height:68px; width:68px; }
  .home-content .target-story__logo { height:58px; width:58px; }
  .home-content .target-story__name { max-width:78px; }
  .ecb-report-panel__heading { align-items:flex-start; flex-direction:column; }
  .ecb-report-card li { align-items:flex-start; flex-direction:column; }
  .home-content .feed-panel { margin-top:34px; }
  .home-content .feed-panel__heading { align-items:flex-start; }
  .change-run__meta > span { display:none; }
  .change-row a { gap:10px; padding:10px 11px 10px 13px; }
}

@media (hover:none) {
  .change-row a { padding-right:102px; }
  .change-row__arrow { opacity:0; }
  .change-row__archive { opacity:1; pointer-events:auto; transform:translate(0,-50%); }
}

/* Pamphlet library: same workspace shell, with target logos as the entry point. */
body.pamphlet-index-page { background:#f1f1ef; height:100dvh; overflow:hidden; }
.pamphlet-index-page .skip-link { z-index:100; }
.pamphlet-index-workspace { display:grid; gap:7px; grid-template-columns:clamp(190px,12.5vw,235px) minmax(0,1fr); height:100dvh; overflow:hidden; padding:8px; width:100%; }
.pamphlet-index-sidebar .workspace-targets { flex:1; min-height:0; }
.pamphlet-index-sidebar .workspace-targets__list { max-height:none; }
.pamphlet-index-pane { background:#fff; border:1px solid #e7e7e4; border-radius:14px; box-shadow:0 2px 10px rgba(23,24,22,.035); display:flex; flex-direction:column; height:calc(100dvh - 16px); min-height:0; overflow:hidden; }
.pamphlet-index-toolbar { flex:none; }
.pamphlet-index-toolbar__title h1 { color:#252724; font-size:.84rem; font-weight:690; letter-spacing:-.012em; line-height:1.25; margin:0; }
.pamphlet-index-scroll { flex:1; min-height:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-color:#bbb9b2 transparent; }
.pamphlet-index-content { margin:0 auto; max-width:1200px; min-height:100%; padding:clamp(54px,8vh,88px) clamp(34px,5.5vw,76px) 64px; width:100%; }
.pamphlet-index-heading { border-bottom:1px solid #e5e5e1; padding-bottom:30px; }
.pamphlet-index-heading p { color:#8a8c86; font-size:.62rem; font-weight:720; letter-spacing:.07em; margin:0 0 10px; text-transform:uppercase; }
.pamphlet-index-heading h1 { color:#171916; font-size:clamp(2.4rem,3.7vw,4.4rem); font-weight:710; letter-spacing:-.045em; line-height:1.02; margin:0; }
.pamphlet-index-grid { display:grid; gap:34px 24px; grid-template-columns:repeat(auto-fill,minmax(128px,1fr)); padding:42px 0; }
.pamphlet-choice { align-items:center; color:#575a54; display:flex; flex-direction:column; gap:13px; justify-self:center; text-align:center; text-decoration:none; width:128px; }
.pamphlet-choice__ring { align-items:center; border:1.5px solid #d4d5d0; border-radius:50%; display:flex; height:102px; justify-content:center; transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease; width:102px; }
.pamphlet-choice__logo { align-items:center; background:#fff; border:1px solid #e5e5e1; border-radius:50%; color:#356350; display:flex; font-size:1rem; font-weight:800; height:90px; justify-content:center; overflow:hidden; width:90px; }
.pamphlet-choice__logo img { height:100%; object-fit:contain; padding:17px; width:100%; }
.pamphlet-choice__name { font-size:.75rem; font-weight:640; line-height:1.35; max-width:128px; }
.pamphlet-choice:hover,.pamphlet-choice:focus-visible { color:#20231f; outline:0; }
.pamphlet-choice:hover .pamphlet-choice__ring,.pamphlet-choice:focus-visible .pamphlet-choice__ring { border-color:#7f887f; box-shadow:0 0 0 4px #eff1ed; transform:translateY(-2px); }
.pamphlet-index-empty { color:#747770; padding:48px 0; }
.pamphlet-index-empty h2 { color:#272a26; font-size:1.3rem; margin:0 0 8px; }
.pamphlet-index-empty p { font-size:.8rem; line-height:1.6; margin:0 0 20px; }

@media (max-width:900px) {
  .pamphlet-index-workspace { grid-template-columns:190px minmax(0,1fr); }
  .pamphlet-index-content { padding:44px 34px 54px; }
}

@media (max-width:720px) {
  .pamphlet-index-workspace { display:block; padding:6px; }
  .pamphlet-index-sidebar { align-items:center; background:#f1f1ef; flex-direction:row; height:58px; justify-content:space-between; left:6px; overflow:visible; padding:5px 9px; position:fixed; right:6px; top:6px; z-index:25; }
  .pamphlet-index-sidebar .workspace-primary-nav { margin-left:auto; }
  .pamphlet-index-sidebar .workspace-targets { display:none; }
  .pamphlet-index-sidebar .workspace-sidebar__account { border:0; display:flex!important; min-height:0; padding:0 3px 0 10px; }
  .pamphlet-index-sidebar .workspace-sidebar__account > span:last-child { display:none; }
  .pamphlet-index-pane { height:calc(100dvh - 70px); margin-top:64px; }
  .pamphlet-index-toolbar { height:54px; padding:0 13px; }
  .pamphlet-index-toolbar__title h1 { font-size:.74rem; }
  .pamphlet-index-content { padding:34px 20px 48px; }
  .pamphlet-index-heading h1 { font-size:clamp(2.2rem,10vw,3rem); }
  .pamphlet-index-grid { gap:28px 16px; grid-template-columns:repeat(auto-fill,minmax(104px,1fr)); padding-top:34px; }
  .pamphlet-choice { width:104px; }
  .pamphlet-choice__ring { height:84px; width:84px; }
  .pamphlet-choice__logo { height:74px; width:74px; }
  .pamphlet-choice__logo img { padding:13px; }
  .pamphlet-choice__name { max-width:104px; }
}

/* Guided target onboarding uses the same workspace shell and a conversational form. */
body.client-onboarding-page { background:#f1f1ef; height:100dvh; overflow:hidden; }
.client-onboarding-page .skip-link { z-index:100; }
.onboarding-workspace { display:grid; gap:7px; grid-template-columns:clamp(190px,12.5vw,235px) minmax(0,1fr); height:100dvh; overflow:hidden; padding:8px; width:100%; }
.onboarding-sidebar .workspace-targets { flex:1; min-height:0; }
.onboarding-sidebar .workspace-targets__list { max-height:none; }
.onboarding-pane { background:#fff; border:1px solid #e7e7e4; border-radius:14px; box-shadow:0 2px 10px rgba(23,24,22,.035); display:flex; flex-direction:column; height:calc(100dvh - 16px); min-height:0; overflow:hidden; }
.onboarding-toolbar { flex:none; }
.onboarding-progress { color:#858781; font-size:.66rem; font-weight:650; margin:0; }
.onboarding-progress span { color:#30322f; }
.onboarding-scroll { flex:1; min-height:0; overflow-y:auto; scrollbar-color:#bbb9b2 transparent; }
.onboarding-chat { margin:0 auto; max-width:760px; padding:clamp(24px,3.5vh,36px) 36px 32px; width:100%; }
.onboarding-chat__heading { border-bottom:1px solid #e8e8e4; margin-bottom:18px; padding-bottom:18px; }
.onboarding-chat__heading > p { color:#777a74; font-size:.62rem; font-weight:720; letter-spacing:.08em; margin:0 0 11px; text-transform:uppercase; }
.onboarding-chat__heading h1 { color:#171916; font-size:clamp(2.1rem,3vw,3.35rem); font-weight:710; letter-spacing:-.045em; line-height:1.04; margin:0; max-width:16ch; }
.onboarding-chat__heading > span { color:#777a74; display:block; font-size:.8rem; line-height:1.6; margin-top:15px; max-width:58ch; }
.onboarding-error { background:#fbf1ef; border-radius:9px; color:#8a302b; font-size:.75rem; margin:0 0 24px; padding:11px 13px; }
.onboarding-error ul,.onboarding-field-error ul { list-style:none; margin:0; padding:0; }
.onboarding-thread { display:grid; gap:28px; }
.onboarding-step { scroll-margin-top:24px; }
.onboarding-chat.is-enhanced .onboarding-step[hidden] { display:none; }
.onboarding-message { align-items:flex-start; display:flex; gap:12px; }
.onboarding-message__avatar { align-items:center; background:#eef0eb; border:1px solid #e0e2dc; border-radius:9px; color:#4e5c52; display:inline-flex; flex:none; font-size:.7rem; font-weight:720; height:34px; justify-content:center; width:34px; }
.onboarding-message strong { color:#252724; display:block; font-size:.82rem; font-weight:690; margin-top:2px; }
.onboarding-message p { color:#777a74; font-size:.76rem; line-height:1.55; margin:4px 0 0; max-width:58ch; }
.onboarding-reply,.onboarding-review { background:#f6f6f3; border-radius:13px 13px 13px 4px; display:grid; gap:8px; margin:15px 0 0 46px; padding:16px; }
.onboarding-reply label { color:#4f514d; font-size:.65rem; font-weight:690; margin-top:3px; }
.onboarding-reply label span { color:#999b96; font-weight:560; }
.onboarding-reply input { background:#fff; border:1px solid #d7d8d3; border-radius:9px; color:#252724; font:inherit; font-size:.82rem; min-height:44px; padding:9px 11px; width:100%; }
.onboarding-reply input:focus { border-color:#92968f; box-shadow:0 0 0 3px rgba(69,91,76,.08); outline:0; }
.onboarding-reply input::placeholder { color:#a0a29d; }
.onboarding-reply--bank { gap:10px; margin-left:0; overflow:visible; }
.ecb-combobox { display:grid; gap:6px; }
.ecb-combobox input[type="search"] { padding-right:38px; }
.ecb-combobox input[type="search"]::-webkit-search-cancel-button { opacity:.55; }
.ecb-combobox__options { background:#fff; border:1px solid #dedfda; border-radius:10px; box-shadow:inset 0 -12px 22px -24px rgba(28,30,27,.4); max-height:clamp(170px,calc(100dvh - 475px),300px); overflow-y:auto; padding:5px; scrollbar-color:#c4c5c0 transparent; }
.ecb-combobox__options button { background:transparent; border:0; border-radius:7px; color:#252724; cursor:pointer; display:grid; gap:3px; padding:9px 10px; text-align:left; width:100%; }
.ecb-combobox__options button:hover,.ecb-combobox__options button.is-active { background:#eef0eb; }
.ecb-combobox__options strong { font-size:.73rem; font-weight:660; line-height:1.35; }
.ecb-combobox__options small { color:#858781; font-size:.61rem; line-height:1.35; }
.ecb-combobox__empty { color:#858781; font-size:.7rem; margin:0; padding:12px 10px; }
.ecb-combobox__native select { background:#fff; border:1px solid #d7d8d3; border-radius:9px; color:#252724; font:inherit; font-size:.76rem; min-height:44px; padding:9px 11px; width:100%; }
.onboarding-chat.is-enhanced .ecb-combobox__native { display:none; }
.ecb-combobox__source { color:#92958f; font-size:.61rem; line-height:1.45; margin:0 1px; }
.ecb-selection { align-items:flex-start; background:#edf1eb; border-radius:9px; color:#405047; display:flex; gap:9px; padding:10px 11px; }
.ecb-selection[hidden] { display:none; }
.ecb-selection > span { align-items:center; background:#dce7de; border-radius:50%; display:inline-flex; flex:none; font-size:.58rem; height:20px; justify-content:center; margin-top:1px; width:20px; }
.ecb-selection div { display:grid; gap:3px; min-width:0; }
.ecb-selection strong { font-size:.7rem; font-weight:670; line-height:1.4; overflow-wrap:anywhere; }
.ecb-selection small { color:#718078; font-size:.6rem; line-height:1.4; }
.onboarding-reply--bank .onboarding-submit { justify-self:end; margin-top:6px; }
.onboarding-reply--split { grid-template-columns:110px minmax(0,1fr); }
.onboarding-reply--split > div { display:grid; gap:8px; }
.onboarding-field-error { color:#a33b34; font-size:.66rem; }
.onboarding-next,.onboarding-submit { align-items:center; background:#252824; border:0; border-radius:9px; color:#fff; cursor:pointer; display:inline-flex; font:inherit; font-size:.72rem; font-weight:680; gap:8px; justify-content:center; min-height:42px; padding:9px 14px; text-decoration:none; }
.onboarding-next { justify-self:end; margin-top:8px; }
.onboarding-next:hover,.onboarding-submit:hover { background:#3b3f3a; color:#fff; }
.onboarding-step__actions { align-items:center; display:flex!important; flex-direction:row; grid-column:1/-1; justify-content:space-between; margin-top:9px; }
.onboarding-step__actions > button:first-child { background:transparent; border:0; color:#777a74; cursor:pointer; font:inherit; font-size:.7rem; font-weight:650; min-height:40px; padding:8px 3px; }
.onboarding-step__actions > button:first-child:hover { color:#252724; }
.onboarding-review { gap:15px; }
.onboarding-review dl { display:grid; gap:0; margin:0; }
.onboarding-review dl div { align-items:baseline; border-bottom:1px solid #e2e3de; display:grid; gap:14px; grid-template-columns:95px 1fr; padding:9px 2px; }
.onboarding-review dl div:last-child { border-bottom:0; }
.onboarding-review dt { color:#858781; font-size:.62rem; font-weight:680; }
.onboarding-review dd { color:#30322f; font-size:.76rem; font-weight:620; margin:0; overflow-wrap:anywhere; }
.onboarding-review > p { align-items:flex-start; background:#edf1eb; border-radius:8px; color:#4b5b50; display:flex; font-size:.68rem; gap:8px; line-height:1.5; margin:0; padding:10px 11px; }
.onboarding-submit:disabled { cursor:wait; opacity:.65; }
.onboarding-success { margin:0 auto; max-width:690px; padding:clamp(90px,14vh,150px) 36px 80px; text-align:center; }
.onboarding-success__icon { align-items:center; background:#e5efe7; border-radius:50%; color:#2d6a4c; display:inline-flex; font-size:1.5rem; height:58px; justify-content:center; margin-bottom:24px; width:58px; }
.onboarding-success h1 { color:#171916; font-size:clamp(2.25rem,3.5vw,3.7rem); font-weight:710; letter-spacing:-.045em; line-height:1.04; margin:0; }
.onboarding-success > p:not(.section-kicker) { color:#737670; font-size:.82rem; line-height:1.65; margin:18px auto 0; max-width:55ch; }
.onboarding-success > div { align-items:center; display:flex; gap:18px; justify-content:center; margin-top:28px; }
.onboarding-success > div > a:last-child { color:#676964; font-size:.72rem; font-weight:650; text-decoration:none; }
.onboarding-success > div > a:last-child:hover { color:#252724; text-decoration:underline; }

.client-state-label { color:#456452; font-size:.75rem; font-weight:700; margin:0 0 1rem; }
.status-block--archived { background:#f4f3ef; border-left:4px solid #76746d; }
.client-notes { border-top:1px solid #dce5dc; margin:2.5rem auto 4rem; max-width:820px; padding:2rem 1rem 0; scroll-margin-top:5rem; }
.client-notes__heading p { color:#627369; font-size:.75rem; margin:0; }
.client-notes__heading h2 { font-size:1.6rem; margin:.15rem 0 1rem; }
.client-notes__list { display:grid; gap:1rem; }
.client-note { background:#f8faf7; border:1px solid #dce5dc; border-radius:10px; overflow-wrap:anywhere; padding:1rem; }
.client-note header { align-items:baseline; display:flex; flex-wrap:wrap; gap:.35rem 1rem; justify-content:space-between; }
.client-note h3 { font-size:1rem; margin:0; }
.client-note header span { color:#627369; font-size:.75rem; }
.client-note__body { margin:.6rem 0; white-space:pre-wrap; }
.client-note__edit { margin-top:.8rem; }
.client-note__edit summary { color:var(--action); cursor:pointer; font-weight:700; min-height:44px; padding:.5rem 0; }
.client-note__edit form,.client-notes__create { display:grid; gap:.7rem; margin-top:.8rem; }
.client-notes label,.agent-save-note-form label { display:grid; gap:.25rem; font-size:.8rem; font-weight:650; }
.client-notes input,.client-notes textarea,.agent-save-note-form input { background:#fff; border:1px solid #aebdb2; border-radius:6px; color:var(--ink); font:inherit; max-width:100%; min-width:0; padding:.55rem; width:100%; }
.client-notes button,.agent-save-note-form button { background:#205f4e; border:1px solid #205f4e; border-radius:6px; color:#fff; cursor:pointer; justify-self:start; min-height:44px; padding:.5rem .8rem; }
.client-notes button:hover,.agent-save-note-form button:hover { background:#174a3d; }
.client-notes .client-note__delete { background:#fff; border-color:#ad5b53; color:#8d2d24; }
.client-notes__create { border-top:1px solid #dce5dc; margin-top:1.5rem; padding-top:1.5rem; }
.client-notes__create h3 { margin:0; }
.agent-save-note-form { display:grid; gap:.45rem; margin-top:.8rem; }
.agent-save-note-form[hidden] { display:none; }
@media (max-width:520px) { .client-notes { margin-top:1.5rem; padding-inline:.75rem; } .client-note { padding:.75rem; } .agent-save-note-form button { width:100%; } }

@media (max-width:900px) {
  .onboarding-workspace { grid-template-columns:190px minmax(0,1fr); }
}

@media (max-width:720px) {
  .onboarding-workspace { display:block; padding:6px; }
  .onboarding-sidebar { align-items:center; background:#f1f1ef; flex-direction:row; height:58px; justify-content:space-between; left:6px; overflow:visible; padding:5px 9px; position:fixed; right:6px; top:6px; z-index:25; }
  .onboarding-sidebar .workspace-primary-nav { margin-left:auto; }
  .onboarding-sidebar .workspace-targets { display:none; }
  .onboarding-sidebar .workspace-sidebar__account { display:none; }
  .onboarding-pane { height:calc(100dvh - 70px); margin-top:64px; }
  .onboarding-toolbar { height:54px; padding:0 13px; }
  .onboarding-chat { padding:24px 20px 32px; }
  .ecb-combobox__options { max-height:clamp(150px,calc(100dvh - 410px),260px); }
  .onboarding-chat__heading h1 { font-size:clamp(2rem,10vw,2.7rem); }
  .onboarding-reply,.onboarding-review { margin-left:0; }
  .onboarding-reply--split { grid-template-columns:1fr; }
  .onboarding-success { padding:72px 24px 60px; }
  .onboarding-success > div { align-items:stretch; flex-direction:column; }
}
