/* Application layouts; component appearance lives in design-system.css. */
header, #nav, main { max-width: var(--ds-content-width); margin: auto; }
header { display: flex; align-items: center; flex-wrap: wrap; gap: .65rem; padding: 1.25rem 1.4rem; }
header .brand { margin-right: auto; }
header .about-link { min-height: var(--ds-control-height); display: inline-flex; align-items: center; padding: .5rem .3rem; }
header .demo-switch { margin: 0; }
header .demo-switch summary { padding-inline: .5rem; }
header .demo-switch label { max-width: 24rem; }
#nav { display: flex; flex-wrap: wrap; gap: .5rem; padding: 0 1.4rem 1rem; }
#nav button { white-space: normal; min-width: 0; }
.secondary-navigation { display: flex; flex-wrap: wrap; flex-basis: 100%; gap: .5rem; padding-block: .5rem; }
.optional-patient-card { margin-block: .4rem; border-bottom: 1px solid var(--md-divider); }
.optional-patient-card > summary { min-height: var(--ds-control-height); padding-block: .85rem; font-weight: 600; }
.optional-patient-card > .card { margin-block: .5rem 1rem; }
.optional-patient-group { margin-block: .6rem; border-bottom: 1px solid var(--md-divider); }
.optional-patient-group > summary { min-height: var(--ds-control-height); padding-block: .85rem; font-weight: 600; }
.optional-patient-group > .optional-patient-card { margin-left: .5rem; }
.optional-patient-heading { margin-block: 1.75rem .75rem; }
.onboarding-optional { margin-block: 1.5rem; }
.legal-footer { display: flex; flex-wrap: wrap; gap: .75rem 1.25rem; max-width: var(--ds-content-width); margin: auto; padding: 1rem 1.4rem 2rem; border-top: 1px solid var(--md-divider); font-size: var(--ds-text-small); }
.legal-footer a { min-height: var(--ds-control-height); display: inline-flex; align-items: center; }
.legal-login-links { font-size: var(--ds-text-small); }
main { padding: .75rem 1.4rem 3rem; scroll-margin-block-start: .5rem; }
.grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.card { margin-bottom: 1rem; }
.wide { grid-column: 1 / -1; }
.row { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; padding: 1rem 0; border-top: 1px solid var(--border); }
.row:first-of-type { border-top: 0; }
.value { font-size: 1.8rem; font-weight: 700; }
#status:not([hidden]):not(:empty) { display: flex; align-items: flex-start; flex-wrap: wrap; gap: .6rem; max-width: calc(var(--ds-content-width) - 2.8rem); margin: .25rem auto 1rem; padding: .9rem 1rem; border: 1px solid var(--md-control-border); border-radius: var(--md-control-radius); background: var(--md-surface-quiet); color: var(--md-text); overflow-wrap: anywhere; }
#status .status-message { flex: 1 1 240px; margin: .45rem 0; min-width: 0; }
#status.is-error { background: var(--md-error-background); color: var(--md-error-text); border-color: var(--md-error-text); }
#status.is-success { background: var(--md-success-background); color: var(--md-success-text); }
#status .status-close, #status .status-action { flex: 0 1 auto; }
@media (max-width: 640px) {
  header { padding: 1rem; gap: .4rem .65rem; }
  header .brand { flex-basis: 100%; margin: 0 0 .1rem; }
  header .brand-name { font-size: 1.1rem; }
  header .brand-description { font-size: var(--ds-text-small); }
  header .about-link { margin-right: auto; }
  header #verified-logout, header #shared-cards-switch { padding-inline: .75rem; width: auto; }
  #nav { padding: 0 1rem 1rem; gap: .4rem; }
  #nav button { flex: 1 1 auto; padding-inline: .65rem; }
  main { padding: .75rem 1rem 2rem; }
  .grid { grid-template-columns: minmax(0, 1fr); }
  .row { flex-direction: column; gap: .5rem; }
  #status:not([hidden]):not(:empty) { margin: .25rem 1rem 1rem; max-width: none; }
}
.patient-heading{display:flex;align-items:start;justify-content:space-between;gap:24px;margin:10px 0 22px}.eyebrow{font-size:max(var(--ds-text-small), .72rem);font-weight:700;letter-spacing:.15em;color:var(--brand);margin-bottom:12px}.saved-label{font-size:max(var(--ds-text-small), .76rem);color:var(--muted);white-space:nowrap;padding-top:16px}.patient-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:20px;align-items:start}.patient-grid .card{margin-bottom:20px}.identity-card{display:flex;align-items:center;justify-content:space-between;gap:24px}.block-heading{display:flex;gap:14px;margin-bottom:10px}.block-heading h2{margin-bottom:2px}.block-heading p{font-size:max(var(--ds-text-small), .85rem);margin:0 0 12px}.section-number{font-size:max(var(--ds-text-small), .78rem);color:var(--brand);background:var(--md-surface-quiet);width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex:none}.ability-row,.metric-row{display:flex;width:100%;justify-content:space-between;align-items:center;gap:18px;text-align:left;background:transparent;border:0;border-top:1px solid var(--border);border-radius:0;padding:15px 0}.ability-row:hover,.metric-row:hover{background:var(--md-surface-quiet)!important}.ability-row>span:first-child{max-width:58%}.answer{text-align:right;font-size:max(var(--ds-text-small), .86rem);color:var(--muted)}.answer.filled{font-weight:600;color:var(--brand)}.answer small,.metric-row small{display:block;font-size:max(var(--ds-text-small), .7rem);font-weight:400;color:var(--muted)}.metric-row strong{white-space:nowrap;font-size:1.45rem}.metric-row strong small{display:inline;font-size:max(var(--ds-text-small), .8rem)}.subtle{color:var(--brand);border:0;padding-left:0;background:transparent;font-size:max(var(--ds-text-small), .87rem)}.empty-note{color:var(--muted);font-size:max(var(--ds-text-small), .9rem);padding:10px 0}.settings-links{display:grid;gap:12px}.settings-links button{text-align:left}.question{font-size:1.5rem;font-weight:700}.choice-list{border:0;padding:0;margin:15px 0}.choice-list legend{color:var(--muted);font-size:max(var(--ds-text-small), .8rem)}.choice-list label{position:relative;margin:8px 0}.choice-list input{position:absolute;opacity:0;width:1px;min-height:1px}.choice-list span{display:block;border:1px solid var(--md-control-border);border-radius:12px;padding:15px}.choice-list input:checked+span{border-color:var(--brand);background:var(--md-surface-quiet)}.choice-list input:focus-visible+span{outline:3px solid var(--md-focus);outline-offset:4px}.extra-fields{color:var(--muted);font-size:max(var(--ds-text-small), .85rem)}.extra-fields summary{min-height:var(--ds-control-height);padding:12px 0;cursor:pointer}@media(max-width:720px){.patient-grid{grid-template-columns:1fr}.patient-heading{display:block}.saved-label{display:none}.identity-card{align-items:flex-start;flex-direction:column;gap:10px}.patient-grid .wide{grid-column:auto}.ability-row>span:first-child{max-width:55%}}
.card-jump-nav{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:-2px 0 18px;padding:4px 0 8px;scrollbar-width:thin}.card-jump-nav span{font-size:var(--ds-text-small);color:var(--muted)}.card-jump-nav a{white-space:normal;color:var(--brand);background:var(--md-surface);border:1px solid var(--md-control-border);border-radius:999px;min-height:var(--ds-control-height);display:inline-flex;align-items:center;padding:.65rem .75rem;text-decoration:none;font-size:max(var(--ds-text-small), .84rem);font-weight:600}.card-jump-nav a:hover{background:var(--md-surface-quiet)}.card-jump-nav a:focus-visible{outline:3px solid var(--md-focus);outline-offset:2px}
.ability-details{border-top:1px solid var(--border);margin:0}.ability-details>summary{color:var(--brand);font-size:max(var(--ds-text-small), .88rem);min-height:var(--ds-control-height);padding:13px 0}.ability-details[open]>summary{font-weight:600}.ability-details .ability-row:first-of-type{border-top:1px solid var(--border)}
[hidden]{display:none!important}
.timeline-item time small{display:block;max-width:12rem;white-space:normal;margin-top:5px;font-size:max(var(--ds-text-small), .75rem)}
.quick-checkin{display:flex;justify-content:space-between;align-items:center;gap:24px;border-color:var(--md-divider);background:var(--md-surface)}.quick-checkin h2{margin-bottom:5px}.quick-checkin .muted{max-width:620px;margin-bottom:8px}.checkin-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.checkin-actions button{white-space:nowrap}.last-checkin{font-size:max(var(--ds-text-small), .85rem);margin:8px 0 0}@media(max-width:760px){.quick-checkin{align-items:stretch;flex-direction:column}.checkin-actions{justify-content:stretch}.checkin-actions button{flex:1}}
.diagnosis-verification{display:inline-block;font-size:max(var(--ds-text-small), .8rem);color:var(--md-warning-text);background:var(--md-warning-background);border-radius:9px;padding:5px 9px;margin:5px 0}.diagnosis-verification.verified{color:var(--md-success-text);background:var(--md-success-background)}.doctor-diagnosis{border-left:5px solid var(--brand)}
.genetics-card{border-color:var(--md-divider)}.genetic-row{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:16px 0;border-top:1px solid var(--border)}.genetic-row:first-of-type{border-top:0}.genetic-row p{margin:5px 0}.genetic-row>.actions{justify-content:flex-end;margin-top:0}@media(max-width:720px){.genetic-row{display:block}.genetic-row>.actions{justify-content:flex-start;margin-top:12px}}
.genetics-subsection+.genetics-subsection{border-top:1px solid var(--border);margin-top:20px;padding-top:20px}.therapy-row{display:flex;justify-content:space-between;gap:16px;padding:14px 0;border-top:1px solid var(--border)}.therapy-row:first-of-type{border-top:0}.therapy-row strong{display:block;margin:7px 0}.therapy-row p{margin:4px 0}.status-pill{display:inline-block;border-radius:999px;background:var(--md-surface-quiet);color:var(--md-text);padding:4px 9px;font-size:max(var(--ds-text-small), .78rem);font-weight:700}.status-pill.stopped{background:var(--md-background);color:var(--md-text-muted)}.status-pill.planned{background:var(--md-surface-quiet);color:var(--md-text)}@media(max-width:720px){.therapy-row{display:block}.therapy-row>.button{margin-top:10px}}
.cohort-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.cohort-stat{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:0}.cohort-stat strong{font-size:2rem;color:var(--brand)}@media(max-width:720px){.cohort-grid{grid-template-columns:1fr 1fr}.cohort-stat{display:block}}@media(max-width:430px){.cohort-grid{grid-template-columns:1fr}}
.registry-home,.registry-status{display:flex;align-items:center;justify-content:space-between;gap:24px;border-color:var(--md-divider)}.registry-home p,.registry-status p{margin-bottom:0}.registry-status.active{background:var(--md-surface-quiet);border-color:var(--md-divider)}.plain-list{padding-left:22px}.plain-list li{margin:10px 0}.registry-check{display:flex;gap:12px;align-items:flex-start;padding:14px 0;border-top:1px solid var(--border)}.registry-check:first-of-type{border-top:0}.registry-check>span{color:var(--brand);font-size:1.2rem;font-weight:700}.registry-check small{display:block;margin-top:3px}@media(max-width:720px){.registry-home,.registry-status{align-items:flex-start;flex-direction:column}}
.research-project{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid var(--border)}.research-project:first-of-type{border-top:0}.research-project p{margin:4px 0}.answer-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.answer-grid p{background:var(--md-background);border-radius:12px;padding:12px}@media(max-width:620px){.research-project{align-items:flex-start;flex-direction:column}.answer-grid{grid-template-columns:1fr}}
.summary-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px}.summary-block{break-inside:avoid}.summary-row{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:13px 0;border-top:1px solid var(--border)}.summary-row:first-of-type{border-top:0}.summary-row p{margin:3px 0}.summary-row small{display:block}.summary-value{text-align:right;font-size:1.2rem;font-weight:700;white-space:nowrap}.summary-value small{font-size:max(var(--ds-text-small), .72rem);font-weight:400}@media(max-width:650px){.summary-heading,.summary-row{flex-direction:column}.summary-value{text-align:left}}@media print{body{background:var(--md-surface);font-size:12pt}.demo,header,nav,button,#status{display:none!important}main{max-width:none;padding:0}.summary-heading{margin-bottom:12px}.summary-block{box-shadow:none;border-color:var(--md-control-border);border-radius:0;margin:0 0 10px;padding:14px}.summary-note{background:var(--md-surface);border:1px solid var(--md-control-border)}}
.participant-profile-card{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.participant-profile-card h2{margin-bottom:8px}.profile-place{font-weight:600;color:var(--brand)}@media(max-width:640px){.participant-profile-card{flex-direction:column;gap:8px}}
.registry-filters,.timeline-filters{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0}.registry-filters label{flex:1 1 210px;margin:0}.timeline-filters button{min-height:var(--ds-control-height);padding:.65rem .75rem}.timeline-filters button[aria-current=true]{background:var(--brand);color:var(--md-surface);border-color:var(--brand)}.timeline-month>h2{text-transform:capitalize;color:var(--muted);font-size:max(var(--ds-text-small), .95rem);margin:24px 0 10px}.timeline-list{padding:0 22px}.timeline-item{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:14px;padding:18px 0;border-top:1px solid var(--border)}.timeline-item:first-child{border-top:0}.timeline-marker{width:10px;height:10px;border-radius:50%;background:var(--brand);margin-top:10px}.timeline-item h3{margin:6px 0 3px;font-size:1.05rem}.timeline-item p{margin:3px 0}.timeline-item time{color:var(--muted);font-size:max(var(--ds-text-small), .82rem);white-space:nowrap}@media(max-width:640px){.timeline-item{grid-template-columns:12px 1fr}.timeline-item time{grid-column:2}}
.quality-stat{background:var(--md-background);border:1px solid var(--border);border-radius:14px;padding:16px}.quality-stat strong{display:block;font-size:1.7rem;color:var(--brand)}.quality-stat span,.quality-stat small{display:block}.quality-stat span{font-weight:700}.quality-stat small{margin-top:5px}
.clinical-card{border-color:var(--md-divider);background:var(--md-surface)}.clinical-card .identity-card{align-items:flex-start}.clinical-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.clinical-row{padding:12px 0;border-top:1px solid var(--border)}.clinical-row:nth-child(-n+2){border-top:0}.clinical-row strong,.clinical-row span,.clinical-row small{display:block}.clinical-row span{color:var(--brand);font-weight:600}.clinical-row small{margin-top:3px}.clinical-form-section{border:0;padding:0;margin:18px 0}.clinical-form-section legend{font-size:1.05rem;font-weight:700;margin-bottom:8px}.clinical-form-section label{font-weight:600}.clinical-form-section label small{display:block;font-weight:400;margin-top:2px}@media(max-width:650px){.clinical-grid{grid-template-columns:1fr}.clinical-row:nth-child(2){border-top:1px solid var(--border)}}
.source-grid,.magazine-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.source-grid article,.magazine-grid article{border:1px solid var(--border);border-radius:14px;padding:16px}.source-grid h3,.magazine-grid h3{margin:0 0 8px}.source-grid p,.magazine-grid p{font-size:max(var(--ds-text-small), .9rem)}.phase-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.phase-strip div{background:var(--md-background);border-radius:12px;padding:13px}.phase-strip strong,.phase-strip span{display:block}.phase-strip span{font-size:max(var(--ds-text-small), .82rem);margin-top:5px}.community-links{display:flex;gap:10px;flex-wrap:wrap}.magazine-number{font-size:1.6rem;font-weight:700;color:var(--md-text-muted)}.freshness-row,.moderation-request{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px 0;border-top:1px solid var(--border)}.freshness-row:first-of-type,.moderation-request:first-of-type{border-top:0}.freshness-row strong,.freshness-row small,.moderation-request small{display:block}.pill.stale{background:var(--md-warning-background);color:var(--md-warning-text)}.reminder-home{display:flex;align-items:center;justify-content:space-between;gap:20px;border-color:var(--md-warning-text)}.governance-card{border-color:var(--md-divider)}.governance-steps{padding-left:22px}.governance-steps li{margin:12px 0}.moderation-request>div:last-child{text-align:right}.trend-summary{background:var(--md-background);border-radius:12px;padding:12px;font-size:max(var(--ds-text-small), .9rem)}@media(max-width:760px){.source-grid,.magazine-grid,.phase-strip{grid-template-columns:1fr}.reminder-home,.freshness-row,.moderation-request{align-items:flex-start;flex-direction:column}.moderation-request>div:last-child{text-align:left}}
.feed-item{padding:18px 0;border-top:1px solid var(--border)}.feed-item:first-of-type{border-top:0}.feed-item h3{margin:7px 0}.feed-item small{display:block}hr{border:0;border-top:1px solid var(--border);margin:24px 0}
.account-preview{max-width:720px}.account-methods{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:var(--md-surface-quiet);border-radius:14px;padding:6px;margin-bottom:22px}.account-methods button{border:0;background:transparent}.account-methods button[aria-pressed=true]{background:var(--md-surface);color:var(--brand);font-weight:700;box-shadow:0 1px 5px color-mix(in srgb,var(--md-brand) 10%,transparent)}.consent-line{display:flex;gap:8px;align-items:flex-start;font-weight:400}.consent-line input{flex:none}.account-foundation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.account-foundation div{background:var(--md-background);border-radius:12px;padding:15px}.account-foundation strong,.account-foundation span{display:block}.account-foundation span{font-size:max(var(--ds-text-small), .86rem);color:var(--muted);margin-top:6px}@media(max-width:720px){.account-foundation{grid-template-columns:1fr}}
.value-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid var(--border);border-radius:14px;overflow:hidden}.value-table>div{padding:16px;border-bottom:1px solid var(--border)}.value-table>div:nth-child(odd){border-right:1px solid var(--border)}.value-table strong,.value-table span,.value-table small{display:block}.value-table span{margin:6px 0}.value-table small{color:var(--brand);font-weight:600}@media(max-width:720px){.value-table{grid-template-columns:1fr}.value-table>div:nth-child(odd){border-right:0}}
.search-box{position:sticky;top:0;z-index:3;box-shadow:0 8px 24px color-mix(in srgb,var(--md-brand) 4%,transparent)}.search-result{display:flex;align-items:center;justify-content:space-between;gap:22px;background:var(--md-surface);border:1px solid var(--border);border-radius:16px;padding:18px 20px;margin-bottom:12px}.search-result h2{margin:4px 0}.search-result p{margin:4px 0;color:var(--muted)}.search-result button{flex:none}@media(max-width:640px){.search-result{align-items:stretch;flex-direction:column}.search-result button{width:100%}}
.research-review{margin:0}.review-controls{min-width:285px}.review-controls label{font-weight:500;text-align:left}.review-controls select{min-width:250px}.project-create{border:1px solid var(--border);border-radius:14px;padding:8px 16px;margin:20px 0}.project-create>summary{min-height:var(--ds-control-height)}@media(max-width:760px){.review-controls{min-width:0;width:100%}.review-controls select{min-width:0}}
.policy-row,.pilot-review-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding:18px 0;border-top:1px solid var(--border)}.policy-row:first-of-type,.pilot-review-row:first-of-type{border-top:0}.policy-row p,.pilot-review-row p{margin:5px 0}.policy-row small{display:block}.policy-row>div:last-child{text-align:right;max-width:42%}.pilot-readiness{border-color:var(--md-warning-text)}.pilot-review-row h3{margin:7px 0;font-size:1.05rem}.pilot-review-row>div:first-child{max-width:620px}.pilot-review-row .review-controls{min-width:320px}.pilot-review-row textarea{min-height:92px}.pilot-review-row label{font-weight:600;text-align:left}@media(max-width:760px){.policy-row,.pilot-review-row{flex-direction:column}.policy-row>div:last-child{text-align:left;max-width:none}.pilot-review-row .review-controls{min-width:0;width:100%}}
.monthly-review,.card-progress{display:flex;align-items:center;justify-content:space-between;gap:24px}.monthly-review{border-color:var(--md-divider)}.monthly-review p,.card-progress p{margin-bottom:6px}.progress-track{height:9px;max-width:520px;background:var(--md-surface-quiet);border-radius:999px;overflow:hidden}.progress-track span{display:block;height:100%;background:var(--brand);border-radius:inherit}.card-progress details{min-width:220px}.progress-items{display:grid;gap:5px}.progress-items span{color:var(--muted);font-size:max(var(--ds-text-small), .84rem)}.progress-items span.done{color:var(--brand)}.periodic-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}@media(max-width:760px){.monthly-review,.card-progress{align-items:flex-start;flex-direction:column}.periodic-counts{grid-template-columns:1fr}.monthly-review button,.card-progress>button{width:100%}}
.review-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.review-overview .card{margin:0}.doctor-review-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid var(--border)}.doctor-review-row:first-of-type{border-top:0}.doctor-review-row strong{display:block}.doctor-review-row p{margin:5px 0}@media(max-width:700px){.review-overview{grid-template-columns:1fr}.doctor-review-row{align-items:flex-start;flex-direction:column}.doctor-review-row button{width:100%}}
.cohort-feasibility{border-color:var(--md-divider)}.feasibility-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 14px}.feasibility-sections{border:1px solid var(--border);border-radius:14px;margin:14px 0;padding:12px 16px}.feasibility-sections legend{font-weight:700;padding:0 5px}.feasibility-sections label{display:inline-block;margin:7px 18px 7px 0;font-weight:500}.feasibility-result{display:flex;align-items:center;gap:18px;background:var(--md-surface-quiet);border-radius:14px;padding:18px;margin-top:18px}.feasibility-result strong{font-size:2rem;color:var(--brand)}.feasibility-result span,.feasibility-result small{display:block}.feasibility-result.suppressed{background:var(--md-warning-background)}@media(max-width:760px){.feasibility-grid{grid-template-columns:1fr}.feasibility-result{align-items:flex-start;flex-direction:column;gap:5px}}
.clarification-card{border-color:var(--md-warning-text);background:var(--md-surface)}.clarification-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:16px 0;border-top:1px solid var(--border)}.clarification-row:first-of-type{border-top:0}.clarification-row strong{display:block}.clarification-row p{margin:5px 0}.clarification-history .clarification-row>div{max-width:780px}@media(max-width:700px){.clarification-row{flex-direction:column}.clarification-row button{width:100%}}
.decision-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:15px 0;border-top:1px solid var(--border)}.decision-row:first-child{border-top:0}.decision-row strong,.decision-row small{display:block}.decision-row small{margin-top:3px}.data-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.data-counts div{background:var(--md-background);border-radius:12px;padding:14px}.data-counts strong,.data-counts span{display:block}.data-counts strong{font-size:1.6rem;color:var(--brand)}.data-counts span{font-size:max(var(--ds-text-small), .82rem);color:var(--muted)}@media(max-width:640px){.decision-row{flex-direction:column;gap:8px}.data-counts{grid-template-columns:1fr 1fr}}
.representative-status{display:flex;align-items:center;justify-content:space-between;gap:22px;border-color:var(--md-divider)}.representative-status p{margin-bottom:6px}.access-sections{border:1px solid var(--border);border-radius:14px;padding:12px 16px;margin:18px 0}.access-sections legend{font-weight:700;padding:0 6px}.access-sections .plain-check{display:inline-flex;width:calc(50% - 8px);vertical-align:top}@media(max-width:680px){.representative-status{align-items:flex-start;flex-direction:column}.access-sections .plain-check{width:100%}}
.onboarding-hero{max-width:860px;margin:28px auto;background:var(--md-surface);border:1px solid var(--border);border-radius:24px;padding:clamp(24px,5vw,56px)}.onboarding-hero>h1{max-width:650px;font-size:clamp(2rem,5vw,3.2rem)}.onboarding-hero>.intro{max-width:720px;font-size:1.08rem}.onboarding-steps{display:grid;gap:4px;margin:30px 0}.onboarding-steps article{display:grid;grid-template-columns:44px 1fr;gap:16px;padding:17px 0;border-top:1px solid var(--border)}.onboarding-steps article:first-child{border-top:0}.onboarding-steps article>span{width:38px;height:38px;display:grid;place-items:center;background:var(--md-surface-quiet);color:var(--brand);border-radius:50%;font-weight:700}.onboarding-steps h2{margin:2px 0 4px}.onboarding-steps p{margin:0;color:var(--muted)}.onboarding-actions{margin-top:24px}.onboarding-actions button{min-height:var(--ds-control-height)}@media(max-width:560px){.onboarding-hero{margin:8px auto;padding:22px 18px}.onboarding-actions{display:grid}.onboarding-actions button{width:100%}}
.ai-boundaries{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:20px 0}.ai-boundaries div{background:var(--md-background);border-radius:13px;padding:15px}.ai-boundaries strong,.ai-boundaries span{display:block}.ai-boundaries span{font-size:max(var(--ds-text-small), .86rem);color:var(--muted);margin-top:5px}.ai-module{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:28px;padding:24px 0;border-top:1px solid var(--border)}.ai-module h3{font-size:1.15rem;margin:8px 0}.ai-module-main p{max-width:680px}.ai-module textarea{min-height:90px}.ai-module .review-controls label{font-weight:500}@media(max-width:780px){.ai-boundaries{grid-template-columns:1fr}.ai-module{grid-template-columns:1fr}.ai-module .review-controls{width:100%}}
.coverage-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:18px 0}.coverage-summary div{background:var(--md-background);border-radius:13px;padding:16px}.coverage-summary strong,.coverage-summary span{display:block}.coverage-summary strong{font-size:1.7rem;color:var(--brand)}.coverage-summary span{font-size:max(var(--ds-text-small), .83rem);color:var(--muted)}@media(max-width:650px){.coverage-summary{grid-template-columns:1fr}}
.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.guide-card{margin:0;border:1px solid var(--border);border-radius:14px;padding:7px 16px;background:var(--md-surface)}.guide-card summary{font-weight:700;min-height:var(--ds-control-height)}.guide-card p{color:var(--muted);font-size:max(var(--ds-text-small), .92rem)}.psychological-help{border-color:var(--md-divider)}.support-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0}.support-choice-grid article{border:1px solid var(--border);border-radius:16px;padding:20px}.support-choice-grid h3{margin:10px 0 5px}.support-choice-grid p{font-size:max(var(--ds-text-small), .92rem)}.choice-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--md-surface-quiet);color:var(--brand);font-weight:700}.urgent-help{border-color:var(--md-warning-text);background:var(--md-surface)}.urgent-help a:not(.button){font-weight:700;color:var(--brand)}.primary-link{background:var(--brand);color:var(--md-surface);border-color:var(--brand)}.urgent-note{margin-top:20px;padding:14px;border-left:4px solid var(--md-error-text);background:var(--md-error-background)}@media(max-width:700px){.guide-grid,.support-choice-grid{grid-template-columns:1fr}}
.comfort-options{border:0;margin:0;padding:0}.comfort-options legend{font-size:1.12rem;font-weight:700;margin-bottom:10px}.comfort-option{display:flex;align-items:flex-start;gap:12px;padding:16px 0;margin:0;border-top:1px solid var(--border);font-weight:400}.comfort-option input{flex:0 0 24px;margin:3px 0 0;min-height:24px}.comfort-option span,.comfort-option strong,.comfort-option small{display:block}.comfort-option small{margin-top:4px}

.about-link{color:var(--md-action);font-weight:600;text-underline-offset:.18rem}
.card-completion{display:block;width:100%;height:10px;margin:14px 0;border:0;border-radius:8px;overflow:hidden;accent-color:var(--brand)}.card-completion::-webkit-progress-bar{background:var(--md-surface-quiet);border-radius:8px}.card-completion::-webkit-progress-value{background:var(--brand);border-radius:8px}.card-completion::-moz-progress-bar{background:var(--brand);border-radius:8px}.clinical-row details{margin-top:6px}.clinical-row details summary{font-size:max(var(--ds-text-small), .82rem);color:var(--muted)}

.history-story-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}
/* Document photos remain legible without horizontal scrolling on phones. */
.document-preview img{display:block;max-width:100%;height:auto;margin:0 auto;border-radius:12px}
.document-preview.is-zoomed{overflow:visible;max-height:none}
.document-preview.is-zoomed img{max-width:none;width:200%;margin:0}
.document-preview pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6}
.document-file-picker input{max-width:100%;width:100%;min-width:0}
#document-upload-form label,#document-metadata-form label{display:block;margin:16px 0}
#document-upload-progress:not(:empty){padding:12px;background:var(--soft,var(--md-surface-quiet));border-radius:10px}

/* Comfort applies equally to summaries, quick links and checkbox/radio labels. */
.card-jump-nav a, .extra-fields summary, .project-create>summary, .guide-card summary, .ability-details>summary { min-height: var(--ds-control-height); }
.choice-list label { padding: 0; }
.choice-list span { width: 100%; min-height: var(--ds-control-height); }
.comfort-option input { min-height: 24px; }
.access-sections .plain-check, .feasibility-sections label { display: inline-flex; min-height: var(--ds-control-height); }
.comfort-large-controls input[type=checkbox], .comfort-large-controls input[type=radio] { min-height: 24px; }
.document-viewer .document-preview { overflow: visible; max-height: none; }
.document-viewer .document-preview.is-zoomed { min-width: 0; }
.document-viewer { scroll-padding: 1rem; }
@media (max-width: 640px) {
  .checkin-actions button { white-space: normal; }
  .ability-row>span:first-child { max-width: none; flex: 1; min-width: 0; }
  .answer { min-width: 0; }
  .metric-row { flex-wrap: wrap; gap: .5rem 1rem; }
  .metric-row>span:first-child { flex: 1 1 9rem; min-width: 0; }
  .metric-row strong { flex: 0 0 auto; white-space: nowrap; overflow-wrap: normal; }
}

.account-methods button[aria-pressed=true] { border: 1px solid var(--md-action); }
