.resource-page { min-height:100dvh; padding:52px var(--ui-gutter,24px) 80px; }
.resource-page article { max-width:1200px; margin-inline:auto; }
.resource-hero { display:grid; grid-template-columns:minmax(0,1fr); max-width:72ch; margin-inline:auto; gap:40px; align-items:center; padding-bottom:32px; }
.resource-hero h1 { max-width:22ch; margin:0 0 20px; font:400 clamp(2.3rem,4.2vw,3.5rem)/1.08 var(--type-editorial); letter-spacing:-.025em; text-wrap:balance; }
.resource-intro { max-width:47ch; min-height:3.1em; margin:0 0 24px; color:var(--muted); font-size:1.125rem; line-height:1.55; }
.resource-actions { display:grid; justify-items:start; gap:12px; }
.resource-page a { text-underline-offset:4px; text-decoration-thickness:1px; }
.resource-page a:hover { text-decoration-thickness:2px; }
.resource-page .resource-primary { display:inline-flex; gap:20px; align-items:center; justify-content:center; min-height:48px; padding:12px 20px; border-radius:6px; color:var(--panel,#fff); background:var(--green-deep,#0E7A3E); box-shadow:inset 0 -3px var(--brand-highlight,#CFEA8F); font-weight:600; text-decoration:none; }
.resource-primary:active,.resource-page button:active { transform:scale(.98); }
.resource-byline { margin:20px 0 0; color:var(--muted); font-size:.875rem; line-height:1.5; }
.resource-contents { display:flex; flex-wrap:wrap; gap:4px 26px; border-block:1px solid var(--line); padding:12px 0; margin-bottom:38px; }
.resource-contents a { display:inline-flex; align-items:center; min-height:44px; font-weight:600; }
.resource-reading { max-width:72ch; margin-inline:auto; }
.resource-reading p,.resource-reading li,.resource-reading dd { font-size:1.075rem; line-height:1.7; color:var(--muted); }
.resource-reading p { margin:0 0 18px; }
.resource-reading strong { color:var(--ink); font-weight:600; }
.resource-reading .resource-answer { color:var(--ink); font-size:1.2rem; line-height:1.6; margin-bottom:44px; }
.resource-reading section { scroll-margin-top:120px; margin-top:52px; }
.resource-reading h2 { margin:0 0 18px; font:400 clamp(1.8rem,3vw,2.25rem)/1.15 var(--type-editorial); letter-spacing:-.02em; text-wrap:balance; }
.resource-reading h3 { margin:0 0 12px; font:600 1.125rem/1.35 var(--type-ui); }
.resource-question { margin-top:24px !important; padding-top:16px; border-top:1px solid var(--line); }
.resource-records { margin:24px 0; }
.resource-records > div { display:grid; grid-template-columns:100px minmax(0,1fr); gap:20px; padding:14px 0; border-top:1px solid var(--line); }
.resource-records dt { font-weight:600; color:var(--green-deep); }
.resource-records dd { margin:0; }
.resource-scope { background:var(--green-soft); padding:24px; margin:28px 0; border-radius:8px; }
.resource-scope p { color:var(--ink); }
.resource-checklist { border-top:3px solid var(--brand-highlight); padding-top:28px; }
.resource-checklist-heading { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:start; }
.resource-page button { min-height:44px; border:1px solid var(--green-deep); border-radius:6px; background:var(--panel); color:var(--green-deep); padding:9px 14px; font:600 .9375rem/1.4 var(--type-ui); cursor:pointer; }
.resource-checks { list-style:none; padding:0; margin:20px 0; }
.resource-checks li { margin:0; border-bottom:1px solid var(--line); }
.resource-checks label { display:grid; grid-template-columns:22px minmax(0,1fr); gap:16px; padding:16px 0; min-height:44px; cursor:pointer; }
.resource-checks input { width:20px; height:20px; margin-top:5px; accent-color:var(--green-deep); }
#resource-checklist-status { font-size:.875rem; }
.resource-next { padding-block:28px; border-block:1px solid var(--line); }
.resource-next .resource-primary { margin-bottom:22px; }
.resource-sources { padding-top:12px; }
.resource-sources ul { padding-left:22px; }
.resource-sources li { margin-bottom:12px; }
.resource-code { white-space:pre-wrap; overflow-wrap:anywhere; padding:22px; background:var(--green-soft); border-radius:8px; font-size:.9375rem; line-height:1.5; }
.agent-resource .resource-hero { grid-template-columns:minmax(0,1fr); max-width:72ch; margin-inline:auto; }
.agent-resource .resource-hero h1 { max-width:20ch; }
.agent-resource .resource-records > div { grid-template-columns:minmax(0,1fr); gap:8px; }
.resource-page :focus-visible { outline:3px solid var(--green-deep); outline-offset:4px; }
@media(max-width:767px) {
 .resource-page { padding-top:28px; }
 .resource-hero { grid-template-columns:minmax(0,1fr); gap:16px; }
 .resource-hero h1 { max-width:21ch; font-size:clamp(2.1rem,7.5vw,2.7rem); }
 .resource-intro { min-height:0; }
 .resource-contents { gap:4px 18px; margin-bottom:28px; }
 .resource-reading section { margin-top:38px; }
 .resource-checklist-heading { grid-template-columns:minmax(0,1fr); gap:0; margin-bottom:18px; justify-items:start; }
 .resource-records > div { grid-template-columns:minmax(0,1fr); gap:4px; }
}
@media(prefers-reduced-motion:reduce) { .resource-primary:active,.resource-page button:active { transform:none; } }
@media print {
 .site-header,.site-footer,.resource-hero,.resource-contents,.resource-reading > :not(#checklist),#resource-print,#resource-checklist-status { display:none !important; }
 .resource-page { padding:0; min-height:0; }
 .resource-reading { max-width:none; }
 .resource-reading #checklist { margin:0; border:0; padding:0; }
 .resource-checklist-heading { display:block; }
 .resource-checks li { break-inside:avoid; }
}
