/* Public source-linked profiles and explanations; native content before JavaScript. */
.seo-page { overflow: auto; min-height: 100vh; }
.seo-header { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:20px max(20px,calc((100vw - 1200px)/2)); border-bottom:1px solid var(--border); background:var(--surface); }
.seo-brand { font-size:1.15rem; font-weight:700; color:var(--text); }
.seo-header nav,.seo-footer { display:flex; gap:20px; flex-wrap:wrap; font-size:.85rem; }
.seo-main { max-width:1200px; margin:auto; padding:28px 24px 50px; }
.seo-main h1 { font-size:clamp(1.5rem,3vw,2.2rem); margin:12px 0; line-height:1.25; }
.seo-main h2 { font-size:1.18rem; margin:30px 0 14px; }
.seo-main p { line-height:1.65; color:var(--text-muted); }
.seo-lead { max-width:900px; }
.seo-breadcrumbs { font-size:.78rem; color:var(--text-muted); }
.seo-actions { display:flex; flex-wrap:wrap; gap:22px; }
.seo-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin:22px 0; }
.seo-card { padding:20px; border:1px solid var(--border); border-radius:6px; background:var(--surface); color:var(--text); }
.seo-card:hover { border-color:var(--accent); text-decoration:none; }
.seo-card h2 { font-size:1rem; margin:8px 0 12px; }
.seo-card p { font-size:.84rem; margin:8px 0; }
.seo-card span:last-child { color:var(--accent); font-size:.8rem; }
.seo-facts { border:1px solid var(--border); background:var(--surface); padding:20px; border-radius:6px; }
.seo-facts h2 { margin-top:0; }
.seo-facts dl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.seo-facts dt { color:var(--text-muted); font-size:.75rem; margin-bottom:6px; }
.seo-facts dd { margin:0; font-size:.9rem; overflow-wrap:anywhere; }
.seo-table-region { overflow:auto; border:1px solid var(--border); border-radius:6px; margin:18px 0; }
.seo-table { width:100%; min-width:640px; table-layout:auto; }
.seo-table caption { text-align:left; padding:12px; font-size:.78rem; color:var(--text-muted); }
.seo-table th,.seo-table td { vertical-align:top; padding:12px; }
.seo-table th { white-space:normal; }
.seo-table tbody th { font-weight:500; max-width:260px; }
.seo-table tbody tr { cursor:default; }
.seo-table a { overflow-wrap:anywhere; }
.seo-small { display:block; color:var(--text-muted); font-size:.73rem; margin-top:7px; }
.seo-evidence { min-width:180px; max-width:560px; font-size:.8rem; }
.seo-evidence summary, .seo-main details>summary { color:var(--accent); cursor:pointer; padding:5px 0; }
.seo-record { border-top:1px solid var(--border-soft); padding:12px 0; overflow-wrap:anywhere; }
.seo-article { max-width:820px; }
.seo-article p { font-size:.96rem; }
.seo-footer { justify-content:center; padding:20px; border-top:1px solid var(--border); }
.seo-tool-intro { padding:10px 20px; color:var(--text-muted); font-size:.8rem; }
.seo-tool-intro p { margin:0; }
.seo-page a:focus-visible, .seo-page summary:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
@media(max-width:900px){.seo-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }}
@media(max-width:600px){.seo-header { align-items:flex-start; flex-direction:column; gap:12px; padding:16px; }.seo-header nav{gap:14px}.seo-main{padding:20px 14px 30px}.seo-grid{grid-template-columns:1fr}.seo-facts dl{grid-template-columns:repeat(2,minmax(0,1fr))}.seo-table{min-width:570px}.seo-main h2{font-size:1.05rem}.seo-footer{gap:14px}}

.public-links { display:block; margin-top:6px; }
