.biology-capture {
  --bc-ink:#0e3b47; --bc-teal:#109ba7;
  position:relative; padding-top:32px; color:var(--bc-ink); font-family:Figtree,sans-serif;
}
.biology-capture *, .biology-capture *::before, .biology-capture *::after { box-sizing:border-box; }
.biology-capture .bc-mobile-source-nav { display:none; }
.biology-capture [data-source="0"] { --source-color:#96731f; --source-tint:#faf2d7; --source-energy:#c6a13d; }
.biology-capture [data-source="1"] { --source-color:#4c7da6; --source-tint:#e8eefb; --source-energy:#699ad1; }
.biology-capture [data-source="2"] { --source-color:#168b9d; --source-tint:#ddf6f7; --source-energy:#21b7ba; }
.biology-capture [data-source="3"] { --source-color:#626db4; --source-tint:#e8eafa; --source-energy:#8c90d7; }
.biology-capture [data-source="4"] { --source-color:#9078b7; --source-tint:#f0eafb; --source-energy:#b08bc9; }
.biology-capture [data-source="5"] { --source-color:#a7642f; --source-tint:#fbebdd; --source-energy:#d69457; }
.biology-capture [data-source="6"] { --source-color:#287db1; --source-tint:#e1f0fb; --source-energy:#47add6; }
.biology-capture [data-source="7"] { --source-color:#b55568; --source-tint:#f9e8ec; --source-energy:#dd7a92; }
.biology-capture .bc-stage { position:relative; display:grid; grid-template-columns:clamp(420px,35vw,640px) minmax(220px,.85fr) minmax(320px,1fr); grid-template-rows:minmax(0,1fr); gap:clamp(30px,4vw,80px); height:clamp(300px,calc(100svh - 500px),720px); align-items:center; isolation:isolate; }
.biology-capture .bc-inputs { position:relative; min-width:0; height:100%; }
.biology-capture .bc-selected-method, .biology-capture .bc-selected-timing { display:block; font:400 13px/1.35 Figtree,sans-serif; color:#426b78; }
.biology-capture .bc-selected-timing { color:#657e89; margin-top:2px; font-size:12px; }
.biology-capture .bc-signal-plot { display:block; grid-column:3; grid-row:1; width:100%; height:100%; min-width:0; overflow:hidden; }
.biology-capture .bc-time-axis { position:absolute; bottom:-14px; display:flex; justify-content:space-between; color:#567481; font:400 10px/12px Figtree,sans-serif; font-variant-numeric:tabular-nums; pointer-events:none; }
.biology-capture .bc-signal-guides, .biology-capture .bc-score-guides { fill:none; stroke:#c9dce6; stroke-width:1; stroke-dasharray:2 5; }
.biology-capture .bc-signal-line { color:var(--source-color); fill:none; stroke:currentColor; stroke-width:2; stroke-linejoin:round; stroke-linecap:round; opacity:.85; }
.biology-capture .bc-time-guide { opacity:.4; }
.biology-capture .bc-signal-reference { fill:none; stroke:var(--source-color); stroke-width:1.5; opacity:.16; }
.biology-capture .bc-signal-area { fill:var(--source-color); opacity:.035; }
.biology-capture .bc-source[data-source="3"] .bc-signal-area, .biology-capture .bc-source[data-source="5"] .bc-signal-area { display:none; }
.biology-capture .bc-signal-line.is-selected { stroke-width:2.5; opacity:1; }
.biology-capture .bc-signal-dot { color:var(--source-color); fill:currentColor; stroke:#fff; stroke-width:1.4; opacity:.75; }
.biology-capture .bc-signal-dot.is-selected { opacity:1; }
.biology-capture .bc-signal-dot.is-latest-response { fill:var(--score-color,#bc6470); opacity:1; stroke-width:1.5; }
.biology-capture .bc-source.is-shifting .bc-signal-line { stroke-width:2.6; opacity:1; }
.biology-capture .bc-score-axis { display:flex; justify-content:space-between; font:400 11px/1.3 Figtree,sans-serif; color:#567481; margin-top:6px; }
.biology-capture .bc-source-nav { display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:repeat(6,minmax(0,1fr)); gap:4px; height:100%; }
.biology-capture .bc-source { position:relative; display:grid; grid-template-columns:clamp(32px,4.5svh,56px) 125px minmax(0,1fr); grid-template-rows:minmax(0,1fr); align-items:center; gap:12px; min-width:0; padding:2px 8px; border:1px solid transparent; border-radius:8px; color:var(--bc-ink); background:transparent; font:500 clamp(15px,1.1vw,19px)/1.2 Figtree,sans-serif; cursor:pointer; text-align:left; }
.biology-capture .bc-source-heading { grid-column:2; grid-row:1; display:grid; gap:5px; }
.biology-capture .bc-source-cadence { font:400 clamp(11px,.8vw,13px)/1.2 Figtree,sans-serif; color:#567481; white-space:nowrap; }
.biology-capture .bc-source-art { grid-column:1; grid-row:1; width:100%; height:clamp(32px,4.5svh,56px); fill:none; stroke:var(--source-color); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.biology-capture .bc-art-fill { fill:var(--source-tint); }
.biology-capture .bc-art-white { fill:#ffffffd9; }
.biology-capture .bc-art-solid { fill:var(--source-color); stroke:none; }
.biology-capture .bc-source-outlet { position:absolute; width:4px; height:4px; background:var(--source-color); border-radius:50%; right:3px; top:calc(50% - 2px); opacity:.4; }
.biology-capture .bc-signal-reading { display:flex; align-items:baseline; gap:5px; color:var(--source-color); font:500 28px/1 'Funnel Display',sans-serif; font-variant-numeric:tabular-nums; pointer-events:none; }
.biology-capture .bc-reading-before { color:#71818b; font:400 12px/1 Figtree,sans-serif; }
.biology-capture .bc-reading-before[hidden] { display:none; }
.biology-capture .bc-reading-current { font-weight:500; color:color-mix(in srgb,var(--score-color,#bc6470) 65%,var(--bc-ink)); }
.biology-capture .bc-signal-reading small { font:400 12px/1 Figtree,sans-serif; }
.biology-capture .bc-intervention-guide { stroke:#626db4; stroke-dasharray:3 3; opacity:.55; }
.biology-capture .bc-source.is-treatment-applied { background:#e8eafa80; border-color:#8c90d755; }
.biology-capture .bc-source-name { color:var(--bc-ink); }
.biology-capture .bc-source.is-selected { background:#ffffffa8; border-color:#ffffff; }
.biology-capture .bc-source.is-selected .bc-source-name { font-weight:600; }
.biology-capture .bc-source.is-connected .bc-source-outlet { opacity:1; }
.biology-capture .bc-hub { position:relative; text-align:center; align-self:center; }
.biology-capture .bc-treatment { position:absolute; z-index:3; top:-38px; display:flex; align-items:center; gap:7px; width:max-content; max-width:calc(100% + 16px); min-height:31px; padding:3px 10px; border:1px solid #cadbe6; border-radius:8px; background:#fffffff0; color:#3a6473; }
.biology-capture .bc-treatment::after { content:""; position:absolute; left:-1px; top:100%; width:1px; height:7px; background:#109ba755; }
.biology-capture .bc-intervention-marker { position:absolute; z-index:2; top:0; bottom:4px; width:1px; background:repeating-linear-gradient(to bottom,#109ba7 0 3px,transparent 3px 7px); opacity:calc(.18 + .15 * var(--treatment-progress,0)); pointer-events:none; }
.biology-capture .bc-treatment-art { width:57px; height:25px; flex:none; fill:none; stroke:#626db4; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.biology-capture .bc-treatment-delivery { stroke-dasharray:34; stroke-dashoffset:calc(34 * (1 - var(--treatment-progress,0))); }
.biology-capture .bc-treatment-pill { opacity:calc(1 - var(--treatment-progress,0) * .7); fill:#e8eafa; }
.biology-capture .bc-treatment-check { stroke:#109ba7; stroke-width:2.5; opacity:var(--treatment-progress,0); }
.biology-capture .bc-treatment-label { font:500 14px/1.25 Figtree,sans-serif; max-width:20ch; }
.biology-capture .bc-treatment-label[hidden] { display:none; }
.biology-capture .bc-treatment-month { display:block; margin-top:1px; color:#65808a; font:400 10px/1.2 Figtree,sans-serif; }
.biology-capture[data-treatment-stage="response"] .bc-treatment { border-color:#109ba74d; }
.biology-capture[data-treatment-stage="response"] .bc-treatment-art { stroke:#109ba7; }
.biology-capture .bc-hub::before { content:""; position:absolute; inset:20px -25px 55px; border-radius:50%; background:radial-gradient(ellipse,#ffffffd9,#ffffff55 48%,transparent 72%); z-index:-1; }
.biology-capture .bc-hub::after { content:""; position:absolute; left:50%; top:clamp(250px,34svh,420px); width:150px; height:15px; border-radius:50%; transform:translateX(-50%); filter:blur(3px); background:#6a9baf1c; z-index:-1; }
.biology-capture .bc-ubi-seat { width:min(100%,300px); height:clamp(250px,34svh,420px); margin:auto; }
.biology-capture .bc-hub-caption { display:grid; gap:6px; margin-top:12px; }
.biology-capture .bc-hub-caption strong { font:500 25px/1 'Funnel Display',sans-serif; }
.biology-capture .bc-clinical-state { min-height:38px; color:#426b78; font:400 14px/1.3 Figtree,sans-serif; max-width:25ch; margin:auto; }
.biology-capture .bc-score { align-self:center; justify-self:center; width:100%; max-width:440px; min-height:0; position:relative; padding:24px; border:1px solid #cddde7; border-radius:16px; background:#ffffffef; box-shadow:0 14px 40px #335d7414; text-align:center; }
.biology-capture .bc-score h3 { margin:0; font:500 23px/1.2 'Funnel Display',sans-serif; letter-spacing:-.02em; }
.biology-capture .bc-score-current { position:relative; width:210px; height:135px; margin:8px auto 0; }
.biology-capture .bc-score-current::before { content:""; position:absolute; inset:8px; border-radius:50%; background:radial-gradient(ellipse,#a3e5e78c,transparent 70%); opacity:var(--score-response,0); pointer-events:none; }
.biology-capture .bc-score-gauge { display:block; width:100%; height:100%; overflow:visible; }
.biology-capture .bc-gauge-track, .biology-capture .bc-gauge-fill { fill:none; stroke-width:11; stroke-linecap:round; }
.biology-capture .bc-gauge-track { stroke:#e3edf3; }
.biology-capture .bc-gauge-fill { stroke:var(--score-color,#bc6470); }
.biology-capture .bc-score-number { position:absolute; inset:48px 0 auto; display:flex; align-items:baseline; justify-content:center; gap:5px; color:var(--score-color,#bc6470); }
.biology-capture .bc-score-value { font:500 54px/1 'Funnel Display',sans-serif; letter-spacing:-.05em; font-variant-numeric:tabular-nums; }
.biology-capture .bc-score-number > span { color:#567481; font:400 13px Figtree,sans-serif; }
.biology-capture .bc-score-port { position:absolute; width:1px; height:1px; left:21px; top:105px; }
.biology-capture .bc-score-status { display:grid; gap:4px; margin-top:-9px; min-height:39px; }
.biology-capture .bc-score-label { display:block; margin:-17px 0 16px; color:#65808a; font:400 11px/1.2 Figtree,sans-serif; }
.biology-capture .bc-score-update-line { display:flex; align-items:center; justify-content:center; gap:8px; min-height:19px; }
.biology-capture .bc-score-change { display:inline-flex; align-items:center; padding:2px 6px; border-radius:5px; color:#0f706c; background:#e0f3ef; font:600 12px/1.1 Figtree,sans-serif; font-variant-numeric:tabular-nums; }
.biology-capture .bc-score-change.is-decreasing { color:#916849; background:#f8efe8; }
.biology-capture .bc-score-change[hidden] { display:none; }
.biology-capture .bc-score-update { font:500 14px/1.2 Figtree,sans-serif; color:#2a6575; }
.biology-capture .bc-updated-source { color:#657e89; font:400 12px/1.3 Figtree,sans-serif; }
.biology-capture .bc-score-history { margin-top:16px; }
.biology-capture .bc-score-plot { display:block; width:100%; height:clamp(70px,9svh,110px); overflow:hidden; }
.biology-capture .bc-score-history-path { fill:none; stroke:var(--score-color,#bc6470); stroke-width:2.5; stroke-linejoin:round; stroke-linecap:round; }
.biology-capture .bc-score-reference { fill:none; stroke:#63899a; stroke-width:1.5; opacity:.22; }
.biology-capture .bc-remission-evidence { display:grid; gap:7px; border-top:1px solid #e0e9ef; padding-top:14px; margin-top:16px; text-align:left; }
.biology-capture .bc-remission-evidence > div { display:grid; grid-template-columns:16px minmax(0,1fr) auto; gap:6px; align-items:center; color:#527481; font:400 12px/1.25 Figtree,sans-serif; }
.biology-capture .bc-remission-evidence small { font:400 10px/1.25 Figtree,sans-serif; color:#78909a; }
.biology-capture .bc-evidence-icon { font-size:14px; color:#a8bdc8; }
.biology-capture .bc-remission-evidence .is-confirmed .bc-evidence-icon, .biology-capture .bc-remission-evidence .is-confirmed small { color:#108b89; }
.biology-capture .bc-remission-evidence .is-confirmed { color:#194e5b; }
.biology-capture .bc-score-history-points circle { fill:var(--score-color,#bc6470); stroke:white; stroke-width:1.5; }
.biology-capture .bc-score h4 { margin:18px 0 0; font:500 20px/1.25 'Funnel Display',sans-serif; letter-spacing:-.02em; }
.biology-capture .bc-transport { position:absolute; inset:0; width:100%; height:100%; overflow:visible; pointer-events:none; z-index:2; }
.biology-capture .bc-route { color:var(--source-energy); }
.biology-capture .bc-output-route { color:var(--bc-teal); }
.biology-capture .bc-route-pipe { fill:none; stroke:currentColor; stroke-width:10; stroke-linecap:round; opacity:.14; }
.biology-capture .bc-route-glass { fill:none; stroke:#fff; stroke-width:8; stroke-linecap:round; opacity:.7; }
.biology-capture .bc-route-edge { fill:none; stroke:#fff; stroke-width:1; stroke-linecap:round; opacity:.9; }
.biology-capture .bc-route-inbound, .biology-capture .bc-route-outbound { fill:none; stroke:currentColor; stroke-width:.75; opacity:.14; }
.biology-capture .bc-led { fill:none; stroke:currentColor; stroke-width:7; stroke-linecap:butt; }
.biology-capture .bc-led-core { fill:none; stroke:#fff; stroke-width:2.6; stroke-linecap:round; }
.biology-capture.is-assessing .bc-hub::before { background:radial-gradient(ellipse,#a4e1e7b3,#ffffff55 48%,transparent 72%); }
.biology-capture.is-score-updating .bc-score { border-color:#109ba780; box-shadow:0 14px 40px #109ba71f; }
.biology-capture .bc-footer { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:28px; align-items:center; padding-top:18px; }
.biology-capture .bc-copy { display:grid; max-width:78ch; }
.biology-capture .bc-capture-method { display:flex; gap:16px; margin-bottom:5px; }
.biology-capture .bc-interpretations { display:grid; }
.biology-capture .bc-copy p { grid-area:1/1; margin:0; font:400 17px/1.45 Figtree,sans-serif; }
.biology-capture .bc-copy p[hidden] { display:block; visibility:hidden; pointer-events:none; }
.biology-capture .bc-control-area { display:flex; gap:22px; align-items:center; }
.biology-capture .bc-control-area small { color:#567481; font:400 11px/1.4 Figtree,sans-serif; }
.biology-capture .bc-controls { display:flex; gap:14px; flex:none; }
.biology-capture .bc-controls button { padding:5px 0; border:0; background:none; color:var(--bc-ink); font:500 13px/1.2 Figtree,sans-serif; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.biology-capture .bc-controls button:disabled { opacity:.5; text-decoration:none; cursor:default; }
.biology-capture button:focus-visible { outline:2px solid #0c93b0; outline-offset:4px; }
.biology-capture .bc-progress { display:none; }
.biology-capture .bc-announcement, .biology-capture .bc-visually-hidden { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media(min-width:901px) and (max-height:900px) {
  .biology-capture { padding-top:12px; }
  .biology-capture .bc-stage { height:clamp(300px,calc(100svh - 440px),460px); grid-template-columns:clamp(340px,33vw,480px) minmax(170px,.85fr) minmax(280px,1fr); gap:24px; }
  .biology-capture .bc-selected-method, .biology-capture .bc-selected-timing { font-size:12px; }
  .biology-capture .bc-source-nav { gap:3px; }
  .biology-capture .bc-source { grid-template-columns:32px 115px minmax(0,1fr); padding:0 6px; font-size:14px; gap:10px; }
  .biology-capture .bc-source-art { width:32px; height:32px; }
  .biology-capture .bc-source-heading { gap:1px; }
  .biology-capture .bc-source-cadence { font-size:10px; }
  .biology-capture .bc-signal-reading { font-size:16px; }
  .biology-capture .bc-reading-before, .biology-capture .bc-signal-reading small { font-size:10px; }
  .biology-capture .bc-treatment { top:-28px; min-height:27px; gap:5px; padding:2px 6px; }
  .biology-capture .bc-treatment-art { width:43px; height:22px; }
  .biology-capture .bc-treatment-label { font-size:11px; }
  .biology-capture .bc-ubi-seat { width:min(100%,240px); height:240px; }
  .biology-capture .bc-hub::after { top:240px; }
  .biology-capture .bc-hub-caption { margin-top:8px; gap:4px; }
  .biology-capture .bc-hub-caption strong { font-size:22px; }
  .biology-capture .bc-clinical-state { font-size:12px; min-height:32px; }
  .biology-capture .bc-score { padding:16px 20px; }
  .biology-capture .bc-score h3 { font-size:21px; }
  .biology-capture .bc-score-current { width:142px; height:91px; margin-top:6px; }
  .biology-capture .bc-score-number { top:34px; }
  .biology-capture .bc-score-value { font-size:38px; }
  .biology-capture .bc-score-port { left:14px; top:71px; }
  .biology-capture .bc-score-label { margin:-12px 0 12px; font-size:10px; }
  .biology-capture .bc-remission-evidence { gap:3px; padding-top:8px; margin-top:8px; }
  .biology-capture .bc-remission-evidence > div { font-size:10px; grid-template-columns:12px minmax(0,1fr) auto; gap:4px; }
  .biology-capture .bc-remission-evidence small { font-size:9px; }
  .biology-capture .bc-score-status { margin-top:-7px; gap:3px; min-height:32px; }
  .biology-capture .bc-score-update { font-size:13px; }
  .biology-capture .bc-updated-source { font-size:11px; }
  .biology-capture .bc-score-history { margin-top:8px; }
  .biology-capture .bc-score-plot { height:44px; }
  .biology-capture .bc-score h4 { font:400 11px/1.3 Figtree,sans-serif; margin-top:8px; letter-spacing:0; }
  .biology-capture .bc-score-axis { font-size:10px; margin-top:4px; }
  .biology-capture .bc-footer { padding-top:13px; gap:25px; }
  .biology-capture .bc-copy p { font-size:15px; line-height:1.4; }
  .biology-capture .bc-capture-method { margin-bottom:3px; }
  .biology-capture .bc-selected-timing { margin:0; }
  .biology-capture .bc-control-area { gap:16px; }
}
@media(max-width:1100px) and (min-width:901px) {
  .biology-capture .bc-stage { grid-template-columns:minmax(300px,1.2fr) 150px minmax(260px,1fr); gap:25px; }
  .biology-capture .bc-ubi-seat { width:150px; height:210px; }
  .biology-capture .bc-hub::after { top:210px; }
  .biology-capture .bc-source { font-size:13px; grid-template-columns:32px 100px minmax(0,1fr); gap:6px; }
}
@media(max-width:900px) {
  .biology-capture .bc-stage { height:auto; grid-template-columns:140px minmax(0,1fr); gap:25px 15px; }
  .biology-capture .bc-inputs { grid-column:1/-1; }
  .biology-capture .bc-source-nav { height:480px; }
  .biology-capture .bc-hub { grid-column:1; grid-row:2; align-self:center; }
  .biology-capture .bc-ubi-seat { width:140px; height:185px; }
  .biology-capture .bc-hub::after { top:185px; width:80px; }
  .biology-capture .bc-score { grid-column:2; grid-row:2; }
  .biology-capture .bc-selected-method, .biology-capture .bc-selected-timing { font-size:12px; }
  .biology-capture .bc-signal-plot { height:68px; }
  .biology-capture .bc-footer { grid-template-columns:1fr; gap:18px; }
  .biology-capture .bc-control-area { justify-content:space-between; }
}
@media(max-width:600px) {
  .biology-capture .bc-stage { grid-template-columns:minmax(0,1fr); }
  .biology-capture .bc-hub { grid-column:1; grid-row:2; }
  .biology-capture .bc-score { grid-column:1; grid-row:3; }
  .biology-capture .bc-source-nav { grid-template-rows:repeat(6,78px); height:auto; }
  .biology-capture .bc-source { font-size:15px; grid-template-columns:40px 112px minmax(0,1fr); gap:8px; }
}


.biology-capture .bc-gauge-tip { fill:#fff; stroke:var(--score-color,#bc6470); stroke-width:1.2; }
