/* Programmatic SEO pages (drugs, interactions, diseases): reuse theme tokens. */
.seo-page { position: relative; z-index: 1; padding-block: clamp(1.5rem, 4vw, 3.5rem); }
.seo-crumbs { display: flex; flex-wrap: wrap; gap: .6rem; color: var(--mh-muted); font-size: .9rem; }
.seo-crumbs a:hover { color: var(--mh-accent); }
.seo-article, .seo-page > .seo-hero, .seo-page > .seo-card { display: grid; gap: 1.25rem; width: min(100%, 60rem); margin: 1.5rem auto 0; }
.seo-page > .seo-hero, .seo-page > .seo-letters, .seo-page > .seo-index, .seo-page > .seo-pager, .seo-page > .seo-cta { width: min(100%, 60rem); margin-inline: auto; }
.seo-hero h1 { font-size: clamp(1.9rem, 4.5vw, 3rem); line-height: 1.12; overflow-wrap: anywhere; }
.seo-lede { color: var(--mh-muted-strong); line-height: 1.7; }
.seo-disclaimer { padding: .8rem 1rem; border-inline-start: 3px solid var(--mh-accent); background: color-mix(in srgb, var(--mh-accent) 8%, transparent); border-radius: .5rem; font-size: .92rem; color: var(--mh-muted-strong); }
.seo-notice { color: var(--mh-muted); font-size: .88rem; }
.seo-card { padding: clamp(1rem, 2.5vw, 1.6rem); border: 1px solid var(--mh-card-border); border-radius: 1.1rem; background: var(--mh-surface-soft); }
.seo-card--warn { border-color: color-mix(in srgb, #e5484d 55%, var(--mh-card-border)); }
.seo-card h2, .seo-cta h2 { font-size: 1.2rem; margin-block-end: .6rem; }
.seo-body p { line-height: 1.75; }
.seo-list { padding-inline-start: 1.25rem; list-style: disc; display: grid; gap: .35rem; line-height: 1.6; }
.seo-links { display: grid; grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr)); gap: .45rem .9rem; list-style: none; padding: 0; }
.seo-links a { color: var(--mh-accent); }
.seo-links a:hover { text-decoration: underline; }
.seo-meta { margin-block-end: .6rem; color: var(--mh-muted-strong); }
.seo-sev { display: inline-block; padding: .05rem .55rem; border-radius: 999px; font-size: .78rem; font-weight: 600; text-transform: capitalize; border: 1px solid var(--mh-card-border); }
.seo-sev--contraindicated, .seo-sev--major { color: #e5484d; border-color: currentColor; }
.seo-sev--moderate { color: #d98a00; border-color: currentColor; }
.seo-sev--minor { color: #2f9e6e; border-color: currentColor; }
.seo-faq-item { padding-block: .6rem; border-block-end: 1px solid var(--mh-card-border); }
.seo-faq-item summary { cursor: pointer; font-weight: 600; }
.seo-faq-item p { margin-block-start: .5rem; }
.seo-letters { display: flex; flex-wrap: wrap; gap: .4rem; margin-block: 1.25rem; }
.seo-letters a { min-width: 2.1rem; padding: .3rem .6rem; text-align: center; border: 1px solid var(--mh-card-border); border-radius: .6rem; }
.seo-letters a[aria-current="page"] { background: var(--mh-accent); color: #04131f; }
.seo-pager { display: flex; align-items: center; justify-content: center; gap: 1rem; margin-block: 1.5rem; }
.seo-cta { margin-block: 2rem 0; padding: clamp(1.2rem, 3vw, 2rem); border-radius: 1.25rem; border: 1px solid color-mix(in srgb, var(--mh-accent) 35%, var(--mh-card-border)); background: color-mix(in srgb, var(--mh-accent) 7%, var(--mh-surface-soft)); }
.seo-cta__actions { display: flex; flex-wrap: wrap; gap: .75rem; margin-block-start: 1rem; }
.seo-back { margin-block-start: .5rem; }
@media (max-width: 40rem) { .seo-links { grid-template-columns: 1fr; } }
