@font-face { font-family: Geist; src: local("Geist"), local("Geist Sans"); font-weight: 100 900; font-display: swap; }

:root {
	--ground: #f5f5f4;
	--paper: #fafaf9;
	--surface: #ffffff;
	--surface-2: #f7f7f6;
	--ink: #1c1917;
	--muted: #57534e;
	--quiet: #78716c;
	--faint: #a8a29e;
	--line: #e7e5e4;
	--line-strong: #d6d3d1;
	--accent: #6d28d9;
	--accent-soft: #f3e8ff;
	--orange: #c2410c;
	--orange-soft: #fff7ed;
	--green: #3f6212;
	--green-soft: #f0fdf4;
	--red: #b91c1c;
	--red-soft: #fef2f2;
	--amber: #a16207;
	--amber-soft: #fffbeb;
	--blue: #1d4ed8;
	--blue-soft: #eff6ff;
	--sidebar: #1c1917;
	--sidebar-2: #292524;
	--sidebar-text: #d6d3d1;
	--sidebar-muted: #a8a29e;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html, body, #app { min-height: 100%; }
body { margin: 0; background: var(--ground); color: var(--ink); font-family: Geist, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; font-size: 14px; line-height: 1.45; -webkit-font-smoothing: antialiased; }
button, input, select, textarea { font: inherit; }
button, select { cursor: pointer; }
button { color: inherit; }
button:focus-visible, select:focus-visible, input:focus-visible, textarea:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
h1, h2, h3, h4, p { margin: 0; }
.icon { display: block; flex: none; }
.mono, time, .stat strong, .cv-tick, .cv-scale, .cv-pt b, .funnel strong { font-variant-numeric: tabular-nums; font-feature-settings: "tnum"; }

.app-shell { min-height: 100vh; display: flex; }
.sidebar { position: fixed; inset: 0 auto 0 0; z-index: 20; display: flex; width: 228px; flex-direction: column; background: var(--sidebar); color: var(--sidebar-text); }
.brand { display: flex; height: 64px; align-items: center; gap: 11px; padding: 0 18px; border-bottom: 1px solid rgba(255,255,255,.08); }
.brand-mark { width: 5px; height: 30px; background: linear-gradient(180deg, oklch(.64 .205 35), oklch(.52 .155 325)); }
.brand div { display: flex; flex-direction: column; line-height: 1.2; }
.brand strong { color: #fafaf9; font-size: 15px; font-weight: 650; letter-spacing: -.01em; }
.brand span:last-child { color: var(--sidebar-muted); font-size: 11px; }
.workspace-switch { display: grid; grid-template-columns: 30px 1fr auto; gap: 9px; align-items: center; margin: 12px 10px 4px; padding: 9px; border: 1px solid rgba(255,255,255,.09); background: rgba(255,255,255,.035); }
.workspace-switch .workspace-icon { display: grid; width: 30px; height: 30px; place-items: center; background: #44403c; color: #fafaf9; font-weight: 700; }
.workspace-switch div:nth-child(2) { min-width: 0; display: flex; flex-direction: column; }
.workspace-switch strong, .workspace-switch span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.workspace-switch strong { color: #f5f5f4; font-size: 12px; font-weight: 600; }
.workspace-switch span { color: var(--sidebar-muted); font-size: 10px; }
.workspace-switch svg { color: var(--sidebar-muted); }
.nav { flex: 1; overflow-y: auto; padding: 10px 9px; }
.nav-group { margin-bottom: 19px; }
.nav-group > p { margin: 0 9px 6px; color: #78716c; font-size: 9px; font-weight: 650; letter-spacing: .12em; text-transform: uppercase; }
.nav-item { display: flex; width: 100%; align-items: center; gap: 10px; padding: 8px 10px; border: 0; background: transparent; color: var(--sidebar-muted); text-align: left; font-size: 12px; font-weight: 500; transition: 140ms ease-out; }
.nav-item:hover { background: rgba(255,255,255,.05); color: #f5f5f4; }
.nav-item.active { background: #35302d; color: #fafaf9; }
.nav-item.active svg { color: #d8b4fe; }
.nav-item span { flex: 1; }
.nav-item em { min-width: 21px; padding: 1px 6px; background: #44403c; color: #d6d3d1; font-size: 10px; font-style: normal; text-align: center; }
.sidebar-foot { padding: 8px 9px 12px; border-top: 1px solid rgba(255,255,255,.08); }
.account { display: flex; align-items: center; gap: 9px; padding: 10px; }
.account > span { display: grid; width: 30px; height: 30px; place-items: center; background: #44403c; color: #fafaf9; font-size: 10px; font-weight: 650; }
.account div { min-width: 0; display: flex; flex-direction: column; }
.account strong { overflow: hidden; color: #f5f5f4; font-size: 11px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.account small { color: #78716c; font-size: 9px; }

.main-shell { min-width: 0; min-height: 100vh; flex: 1; margin-left: 228px; display: flex; flex-direction: column; }
.content-shell { flex: 1; }
.header { display: flex; min-height: 65px; align-items: center; justify-content: space-between; gap: 20px; padding: 10px 24px; border-bottom: 1px solid var(--line); background: rgba(250,250,249,.96); }
.page-heading h1 { font-size: 17px; font-weight: 650; letter-spacing: -.015em; }
.page-heading p { margin-top: 1px; color: var(--quiet); font-size: 11px; }
.header-actions { display: flex; align-items: center; gap: 9px; }
.searchbox { display: flex; width: 270px; height: 34px; align-items: center; gap: 8px; padding: 0 9px; border: 1px solid var(--line); background: var(--surface); color: var(--faint); text-align: left; }
.searchbox > span { min-width: 0; flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
.searchbox input { min-width: 0; flex: 1; border: 0; outline: 0; background: transparent; color: var(--ink); font-size: 11px; }
.searchbox input::placeholder { color: var(--faint); }
.system-design-button { display: inline-flex; height: 34px; align-items: center; gap: 7px; padding: 0 10px; border: 1px solid var(--ink); background: var(--ink); color: var(--paper); font-size: 10px; font-weight: 650; }
.system-design-button:hover { background: #35302d; }
kbd { padding: 1px 4px; border: 1px solid var(--line); background: var(--surface-2); color: var(--quiet); font: 9px ui-monospace, monospace; }
.icon-button { position: relative; display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid var(--line); background: var(--surface); }
.icon-button:hover { border-color: var(--line-strong); background: var(--surface-2); }
.icon-button > span { position: absolute; top: 7px; right: 7px; width: 5px; height: 5px; border: 1px solid var(--surface); border-radius: 50%; background: var(--orange); }
.icon-button.small { width: 28px; height: 28px; }
.role-preview { display: flex; height: 34px; align-items: center; gap: 7px; padding-left: 9px; border: 1px solid var(--line); background: var(--surface); color: var(--quiet); font-size: 10px; }
.role-preview select { height: 32px; padding: 0 25px 0 2px; border: 0; outline: 0; background: transparent; color: var(--ink); font-size: 11px; font-weight: 600; }
.content-shell { min-height: calc(100vh - 65px); }
.page { max-width: 1480px; margin: 0 auto; padding: 24px; }

.eyebrow { color: var(--quiet); font-size: 9.5px; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.primary, .secondary, .text-button { display: inline-flex; min-height: 34px; align-items: center; justify-content: center; gap: 8px; padding: 7px 12px; border: 1px solid var(--ink); font-size: 11px; font-weight: 650; transition: 140ms ease-out; }
.primary { background: var(--ink); color: var(--paper); }
.primary:hover { background: #35302d; }
.secondary { border-color: var(--line-strong); background: var(--surface); }
.secondary:hover { border-color: var(--ink); }
.text-button { min-height: 0; padding: 0; border: 0; background: none; color: var(--muted); text-decoration: underline; text-decoration-color: #d6d3d1; text-underline-offset: 3px; }
.full { width: 100%; }
.button-row { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.badge { display: inline-flex; align-items: center; padding: 3px 7px; background: var(--surface-2); color: var(--muted); font-size: 9px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; white-space: nowrap; }
.badge-critical { background: var(--red-soft); color: var(--red); }
.badge-moderate, .badge-warning { background: var(--amber-soft); color: var(--amber); }
.badge-unknown, .badge-quiet { background: #f5f5f4; color: var(--quiet); }
.badge-sensitive { background: var(--accent-soft); color: var(--accent); }
.badge-success { background: var(--green-soft); color: var(--green); }
.badge-info { background: var(--blue-soft); color: var(--blue); }
.panel { min-width: 0; border: 1px solid var(--line); background: var(--surface); }
.panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; padding: 16px 18px; border-bottom: 1px solid var(--line); }
.panel-head h3 { margin-top: 2px; font-size: 15px; font-weight: 650; letter-spacing: -.01em; }
.panel-head > span { color: var(--quiet); font-size: 10px; }

.welcome { display: flex; align-items: flex-end; justify-content: space-between; gap: 24px; margin-bottom: 20px; }
.welcome h2 { margin-top: 4px; font-size: 26px; font-weight: 600; letter-spacing: -.035em; }
.welcome p:last-child { margin-top: 4px; color: var(--muted); font-size: 12px; }
.stat-row { display: grid; grid-template-columns: repeat(4, 1fr); margin-bottom: 18px; border: 1px solid var(--line); background: var(--surface); }
.stat { display: flex; min-width: 0; flex-direction: column; padding: 16px 18px; border-right: 1px solid var(--line); }
.stat:last-child { border-right: 0; }
.stat > span { color: var(--quiet); font-size: 9px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.stat strong { margin: 5px 0 1px; font-size: 24px; font-weight: 620; letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.stat small { color: var(--quiet); font-size: 10px; }
.stat.critical strong { color: var(--red); }
.command-grid { display: grid; grid-template-columns: 1.12fr .88fr; gap: 16px; }
.priority-panel { border-color: var(--line-strong); }
.priority-body { display: flex; gap: 13px; padding: 17px 18px; }
.priority-body > div:nth-child(2) { min-width: 0; }
.priority-body strong { font-size: 13px; }
.priority-body p { margin-top: 4px; color: var(--muted); font-size: 11px; }
.member-avatar { display: grid; width: 30px; height: 30px; flex: none; place-items: center; background: #f0eeeb; color: var(--muted); font-size: 9px; font-weight: 700; }
.member-avatar.large { width: 42px; height: 42px; font-size: 11px; }
.member-avatar.xl { width: 50px; height: 50px; background: #292524; color: #fafaf9; font-size: 12px; }
.inline-meta { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 8px; color: var(--quiet); font-size: 9.5px; }
.inline-meta span + span { padding-left: 10px; border-left: 1px solid var(--line); }
.priority-action { margin: 0 18px 18px; padding: 14px; background: var(--surface-2); }
.priority-action > span { color: var(--quiet); font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.priority-action p { margin: 4px 0 11px; font-size: 12px; font-weight: 560; }
.mini-strata { padding: 8px 18px 14px; }
.mini-strata > div { display: grid; grid-template-columns: minmax(145px, 1fr) 25px 1fr 62px; gap: 9px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--line); }
.mini-strata > div:last-child { border-bottom: 0; }
.mini-strata span { display: flex; align-items: center; gap: 7px; color: var(--muted); font-size: 10px; }
.mini-strata b, .mini-strata em { font-size: 10px; font-style: normal; font-variant-numeric: tabular-nums; }
.mini-strata em { color: var(--quiet); text-align: right; }
.risk-dot { display: inline-block; width: 6px; height: 6px; background: var(--faint); border-radius: 50%; }
.risk-dot.critical { background: var(--red); }
.risk-dot.warning { background: var(--amber); }
.risk-dot.stable { background: var(--green); }
.risk-dot.quiet { background: var(--faint); }
.bar { height: 6px; overflow: hidden; background: #eeece9; }
.bar i { display: block; height: 100%; background: var(--ink); }
.worklist > button { display: grid; width: 100%; grid-template-columns: auto minmax(0,1fr) auto auto; gap: 10px; align-items: center; padding: 10px 18px; border: 0; border-bottom: 1px solid var(--line); background: transparent; text-align: left; }
.worklist > button:hover { background: var(--surface-2); }
.worklist > button:last-child { border-bottom: 0; }
.worklist > button span:nth-child(2) { min-width: 0; display: flex; flex-direction: column; }
.worklist strong { font-size: 11px; }
.worklist small { overflow: hidden; color: var(--quiet); font-size: 9.5px; text-overflow: ellipsis; white-space: nowrap; }
.activity { padding-bottom: 8px; }
.healthy { display: flex; align-items: center; gap: 6px; color: var(--green); font-size: 9.5px; }
.healthy i { width: 6px; height: 6px; border-radius: 50%; background: #65a30d; }
.activity-row { display: grid; grid-template-columns: 48px 8px 1fr; gap: 9px; align-items: start; padding: 8px 18px; }
.activity-row > span { color: var(--quiet); font: 9px ui-monospace, monospace; }
.activity-row > i { width: 6px; height: 6px; margin-top: 3px; border: 2px solid var(--line-strong); border-radius: 50%; background: var(--surface); }
.activity-row div { display: flex; min-width: 0; flex-direction: column; }
.activity-row strong { font-size: 10.5px; font-weight: 600; }
.activity-row small { color: var(--quiet); font-size: 9px; }

.toolbar, .page-actions, .journey-header { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 18px; }
.segmented { display: flex; border: 1px solid var(--line); background: var(--surface); }
.segmented button { padding: 8px 12px; border: 0; border-right: 1px solid var(--line); background: transparent; color: var(--quiet); font-size: 10px; font-weight: 600; }
.segmented button:last-child { border-right: 0; }
.segmented button.active { background: var(--ink); color: var(--paper); }
.toolbar-meta { display: flex; align-items: center; gap: 12px; color: var(--quiet); font-size: 9.5px; }
.population-hero { display: grid; grid-template-columns: 1fr 150px; gap: 28px; align-items: center; margin-bottom: 18px; padding: 25px 28px; background: var(--ink); color: var(--paper); }
.population-hero h2 { margin: 6px 0; font-size: 25px; font-weight: 550; letter-spacing: -.03em; }
.population-hero p:last-child { color: #d6d3d1; font-size: 11px; }
.population-hero .eyebrow { color: #a8a29e; }
.concentration-chart { display: flex; min-width: 178px; flex-direction: column; gap: 13px; padding: 14px 15px; border: 1px solid #44403c; background: #292524; box-shadow: 0 10px 26px rgba(0,0,0,.16); }
.concentration-chart > div { display: grid; grid-template-columns: 1fr auto; gap: 5px 12px; align-items: baseline; }
.concentration-chart span { color: #a8a29e; font-size: 9px; font-weight: 650; letter-spacing: .06em; text-transform: uppercase; }
.concentration-chart strong { color: #e7e5e4; font-size: 15px; font-weight: 680; font-variant-numeric: tabular-nums; }
.concentration-chart i { grid-column: 1/-1; display: block; height: 7px; overflow: hidden; background: #44403c; }
.concentration-chart b { display: block; min-width: 3px; height: 100%; background: #a8a29e; box-shadow: 0 0 12px rgba(216,180,254,.25); }
.concentration-chart .spend b { background: linear-gradient(90deg, #a78bfa, #d8b4fe); box-shadow: 0 0 14px rgba(216,180,254,.35); }
.concentration-chart .spend strong { color: #d8b4fe; }
.table-panel { overflow-x: auto; }
.data-table { width: 100%; border-collapse: collapse; }
.data-table th { padding: 9px 12px; border-bottom: 1px solid var(--line); background: var(--surface-2); color: var(--quiet); font-size: 8.5px; font-weight: 700; letter-spacing: .07em; text-align: left; text-transform: uppercase; white-space: nowrap; }
.data-table td { padding: 11px 12px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 10.5px; vertical-align: middle; }
.data-table tr:last-child td { border-bottom: 0; }
.data-table tbody tr:hover { background: #fafaf9; }
.data-table tbody tr.selected { background: #fafaf9; }
.data-table td strong { color: var(--ink); font-weight: 600; }
.data-table td small { display: block; color: var(--quiet); font-size: 9px; }
.stratum-name { display: flex; align-items: center; gap: 8px; min-width: 145px; }
.table-bar { display: inline-block; width: 75px; height: 7px; margin-right: 7px; background: #eeece9; vertical-align: middle; }
.table-bar i { display: block; height: 100%; background: var(--ink); }
.trend { font-variant-numeric: tabular-nums; font-weight: 600; }
.trend.unfavorable { color: var(--red); }
.trend.favorable { color: var(--green); }
.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 16px; }
.driver-list, .coverage-list { padding: 10px 18px 16px; }
.driver-list > div { display: grid; grid-template-columns: 1fr 24px 1fr; gap: 8px; align-items: center; padding: 8px 0; }
.driver-list span, .driver-list b { font-size: 10.5px; }
.driver-list b { font-variant-numeric: tabular-nums; }
.coverage-list > div { display: flex; justify-content: space-between; padding: 9px 0; border-bottom: 1px solid var(--line); font-size: 10.5px; }
.coverage-list > div:last-child { border-bottom: 0; }
.coverage-list span { color: var(--muted); }
.coverage-list .warning { color: var(--amber); }

.opportunity-workspace { display: grid; height: calc(100vh - 65px); grid-template-columns: 330px minmax(0, 1fr); overflow: hidden; }
.queue-pane { display: flex; min-width: 0; flex-direction: column; border-right: 1px solid var(--line); background: var(--paper); }
.queue-tools { display: flex; min-height: 58px; align-items: center; justify-content: space-between; gap: 10px; padding: 10px 14px; border-bottom: 1px solid var(--line); }
.queue-tools h2 { font-size: 13px; font-weight: 650; }
.queue-tools span { color: var(--quiet); font-size: 9px; }
.queue-tools div { display: flex; flex-direction: column; }
.queue-tools select, .journey-header select { padding: 6px 23px 6px 8px; border: 1px solid var(--line); background: var(--surface); color: var(--muted); font-size: 9.5px; }
.queue-list { min-height: 0; flex: 1; overflow-y: auto; }
.queue-row { display: block; width: 100%; padding: 13px 14px; border: 0; border-bottom: 1px solid var(--line); background: transparent; text-align: left; }
.queue-row:hover { background: var(--surface); }
.queue-row.active { box-shadow: inset 3px 0 var(--ink); background: var(--surface); }
.queue-row-top { display: grid; grid-template-columns: auto minmax(0,1fr) auto; gap: 9px; align-items: center; }
.queue-row-top > div { min-width: 0; display: flex; flex-direction: column; }
.queue-row-top strong { font-size: 10.5px; }
.queue-row-top small { overflow: hidden; color: var(--quiet); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.queue-row > p { margin: 8px 0; color: var(--muted); font-size: 10px; line-height: 1.35; }
.queue-row-foot { display: flex; align-items: center; justify-content: space-between; }
.queue-row-foot > span:last-child { color: var(--green); font-size: 9px; font-weight: 650; }
.member-pane { min-width: 0; overflow-y: auto; background: var(--surface); }
.member-head { display: flex; min-height: 90px; align-items: center; justify-content: space-between; gap: 20px; padding: 17px 22px; }
.member-identity { display: flex; align-items: center; gap: 13px; }
.member-identity h2 { font-size: 20px; font-weight: 620; letter-spacing: -.025em; }
.member-identity p { color: var(--quiet); font-size: 10px; }
.member-badges { display: flex; gap: 6px; }
.subtabs { display: flex; height: 39px; align-items: stretch; padding: 0 22px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.subtabs button { padding: 0 13px; border: 0; border-bottom: 2px solid transparent; background: transparent; color: var(--quiet); font-size: 10px; font-weight: 600; }
.subtabs button.active { border-color: var(--ink); color: var(--ink); }
.subtabs span { padding: 1px 5px; background: var(--surface-2); font-size: 8px; }
.member-grid { display: grid; grid-template-columns: minmax(0,1fr) 310px; }
.member-main { min-width: 0; padding: 2px 22px 30px; border-right: 1px solid var(--line); }
.section-block { padding: 20px 0; border-bottom: 1px solid var(--line); }
.section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 10px; }
.section-head h3 { font-size: 12px; font-weight: 650; }
.section-head > span { color: var(--quiet); font-size: 9px; }
.opportunity-callout { display: grid; grid-template-columns: minmax(0,1fr) 205px; border: 1px solid var(--line); }
.opportunity-callout > div { padding: 14px; }
.opportunity-callout > div:first-child { border-right: 1px solid var(--line); }
.opportunity-callout span, .rationale span, .value-hypothesis span { color: var(--quiet); font-size: 8.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .07em; }
.opportunity-callout h4 { margin: 5px 0; font-size: 14px; }
.opportunity-callout p { color: var(--muted); font-size: 10.5px; }
.value-hypothesis { display: flex; flex-direction: column; background: var(--surface-2); }
.value-hypothesis strong { margin: 8px 0 3px; color: var(--green); font-size: 20px; font-weight: 620; }
.value-hypothesis small { color: var(--quiet); font-size: 8.5px; }
.evidence-table { border: 1px solid var(--line); }
.evidence-table > div { display: grid; grid-template-columns: auto minmax(0,1fr) 70px auto; gap: 10px; align-items: center; padding: 9px 10px; border-bottom: 1px solid var(--line); }
.evidence-table > div:last-child { border-bottom: 0; }
.source-icon { display: grid; width: 25px; height: 25px; place-items: center; background: var(--surface-2); color: var(--muted); font-size: 9px; font-weight: 700; }
.evidence-table > div > div { min-width: 0; display: flex; flex-direction: column; }
.evidence-table strong { font-size: 10px; font-weight: 550; }
.evidence-table small, .evidence-table > div > span:nth-child(3) { color: var(--quiet); font-size: 8.5px; }
.evidence-gap { display: flex; gap: 9px; margin-top: 8px; padding: 10px; background: var(--amber-soft); color: var(--amber); }
.evidence-gap strong { font-size: 10px; }
.evidence-gap p { font-size: 9px; }
.benefit-row { display: flex; align-items: center; gap: 11px; padding: 11px; background: var(--green-soft); color: var(--green); }
.benefit-icon { display: grid; width: 32px; height: 32px; flex: none; place-items: center; border: 1px solid #bbd8a8; font-size: 9px; font-weight: 700; }
.benefit-row p { font-size: 10.5px; }
.decision-pane { padding: 18px; background: #fafaf9; }
.decision-card, .member-facts { padding: 15px; border: 1px solid var(--line); background: var(--surface); }
.decision-card { border-top: 3px solid var(--ink); }
.decision-card .recommendation { margin: 8px 0 12px; font-size: 13px; font-weight: 610; line-height: 1.38; }
.rationale { padding: 10px; background: var(--surface-2); }
.rationale p { margin-top: 4px; color: var(--muted); font-size: 9.5px; }
.decision-policy { display: flex; gap: 8px; align-items: flex-start; margin: 10px 0; padding: 9px; background: var(--blue-soft); color: var(--blue); font-size: 9px; }
.decision-card > button, .decision-card > .button-row { margin-top: 8px; }
.decision-complete { display: flex; gap: 9px; margin: 10px 0; padding: 10px; background: var(--green-soft); color: var(--green); }
.decision-complete div { display: flex; flex-direction: column; }
.decision-complete strong { font-size: 10.5px; }
.decision-complete span { font-size: 8.5px; }
.member-facts { margin-top: 12px; }
.member-facts h3 { margin-bottom: 8px; font-size: 11px; }
.member-facts dl, .compact-dl { margin: 0; }
.member-facts dl div, .compact-dl div { display: grid; grid-template-columns: 95px 1fr; gap: 8px; padding: 7px 0; border-bottom: 1px solid var(--line); }
.member-facts dl div:last-child, .compact-dl div:last-child { border-bottom: 0; }
dt { color: var(--quiet); font-size: 9px; }
dd { margin: 0; color: var(--muted); font-size: 9.5px; }

.journey-header { padding: 2px 0 14px; border-bottom: 1px solid var(--line); }
.heading-line { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.journey-header h2, .page-actions h2 { margin-top: 3px; font-size: 23px; font-weight: 610; letter-spacing: -.03em; }
.journey-header p:last-child, .page-actions p:last-child { color: var(--quiet); font-size: 10px; }
.journey-header label { display: flex; align-items: center; gap: 8px; color: var(--quiet); font-size: 9px; }
.journey-layout { display: grid; grid-template-columns: minmax(0,1fr) 330px; gap: 16px; }
.journey-layout aside { display: flex; flex-direction: column; gap: 16px; }
.care-thread-strip { display: flex; flex-wrap: wrap; align-items: center; gap: 7px; margin-bottom: 14px; padding: 9px 11px; border: 1px solid var(--line); background: var(--surface); }
.care-thread-strip > span { margin-right: 4px; color: var(--quiet); font-size: 8.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.care-thread-strip strong { padding: 4px 7px; background: var(--surface-2); color: var(--muted); font-size: 9px; font-weight: 600; }
.care-thread-strip strong.active { background: var(--accent-soft); color: var(--accent); }
.touchpoint-timeline { padding: 10px 20px 3px; }
.touchpoint { display: grid; grid-template-columns: 54px 28px 1fr; gap: 9px; min-height: 72px; }
.touchpoint time { padding-top: 5px; color: var(--quiet); font: 8.5px ui-monospace, monospace; text-align: right; }
.touchpoint-mark { position: relative; z-index: 1; display: grid; width: 26px; height: 26px; place-items: center; border: 1px solid var(--line-strong); background: var(--surface); color: var(--muted); }
.touchpoint:not(:last-child) .touchpoint-mark::after { position: absolute; top: 25px; left: 12px; z-index: -1; width: 1px; height: 46px; background: var(--line); content: ""; }
.touchpoint.agent .touchpoint-mark { border-color: #c4b5fd; background: var(--accent-soft); color: var(--accent); }
.touchpoint.human .touchpoint-mark { border-color: #bbd8a8; background: var(--green-soft); color: var(--green); }
.touchpoint.member .touchpoint-mark { border-color: #bfdbfe; background: var(--blue-soft); color: var(--blue); }
.touchpoint.waiting .touchpoint-mark { background: var(--surface-2); color: var(--quiet); }
.touchpoint > div { padding-top: 1px; }
.touchpoint small { display: block; color: var(--quiet); font-size: 8.5px; }
.touchpoint strong { display: block; margin: 1px 0; font-size: 10.5px; }
.touchpoint p { color: var(--muted); font-size: 9px; }
.timeline { padding: 16px 20px 4px; }
.timeline-step { display: grid; grid-template-columns: 52px 14px 1fr; gap: 10px; min-height: 74px; }
.timeline-step > span { padding-top: 1px; color: var(--quiet); font: 9px ui-monospace, monospace; text-align: right; }
.timeline-step > i { position: relative; width: 9px; height: 9px; border: 2px solid var(--line-strong); border-radius: 50%; background: var(--surface); }
.timeline-step > i::after { position: absolute; top: 8px; left: 2px; width: 1px; height: 65px; background: var(--line); content: ""; }
.timeline-step:last-child > i::after { display: none; }
.timeline-step.done > i { border-color: var(--green); background: var(--green); }
.timeline-step.active > i { border-color: var(--accent); box-shadow: 0 0 0 3px var(--accent-soft); }
.timeline-step.next > i { border-color: var(--ink); }
.timeline-step strong { font-size: 11px; }
.timeline-step p { margin-top: 2px; color: var(--quiet); font-size: 9.5px; }
.journey-future { margin: 8px 20px 20px; padding: 14px; background: var(--surface-2); }
.future-steps { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; margin-top: 10px; background: var(--line); }
.future-steps div { display: flex; min-height: 75px; flex-direction: column; gap: 7px; padding: 10px; background: var(--surface); color: var(--muted); font-size: 9px; }
.future-steps div.active { box-shadow: inset 0 3px var(--accent); color: var(--accent); }
.future-steps div.complete { background: var(--green-soft); color: var(--green); }
.member-preview { padding: 17px; border-top: 3px solid var(--accent); }
.member-preview h3 { margin: 5px 0; font-size: 13px; }
.member-preview p { color: var(--muted); font-size: 10px; }
.sms-card { padding: 15px; border-top: 3px solid var(--accent); }
.sms-head, .sms-head > div { display: flex; align-items: center; justify-content: space-between; gap: 9px; }
.sms-head > div > span { display: flex; flex-direction: column; }
.sms-head strong { font-size: 10.5px; }
.sms-head small { color: var(--quiet); font-size: 8px; }
.sms-thread { display: flex; flex-direction: column; gap: 8px; margin: 13px 0; padding: 12px; background: #f3f4f6; }
.sms-bubble { max-width: 88%; padding: 9px 10px; border-radius: 10px; background: var(--surface); box-shadow: 0 1px 2px rgba(0,0,0,.05); }
.sms-bubble.outbound { align-self: flex-end; border-bottom-right-radius: 2px; background: #e0e7ff; }
.sms-bubble.inbound { align-self: flex-start; border-bottom-left-radius: 2px; }
.sms-bubble span { display: block; margin-bottom: 3px; color: var(--quiet); font-size: 7.5px; }
.sms-bubble p { color: var(--ink); font-size: 9.5px; }
.sms-system { padding: 6px; color: var(--green); font-size: 8px; text-align: center; }
.sms-policy { display: flex; align-items: center; gap: 5px; color: var(--quiet); font-size: 8px; }
.next-action { padding: 17px; border-top: 3px solid var(--ink); }
.next-action h3 { margin: 5px 0 7px; font-size: 15px; }
.next-action p { margin-bottom: 12px; color: var(--muted); font-size: 10px; }
.journey-layout aside .panel:not(.next-action) { padding: 17px; }
.program-definition { margin: 0; padding: 10px 18px 16px; }
.program-definition div { display: grid; grid-template-columns: 100px 1fr; gap: 12px; padding: 9px 0; border-bottom: 1px solid var(--line); }
.program-definition div:last-child { border-bottom: 0; }
.program-definition dt { font-weight: 650; }
.program-definition dd { font-size: 10px; }

.employer-home .welcome { align-items: center; padding: 20px; border: 1px solid var(--line); background: var(--surface); }
.boundary-list { padding: 10px 18px 18px; }
.boundary-list > div { display: flex; gap: 9px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--line); font-size: 10px; }
.boundary-list > div:last-child { border-bottom: 0; }
.boundary-list .yes { color: var(--green); }
.boundary-list .no { color: var(--red); font-size: 13px; }
.boundary-list span { color: var(--muted); font-size: 10px; }
.outcome-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 16px; }
.outcome-wide { grid-column: 1/-1; }
.funnel { position: relative; padding: 14px 18px 18px; }
.funnel::before { position: absolute; top: 29px; bottom: 33px; left: 28px; width: 1px; background: var(--line-strong); content: ""; }
.funnel-step { position: relative; display: grid; grid-template-columns: 22px 132px minmax(80px,1fr) 38px; gap: 9px; align-items: center; min-height: 31px; }
.funnel-node { z-index: 1; display: grid; width: 19px; height: 19px; place-items: center; border: 1px solid var(--line-strong); border-radius: 50%; background: var(--surface); color: var(--quiet); font-size: 7.5px; font-weight: 750; font-variant-numeric: tabular-nums; }
.funnel-step:first-child .funnel-node { border-color: var(--ink); background: var(--ink); color: var(--paper); }
.funnel-step:last-child .funnel-node { border-color: var(--green); background: var(--green-soft); color: var(--green); box-shadow: 0 0 0 3px rgba(63,98,18,.08); }
.funnel-label { color: var(--muted); font-size: 9.5px; }
.funnel-track { position: relative; height: 8px; background: #eeece9; }
.funnel-track i { display: block; height: 100%; background: linear-gradient(90deg, #44403c, var(--ink)); }
.funnel-track b { position: absolute; top: 50%; width: 8px; height: 8px; transform: translate(-50%,-50%) rotate(45deg); border: 2px solid var(--surface); background: var(--ink); box-shadow: 0 0 0 1px var(--ink); }
.funnel-step:last-child .funnel-track i { background: linear-gradient(90deg, #65a30d, var(--green)); }
.funnel-step:last-child .funnel-track b { background: var(--green); box-shadow: 0 0 0 1px var(--green); }
.funnel strong { color: var(--ink); font: 10px ui-monospace, monospace; text-align: right; }
.ledgers { padding: 10px 18px 18px; }
.ledgers > div { display: grid; grid-template-columns: 70px 120px 1fr; gap: 10px; padding: 11px 0; border-bottom: 1px solid var(--line); }
.ledgers > div:last-child { border-bottom: 0; }
.ledgers span { color: var(--quiet); font-size: 9px; font-weight: 700; text-transform: uppercase; }
.ledgers strong { font-size: 10.5px; }
.ledgers p { color: var(--muted); font-size: 9.5px; }
.governance-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 16px; }
.audit-panel { grid-column: 1/-1; }
.data-table.compact td { padding: 8px 10px; font-size: 9.5px; }
.data-table.compact th { padding: 8px 10px; font-size: 8px; }
.model-panel .compact-dl { padding: 8px 17px; }
.model-panel .compact-dl div { grid-template-columns: 90px 1fr; }
.model-effect-policy { display: grid; grid-template-columns: 1fr 1fr; margin: 3px 17px 17px; background: var(--blue-soft); }
.model-effect-policy div { padding: 10px; }
.model-effect-policy dt { color: var(--blue); font-weight: 700; text-transform: uppercase; }
.model-effect-policy dd { margin-top: 2px; color: var(--blue); }

.modal-backdrop { position: fixed; inset: 0; z-index: 100; display: grid; place-items: center; padding: 24px; background: rgba(28,25,23,.7); }
.brief-backdrop { overflow-y: auto; place-items: start center; }
.brief-sheet { position: relative; width: min(920px,100%); margin: 12px 0; background: #fff; box-shadow: 0 20px 70px rgba(0,0,0,.28); }
.brief-sheet > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 26px 30px 20px; border-bottom: 2px solid var(--ink); }
.brief-sheet h2 { margin: 5px 0 2px; font-size: 22px; font-weight: 600; letter-spacing: -.025em; }
.brief-sheet header p:last-child { color: var(--quiet); font-size: 9px; }
.brief-boundary { display: flex; align-items: center; gap: 8px; margin: 16px 30px 0; padding: 9px 11px; background: var(--blue-soft); color: var(--blue); font-size: 9px; }
.brief-grid { display: grid; grid-template-columns: 1fr 1fr; padding: 12px 30px 20px; }
.brief-grid section { min-height: 155px; padding: 18px 22px 16px 0; border-bottom: 1px solid var(--line); }
.brief-grid section:nth-child(odd) { border-right: 1px solid var(--line); }
.brief-grid section:nth-child(even) { padding-left: 22px; }
.brief-grid h3 { margin: 5px 0; font-size: 14px; }
.brief-grid ul, .brief-grid ol { margin: 7px 0 0; padding-left: 17px; color: var(--muted); font-size: 10px; }
.brief-grid li { margin: 5px 0; }
.brief-grid cite { color: var(--blue); font-style: normal; font-weight: 700; }
.brief-sheet > footer { display: flex; align-items: flex-end; justify-content: space-between; gap: 22px; padding: 17px 30px 25px; background: var(--surface-2); }
.brief-sheet footer ol { margin: 7px 0 0; padding: 0; color: var(--quiet); font-size: 8.5px; list-style: none; }
.brief-sheet footer li { margin: 3px 0; }
.brief-sheet footer .primary { flex: none; }

.modal { position: relative; width: min(720px, 100%); padding: 28px; background: var(--paper); box-shadow: 0 20px 70px rgba(0,0,0,.28); }
.modal-close { position: absolute; top: 13px; right: 15px; border: 0; background: none; color: var(--quiet); font-size: 22px; }
.modal h2 { margin: 5px 0 20px; font-size: 25px; font-weight: 580; letter-spacing: -.03em; }
.truth-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; border: 1px solid var(--line); background: var(--line); }
.truth-grid > div { padding: 18px; background: var(--surface); }
.truth-mark { display: grid; width: 32px; height: 32px; place-items: center; margin-bottom: 13px; }
.truth-mark.real { background: var(--green-soft); color: var(--green); }
.truth-mark.designed { background: var(--blue-soft); color: var(--blue); }
.truth-grid h3 { font-size: 13px; }
.truth-grid ul { margin: 10px 0 0; padding-left: 17px; color: var(--muted); font-size: 10px; }
.truth-grid li { margin: 5px 0; }
.modal-note { margin: 15px 0; padding: 11px; background: var(--surface-2); color: var(--muted); font-size: 10px; }
.lens-drawer { position: fixed; inset: 0 0 0 auto; z-index: 80; display: flex; width: min(660px, 100vw); flex-direction: column; background: #1c1917; color: #f5f5f4; box-shadow: -20px 0 60px rgba(0,0,0,.3); }
.lens-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 24px 28px; border-bottom: 1px solid #44403c; }
.lens-head .eyebrow, .system-content .eyebrow { color: #a8a29e; }
.lens-head h2 { margin-top: 5px; font-size: 24px; font-weight: 550; letter-spacing: -.025em; line-height: 1.15; }
.lens-head p:last-child { margin-top: 6px; color: #a8a29e; font-size: 10px; }
.lens-head button { border: 0; background: none; color: #a8a29e; font-size: 24px; }
.lens-content { flex: 1; overflow-y: auto; padding: 0 28px; }
.system-content > section { padding: 24px 0; border-bottom: 1px solid #35302d; }
.system-content h3 { margin-top: 4px; font-size: 16px; font-weight: 600; letter-spacing: -.01em; }
.system-content p { margin-top: 5px; color: #a8a29e; font-size: 10px; }
.lens-thesis h3 { color: #d8b4fe; font-size: 22px; }
.leverage-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; margin-top: 17px; background: #44403c; }
.leverage-grid div { min-height: 88px; padding: 12px; background: #292524; }
.leverage-grid strong { display: block; font-size: 10px; }
.leverage-grid span { display: block; margin-top: 5px; color: #a8a29e; font-size: 8.5px; }
.system-section-head { margin-bottom: 14px; }
.system-stack { margin: 0; padding: 0; list-style: none; }
.system-stack li { display: grid; grid-template-columns: 29px 1fr; gap: 11px; padding: 11px 0; border-top: 1px solid #35302d; }
.system-stack li > span { color: #78716c; font: 8px ui-monospace, monospace; }
.system-stack strong { font-size: 10.5px; }
.system-stack p { margin-top: 3px; font-size: 9px; }
.runtime-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: #44403c; }
.runtime-grid div { padding: 12px; background: #292524; }
.runtime-grid strong { display: block; color: #d8b4fe; font-size: 18px; }
.runtime-grid span { display: block; color: #a8a29e; font-size: 8px; }
.runtime-note { display: flex; align-items: center; gap: 7px; margin-top: 9px; padding: 9px; background: #292524; color: #d6d3d1; font-size: 8.5px; }
.runtime-note svg { color: #fbbf24; }
.drawer-agent-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.drawer-agent-grid article { padding: 13px; border: 1px solid #44403c; background: #292524; }
.drawer-agent-grid article > div:first-child { display: flex; align-items: center; gap: 9px; }
.drawer-agent-avatar { display: grid; width: 30px; height: 30px; flex: none; place-items: center; background: #6d28d9; font-size: 8px; font-weight: 700; }
.drawer-agent-grid article > div span:last-child { display: flex; flex-direction: column; }
.drawer-agent-grid strong { font-size: 10px; }
.drawer-agent-grid small { color: #a78bfa; font-size: 7.5px; }
.drawer-agent-grid article > p { min-height: 30px; font-size: 8.5px; }
.drawer-agent-grid dl { margin: 9px 0 0; }
.drawer-agent-grid dl div { display: grid; grid-template-columns: 80px 1fr; gap: 7px; padding: 5px 0; border-top: 1px solid #44403c; }
.drawer-agent-grid dt { color: #78716c; font-size: 7.5px; text-transform: uppercase; }
.drawer-agent-grid dd { color: #d6d3d1; font-size: 8px; }
.risk-control-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: #44403c; }
.risk-control-grid div { min-height: 100px; padding: 12px; background: #292524; }
.risk-control-grid strong { color: #fca5a5; font-size: 10px; }
.risk-control-grid p { font-size: 8.5px; }
.build-sequence { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.build-sequence div { padding: 12px; border: 1px solid #44403c; }
.build-sequence span { color: #a78bfa; font-size: 7.5px; font-weight: 700; text-transform: uppercase; }
.build-sequence strong { display: block; margin-top: 4px; font-size: 10px; }
.build-sequence p { font-size: 8.5px; }
.prototype-boundary { display: flex; align-items: flex-end; justify-content: space-between; gap: 18px; }
.prototype-boundary > div { flex: 1; }
.prototype-boundary .secondary { flex: none; border-color: #57534e; background: #292524; color: #f5f5f4; }
.lens-foot { padding: 14px 28px; border-top: 1px solid #44403c; color: #78716c; font-size: 8px; }
.document-workspace { display: grid; min-height: calc(100vh - 65px); grid-template-columns: 320px minmax(0,1fr); }
.document-list { border-right: 1px solid var(--line); background: var(--paper); }
.document-row { display: grid; width: 100%; grid-template-columns: auto minmax(0,1fr) auto; gap: 10px; align-items: center; padding: 14px; border: 0; border-bottom: 1px solid var(--line); background: var(--surface); text-align: left; box-shadow: inset 3px 0 var(--ink); }
.document-row > div { min-width: 0; display: flex; flex-direction: column; }
.document-row strong { font-size: 10.5px; }
.document-row small { color: var(--quiet); font-size: 9px; }
.document-secondary { display: flex; flex-direction: column; gap: 7px; padding: 18px 14px; color: var(--quiet); font-size: 9.5px; }
.document-secondary .eyebrow { margin-bottom: 3px; }
.document-review { min-width: 0; padding: 20px 24px 32px; }
.document-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 16px; }
.document-toolbar h2 { margin-top: 3px; font-size: 18px; }
.document-grid { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(300px,.85fr); gap: 16px; align-items: start; }
.paper-preview { min-height: 520px; padding: 40px 48px; border: 1px solid var(--line-strong); background: #fff; box-shadow: 0 12px 30px rgba(28,25,23,.06); }
.paper-head { display: flex; flex-direction: column; padding-bottom: 18px; border-bottom: 2px solid var(--ink); }
.paper-head strong { font-size: 18px; }
.paper-head span { color: var(--quiet); font-size: 10px; }
.paper-preview dl { margin: 28px 0; }
.paper-preview dl div { display: grid; grid-template-columns: 130px 1fr; gap: 16px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.paper-preview dt { font-weight: 650; }
.paper-preview dd { color: var(--ink); font-size: 11px; }
.paper-preview > p { margin-top: 70px; padding: 12px; background: var(--amber-soft); color: var(--amber); font-size: 9px; }
.extraction-panel { padding: 18px; border: 1px solid var(--line); border-top: 3px solid var(--ink); background: var(--surface); }
.extraction-panel h3 { margin: 5px 0 14px; font-size: 15px; }
.match-score { display: grid; grid-template-columns: 1fr auto; gap: 2px 10px; padding: 13px; background: var(--surface-2); }
.match-score span { color: var(--quiet); font-size: 9px; text-transform: uppercase; }
.match-score strong { grid-row: span 2; font-size: 22px; color: var(--green); }
.match-score small { color: var(--muted); font-size: 10px; }
.extraction-panel .compact-dl { margin: 10px 0; }
.document-impact { display: flex; gap: 9px; margin: 12px 0; padding: 11px; background: var(--green-soft); color: var(--green); }
.document-impact div { display: flex; flex-direction: column; }
.document-impact strong { font-size: 10.5px; }
.document-impact p { font-size: 9px; }
.edit-modal { width: min(680px,100%); }
.edit-label { display: flex; flex-direction: column; gap: 7px; color: var(--quiet); font-size: 10px; font-weight: 650; }
.edit-label textarea { min-height: 130px; resize: vertical; padding: 13px; border: 1px solid var(--line-strong); background: var(--surface); color: var(--ink); line-height: 1.5; }
.edit-footer { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; }
.edit-footer > div { display: flex; gap: 8px; }
.command-backdrop { place-items: start center; padding-top: 11vh; }
.command-modal { width: min(650px,calc(100vw - 32px)); border: 1px solid var(--line-strong); background: var(--surface); box-shadow: 0 24px 80px rgba(0,0,0,.3); }
.command-input { display: flex; height: 52px; align-items: center; gap: 10px; padding: 0 14px; border-bottom: 1px solid var(--line); color: var(--quiet); }
.command-input input { min-width: 0; flex: 1; border: 0; outline: 0; color: var(--ink); font-size: 14px; }
.command-results { max-height: 460px; overflow-y: auto; padding: 6px; }
.command-results > button { display: grid; width: 100%; grid-template-columns: auto 1fr auto; gap: 11px; align-items: center; padding: 10px; border: 0; background: transparent; text-align: left; }
.command-results > button:hover { background: var(--surface-2); }
.command-results > button > span { display: flex; min-width: 0; flex-direction: column; }
.command-results strong { font-size: 11px; }
.command-results small { overflow: hidden; color: var(--quiet); font-size: 9px; text-overflow: ellipsis; white-space: nowrap; }
.command-results > p { padding: 24px; color: var(--quiet); text-align: center; font-size: 11px; }
.command-foot { padding: 8px 14px; border-top: 1px solid var(--line); color: var(--quiet); font-size: 9px; }
.toast { position: fixed; right: 22px; bottom: 22px; z-index: 120; display: flex; align-items: center; gap: 9px; padding: 11px 14px; background: var(--ink); color: var(--paper); box-shadow: 0 10px 30px rgba(0,0,0,.2); font-size: 10.5px; }
.toast svg { color: #bef264; }

@media (max-width: 1100px) {
	.header-actions .searchbox { display: none; }
	.command-grid, .two-col, .outcome-grid, .governance-grid { grid-template-columns: 1fr; }
	.audit-panel, .outcome-wide { grid-column: auto; }
	.member-grid { grid-template-columns: 1fr; }
	.member-main { border-right: 0; }
	.decision-pane { border-top: 1px solid var(--line); }
	.journey-layout { grid-template-columns: 1fr; }
	.stat-row { grid-template-columns: 1fr 1fr; }
	.stat:nth-child(2) { border-right: 0; }
	.stat:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
}

@media (max-width: 760px) {
	.sidebar { width: 58px; }
	.brand { justify-content: center; padding: 0; }
	.brand div, .workspace-switch div, .workspace-switch svg, .nav-group > p, .nav-item span, .nav-item em, .account div { display: none; }
	.workspace-switch { display: flex; justify-content: center; margin: 10px 6px; padding: 6px; }
	.nav-item { justify-content: center; padding: 9px; }
	.account { justify-content: center; padding: 9px 0; }
	.main-shell { margin-left: 58px; }
	.header { align-items: flex-start; }
	.page-heading p, .role-preview > span { display: none; }
	.role-preview { padding-left: 0; }
	.page { padding: 16px; }
	.opportunity-workspace, .document-workspace { height: auto; grid-template-columns: 1fr; overflow: visible; }
	.queue-pane { max-height: 440px; border-right: 0; border-bottom: 1px solid var(--line); }
	.member-pane { overflow: visible; }
	.welcome, .page-actions { grid-template-columns: 1fr; flex-direction: column; align-items: flex-start; }
	.system-design-button span { display: none; }
	.system-design-button { width: 34px; justify-content: center; padding: 0; }
	.lens-head { padding: 20px; }
	.lens-content { padding: 0 20px; }
	.leverage-grid, .runtime-grid, .drawer-agent-grid, .risk-control-grid, .build-sequence { grid-template-columns: 1fr; }
	.drawer-agent-grid article > p { min-height: 0; }
	.prototype-boundary { align-items: flex-start; flex-direction: column; }
	.lens-foot { padding: 13px 20px; }
	.brief-grid { grid-template-columns: 1fr; }
	.brief-grid section, .brief-grid section:nth-child(even) { min-height: 0; padding: 15px 0; border-right: 0; }
	.brief-sheet > header, .brief-sheet > footer { flex-direction: column; align-items: flex-start; }
	.population-hero { grid-template-columns: 1fr; }
	.concentration-chart { display: none; }
	.opportunity-callout { grid-template-columns: 1fr; }
	.opportunity-callout > div:first-child { border-right: 0; border-bottom: 1px solid var(--line); }
	.future-steps { grid-template-columns: 1fr 1fr; }
	.truth-grid { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) { * { scroll-behavior: auto !important; transition: none !important; } }

/* Vision pass: persona chips, chart layer, referral loop, protocol map, stack map */
.persona-chip { padding: 3px 10px; border: 1px solid var(--line); border-radius: 999px; background: var(--surface); color: var(--quiet); font-size: 11.5px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; white-space: nowrap; }
.page-heading .heading-line { display: flex; align-items: center; gap: 10px; }

.insight-band { display: grid; grid-template-columns: 1fr 1.2fr; gap: 24px; align-items: center; margin-top: 16px; padding: 18px 22px; border: 1px solid var(--line); background: var(--surface); }
.insight-band h3 { margin: 4px 0 0; font-size: 17px; letter-spacing: -0.01em; }
.insight-band > p { margin: 0; color: var(--muted); font-size: 13.5px; }
@media (max-width: 900px) { .insight-band { grid-template-columns: 1fr; } }

.employer-table small { display: block; color: var(--quiet); font-size: 11px; font-weight: 400; margin-top: 2px; }
.guarantee-detail { display: block; }

.silence-note { display: flex; gap: 10px; align-items: flex-start; margin-top: 16px; padding: 13px 16px; border: 1px dashed var(--line-strong); background: var(--surface-2); color: var(--muted); font-size: 13px; }
.silence-note .icon { color: var(--green); flex: none; margin-top: 2px; }

.referral-loop { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); }
.loop-stages { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; margin-top: 12px; }
@media (max-width: 1000px) { .loop-stages { grid-template-columns: 1fr; } }
.loop-stage { display: flex; gap: 10px; padding: 11px 12px; border: 1px solid var(--line); background: var(--surface); }
.loop-stage .loop-dot { width: 9px; height: 9px; border-radius: 50%; flex: none; margin-top: 5px; background: var(--line-strong); }
.loop-stage.done .loop-dot { background: var(--green); }
.loop-stage.active { border-color: var(--amber); background: var(--amber-soft); }
.loop-stage.active .loop-dot { background: var(--amber); }
.loop-stage strong { display: block; font-size: 13px; }
.loop-stage small { color: var(--quiet); font-size: 11px; }
.loop-stage p { margin: 3px 0 0; color: var(--muted); font-size: 12px; line-height: 1.35; }
.loop-note { display: flex; gap: 8px; align-items: flex-start; margin: 12px 0 0; color: var(--quiet); font-size: 12.5px; }
.loop-note .icon { flex: none; margin-top: 2px; }

.chart-block .chart-questions { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 14px; }
.chart-q { padding: 8px 13px; border: 1px solid var(--line); background: var(--surface); font: inherit; font-size: 13px; color: var(--muted); cursor: pointer; text-align: left; }
.chart-q:hover { border-color: var(--quiet); }
.chart-q.active { border-color: var(--ink); background: var(--ink); color: var(--paper); }
.chart-answer { padding: 16px 18px; border: 1px solid var(--line); background: var(--surface-2); margin-bottom: 12px; }
.chart-answer-text { margin: 0 0 12px; font-size: 14.5px; line-height: 1.55; }
.chart-cites { display: flex; flex-direction: column; gap: 6px; }
.chart-cite { display: inline-flex; align-items: center; gap: 7px; color: var(--muted); font-size: 12.5px; }
.chart-cite em { color: var(--blue); font-style: normal; font-size: 11.5px; border-bottom: 1px dotted var(--blue); }
.chart-answer .evidence-gap { margin-top: 12px; }

.protocol-panel { margin-top: 16px; }
.protocol-flow { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; margin-top: 12px; counter-reset: protocol; }
.protocol-step { position: relative; min-width: 0; min-height: 128px; padding: 14px; border: 1px solid var(--line); background: linear-gradient(145deg, #fff 0%, #fafaf9 100%); box-shadow: 0 5px 14px rgba(28,25,23,.035); }
.protocol-step::after { position: absolute; right: -11px; top: 31px; z-index: 2; width: 11px; height: 1px; background: var(--line-strong); content: ""; }
.protocol-step:nth-of-type(4n)::after, .protocol-step:last-of-type::after { display: none; }
.protocol-step.human { border-color: #c4b5fd; background: linear-gradient(145deg, #faf5ff, var(--accent-soft)); box-shadow: 0 7px 18px rgba(109,40,217,.07); }
.protocol-step.gate { border-color: #fdba74; background: linear-gradient(145deg, #fffaf5, var(--orange-soft)); box-shadow: 0 7px 18px rgba(194,65,12,.06); }
.protocol-step.timer { border-style: dashed; background: var(--surface-2); box-shadow: none; }
.protocol-mark { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; color: var(--quiet); }
.protocol-mark > span { font: 8px ui-monospace, monospace; letter-spacing: .08em; }
.protocol-step.human .protocol-mark, .protocol-step.human .protocol-kind { color: var(--accent); }
.protocol-step.gate .protocol-mark, .protocol-step.gate .protocol-kind { color: var(--orange); }
.protocol-kind { display: block; margin-bottom: 4px; color: var(--quiet); font-size: 9px; font-weight: 720; letter-spacing: .08em; text-transform: uppercase; }
.protocol-step strong { display: block; margin-bottom: 4px; font-size: 12.5px; }
.protocol-step p { margin: 0; color: var(--muted); font-size: 10.5px; line-height: 1.4; }
.protocol-arrow { display: none; }

.stack-map { display: flex; flex-direction: column; gap: 6px; margin-top: 12px; }
.stack-zone { padding: 12px 14px; border: 1px solid var(--line); background: var(--surface); }
.stack-zone.stack-core { border-color: var(--ink); border-width: 2px; }
.stack-zone.stack-evidence { background: var(--surface-2); }
.stack-zone-label { margin: 0 0 9px; color: var(--quiet); font-size: 11px; font-weight: 700; letter-spacing: 0.07em; text-transform: uppercase; }
.stack-zone.stack-core .stack-zone-label { color: var(--ink); }
.stack-nodes { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 8px; }
.stack-node { padding: 9px 11px; border: 1px solid var(--line); background: var(--paper); }
.stack-node strong { display: block; font-size: 12.5px; margin-bottom: 3px; }
.stack-node p { margin: 0; color: var(--muted); font-size: 11.5px; line-height: 1.4; }
.stack-arrow { align-self: center; color: var(--faint); font-size: 14px; line-height: 1; }

.stack-zone { color: var(--ink); }
.stack-node strong { color: var(--ink); }
.stack-node p { color: var(--muted); }
.stack-zone-label { color: var(--quiet); }
.stack-zone.stack-core .stack-zone-label { color: var(--ink); }

/* ---- Longitudinal journey canvas ---- */
.canvas-page .journey-header { align-items: flex-end; }
.canvas-chips { display: flex; flex-wrap: wrap; gap: 6px; justify-content: flex-end; }
.canvas-chip { display: flex; align-items: center; gap: 8px; padding: 5px 11px 5px 6px; border: 1px solid var(--line); background: var(--surface); text-align: left; transition: 140ms ease-out; }
.canvas-chip:hover { border-color: var(--line-strong); background: var(--surface-2); }
.canvas-chip.active { border-color: var(--ink); background: var(--ink); color: var(--paper); }
.canvas-chip.active .member-avatar { background: #44403c; color: #fafaf9; }
.canvas-chip > span:last-child { display: flex; flex-direction: column; line-height: 1.25; }
.canvas-chip strong { font-size: 10.5px; }
.canvas-chip small { color: var(--quiet); font-size: 8.5px; }
.canvas-chip.active small { color: #d6d3d1; }

.canvas-layout { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: 16px; align-items: start; }
.canvas-rail { display: flex; flex-direction: column; gap: 16px; }
.canvas-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; padding: 14px 18px; border-bottom: 1px solid var(--line); }
.canvas-head h3 { margin-top: 2px; font-size: 13.5px; font-weight: 650; letter-spacing: -.01em; }
.cv-legend { display: flex; flex-wrap: wrap; gap: 5px 12px; max-width: 430px; justify-content: flex-end; padding-top: 3px; }
.cv-legend > span { display: inline-flex; align-items: center; gap: 6px; color: var(--quiet); font-size: 9px; white-space: nowrap; }

.canvas-scroll { overflow-x: auto; }
.canvas-board { min-width: 760px; }
.cv-row { display: grid; grid-template-columns: 172px 1fr; border-bottom: 1px solid var(--line); }
.cv-row:last-child { border-bottom: 0; }
.cv-label { position: relative; display: flex; flex-direction: column; justify-content: center; gap: 1px; padding: 8px 14px; border-right: 1px solid var(--line); background: var(--paper); }
.cv-label strong { font-size: 10.5px; font-weight: 650; letter-spacing: -.005em; }
.cv-label small { color: var(--quiet); font-size: 8.5px; }
.cv-track { position: relative; min-height: 46px; overflow: hidden; }
.cv-grid { position: absolute; top: 0; bottom: 0; width: 1px; background: #f0eeeb; }
.cv-now { position: absolute; top: 0; bottom: 0; z-index: 1; width: 0; border-left: 1px dashed var(--quiet); opacity: .62; }
.cv-now::before { position: absolute; inset: 0 auto 0 -12px; width: 24px; background: linear-gradient(90deg, transparent, rgba(109,40,217,.035), transparent); content: ""; }

.cv-axis { background: var(--surface-2); }
.cv-axis .cv-label { justify-content: center; }
.cv-axis .cv-track { min-height: 30px; overflow: visible; }
.cv-tick { position: absolute; top: 9px; transform: translateX(-50%); color: var(--quiet); font: 8.5px ui-monospace, monospace; white-space: nowrap; }
.cv-now-label { position: absolute; top: 6px; transform: translateX(-50%); z-index: 2; padding: 1px 6px; background: var(--ink); color: var(--paper); font-size: 7.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; }
.cv-today-tag { color: var(--quiet); font-size: 8.5px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }

.cv-metric { height: 150px; }
.cv-metric.cv-quietframe { height: 88px; }
.cv-metric svg.cv-plot { position: absolute; inset: 0; width: 100%; height: 100%; }
.cv-range { display: inline-flex; margin-top: 10px; }
.cv-range button { padding: 6px 12px; font-size: 9.5px; }
.cv-band-rect { fill: var(--green-soft); opacity: .82; }
.cv-band-line { stroke: #9fbd8d; stroke-width: 1; stroke-dasharray: 4 3; }
.cv-line { fill: none; stroke: var(--ink); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; filter: drop-shadow(0 2px 2px rgba(28,25,23,.10)); }
.cv-band-label { position: absolute; right: 8px; bottom: 6px; color: var(--green); font-size: 8.5px; font-weight: 650; }
.cv-scale { position: absolute; right: 9px; top: 9px; bottom: 9px; display: flex; flex-direction: column; justify-content: space-between; color: var(--faint); font: 8px ui-monospace, monospace; font-style: normal; }
.cv-pt { position: absolute; z-index: 3; width: 13px; height: 13px; padding: 0; transform: translate(-50%, -50%); border: 3px solid var(--surface); border-radius: 50%; background: var(--ink); box-shadow: 0 0 0 1px var(--ink), 0 3px 7px rgba(28,25,23,.16); transition: 140ms ease-out; }
.cv-pt:hover { transform: translate(-50%, -50%) scale(1.25); }
.cv-pt.selected { box-shadow: 0 0 0 1px var(--ink), 0 0 0 4px var(--accent-soft); }
.cv-pt b { position: absolute; bottom: 11px; left: 50%; transform: translateX(-50%); padding: 0 3px; background: rgba(255,255,255,.88); color: var(--ink); font-size: 9.5px; font-weight: 700; white-space: nowrap; }
.cv-pt b.r1 { bottom: 21px; }
.cv-pt b.r2 { bottom: 31px; }
.cv-metric .cv-frame-note { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; gap: 9px; padding: 0 28px; color: var(--quiet); font-size: 10px; }

.cv-quietframe .cv-frame-note { position: absolute; inset: 0; z-index: 2; display: flex; align-items: center; justify-content: center; gap: 9px; padding: 0 28px; color: var(--quiet); font-size: 10px; line-height: 1.4; }
.cv-frame-note .icon { flex: none; }
.cv-frame-note.sensitive { color: var(--accent); }
.cv-frame-note.resolved { color: var(--green); }

.cv-mark { position: absolute; z-index: 3; display: grid; width: 17px; height: 17px; padding: 0; place-items: center; transform: translate(-50%, -50%); border: 1px solid var(--ink); background: var(--ink); color: var(--surface); box-shadow: 0 2px 5px rgba(28,25,23,.12); transition: 140ms ease-out; }
.cv-mark .icon { stroke-width: 2; }
.cv-mark:hover { z-index: 5; transform: translate(-50%, -50%) scale(1.3); }
.cv-mark.selected { z-index: 4; box-shadow: 0 0 0 3px var(--accent-soft), 0 0 0 4px var(--accent); }
.cv-visit { border-color: var(--ink); background: var(--ink); }
.cv-lab { transform: translate(-50%, -50%) rotate(45deg); border-color: var(--blue); background: var(--blue-soft); color: var(--blue); }
.cv-lab:hover { transform: translate(-50%, -50%) rotate(45deg) scale(1.3); }
.cv-claim { border-radius: 50%; border-color: var(--line-strong); background: var(--surface); color: var(--quiet); }
.cv-message { border-radius: 50%; border-color: var(--blue); background: var(--blue); color: #fff; }
.cv-agent { border-radius: 50%; border-color: #c4b5fd; background: var(--accent-soft); color: var(--accent); }
.cv-decision { border-color: var(--green); background: var(--green); color: #fff; }
.cv-referral { border-color: var(--ink); background: var(--surface); color: var(--ink); }
.cv-milestone { border-radius: 50%; border-color: var(--ink); background: var(--surface); color: var(--ink); box-shadow: 0 0 0 3px rgba(28,25,23,.06); }
.cv-hold { transform: translate(-50%, -50%) rotate(45deg); border-color: #d97706; background: var(--amber-soft); color: var(--amber); }
.cv-hold .icon, .cv-lab .icon, .cv-gate .icon { transform: rotate(-45deg); }
.cv-hold:hover { transform: translate(-50%, -50%) rotate(45deg) scale(1.3); }
.cv-gate { width: 19px; height: 19px; transform: translate(-50%, -50%) rotate(45deg); border-color: var(--orange); background: var(--orange); color: #fff; box-shadow: 0 0 0 3px var(--orange-soft), 0 3px 7px rgba(194,65,12,.16); }
.cv-gate:hover { transform: translate(-50%, -50%) rotate(45deg) scale(1.25); }
.cv-document { border-color: var(--blue); background: var(--surface); color: var(--blue); }
.cv-mark.static, .cv-dock-type { position: static; display: inline-grid; flex: none; width: 15px; height: 15px; transform: none; box-shadow: none; vertical-align: middle; }
.cv-lab.static, .cv-hold.static, .cv-gate.static, .cv-lab.cv-dock-type, .cv-hold.cv-dock-type, .cv-gate.cv-dock-type { transform: rotate(45deg); }
.cv-gate.static { box-shadow: 0 0 0 2px var(--orange-soft); }
.cv-marklabel { position: absolute; z-index: 2; max-width: 150px; overflow: hidden; transform: translateX(-50%); padding: 1px 4px; background: rgba(255,255,255,.86); color: var(--muted); font-size: 8.5px; font-weight: 620; text-overflow: ellipsis; white-space: nowrap; }
.cv-marklabel.right { transform: translateX(calc(-100% + 7px)); }
.cv-gapband { position: absolute; top: 50%; z-index: 1; display: flex; align-items: center; height: 20px; padding: 0 8px; transform: translateY(-50%); overflow: hidden; border: 1px dashed var(--amber); background: var(--amber-soft); color: var(--amber); font-size: 8.5px; font-weight: 650; white-space: nowrap; text-align: left; }
.cv-gapband.selected { box-shadow: 0 0 0 2px var(--accent-soft), 0 0 0 3px var(--accent); }

.cv-dock { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px; align-items: center; min-height: 62px; padding: 12px 34px 12px 18px; border-top: 1px solid var(--line); background: var(--surface-2); }
.cv-dock.empty { grid-template-columns: auto 1fr; padding-right: 18px; color: var(--quiet); font-size: 10.5px; }
.cv-dock-head strong { font-size: 12.5px; letter-spacing: -.01em; }
.cv-dock-head > span { display: block; margin-top: 1px; color: var(--quiet); font-size: 8.5px; font-weight: 650; letter-spacing: .05em; text-transform: uppercase; }
.cv-dock-main p { margin-top: 4px; color: var(--muted); font-size: 10.5px; line-height: 1.4; }
.cv-dock-meta { display: flex; gap: 20px; margin: 0; }
.cv-dock-meta div { display: flex; flex-direction: column; gap: 2px; }
.cv-dock-meta dt { color: var(--quiet); font-size: 7.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.cv-dock-meta dd { margin: 0; color: var(--muted); font-size: 9.5px; max-width: 170px; }
.cv-dock-close { position: absolute; top: 8px; right: 10px; border: 0; background: none; color: var(--quiet); font-size: 16px; }
.cv-note { display: flex; align-items: flex-start; gap: 8px; margin: 0; padding: 10px 18px; border-top: 1px solid var(--line); color: var(--quiet); font-size: 10px; line-height: 1.45; }
.cv-note .icon { flex: none; margin-top: 2px; }
.canvas-panel .referral-loop { margin: 0; padding: 4px 18px 16px; border-top: 0; }
.canvas-panel .referral-loop .panel-head { padding: 14px 0 0; border-bottom: 0; }

.run-inspector .run-list { display: flex; flex-direction: column; gap: 10px; padding: 12px 14px 14px; }
.run-card { padding: 12px; border: 1px solid var(--line); border-left: 3px solid var(--line-strong); background: var(--surface); }
.run-card.human { border-left-color: var(--amber); }
.run-card.timer { border-left-color: var(--blue); }
.run-card.done { border-left-color: var(--green); }
.run-top { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.run-top strong { font-size: 11px; letter-spacing: -.005em; }
.run-top small { display: block; color: var(--quiet); font-size: 8px; }
.run-state { margin-top: 7px; font-size: 12px; font-weight: 620; line-height: 1.35; }
.run-steps { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 9px; }
.run-steps span { padding: 2px 7px; background: var(--surface-2); color: var(--faint); font-size: 7.5px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.run-steps span.done { background: var(--green-soft); color: var(--green); }
.run-steps span.now { background: var(--ink); color: var(--paper); }
.run-meta { margin: 9px 0 0; }
.run-meta div { display: grid; grid-template-columns: 68px 1fr; gap: 8px; padding: 5px 0; border-top: 1px solid var(--line); }
.run-meta dt { color: var(--quiet); font-size: 8px; text-transform: uppercase; letter-spacing: .05em; font-weight: 700; }
.run-meta dd { margin: 0; color: var(--muted); font-size: 9.5px; line-height: 1.35; }
.run-next { margin-top: 9px; }
.run-next > span { color: var(--quiet); font-size: 7.5px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.run-next > div { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 5px; }
.run-next em { padding: 2px 7px; border: 1px dashed var(--line-strong); color: var(--muted); font-size: 8.5px; font-style: normal; }
.run-card .secondary.full { margin-top: 10px; min-height: 28px; font-size: 10px; }

/* ---- Mission control ---- */
.gate-panel { margin-bottom: 0; }
.gate-strip { display: grid; grid-template-columns: repeat(auto-fit, minmax(228px, 1fr)); gap: 12px; padding: 14px 18px 18px; }
.gate-card { display: flex; flex-direction: column; gap: 6px; padding: 12px; border: 1px solid var(--line); border-top: 3px solid var(--amber); background: var(--surface); }
.gate-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.gate-top strong { font-size: 12px; letter-spacing: -.01em; }
.gate-need { font-size: 12px; font-weight: 620; line-height: 1.3; }
.gate-detail { color: var(--quiet); font-size: 9.5px; line-height: 1.35; }
.gate-actions { display: flex; gap: 6px; margin-top: auto; padding-top: 7px; }
.gate-actions .primary, .gate-actions .secondary { min-height: 27px; padding: 3px 9px; font-size: 9.5px; }
.gate-empty { padding: 0 18px 18px; color: var(--quiet); font-size: 11px; }
.mission-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) 360px; gap: 16px; margin-top: 16px; align-items: start; }
.mission-rail { display: flex; flex-direction: column; gap: 16px; }
.runs-table td { vertical-align: top; }
.runs-table .wait-detail { display: block; margin-top: 3px; }
.runs-table tr.run-done td { opacity: .55; }
.workforce-list { padding: 4px 18px 12px; }
.workforce-row { display: flex; gap: 10px; padding: 10px 0; border-bottom: 1px solid var(--line); }
.workforce-row:last-child { border-bottom: 0; }
.workforce-row > div { min-width: 0; flex: 1; }
.workforce-avatar { display: grid; width: 28px; height: 28px; flex: none; place-items: center; background: var(--accent-soft); color: var(--accent); font-size: 8.5px; font-weight: 700; }
.workforce-name { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.workforce-name strong { font-size: 10.5px; }
.agent-state { display: inline-flex; flex: none; align-items: center; gap: 5px; font-size: 8.5px; font-weight: 700; }
.agent-state i { width: 6px; height: 6px; border-radius: 50%; background: var(--faint); }
.agent-state.working { color: var(--green); }
.agent-state.working i { background: #65a30d; }
.agent-state.waiting { color: var(--amber); }
.agent-state.waiting i { background: var(--amber); }
.agent-state.idle { color: var(--quiet); }
.workforce-row small { display: block; margin-top: 2px; color: var(--quiet); font-size: 9px; line-height: 1.35; }
.workforce-row .workforce-stats { color: var(--faint); font-size: 8px; }
.timer-list { padding: 4px 18px 6px; }
.timer-row { display: flex; gap: 9px; padding: 8px 0; border-bottom: 1px solid var(--line); }
.timer-row:last-child { border-bottom: 0; }
.timer-row .icon { flex: none; margin-top: 2px; color: var(--quiet); }
.timer-row strong { display: block; font-size: 10px; font-weight: 600; line-height: 1.35; }
.timer-row small { color: var(--quiet); font-size: 8.5px; }

@media (max-width: 1360px) {
	.canvas-layout { grid-template-columns: 1fr; }
	.canvas-rail { display: grid; grid-template-columns: 1fr 1fr; align-items: start; }
	.canvas-rail .run-inspector { grid-row: span 2; }
}
@media (max-width: 1200px) {
	.mission-grid { grid-template-columns: 1fr; }
}
@media (max-width: 860px) {
	.canvas-rail { grid-template-columns: 1fr; }
	.protocol-flow { grid-template-columns: repeat(2,minmax(0,1fr)); }
	.protocol-step:nth-of-type(4n)::after { display: block; }
	.protocol-step:nth-of-type(2n)::after, .protocol-step:last-of-type::after { display: none; }
	.funnel-step { grid-template-columns: 22px 112px minmax(64px,1fr) 34px; }
}
@media (max-width: 1100px) {
	.canvas-page .journey-header { flex-direction: column; align-items: flex-start; }
	.canvas-chips { justify-content: flex-start; }
	.cv-row { grid-template-columns: 132px 1fr; }
	.cv-dock { grid-template-columns: auto 1fr; }
	.cv-dock-meta { grid-column: 2; }
}
