.bulk-hero{padding-bottom:32px}.bulk-analysis{scroll-margin-top:24px}.bulk-back{color:var(--teal);font-size:11px;white-space:nowrap}.bulk-controls{display:flex;align-items:flex-end;gap:16px;padding:19px 21px;border:1px solid var(--line);border-radius:2px;background:#fff}.bulk-controls .control{min-width:125px}.bulk-controls select{max-width:none}.bulk-controls .bulk-cohort-control{flex:2.5;min-width:220px}.bulk-controls .bulk-gene-control{flex:1;min-width:130px}.bulk-download{flex:none;height:38px;background:var(--teal);border:1px solid var(--teal);color:#fff;border-radius:4px;font-size:11px;padding:0 14px}.bulk-download:hover{background:#005F94}.bulk-download:disabled{opacity:.5;cursor:default}.bulk-cohort-context{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:21px 2px 9px}.bulk-cohort-context strong{font-family:var(--serif);font-size:20px;font-weight:400}.bulk-cohort-context p{color:#595959;font-size:11px;line-height:1.8;max-width:820px;margin:6px 0 0}.bulk-scope-note{font-size:11px;line-height:1.8;color:#595959;margin:8px 0 22px;max-width:1050px}.bulk-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:18px}.bulk-metric{border:1px solid var(--line);border-radius:2px;padding:19px 17px;background:#fff;min-width:0}.bulk-metric-label{font-size:11px;letter-spacing:1.05px;text-transform:uppercase;color:#595959;line-height:1.7}.bulk-metric-value{font-family:var(--serif);font-size:28px;letter-spacing:-.5px;margin:6px 0;color:#222222}.bulk-metric-note{font-size:11px;color:#595959;line-height:1.6}.bulk-warning{border:1px solid #D9C49B;border-left:3px solid #A36A00;background:#FFFCF5;padding:12px 15px;border-radius:3px;font-size:11px;color:#754300;line-height:1.8;margin-bottom:14px}.bulk-chart-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:20px;margin-top:20px;margin-bottom:43px}.bulk-card{border:1px solid var(--line);border-radius:2px;padding:24px;background:#fff;min-width:0}.bulk-ci-option{display:flex;align-items:center;gap:5px;color:#595959;font-size:11px;white-space:nowrap}.bulk-ci-option input{accent-color:var(--teal);width:12px;height:12px}.bulk-chart{min-height:260px;position:relative}.bulk-chart svg{width:100%;height:auto;display:block;overflow:visible}.bulk-chart-empty{min-height:260px;display:flex;align-items:center;justify-content:center;padding:25px;color:#595959;font-size:11px;line-height:1.9;text-align:center;border-radius:4px;background:#fff}.bulk-km-legend{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;font-size:11px;color:#595959;margin-top:13px}.bulk-km-legend span{display:flex;align-items:center;gap:6px}.bulk-km-legend i{width:18px;height:3px;display:inline-block}.bulk-low{background:#0072B2}.bulk-high{background:#D55E00;border:0}.bulk-readout{font-size:11px;color:#595959;line-height:1.7;text-align:center;min-height:30px;margin:12px 0 3px}.bulk-details{margin-top:17px;border-top:1px solid #D9DDE3;padding-top:14px}.bulk-details dl{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px 15px;font-size:11px;margin:0}.bulk-details dt{color:#595959;line-height:1.7}.bulk-details dd{margin:0;color:#333333;text-align:right;line-height:1.7}.bulk-small-note{font-size:11px;line-height:1.8;color:#595959;margin:16px 0 0}.bulk-risk-tables{margin-top:15px;overflow:auto}.bulk-risk-tables details{font-size:11px;color:#595959}.bulk-risk-tables summary{cursor:pointer;margin-bottom:10px;color:#333333}.bulk-risk-tables table{border-collapse:collapse;width:100%;min-width:280px;margin-bottom:13px;font-size:11px}.bulk-risk-tables caption{text-align:left;color:#595959;margin:8px 0}.bulk-risk-tables th,.bulk-risk-tables td{font-weight:400;text-align:right;padding:5px 8px;border-bottom:1px solid #E5E7EB;white-space:nowrap}.bulk-risk-tables th:first-child,.bulk-risk-tables td:first-child{text-align:left;color:#595959}.bulk-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:45px;margin-top:25px}.bulk-method-grid h3{font-family:var(--serif);font-size:21px;font-weight:400;margin:0 0 15px}.bulk-method-grid ul{padding-left:15px;margin:0}.bulk-method-grid p,.bulk-method-grid li{font-size:11px;color:#595959;line-height:1.9;margin:0 0 9px}.bulk-method-grid strong{font-weight:500;color:#333333}.bulk-card .card-heading h3{font-size:23px}.bulk-loading-chart{color:#595959;font-size:11px;padding:85px 20px;text-align:center;min-height:260px}.bulk-ph-note{color:#754300!important}.bulk-curve-focus{stroke:#777777;stroke-width:1;stroke-dasharray:3 4;pointer-events:none}.bulk-axis{fill:#595959;font:12px Arial,sans-serif}.bulk-axis-label{fill:#333333;font:12px Arial,sans-serif}.bulk-grid-line{stroke:#E5E7EB;stroke-width:1}.bulk-chart-title{fill:#333333;font:12px Arial,sans-serif}.bulk-response-count{fill:#595959;font:12px Arial,sans-serif}
@media(max-width:1200px){.bulk-controls{gap:12px;padding:16px}.bulk-controls .bulk-cohort-control{min-width:180px;flex:2}.bulk-chart-grid{grid-template-columns:1.25fr 1fr;gap:16px}.bulk-card{padding:20px}.bulk-metric-value{font-size:25px}.bulk-download{font-size:11px;padding:0 11px}.bulk-details dl{gap:8px;font-size:11px}}
@media(max-width:950px){.bulk-controls{flex-wrap:wrap}.bulk-controls .bulk-cohort-control{flex:1 1 100%}.bulk-controls .bulk-gene-control,.bulk-controls .control{flex:1 1 25%}.bulk-chart-grid{grid-template-columns:1fr}.bulk-response-card .bulk-chart{max-width:520px;margin:auto}.bulk-details dl{font-size:11px}.bulk-metric{padding:16px 12px}.bulk-method-grid{gap:25px}.bulk-metric-value{font-size:24px}}
@media(max-width:700px){.bulk-controls{padding:13px;gap:12px}.bulk-controls .bulk-cohort-control{min-width:0}.bulk-controls .bulk-gene-control,.bulk-controls .control{min-width:100px;flex:1 1 calc(50% - 6px)}.bulk-download{width:100%;flex:1 1 100%;font-size:11px}.bulk-cohort-context{gap:10px}.bulk-cohort-context strong{font-size:18px}.bulk-cohort-context p{font-size:11px}.bulk-cohort-context .small-badge{display:block;font-size:11px}.bulk-scope-note{font-size:11px}.bulk-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.bulk-metric-value{font-size:27px}.bulk-metric-label{font-size:11px}.bulk-metric-note{font-size:11px}.bulk-card{padding:19px 15px}.bulk-chart-grid{gap:17px;margin-top:17px}.bulk-card .card-heading h3{font-size:22px}.bulk-km-legend{font-size:11px;gap:15px}.bulk-method-grid{grid-template-columns:1fr;gap:28px}.bulk-warning{font-size:11px;padding:10px 12px}.bulk-readout{font-size:11px}.bulk-back{font-size:11px}}

@media(max-width:700px){.sidebar .nav-link:nth-child(2){display:flex}.sidebar .nav-link:nth-child(3){display:none}}

.bulk-coverage-table { overflow-x: auto; }
.bulk-coverage-table table { width: 100%; border-collapse: collapse; font-size: 13px; text-align: left; }
.bulk-coverage-table th, .bulk-coverage-table td { padding: 14px 12px; border-bottom: 1px solid var(--border, #D9DDE3); vertical-align: top; }
.bulk-coverage-table th { color: #0072B2; }
.bulk-coverage-table td:first-child { min-width: 150px; font-weight: 600; }
.bulk-coverage-table td:last-child { min-width: 280px; line-height: 1.6; }

.bulk-controls { flex-wrap: wrap; }
.bulk-cutoff-summary { display: flex; flex-wrap: wrap; gap: 10px; margin: 14px 0; }
.bulk-cutoff-chip { border: 1px solid var(--line); padding: 7px 11px; border-radius: 4px; color: var(--muted); font-size: 11px; }
.bulk-cutoff-chip.is-active { border-color: var(--teal); background: #F2F6FA; color: var(--teal); }

/* Journal-style chart framing: retain data geometry and reference nodes. */
.bulk-grid-line{visibility:hidden}.bulk-axis-line{stroke:#333333;stroke-width:1;fill:none}
.bulk-km-legend i{width:22px}.bulk-km-legend,.bulk-risk-tables table,.bulk-details dl{font-variant-numeric:tabular-nums}
.bulk-details dt,.bulk-details dd{overflow-wrap:anywhere}.bulk-card,.bulk-metric{box-shadow:none}

/* KM figure: solid curves, clear hierarchy and visible source risk counts. */
.bulk-chart-grid{grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);align-items:start}
.bulk-km-card .card-heading{align-items:flex-start;gap:18px}
.bulk-km-card .card-heading h3{font-size:21px;line-height:1.35;letter-spacing:-.25px}
.bulk-km-card .card-note{font-size:12px;line-height:1.65;margin:10px 0 14px}
.bulk-km-summary{display:flex;flex-wrap:wrap;gap:8px 20px;border-top:1px solid #E5E7EB;padding-top:12px;margin:0 0 14px;color:#333333;font-size:12px;font-variant-numeric:tabular-nums}
.bulk-km-legend{justify-content:flex-start;gap:12px 24px;font-size:12px;color:#333333;margin:0 0 6px}
.bulk-km-legend i{height:3px;width:25px;flex:none;border:0}
.bulk-km-legend .bulk-low{background:#0072B2}.bulk-km-legend .bulk-high{background:#D55E00}
.bulk-km-card .bulk-chart{max-width:850px;margin:0 auto}
.bulk-km-line{stroke-dasharray:none}
.bulk-axis-tick{stroke:#333333;stroke-width:1}
.bulk-curve-focus{stroke:#AAB1B9;stroke-dasharray:none}
.bulk-km-card .bulk-readout{font-size:12px;line-height:1.65;text-align:left;margin:10px 0 0;min-height:40px}
.bulk-risk-tables{border-top:1px solid #E5E7EB;padding-top:12px;margin-top:12px}
.bulk-risk-tables summary{font-size:12px;font-weight:600;letter-spacing:.1px;margin:0 0 10px}
.bulk-risk-tables table{font-size:12px;margin-bottom:0}
.bulk-risk-tables caption{font-size:11px;margin:0 0 8px}
.bulk-risk-tables th,.bulk-risk-tables td{padding:8px 10px}
.bulk-risk-tables thead th{background:#F7F8FA;color:#444444}
.bulk-risk-tables tbody th:first-child{font-weight:500;color:#222222}
.bulk-risk-tables tbody th:first-child:before{content:'';display:inline-block;width:18px;height:3px;margin:0 7px 3px 0}
.bulk-risk-tables tr[data-group=low] th:first-child:before{background:#0072B2}
.bulk-risk-tables tr[data-group=high] th:first-child:before{background:#D55E00}
.bulk-response-card .bulk-chart{max-width:540px;margin:0 auto}
@media(max-width:1280px){.bulk-chart-grid{grid-template-columns:minmax(0,1fr)}}
@media(max-width:700px){.bulk-km-card .card-heading h3{font-size:19px}.bulk-km-summary{gap:7px 16px}.bulk-km-legend{gap:10px 18px}.bulk-km-card .bulk-readout{min-height:0}.bulk-risk-tables th,.bulk-risk-tables td{padding:7px 8px}}

/* BEST-inspired two-panel KM figure with one shared time projection. */
.bulk-km-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.bulk-figure-download{background:#fff;border:1px solid #CBD2DA;border-radius:3px;color:#333;font-size:11px;white-space:nowrap;padding:7px 10px}
.bulk-figure-download:hover{border-color:#0072B2;color:#0072B2;background:#F7FAFC}
.bulk-figure-download:disabled{opacity:.45;cursor:default}
.bulk-km-card .bulk-chart{max-width:800px;overflow-x:auto}
.bulk-km-card .bulk-chart svg{min-width:540px}
.bulk-km-card .bulk-readout{border-top:1px solid #E5E7EB;margin-top:10px;padding-top:10px;color:#595959;font-size:11px;min-height:30px}
.bulk-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:700px){.bulk-km-card .card-heading{flex-wrap:wrap;gap:10px}.bulk-km-actions{width:100%;justify-content:flex-start;gap:18px}.bulk-km-card .card-note{font-size:11px}.bulk-km-card .bulk-chart{margin-right:-5px}.bulk-km-card .bulk-chart svg{min-width:520px}}
