/* Lancloud blue is the interface foundation; results and attention have distinct meanings. */
:root{
 --brand:#0052d9;--brand-hover:#003cab;--ink:rgba(0,0,0,.9);--muted:#64718a;--canvas:#f5f7fc;--paper:#fff;--line:#d9e1ef;--green:var(--brand);--green-soft:#eef4ff;
 --surface-soft:#f0f5ff;--surface-selected:#e8edff;--border-strong:#a6bce6;
 --value-positive:#b52d32;--value-negative:#147451;--value-profit:var(--value-positive);--value-expense:#202124;--value-revenue:#202124;--value-neutral:#202124;
 --value-danger:#147451;--value-warning:#a45300;--status-decision:#a45300;--status-decision-bg:#fff4e5;--status-action:#147451;--status-action-bg:#edf8f1;--status-follow:#0052d9;--status-follow-bg:#f2f3ff;
 --outcome-good:var(--value-positive);--outcome-good-bg:#fff1f0;--outcome-bad:var(--value-negative);--outcome-bad-bg:#edf8f1;--attention:#a45300;--attention-bg:#fff4e5;--attention-border:#efc593;
}
.sw-root{--sw-green:var(--brand);--sw-line:var(--line);--sw-ink:var(--ink);--sw-muted:var(--muted);color:var(--ink)}
html,body{color:var(--ink);background:var(--canvas)}
body>header,.sidebar{background:var(--paper);border-color:var(--line)}
.brand,.brand>span:last-child,.brand-identity b{color:var(--ink)}
.brand-identity small,.demo-label,.sidebar small,.sidebar-foot,.page-meta,.summary,.label,.detail,.owner,.matter-id,.assist{color:var(--muted)}
.nav{color:var(--muted)}
.nav:hover,.quiet:hover{background:var(--surface-soft)}
.nav.active{color:var(--brand);background:var(--surface-selected);box-shadow:inset 3px 0 var(--brand);font-weight:700}
.nav span{background:#d9e1ff;color:var(--brand)}
.nav.product-nav>span{background:transparent;color:inherit}
a,.quiet{color:var(--brand)}
button:focus-visible,a:focus-visible,input:focus-visible,.sw-root button:focus-visible,.sw-root input:focus-visible,.sw-root select:focus-visible,.lhp-phone button:focus-visible,.lhp-web button:focus-visible,.tact-board-kpi:focus-visible,.tact-metric-row button:focus-visible{outline-color:var(--brand)}
/* Shared actions keep one treatment even inside older product-specific views. */
.primary,.choice.primary,button.good,.boss-risk-action .primary,.boss-risk-card.green .boss-risk-action .primary,.lhp-phone .primary,.lhp-phone>.lhp-lead-action .primary{background:var(--brand);color:#fff;box-shadow:none}
.primary:hover,.choice.primary:hover,button.good:hover,.boss-risk-action .primary:hover,.boss-risk-card.green .boss-risk-action .primary:hover,.lhp-phone .primary:hover{background:var(--brand-hover);color:#fff}
.secondary,.close,.intro-dialog .close,.ask-shortcuts button{background:var(--surface-selected);color:var(--brand)}
.secondary:hover{background:#d9e1ff}
.quiet{background:transparent}
input,select,textarea,.sw-root input,.sw-root select,.sw-root textarea,.sm-toolbar input,.sm-toolbar select{background:#fff;color:var(--ink);border-color:var(--line)}
dialog{background:#fff;color:var(--ink);border-color:var(--line);box-shadow:0 20px 90px #0003}
dialog::backdrop{background:#20242a66}
dialog p,dialog li,.intro-layout .intro-note,.intro-note{color:var(--muted)!important}
.framework-nodes>div,.intro-layout .framework-nodes>div,.jarvis-intro .framework-nodes>div,.intro-products span{background:var(--surface-soft);color:var(--muted)}
.framework-nodes>div>span,.intro-layout .framework-nodes>div>span{background:#d9e1ff;color:var(--brand)}
.framework-nodes b,.intro-layout .intro-roles b,.intro-roles b{color:var(--brand)}
.intro-roles,.assist,#speaker,table th,table td{border-color:var(--line)}
/* White cards and restrained ice-blue surfaces keep the business content legible. */
.sw-root .sw-clock{margin-bottom:16px;padding:10px 16px}
.sw-root .sw-page-head{margin-bottom:12px}
.sw-root .sw-page-head h1{margin-bottom:8px}
.sw-root .sw-page-head p:last-child{margin-bottom:8px}
.sw-clock,.sw-facts>div,.sw-option-budget,.sw-discussion,.sw-empty,.sw-avatar,.sw-process-index,.suggestion,.fact,.evidence,.notice,.choice,.sm-policy{background:var(--surface-soft);color:var(--ink)}
.sw-focus p,.suggestion b,.choice small,.sw-legacy-banner span,.sw-clock-past,.sm-kpi p,.sm-kpi>span,.sm-insight p,.sm-cohort-note{color:var(--muted)}
.sw-card,.sw-panel,.sw-focus,.sw-task,.sw-chart,.sw-decision-options>article,.business-panel,.trend-panel,.panel,.insight,.exception-table,.routine-action,.decision-card,.exception-action,.routine-card,.empty,.lhp-web,.vp-kpi,.sm-kpi{background:#fff;border-color:var(--line);box-shadow:none}
.sw-focus,.sw-tone-green,.sw-tone-red,.sw-root .sw-focus,.sw-root .sw-tone-green,.sw-root .sw-tone-red{border-top-color:var(--brand)}
.sw-tone-orange,.sw-tone-yellow,.sw-root .sw-tone-orange,.sw-root .sw-tone-yellow{border-top-color:var(--attention)}
.sw-root .sw-kpi,.sw-kpi.sw-finance-profit,.sw-kpi.sw-finance-expense,.sw-kpi.sw-finance-revenue,.biz-metric,.biz-metric.normal,.biz-metric.attention,.biz-metric.critical,.tact-board-kpi.green,.tact-board-kpi.red,.tact-board-kpi.orange,.vp-kpi.amber{color:var(--ink);background:#fff;border-color:var(--line)}
.sw-root .sw-kpi{background:var(--surface-soft);border-color:#dce4f7}
.sw-root button.sw-kpi:hover,.vp-kpi:hover,.tact-board-kpi:hover{background:var(--surface-soft);border-color:var(--border-strong);box-shadow:none}
.sw-root .sw-kpi.sw-attention-danger,.sw-root .sw-kpi.danger,.biz-metric.critical,.tact-board-kpi.red{border-color:#b1d8c5;background:var(--outcome-bad-bg)}
.sw-root .sw-kpi.sw-attention-warning,.sw-root .sw-kpi.warning,.biz-metric.attention,.tact-board-kpi.orange,.vp-kpi.amber{border-color:var(--attention-border);background:var(--attention-bg)}
.sw-root .sw-kpi small.sw-kpi-gap{color:var(--ink);font-weight:650}
.biz-metric strong,.tact-board-kpi.green strong,.tact-board-kpi.red strong,.tact-board-kpi.orange strong,.tact-stock-trend .section-heading>b{color:var(--ink)}
.sw-root .sw-table th,.vp-customer-table th,.vp-records th,.tact-vehicle-table th,.j-table-wrap th{background:var(--surface-soft);color:var(--brand)}
.sw-root .sw-table th,.sw-root .sw-table td,.vp-customer-table td,.vp-records td,.j-table-wrap td,.j-table-wrap th{border-color:var(--line)}
.sw-table-wrap,.vp-customer-table,.vp-records{border-color:var(--line)}
.sw-quote,.sw-answer{background:var(--surface-soft);color:var(--ink);border-left-color:var(--brand)}
.sw-next,.sw-next-action,.sw-root .sw-next-action,.sw-legacy-banner{background:var(--surface-soft);border-color:var(--line);color:var(--ink)}
.sw-error{background:var(--outcome-bad-bg);border-color:#b1d8c5;color:var(--outcome-bad)}
.sw-event{border-left-color:var(--line)}
.sw-event:before{background:var(--brand)}
.sw-process-step,.sw-process-step.done{background:var(--surface-soft);border-color:var(--line)}
.sw-process-step.active{background:#fff;border-color:var(--brand);box-shadow:0 0 0 1px #d9e1ff}
.sw-app-preview{border-color:#30343a;box-shadow:0 16px 38px #00000012}
.sw-option,.sw-option.selected{background:#fff;border-color:var(--line)}
.sw-option.selected{border-color:var(--brand);background:var(--surface-soft)}
.sw-root .sw-decision-request{border-top:4px solid var(--attention);background:linear-gradient(180deg,#fff7eb 0,#fff 170px)}
.sw-root .sw-decision-request>.sw-section-head .sw-badge{font-size:13px;padding:6px 10px;border:1px solid var(--attention-border)}
.sw-root .sw-deadline{font-weight:650;color:var(--muted)}
.sw-root .sw-overdue .sw-deadline{color:var(--outcome-bad);background:var(--outcome-bad-bg);border-radius:5px;padding:3px 6px}
.sw-root .sw-report-task.sw-overdue{border-left:3px solid var(--outcome-bad);padding-left:12px;background:linear-gradient(90deg,#edf8f1,transparent)}
.sw-root .sw-option-budget{padding:10px 12px;border-radius:8px;font-weight:650}
.sw-root .sw-stats>div>span:not(.sw-value){display:block;font-size:13px;color:var(--sw-muted);margin-top:5px}
/* Class names from older views are not outcome evidence. Unclear legacy tones stay blue. */
.sw-root .sw-badge,.sw-root .sw-pill,.sw-badge,.sw-pill,.j-badge,.tact-status,.tag,.biz-metric em,.lhp-status,.lhp-intent{color:var(--status-follow);background:var(--status-follow-bg);border:1px solid transparent}
.sw-root .sw-badge.green,.sw-root .sw-badge.red,.sw-root .sw-pill.green,.sw-root .sw-pill.red,.sw-badge.green,.sw-badge.red,.sw-pill.green,.sw-pill.red,.j-badge.green,.j-badge.red,.j-badge.neutral,.tact-status.green,.tact-status.red,.tact-status.neutral,.biz-metric.normal em{color:var(--status-follow);background:var(--status-follow-bg);border-color:transparent}
.sw-root .sw-badge.orange,.sw-root .sw-badge.yellow,.sw-root .sw-pill.orange,.sw-root .sw-pill.yellow,.sw-root .sw-pill.warning,.sw-badge.orange,.sw-badge.yellow,.sw-pill.orange,.sw-pill.yellow,.sw-pill.warning,.j-badge.orange,.j-badge.yellow,.tact-status.orange,.tact-status.yellow,.biz-metric.attention em{color:var(--attention);background:var(--attention-bg);border-color:var(--attention-border);font-weight:700}
.sw-root .sw-pill.danger,.sw-pill.danger,.tact-status.danger,.tag.alert,.biz-metric.critical em{color:var(--outcome-bad);background:var(--outcome-bad-bg);border-color:#b1d8c5;font-weight:700}
.sw-root .sw-pill.success,.sw-pill.success,.tag.good{color:var(--outcome-good);background:var(--outcome-good-bg);border-color:#efc3c3}
.sw-root .sw-alert,.sw-root .sw-alert.warning,.tact-risk-pill{background:var(--attention-bg);color:var(--attention);border:1px solid var(--attention-border)}
.sw-root .sw-success,.sw-success{color:var(--outcome-good);font-weight:650}
.sw-root .sw-table .danger:not(.sw-value),.sw-root .sw-table small.danger,.tact-table-alert{color:var(--outcome-bad);font-weight:650}
.j-error,.j-error:not(:empty),.tact-error{color:var(--outcome-bad)!important}
.j-error:not(:empty),.tact-error:not(:empty){background:var(--outcome-bad-bg);border-color:#b1d8c5}
.sw-root .sw-auto-flow span,.sw-root .sw-process-index{color:var(--brand);background:var(--surface-selected)}
/* New UI can state outcome explicitly without inheriting an old color-name meaning. */
.sw-root .sw-outcome-good,.sw-outcome-good{color:var(--outcome-good);background:var(--outcome-good-bg);border-color:#efc3c3}
.sw-root .sw-outcome-bad,.sw-outcome-bad{color:var(--outcome-bad);background:var(--outcome-bad-bg);border-color:#b1d8c5}
.sw-root .sw-outcome-attention,.sw-outcome-attention{color:var(--attention);background:var(--attention-bg);border-color:var(--attention-border)}
/* Selection remains clear through contrast and borders. */
.business-filters [aria-pressed=true],.chart-tabs [aria-pressed=true],.chart-days [aria-pressed=true],.tact-case-tabs button[aria-pressed=true],.tact-photo-selectors [aria-pressed=true],.tact-defect-tabs [aria-pressed=true],.vp-month-picker button.active,.vp-profile-tabs .active,.vp-filter-row .active,.vp-chart-months .active,.jf-case-tabs>button.selected,.jf-decision-choices .selected{background:var(--surface-selected);color:var(--brand);border-color:var(--border-strong);box-shadow:none;font-weight:700}
.sw-role-tabs button[aria-pressed=true],.sw-tabs button[aria-pressed=true],.sw-date-tabs button[aria-pressed=true]{background:var(--brand);color:#fff}
.lhp-web-tabs button[aria-selected=true]{color:var(--brand);border-bottom-color:var(--brand)}
.chart-tabs button,.chart-days button,.tact-photo-selectors button,.tact-defect-tabs button,.jf-case-tabs>button{background:var(--surface-soft);color:var(--muted);border-color:var(--line)}
/* Original scenario detail remains intact, with highlights tied to operating meaning. */
.sp-focus,.sp-focus.green,.sm-insight,.vo-plan{background:#fff;color:var(--ink);border-color:var(--line);border-left-color:var(--brand);border-top-color:var(--brand)}
.sp-focus.orange,.sm-insight.orange,.jf-decision-focus,.vo-plan.amber{background:var(--attention-bg);border-color:var(--attention-border);border-left-color:var(--attention);border-top-color:var(--attention)}
.sm-insight.red,.jw-next-focus.risk,.daily-analysis article.risk{background:var(--outcome-bad-bg);border-color:#b1d8c5;border-top-color:var(--outcome-bad)}
.daily-analysis article.resolved{background:var(--outcome-good-bg);border-color:#efc3c3}
.jf-decision-recommend,.jf-decision-recommend b,.jf-decision-numbers span,.jw-next-focus.risk>p,.j-details>summary,.tact-consult summary,.tact-history-summary>summary{color:var(--muted)}
.sp-result,.in-path .active,.in-gap,.sm-progress span,.sm-progress .done,.tact-history-summary,.tact-report-kpis article,.lhp-source-band,.lhp-context,.lha-hero,.lha-source,.lha-readout,.lh-bridge-band,.lh-bridge-source{background:var(--surface-soft);color:var(--ink);border-color:var(--line);box-shadow:none}
.lha-hero blockquote,.lha-source blockquote,.lha-context summary,.lha-context,.lha-readout p,.lh-bridge-band p,.lh-bridge-source p,.lh-bridge-context p,.lhp-source-band,.lha-progress li.complete,.lhp-feedback{color:var(--ink)}
.lha-value-tags span,.lha-value-list article{background:#fff;color:var(--ink);border-color:var(--line);border-left-color:var(--border-strong)}
.lha-progress li.complete>span,.lha-progress li.current>span{color:var(--brand);background:var(--surface-selected);border-color:var(--border-strong);box-shadow:none}
.lhp-status.followed_up,.lhp-status.skipped{color:var(--status-follow);background:var(--status-follow-bg);border-color:transparent}
.lhp-intent.high{color:var(--outcome-good);background:var(--outcome-good-bg)}.lhp-intent.mid{color:var(--attention);background:var(--attention-bg)}
.lhp-phone{--ap:#0052d9;--apt:#f2f3ff;--at:#202124;--am:#64718a;background:var(--surface-soft);border-color:var(--line);box-shadow:0 18px 45px #00000012}
.lhp-home-metrics>button{background:linear-gradient(135deg,#0052d9,#2671e8);color:#fff}
.lhp-composition>div,.lhp-composition>div+div{background:var(--surface-selected)}
.lhp-dock{border-color:var(--line)}
.lhp-dock button[aria-current=page]{color:var(--brand);background:var(--surface-selected)}
.lhp-dock small{background:var(--brand);color:#fff}
.lhp-skip{color:var(--ink)!important;background:var(--surface-selected)}
.lhp-phone blockquote,.lh-bridge-source blockquote{border-left-color:var(--border-strong)}
/* Absolute volume uses blue; profit/loss remains signed red/green. */
.sw-progress,.sw-bar-track,.sm-funnel i,.vx-bar>i,.vo-funnel-bar>div,.sp-bar-chart,.sp-bar-chart i{background:#e4ebfb}
.sw-progress>span,.sw-progress>i,.sw-bar-track span,.tact-ready-track i,.sm-funnel em,.vx-bar em,.vo-funnel-bar i,.sp-bar-chart em,.sp-bar-chart>div:last-child em,.in-bar-row .revenue{background:var(--brand)}
.sw-funnel>div,.sw-funnel>button{background:var(--surface-soft);border-color:var(--line)}
.sw-root .sw-chart text{fill:var(--muted)}
.sw-chart-grid{stroke:#e0e6f1}.sw-chart-line{stroke:var(--brand)}
.sw-chart.sw-chart-revenue .sw-chart-legend>span:first-child{color:var(--value-neutral)}
.vp-life-legend .life-0{background:#0052d9}.vp-life-legend .life-1{background:#b35c00}.vp-life-legend .life-2{background:#147451}
.sm-volume-key i.visits{background:#0052d9}.sm-volume-key i.orders{background:#91b3f0}
.vp-finance-key>span:first-child i{background:var(--brand)}.vp-finance-key i.profit,.vp-finance-key .profit-positive{background:var(--value-positive)}.vp-finance-key .profit-negative{background:var(--value-negative)}
.daily-status-bar .processing,.daily-status-legend .processing{background:#91b3f0}.daily-status-bar .completed,.daily-status-legend .completed{background:var(--brand)}
.daily-metric.up,.daily-metric.down,.daily-metric.flat{border-top-color:var(--line)}
/* Blue labels guide scanning; main conclusions and absolute large values stay black. */
.sw-eyebrow,.tact-kicker,.story-eyebrow,.sw-root .sw-kpi>span,.sw-facts dt,.sw-section-head>h2,.sw-section-head>div>h2,.sw-section-heading h2,.section-heading h2,.sw-panel>h2,.sw-chart>h2{color:var(--brand)}
.sw-root h1,.sw-focus h3,.sw-root .sw-stats strong,.sw-root .sw-stats b,.sw-root .sw-kpi>strong,.sw-root .sw-kpi>b{color:var(--ink)}
/* Numeric formatting comes last so status never reverses financial direction. */
.sw-root .sw-value,.sw-value{display:inline;font:inherit;font-variant-numeric:tabular-nums;line-height:inherit;margin:0}
.sw-root .sw-money-profit,.sw-money-profit{color:var(--value-positive)}
.sw-root .sw-money-expense,.sw-root .sw-money-revenue,.sw-root .sw-money-neutral,.sw-root .sw-money-change,.sw-money-expense,.sw-money-revenue,.sw-money-neutral,.sw-money-change{color:var(--value-neutral)}
.sw-root .sw-value-warning,.sw-value-warning{color:var(--value-neutral);background:var(--attention-bg);box-shadow:0 0 0 2px var(--attention-bg);border-bottom:1px solid var(--attention-border);border-radius:3px;font-weight:700}
.sw-root .sw-value-danger,.sw-value-danger{color:var(--outcome-bad);background:var(--outcome-bad-bg);box-shadow:0 0 0 2px var(--outcome-bad-bg);border-bottom:1px solid #b1d8c5;border-radius:3px;font-weight:700}
.sw-root .sw-value-pending,.sw-value-pending{color:var(--muted);background:transparent;box-shadow:none;border-bottom:0}
.sw-root .sw-movement-positive,.sw-movement-positive,.sp-numbers .sw-movement-positive,.daily-delta.up{color:var(--value-positive)}
.sw-root .sw-movement-negative,.sw-movement-negative,.sp-numbers .sw-movement-negative,.daily-delta.down{color:var(--value-negative)}
.daily-delta.flat{color:var(--muted)}
.sw-root p .sw-value:not(.sw-money-neutral),.sw-root dd .sw-value:not(.sw-money-neutral){font-weight:700}
.sw-root .sw-kpi>strong.sw-value,.sw-root .sw-kpi>b.sw-value{font-size:29px;line-height:1.25;font-weight:700;display:block}
.sw-root .sw-kpi>strong .sw-value,.sw-root .sw-kpi>b .sw-value{font-size:inherit;display:inline}
.sw-root .sw-table .sw-value{font-variant-numeric:tabular-nums}.sw-root .sw-table td:has(>.sw-value){white-space:nowrap}
.sp-numbers b .sw-value,.sp-numbers strong .sw-value{display:inline;font-size:inherit;margin:0;line-height:inherit}
.sw-value-legend{display:flex;justify-content:flex-end;gap:8px 16px;flex-wrap:wrap;font-size:12px;margin:0 0 12px;color:var(--muted)}
.sw-value-legend>span{display:inline-flex;gap:6px;align-items:center;white-space:nowrap}
.sw-value-legend>span::before{content:'';width:6px;height:6px;background:currentColor;border-radius:50%}
.sw-legend-positive,.sw-legend-profit{color:var(--value-positive)}.sw-legend-negative{color:var(--value-negative)}.sw-legend-attention{color:var(--attention)}
@media(max-width:680px){.sw-value-legend{justify-content:flex-start;margin:0 0 14px;gap:8px 13px}.sw-root .sw-option-budget{font-size:14px}.sw-root .sw-report-task.sw-overdue{padding-left:10px}.sw-root .sw-kpi>strong.sw-value,.sw-root .sw-kpi>b.sw-value{font-size:25px}}

/* Keep the first operating screen compact, with aligned figures and complete units. */
.sw-root .sw-page-head .sw-eyebrow{margin:0 0 8px}
.sw-root .sw-page-head p{margin:0}
.sw-root .sw-dashboard .sw-section-head{align-items:center;margin-bottom:12px}
.sw-root .sw-dashboard .sw-section-head h2{margin:0}
.sw-root .sw-dashboard .sw-kpis{margin:0;gap:10px;align-items:stretch}
.sw-root .sw-dashboard .sw-kpi>small{min-height:36px;line-height:1.5}
.sw-target-part{display:block;white-space:nowrap}
.sw-root .sw-date-tabs{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:6px;margin:14px 0 18px}
.sw-root .sw-date-tabs button{padding:9px 2px;font-size:14px;white-space:nowrap}
.sw-root .sw-report-summary{display:grid;gap:7px;margin:18px 0;padding:18px 20px;background:#fff;border:1px solid var(--line);border-left:3px solid var(--brand);border-radius:12px}
.sw-root .sw-report-summary p,.sw-root .sw-report-summary h2{margin:0}
.sw-root .sw-report-summary>p:last-child{font-size:14px;color:var(--muted)}
@media(max-width:900px){.sw-root .sw-date-tabs{grid-template-columns:repeat(7,minmax(0,1fr))}}
.sw-root .sw-chart .sw-chart-legend>span:first-child{color:#0052d9}
.sw-root .sw-chart .sw-chart-legend>span+span{color:#5575a4}
.sw-chart-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;margin-top:10px}
.sw-chart-days>button{min-width:0;padding:7px 2px;background:#f0f5ff;border:1px solid #e0e9f8;border-radius:6px;text-align:center}
.sw-chart-days>button>span,.sw-chart-days>button>b{display:block;white-space:nowrap;line-height:1.5}
.sw-chart-days>button>span{color:#4268a0;font-size:11px}.sw-chart-days>button>b{color:#182334;font-size:12px;font-weight:650}
.sw-chart-days>button:hover{background:#e4eeff;border-color:#9abbf0}
@media(max-width:680px){.sw-chart-days{grid-template-columns:repeat(7,minmax(56px,1fr));overflow-x:auto;padding-bottom:5px}.sw-root .sw-dashboard .sw-section-head{align-items:flex-start}.sw-target-part{white-space:normal}}
