/* B blue / white presentation theme.
   Shared palette with the institution workspace; the original default dark theme is unaffected. */
.theme-toggle { flex-shrink:0; }
.theme-toggle > span { display:inline-flex; align-items:center; justify-content:center; gap:8px; }
.theme-toggle .theme-to-dark { display:none; }
[data-theme="light"] .theme-toggle .theme-to-light { display:none; }
[data-theme="light"] .theme-toggle .theme-to-dark { display:inline-flex; }
.entry-appearance { display:flex; justify-content:flex-end; margin-bottom:20px; }
.extension-entry { text-decoration:none; white-space:nowrap; }
.extension-management { display:inline-flex; align-items:center; min-height:44px; color:var(--muted); font-size:.8125rem; text-decoration:none; }
.extension-management:hover { color:var(--mint); }
.extension-management:focus-visible { outline:2px solid var(--mint); outline-offset:3px; }
.secondary-tools { display:flex; align-items:center; gap:18px; flex-wrap:wrap; margin-top:20px; }
.topbar-right { flex-wrap:wrap; }
.topbar { height:auto; min-height:81px; padding-block:16px; }
.presentation-header { height:auto; }
.presentation-actions { flex-wrap:wrap; }
@media(max-width:640px) {
  .topbar { align-items:flex-start; flex-wrap:wrap; }
  .topbar-right { width:100%; gap:8px; }
  #app .topbar-right .btn { font-size:.9375rem; padding:10px 12px; }
  .presentation-actions { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
  #app .presentation-actions .btn { font-size:.9375rem; padding:10px 8px; gap:4px; }
  .presentation-actions .theme-toggle > span { gap:4px; }
  .presentation-actions .theme-toggle svg { width:16px; height:16px; }
  #app .mobile-brand .theme-toggle { font-size:.9375rem; padding:9px 12px; }
}
@media(max-width:359px) {
  .presentation-actions { grid-template-columns:1fr 1fr; }
  .presentation-actions .theme-toggle { grid-column:1/-1; justify-self:end; width:auto; }
}

:root[data-theme="light"] {
  color-scheme:light;
  --bg:var(--light-bg);
  --panel:var(--light-panel);
  --panel-2:var(--light-panel-soft);
  --mint:var(--light-accent);
  --blue:var(--light-secondary);
  --gold:#805f2c;
  --ink:var(--light-ink);
  --text:var(--light-text);
  --muted:var(--light-muted);
  --read-color:var(--light-text);
  --label-color:var(--light-muted);
  --line:var(--light-line);
  --surface-soft:#f6f9ff;
  --selected:var(--light-accent-soft);
  --selected-line:#8ba8e1;
  --shadow:var(--light-shadow);
  --chart-mint:#237866;
  --chart-blue:#3979b0;
  --chart-purple:#7a60ac;
  --chart-gold:#a0803f;
  --chart-teal:#47868c;
  --chart-slate:#8e9f9a;
}
[data-theme="light"] body,
[data-theme="light"] .presentation-shell,
[data-theme="light"] .mobile-shell {
  background:radial-gradient(ellipse at 95% 0,rgba(220,233,255,.45),transparent 48%),var(--bg);
}
[data-theme="light"] #app .sidebar { background:#f7f9ff; border-color:var(--line); }
[data-theme="light"] #app :is(.brand,.co-brand,.presentation-customer b,h1,h2,h3) { color:var(--ink); }
[data-theme="light"] #app .partner-identity { background:linear-gradient(135deg,#eaf1fd,#f7f9ff); border-color:var(--line); }
[data-theme="light"] #app .partner-monogram { color:var(--gold); border-color:#d8c9ad; background:#faf7ef; }
[data-theme="light"] #app :is(.nav-item,.breadcrumb b,.tech-mark) { color:var(--text); }
[data-theme="light"] #app .nav-item:hover { background:#edf3ff; color:var(--mint); }
[data-theme="light"] #app .nav-item.active { background:var(--selected); border-color:#c8d8f5; color:var(--mint); font-weight:600; }
[data-theme="light"] #app .topbar { border-color:var(--line); }
[data-theme="light"] #app :is(.presentation-header,.presentation-controls,.mobile-nav) {
  background:rgba(249,251,255,.97); border-color:var(--line); backdrop-filter:blur(14px);
}
[data-theme="light"] #app :is(.panel,.metric,.candidate-card,.client-row,.phone-view,.modal) {
  background:var(--panel); border-color:var(--line); box-shadow:var(--shadow);
}
[data-theme="light"] #app :is(.metric.selected,.candidate-card.active) {
  border-color:var(--selected-line); background:linear-gradient(140deg,#edf4ff,#ffffff); box-shadow:var(--shadow);
}
[data-theme="light"] #app :is(.fingerprint-panel,.batch-hero,.next-action,.case-panel) {
  background:radial-gradient(ellipse at 95% 5%,#e7f0ff,transparent 70%),#fff;
}
[data-theme="light"] #app .btn.primary {
  background:linear-gradient(115deg,#285bd4,#327ee5); color:#fff; box-shadow:0 6px 16px #2e67d220;
}
[data-theme="light"] #app .btn.primary:hover:not(:disabled) { background:#204db9; box-shadow:0 6px 18px #285dde26; }
[data-theme="light"] #app :is(.btn.secondary,.icon-button) { background:#fff; color:var(--mint); border-color:#b8cbe8; }
[data-theme="light"] #app :is(.btn.secondary,.icon-button):hover { background:#edf3ff; }
[data-theme="light"] #app .theme-toggle { background:#eaf1fd; border-color:#b8cbe8; }
[data-theme="light"] #app .btn:disabled { color:#697b95; background:#e8edf5; border-color:#d1dceb; opacity:1; box-shadow:none; }
[data-theme="light"] #app .link { color:var(--mint); border-color:#b8cbe8; }
[data-theme="light"] #app :is(.tag,.small-pill) { background:#edf3ff; border-color:#c5d6f2; color:var(--mint); }
[data-theme="light"] #app :is(.tag.blue,.small-pill.blue) { background:#edf3f9; border-color:#b7cce0; color:var(--blue); }
[data-theme="light"] #app .tag.gold { background:#f8f3e7; border-color:#d9c9a8; color:var(--gold); }
[data-theme="light"] #app .tag.muted { background:#f0f3f9; border-color:#d2dced; color:var(--muted); }
[data-theme="light"] #app :is(.story-conclusion,.object-context b,.disclaimer b,.radar-reading-row b,
  .metric-number,.candidate-main h2,.compare-label b,.taxa-list b,.comparison-insight b,
  .fact b,.donor-characteristics article>b,.quality-expand>span,.journey-node b,.journey-date b,
  .completion-summary b,.summary-details b,.mobile-metric>b,.mobile-step b,.mobile-brand>span) { color:var(--ink); }
[data-theme="light"] #app :is(.story-conclusion,.concise-story h1) { text-wrap:pretty; }
[data-theme="light"] #app :is(.nav-section-label,.nav-item small,.sidebar-foot>small,.breadcrumb i,
  .trust-mini,.stat small,.client-arrow,.app-footer,.fingerprint-label,.metric-head svg,
  .flow-tab,.engine-counter small,.engine-stat span,.engine-inline,.pool-top>span,.pool-node span,.pool-foot,
  .candidate-top,.candidate-value small,.candidate-card p,.risk-gate span:not(.tag),.subtle-number,.evidence-lead,
  .evidence-list p,.segmented button,.composition-donut span,.taxa-list>div,.comparison-insight,.function-name span,
  .function-bars b,.donor-name p,.privacy-box>span,.fact>span,.process-step>span,.process-step small,
  .process-detail p,.donor-characteristics p,.batch-main p,.qc-stamp small,.quality-cards p,
  .qc-detail-row>span:not(.tag),.journey-node span,.journey-detail p,.journey-date>span,.next-action p,
  .prepare-item p,.completion>p,.completion-summary span,.share-button,.share-button>span,.score-ring span,
  .modal-desc,.modal-metric span,.modal-info p,.summary-details span,.qr-id,.confirm-checks label,
  .consult-topics p,.chapter-dots button,.chapter-name,.chapter-name b,.mobile-preview-exit,.mobile-brand i,
  .mobile-customer,.mobile-customer>span,.mobile-hero p,.mobile-profile p,.mobile-metric>span,
  .mobile-nav button,.mobile-tech,.mobile-match>p,.mobile-evidence p,.mobile-step p,.mobile-step>span,.mobile-next p,
  .layer-card i,.nine-radar text.nine-note,.pathway-values>span) { color:var(--text); }
[data-theme="light"] #app :is(.candidate-value,.engine-counter,.consult-topics span,.mobile-evidence span,.prepare-item>span) { color:var(--mint); }
[data-theme="light"] #app :is(.client-search,.object-context,.radar-reading-row,.bio-center-html,.story-flow button,
  .story-candidates button,.story-screening button,.story-batch,.donor-symbol,.segmented,.compare-block,
  .process-detail,.journey-detail,.completion-summary,.modal-info,.confirm-checks label,.layer-card,
  .layer-story,.dimension-chips button,.pathway-options button,.pathway-values) {
  background:var(--surface-soft); border-color:var(--line); color:var(--read-color);
}
[data-theme="light"] #app :is(.story-candidates button.active,.story-flow button.active,.story-screening button.active,
  .layer-card.active,.dimension-chips button.active,.pathway-options button.active,.segmented button.active,.pool-stat.active) {
  background:var(--selected); border-color:var(--selected-line); color:var(--mint);
}
[data-theme="light"] #app :is(.story-chart,.story-steps) { border-color:var(--line); background:#fff; }
[data-theme="light"] #app .sample-banner { color:var(--gold); background:#faf5e9; border-radius:6px; padding:6px 10px; }
[data-theme="light"] #app .narrow-entry { background:transparent; }
[data-theme="light"] #app .modal-closebar { background:#f1f5fc; border-bottom:1px solid var(--line); }
[data-theme="light"] #app .modal-close { background:#e5edff; color:var(--ink); }
[data-theme="light"] #app .modal { box-shadow:0 24px 90px #203e6c30; }
[data-theme="light"] #app :is(.modal-backdrop,.drawer-backdrop) { background:rgba(26,54,88,.32); }
[data-theme="light"] .toast { background:#fff; color:#254a80; border-color:#9eb9e4; box-shadow:0 12px 40px #203e6c20; }
[data-theme="light"] #app :is(.insight-banner,.disclaimer,.risk-gate,.comparison-insight,.dimension-explanation,.quality-expand) {
  background:#edf3fd; border-color:#cadbf4;
}
[data-theme="light"] #app .risk-gate { background:#eef4fa; border-color:#bfd0e0; }
[data-theme="light"] #app .pool-node { background:#f1f5fc; border-color:#c3d2eb; }
[data-theme="light"] #app .pool-node.selected { background:#e5edff; border-color:#8ba8e1; }
[data-theme="light"] #app .pool-node.selected span { color:var(--mint); }
[data-theme="light"] #app :is(.mini-track,.candidate-line,.chapter-dots i,.mobile-step:before,.process-tabs:before) { background:#d7e2f2; }
[data-theme="light"] #app .chapter-dots .active i { background:var(--mint); box-shadow:none; }
[data-theme="light"] #app :is(.chapter-dots button.active,.mobile-nav button.active,.process-step.active>span,.journey-node.selected b) { color:var(--mint); }
[data-theme="light"] #app .candidate-line i { background:#7e9ace; }
[data-theme="light"] #app .candidate-card.active .candidate-line i { background:var(--mint); }
[data-theme="light"] #app .composition-donut>div { background:#fff; }
[data-theme="light"] #app .radar-grid { stroke:#bacbe3; }
[data-theme="light"] #app .radar-axis { stroke:#cddbf0; }
[data-theme="light"] #app .radar-primary { stroke:var(--chart-mint); fill:#23786618; }
[data-theme="light"] #app .radar-secondary { stroke:var(--chart-blue); fill:#3979b012; }
[data-theme="light"] #app :is(.radar-label,.nine-radar text.nine-note) { fill:var(--text); }
[data-theme="light"] #app .bio-orbit { stroke:#a4c1e7; }
[data-theme="light"] #app .ring-track { stroke:#dce6f5; }
[data-theme="light"] #app :is(.process-step i,.journey-node i,.mobile-step i) { background:#eef3fc; border-color:#b1c5e4; color:var(--text); }
[data-theme="light"] #app .process-step.active i { background:var(--mint); color:#fff; border-color:var(--mint); }
[data-theme="light"] #app :is(.journey-node.done i,.mobile-step.done i) { background:#e4f0e8; border-color:#8eb29e; color:var(--mint); }
[data-theme="light"] #app :is(.journey-node.current i,.mobile-step.current i) { background:#e9f1f9; border-color:#85a7c5; color:var(--blue); }
[data-theme="light"] #app .mobile-step.current b { color:var(--blue); }
[data-theme="light"] #app .journey-track:before { background:linear-gradient(90deg,#88b29d 0 28%,#d1ded5 28%); }
[data-theme="light"] #app .client-search input::placeholder { color:var(--muted); opacity:1; }

/* Keep the photographic hero as a deliberate dark inset, with its own contrast. */
[data-theme="light"] #app .hero-science { border-color:#b8cbe8; box-shadow:var(--shadow); }
[data-theme="light"] #app .hero-science:after { background:linear-gradient(0deg,#0d2c29ed,transparent 90%); }
[data-theme="light"] #app .science-caption b { color:#f1faf5; }
[data-theme="light"] #app :is(.hero-chip,.science-caption span,.float-card small) { color:#d1e5da; }
[data-theme="light"] #app .float-card>span { color:#a8ecd2; }
[data-theme="light"] #app .float-card .live-dot { background:#a8ecd2; }
[data-theme="light"] #app .float-card { background:#123e36e8; }
@media(min-width:1181px) {
  [data-theme="light"] #app .home-copy { padding-top:40px; }
  [data-theme="light"] #app .home-lower { gap:24px; }
  [data-theme="light"] #app .home-metrics { margin-block:32px; }
}
@media(prefers-reduced-transparency:reduce) {
  [data-theme="light"] #app :is(.presentation-header,.presentation-controls,.mobile-nav) { background:#f9fbff; backdrop-filter:none; }
}
