/* JLCR-specific layout additions to the copied BronCare base styles. */
.brand strong {font-size: 30px; letter-spacing: .06em;}
.metrics {display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 16px;}
.form-grid {display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 24px;}
.add-patient summary {width: fit-content; cursor: pointer; list-style: none;}
.add-patient summary::-webkit-details-marker {display: none;}
.patient-form {margin-top: 24px;}
.empty-state {text-align: center; padding: 48px 20px; color: var(--muted);}
.description-list {display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin: 0;}
.description-list dt {font-size: 13px; color: var(--muted);}
.description-list dd {margin: 6px 0 0; overflow-wrap: anywhere;}
.pagination {display: flex; gap: 24px; margin-top: 20px;}
@media (max-width: 1100px) {.metrics {grid-template-columns: repeat(3, minmax(0,1fr));}}
@media (max-width: 760px) {
 .pro-frame {padding-left: 0;} .sidebar {position: static; width: auto; padding: 16px 20px;}
 .sidebar .brand {margin-bottom: 8px;} .nav-group {display: flex; margin-top: 0; gap: 12px;}
 .nav-group h2, .sidebar-note {display: none;}
 .workspace-main {padding: 24px 16px;} .workspace-top {padding: 12px 16px; height: auto; flex-wrap: wrap;}
 .metrics, .form-grid, .description-list {grid-template-columns: 1fr;}
 .page-header {flex-direction: column;} .auth-layout {grid-template-columns: 1fr;}
 .auth-story {padding: 30px 24px; gap: 24px;} .auth-story h1 {font-size: 30px;}
 .auth-panel {padding: 36px 24px;} h1 {font-size: 26px;}
}
/* Clinical modules use plain anchor sections and native disclosure elements. */
.section-nav {display: flex; flex-wrap: wrap; gap: 10px 22px; margin-bottom: 24px;}
section[id], article[id] {scroll-margin-top: 24px;}
.clinical-metrics .metric-card {text-decoration: none; min-width: 0;}
.tnm-value {display: block; font-size: 18px; line-height: 1.5; margin: 10px 0; overflow-wrap: anywhere;}
.status-badge {display: inline-block; border-radius: 6px; padding: 3px 8px; font-size: 12px; color: var(--muted); background: var(--paper);}
.status-badge.confirmed {color: var(--teal); background: var(--teal-soft);}
.clinical-timeline {list-style: none; padding: 0; margin: 24px 0;}
.timeline-event {display: grid; grid-template-columns: 130px minmax(0,1fr); gap: 24px; padding: 0 0 20px;}
.timeline-date {font-weight: 650; padding-top: 20px;}
.timeline-date small {display: block; font-weight: 400;}
.timeline-card {border-left: 4px solid var(--teal); min-width: 0;}
.timeline-card p {margin: 12px 0; overflow-wrap: anywhere;}
.timeline-card small {overflow-wrap: anywhere;}
.record-heading {display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px;}
.record-heading h2, .record-heading h3 {margin: 0;}
.clinical-record, .source-record {margin-top: 14px;}
.clinical-record:target {outline: 2px solid var(--teal);}
.record-summary, .original-text, .raw-json {white-space: pre-wrap; overflow-wrap: anywhere;}
.raw-json {background: var(--paper); padding: 16px; max-height: 420px; overflow: auto; font-size: 13px;}
.clinical-record summary, .source-record summary {cursor: pointer; overflow-wrap: anywhere;}
.form-field.wide {grid-column: 1 / -1;}
.form-field textarea, .form-field select {width: 100%; min-width: 0;}
.form-field textarea {padding: 12px; border: 1px solid var(--line); border-radius: 8px; resize: vertical;}
@media (max-width: 760px) {
 .timeline-event {grid-template-columns: minmax(0,1fr); gap: 6px;}
 .timeline-date {padding-top: 0;}
 .timeline-date small {display: inline; margin-left: 12px;}
 .record-heading .button {max-width: 100%;}
}

/* Complete registry layout. Tables scroll inside their cards on narrow screens. */
.metrics {grid-template-columns: repeat(4,minmax(0,1fr));}
.summary-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.search-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
.demo-banner {padding:12px 16px;margin-bottom:24px;border:1px solid #d9e3cf;border-radius:8px;background:#f3f6ee;color:#455c38;font-size:13px;letter-spacing:.03em;}
.demo-banner span {display:inline-block;margin-left:10px;}
.actions {display:flex;flex-wrap:wrap;align-items:center;gap:12px;}
.record-actions {margin-bottom:16px;}
.card,.form-field,.workspace-main,.workspace-top,.description-list>div {min-width:0;}
.card {overflow-wrap:anywhere;}
.table-wrap {max-width:100%;overflow:auto;}
.about-page {max-width:850px;margin:8vh auto;padding:28px;}
@media (max-width:1100px) {.summary-grid {grid-template-columns:1fr;}.search-grid {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:760px) {
 .nav-group {flex-wrap:wrap;gap:4px 12px;}.nav-group a {padding:8px 0;}
 .workspace-top>div {flex-wrap:wrap;gap:12px;}.workspace-top {gap:10px;}
 .metrics {grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
 .summary-grid,.search-grid {grid-template-columns:minmax(0,1fr);}
 .metric-card {padding:16px;}.metric-value {font-size:32px;}
 .clinical-metrics .tnm-value {font-size:15px;}.demo-banner span {display:block;margin:4px 0 0;}
 .pagination {flex-wrap:wrap;}.clinical-record,.source-record {padding:18px;}
}

.wide-table table {min-width:720px;}

/* Lung cancer structured overview and cohort preview. */
.cancer-card h3 {font-size:14px;color:var(--muted);line-height:1.6;margin:0;}
.cancer-value {font-size:18px;font-weight:650;line-height:1.65;margin:14px 0;overflow-wrap:anywhere;}
.summary-note {font-size:12px;line-height:1.7;margin-bottom:0;}
.cohort-grid,.summary-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;}
.cohort-grid>.card {min-width:0;}
@media (max-width:760px) {
 .cancer-metrics,.cohort-grid,.summary-grid {grid-template-columns:minmax(0,1fr);}
 .cancer-value {font-size:18px;}.cancer-card {padding:18px;}
}

.public-return {font-size:13px;line-height:1.9;margin:24px 0 0;color:var(--muted);}
