/* Public reading surfaces extend the established AIONEX semantic theme. */
.seo-page { margin: 0; background: var(--surface-canvas); color: var(--text-default); font-family: var(--font-family-base); font-size: 1rem; line-height: 1.8; }
.seo-page *, .seo-page *::before, .seo-page *::after { box-sizing: border-box; }
.seo-page a { color: var(--interactive-default); text-underline-offset: .22em; }
.seo-page a:hover { color: var(--interactive-hover); }
.seo-page :is(h1, h2, h3) { color: var(--text-strong); line-height: 1.25; text-wrap: balance; }
.seo-page h1 { font-size: clamp(2rem, 4vw, 3.5rem); font-weight: 650; letter-spacing: -.025em; margin: 0 0 24px; max-inline-size: 22ch; }
.seo-page h2 { font-size: clamp(1.4rem, 2.2vw, 1.8rem); font-weight: 600; margin-block: 0 16px; letter-spacing: -.015em; }
.seo-page h3 { font-size: 1.1rem; font-weight: 600; margin: 0; }
.seo-page :is(p, li) { overflow-wrap: break-word; }
.seo-page p { margin: 0 0 20px; }
.seo-page ul { padding-inline-start: 24px; }
.seo-page li + li { margin-block-start: 10px; }
.seo-header, .seo-topline, .seo-main, .seo-footer { max-inline-size: 1200px; margin-inline: auto; padding-inline: 32px; }
.seo-header { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-block: 24px; border-block-end: 1px solid var(--border-default); }
.seo-brand { display: inline-flex; align-items: center; gap: 10px; color: var(--text-strong) !important; font-weight: 650; font-size: 1.15rem; text-decoration: none; white-space: nowrap; }
.seo-brand img { flex: 0 0 auto; }
.seo-navigation { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; }
.seo-navigation a, .seo-theme, .seo-languages a { display: inline-flex; align-items: center; justify-content: center; min-block-size: 44px; padding: 8px 12px; border-radius: var(--radius-sm); }
.seo-navigation a { color: var(--text-default); text-decoration: none; font-size: .875rem; }
.seo-navigation a:hover, .seo-languages a:hover { background: var(--surface-tertiary); }
.seo-navigation a[aria-current], .seo-languages a[aria-current] { color: var(--interactive-default); background: var(--interactive-surface); }
.seo-theme { border: 1px solid var(--border-default); font: inherit; font-size: .875rem; background: var(--surface-primary); color: var(--text-default); cursor: pointer; }
.seo-theme:hover { background: var(--surface-tertiary); }
.seo-theme:active { background: var(--interactive-surface); }
.seo-topline { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: space-between; gap: 12px 24px; padding-block: 24px; }
.seo-breadcrumb { flex: 1 1 340px; min-inline-size: 0; }
.seo-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 4px 12px; list-style: none; margin: 0; padding: 0; font-size: .8rem; }
.seo-breadcrumb li { display: inline-flex; align-items: center; gap: 12px; margin: 0; color: var(--text-muted); }
.seo-breadcrumb li:not(:last-child)::after { content: '/'; color: var(--text-muted); }
.seo-breadcrumb a { display: inline-flex; align-items: center; min-block-size: 44px; }
.seo-breadcrumb span[aria-current] { padding-block: 10px; }
.seo-languages { display: flex; flex-wrap: wrap; gap: 4px; }
.seo-languages a { font-size: .875rem; text-decoration: none; }
.seo-main { padding-block: 32px 64px; }
.seo-intro { max-inline-size: 880px; margin-block-end: 56px; }
.seo-lead { max-inline-size: 65ch; font-size: 1.125rem; color: var(--text-muted); }
.seo-publisher, .seo-workspace-note { font-size: .875rem; color: var(--text-muted); }
.seo-primary { display: inline-flex; align-items: center; justify-content: center; min-block-size: 46px; margin-block: 8px 16px; padding: 10px 20px; color: var(--action-on-primary) !important; background: var(--action-primary); text-decoration: none; border-radius: var(--radius-sm); font-weight: 600; }
.seo-primary:hover { background: var(--action-primary-hover); }
.seo-reading-layout { display: grid; grid-template-columns: 248px minmax(0, 1fr); gap: 56px; align-items: start; }
.seo-contents { padding-block-start: 6px; }
.seo-contents h2 { font-size: 1rem; margin-block-end: 12px; }
.seo-contents ul { list-style: none; padding: 0; margin: 0; }
.seo-contents li { border-block-start: 1px solid var(--border-subtle); margin: 0; }
.seo-contents a { display: block; min-block-size: 44px; padding-block: 12px; font-size: .875rem; line-height: 1.6; text-decoration: none; color: var(--text-muted); }
.seo-contents a:hover { color: var(--interactive-default); }
.seo-copy { max-inline-size: 72ch; min-inline-size: 0; }
.seo-copy section { scroll-margin-block-start: 28px; }
.seo-copy section + section { margin-block-start: 48px; }
.seo-copy :is(p, li) { font-size: 1rem; line-height: 1.85; }
.seo-sources { border-block-start: 1px solid var(--border-default); padding-block-start: 32px; }
.seo-related { margin-block-start: 64px; border-block-start: 1px solid var(--border-default); padding-block-start: 32px; }
.seo-guide-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.seo-guide-link { display: block; text-decoration: none; padding-block: 16px; border-block-end: 1px solid var(--border-default); }
.seo-guide-link h3 { color: var(--interactive-default); }
.seo-guide-link p { color: var(--text-muted); font-size: .875rem; line-height: 1.8; margin-block: 12px 0; }
.seo-guide-link:hover h3 { text-decoration: underline; text-underline-offset: .2em; }
.seo-research-note { margin-block-start: 40px; max-inline-size: 72ch; color: var(--text-muted); font-size: .875rem; }
.seo-research-note p { margin: 0; }
.seo-footer { display: flex; flex-wrap: wrap; gap: 12px 24px; border-block-start: 1px solid var(--border-default); padding-block: 28px 40px; font-size: .8rem; color: var(--text-muted); }
.seo-footer p { margin: 0; }
.seo-footer a { display: inline-flex; min-block-size: 44px; align-items: center; }
.seo-skip { position: absolute; inset-inline-start: 16px; inset-block-start: -100px; padding: 12px 18px; background: var(--surface-primary); color: var(--text-strong); z-index: 10; }
.seo-skip:focus { inset-block-start: 12px; }
html[lang='fa'] .seo-page { font-family: Tahoma, 'Segoe UI', sans-serif; line-height: 2; }
html[lang='fa'] .seo-page :is(h1, h2, h3) { letter-spacing: normal; line-height: 1.65; }
html[lang='zh-Hans'] .seo-page { font-family: 'Inter', 'Microsoft YaHei', 'PingFang SC', system-ui, sans-serif; }
html[lang='zh-Hans'] .seo-page :is(h1, h2, h3) { letter-spacing: normal; line-height: 1.5; }
@media (max-width: 900px) {
    .seo-header { align-items: flex-start; flex-direction: column; gap: 12px; }
    .seo-reading-layout { grid-template-columns: minmax(0, 1fr); gap: 32px; }
    .seo-contents { max-inline-size: 72ch; }
    .seo-guide-list { grid-template-columns: minmax(0, 1fr); gap: 8px; }
}
@media (max-width: 480px) {
    .seo-header, .seo-topline, .seo-main, .seo-footer { padding-inline: 20px; }
    .seo-main { padding-block-start: 16px; }
    .seo-intro { margin-block-end: 32px; }
    .seo-navigation { gap: 4px; }
    .seo-navigation a, .seo-theme { padding-inline: 8px; }
    .seo-topline { gap: 8px; padding-block: 16px; }
    .seo-copy section + section { margin-block-start: 36px; }
}
