/* Research views: the precision-minimal house style, with room for real records.
   Variance 3 / motion 1 / density 5. Existing table and form semantics stay intact. */
.research-page { --research-line:#cdd8d0; --research-muted:#53635c; --research-green:#245c43; min-width:0; }
.research-page .page-heading { margin-bottom:38px; }
.research-page .page-heading h1 { font-size:clamp(36px,4.3vw,58px); line-height:1.08; letter-spacing:-2px; font-weight:450; max-width:1000px; }
.research-page .page-heading p { font-size:17px; line-height:1.6; margin-top:17px; color:var(--research-muted); }
.research-page .eyebrow { color:var(--research-muted); font-size:13px; font-weight:500; letter-spacing:0; text-transform:none; margin-bottom:15px; }
.research-page .breadcrumb { color:var(--research-muted); font-size:13px; margin-bottom:30px; }
.research-page .breadcrumb a { display:inline-block; padding-block:8px; }
.research-page .section-gap { margin-top:56px; }
.research-page h2 { font-size:30px; line-height:1.2; font-weight:450; letter-spacing:-1px; }
.research-page h3 { font-size:20px; font-weight:500; letter-spacing:-.4px; }
.research-page .section-heading { margin-bottom:26px; gap:16px; }
.research-page .section-heading .eyebrow { margin-bottom:10px; }

/* Search stays a single clear band; no nested panels or floating controls. */
.research-page .filter-bar { display:grid; grid-template-columns:minmax(200px,1fr) minmax(140px,.38fr) minmax(170px,.5fr) auto auto; gap:16px; align-items:end; background:#f5f7f4; border:0; padding:24px; margin-bottom:28px; }
.research-page .filter-bar>div { min-width:0; }
.research-page .filter-bar label { color:#142c24; font-size:13px; font-weight:550; margin-bottom:9px; }
.research-page .filter-bar input,.research-page .filter-bar select { height:50px; min-width:0; max-width:none; border:1px solid #8b9e90; border-radius:0; background:#fdfefd; color:#142c24; font-size:16px; padding:12px; }
.research-page .filter-bar input::placeholder { color:var(--research-muted); opacity:1; }
.research-page .filter-bar .btn { min-height:50px; }
.research-page .filter-bar>a { min-height:50px; display:flex; align-items:center; text-decoration:underline; text-underline-offset:4px; }
.research-directory .filter-bar { grid-template-columns:minmax(0,620px) auto auto; justify-content:start; }
.research-page .results-caption { color:var(--research-muted); font-size:13px; margin:0 0 17px; }

.research-page .record-table th { background:#f5f7f4; color:var(--research-muted); font-size:12px; font-weight:500; padding:15px 16px; }
.research-page .record-table td { padding:24px 16px; border-color:var(--research-line); color:#142c24; line-height:1.55; }
.research-page .record-table td .row-title { color:#142c24; font-size:16px; font-weight:550; line-height:1.45; letter-spacing:-.15px; }
.research-page .record-table td .row-title:hover { color:var(--research-green); text-decoration:underline; }
.research-page .record-table td small,.research-page .record-table .badge { color:var(--research-muted); font-size:12px; }
.research-page .record-table details summary { padding-block:8px; cursor:pointer; }
.research-page .record-table details[open] { border-left:2px solid #9bb3a2; padding-left:12px; }
.research-page .record-table details p { max-width:70ch; }
.research-page .pagination { margin-top:28px; font-size:13px; }
.research-page .empty { padding:28px 24px; font-size:15px; line-height:1.7; max-width:70ch; }
.research-page .coverage-note { max-width:90ch; margin-block:32px; font-size:13px; line-height:1.75; border-left:2px solid #9bb3a2; padding-left:18px; color:var(--research-muted); }
.research-page .coverage-note strong { color:#142c24; font-weight:550; }

/* Directory records use typography and separators, with the whole record clickable. */
.research-page .directory-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 36px; border-top:1px solid var(--research-line); }
.research-page .directory-card { padding:28px 0; border-bottom:1px solid var(--research-line); }
.research-page .directory-empty { grid-column:1/-1; max-width:none; }
.research-page .directory-card:hover { border-color:var(--research-green); }
.research-page .directory-card:hover h2 { color:var(--research-green); text-decoration:underline; text-underline-offset:4px; }
.research-page .directory-card h2 { font-size:22px; line-height:1.3; font-weight:500; letter-spacing:-.6px; }
.research-page .directory-identity { margin-bottom:18px; }
.research-page .directory-identity .eyebrow { margin:0; }
.research-page .directory-card p { color:var(--research-muted); font-size:13px; line-height:1.6; }
.research-page .ticker { color:var(--research-green); font-size:13px; font-weight:600; }

.research-page .profile-heading { align-items:center; }
.research-page .profile-heading>div:first-child { flex:1 1 480px; }
.research-page .stats-grid { border-color:var(--research-line); padding-block:25px; }
.research-page .stats-grid>div { padding:0 26px; border-left:1px solid var(--research-line); }
.research-page .stats-grid>div:first-child { padding-left:0; border-left:0; }
.research-page .stats-grid strong { font-family:inherit; font-size:30px; line-height:1.2; font-weight:450; letter-spacing:-.8px; margin:4px 0 9px; }
.research-page .stats-grid strong.text-lg { font-size:24px; }
.research-page .stats-grid span,.research-page .stats-grid small { color:var(--research-muted); font-size:13px; line-height:1.6; }
.research-trial .page-heading h1 { font-size:clamp(29px,3.1vw,43px); line-height:1.16; letter-spacing:-1.3px; }
.research-trial .record-identity { color:var(--research-muted); gap:12px 22px; margin-bottom:22px; }
.research-trial .record-identity .badge { font-size:13px; }
.research-trial .record-actions { margin-top:26px; }
.research-trial .stats-grid strong { font-size:25px; letter-spacing:-.6px; margin-top:12px; }
.research-page .detail-grid { gap:48px; grid-template-columns:minmax(0,1fr) 300px; }
.research-page .detail-sidebar { border:0; border-top:3px solid var(--research-green); background:#edf3ee; padding:26px; }
.research-page .detail-sidebar h3 { font-size:21px; }
.research-page .detail-sidebar dt { color:var(--research-muted); font-size:12px; font-weight:550; margin-top:24px; }
.research-page .detail-sidebar dd { font-size:14px; line-height:1.7; margin-bottom:22px; }
.research-page .detail-sidebar>a { display:inline-flex; align-items:center; min-height:44px; }
.research-page .study-measures summary { min-height:44px; padding-block:10px; cursor:pointer; color:var(--research-green); text-decoration:underline; text-underline-offset:4px; }
.research-page .study-measures p { margin-top:12px; }
.research-page .upgrade-note { background:#f5f7f4; border:0; padding:16px 20px; font-size:14px; line-height:1.7; }
.research-page .change-card { padding:27px 0; border-color:var(--research-line); }
.research-page .redline { gap:25px; }
.research-page .redline>div { padding-left:16px; font-size:15px; line-height:1.7; }
.research-page .before { border-color:#a98176; color:var(--research-muted); }
.research-page .after { border-color:var(--research-green); color:#142c24; }
.research-page .redline-label { font-size:12px; color:var(--research-muted); }
.research-page .conflict-note { padding:20px 24px; background:#faf4e8; }
.research-page .conflict-note h2 { font-size:22px; }
.research-page .source-coverage { border-color:var(--research-line); margin-bottom:32px; }
.research-page .source-coverage summary { color:#142c24; }
.research-page .source-coverage p,.research-page .source-coverage dd { color:var(--research-muted); max-width:75ch; }
.research-page .calendar-guide { background:#f5f7f4; padding:32px; gap:48px; }
.research-page .calendar-guide p { font-size:15px; max-width:60ch; }

@media(max-width:1199px) {
 .research-page .filter-bar { grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr); }
 .research-page .filter-bar .btn { justify-self:start; }
 .research-page .filter-bar>a { justify-self:start; }
 .research-directory .filter-bar { grid-template-columns:minmax(0,1fr) auto auto; }
 .research-page .directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .research-page .detail-grid { gap:32px; grid-template-columns:minmax(0,1fr) 270px; }
}
@media(max-width:1023px) {
 .research-page .detail-grid { grid-template-columns:minmax(0,1fr); }
 .research-page .record-table td { padding:0; }
 .research-page .record-table td.empty { padding:24px 20px; }
 .research-page .record-table tr { border-color:var(--research-line); padding:26px 0; gap:18px 28px; }
 .research-page .record-table td[data-label]::before { font-family:inherit; color:var(--research-muted); font-size:12px; }
 .research-page .record-table td small,.research-page .record-table .badge { font-size:13px; }
 .research-page .record-table td .row-title { font-size:18px; max-width:65ch; }
 .research-page .detail-sidebar { max-width:100%; padding:28px; }
}
@media(max-width:767px) {
 .research-page .page-heading { margin-bottom:28px; }
 .research-page .page-heading h1 { font-size:38px; letter-spacing:-1.5px; }
 .research-page .page-heading p { font-size:16px; margin-top:16px; }
 .research-page .eyebrow { margin-bottom:12px; }
 .research-page .breadcrumb { margin-bottom:22px; }
 .research-page .section-gap { margin-top:40px; }
 .research-page h2 { font-size:27px; letter-spacing:-.8px; }
 .research-page .filter-bar { grid-template-columns:repeat(2,minmax(0,1fr)); padding:20px 16px; gap:20px 12px; margin-bottom:24px; }
 .research-page .filter-bar>div { grid-column:auto; }
 .research-page .filter-bar>div:first-child { grid-column:1/-1; }
 .research-page .filter-bar .btn { justify-self:stretch; padding-inline:12px; }
 .research-page .filter-bar>a { justify-self:center; }
 .research-page .directory-grid { grid-template-columns:minmax(0,1fr); }
 .research-page .directory-card { padding-block:25px; }
 .research-page .directory-identity { margin-bottom:12px; }
 .research-page .directory-card h2 { font-size:23px; }
 .research-page .stats-grid.three { grid-template-columns:minmax(0,1fr); padding-block:0; }
 .research-page .stats-grid>div { padding:20px 0; border-left:0; border-top:1px solid var(--research-line); }
 .research-page .stats-grid>div:first-child { border-top:0; }
 .research-page .stats-grid strong { font-size:29px; }
 .research-trial .stats-grid strong { font-size:25px; }
 .research-trial .page-heading h1 { font-size:29px; line-height:1.22; letter-spacing:-.9px; }
 .research-trial .record-identity { gap:10px 16px; }
 .research-page .profile-heading { gap:24px; }
 .research-page .redline { grid-template-columns:minmax(0,1fr); gap:20px; }
 .research-page .redline>div { font-size:16px; }
 .research-page .detail-sidebar { padding:24px; }
 .research-page .coverage-note { margin-block:28px; }
 .research-page .calendar-guide { grid-template-columns:minmax(0,1fr); padding:24px 20px; gap:28px; }
 .research-page .record-table tr { gap:18px; }
}
@media(max-width:359px) {
 .research-page .page-heading h1 { font-size:33px; }
 .research-trial .page-heading h1 { font-size:27px; }
 .research-trials .filter-bar { grid-template-columns:minmax(0,1fr); }
 .research-trials .filter-bar>div { grid-column:1; }
 .research-page .record-actions { display:grid; grid-template-columns:minmax(0,1fr); }
 .research-page .detail-sidebar { padding:22px 18px; }
}
