.seoa-generated-article {
    --seoa-content-accent: #2563eb;
    --seoa-content-muted: #5b6678;
    color: inherit;
    font-size: clamp(1rem, .96rem + .18vw, 1.08rem);
    line-height: 1.72;
}

.seoa-generated-article > :first-child { margin-top: 0; }
.seoa-generated-article p { margin: 0 0 1.15em; }
.seoa-generated-article h2,
.seoa-generated-article h3,
.seoa-generated-article h4 { color: inherit; line-height: 1.25; text-wrap: balance; }
.seoa-generated-article h2 { margin: 2.2em 0 .72em; font-size: clamp(1.38rem, 1.17rem + .8vw, 1.9rem); }
.seoa-generated-article h3 { margin: 1.65em 0 .62em; font-size: clamp(1.16rem, 1.08rem + .4vw, 1.45rem); }
.seoa-generated-article h4 { margin: 1.4em 0 .55em; font-size: 1.08rem; }
.seoa-generated-article ul,
.seoa-generated-article ol { margin: 1em 0 1.25em; padding-left: 1.4em; }
.seoa-generated-article li { margin: .5em 0; padding-left: .2em; }

.seoa-generated-article .seoa-table-scroll { width: 100%; margin: 1.4em 0; overflow-x: auto; border: 1px solid #dce4ef; border-radius: 14px; }
.seoa-generated-article table { width: 100%; min-width: 560px; margin: 0; border-collapse: collapse; font-size: .95em; }
.seoa-generated-article th,
.seoa-generated-article td { padding: .8em .9em; border-bottom: 1px solid #e5eaf1; text-align: left; vertical-align: top; }
.seoa-generated-article th { background: #eff6ff; color: #173b71; }

.seoa-generated-article .seoa-infographic,
.seoa-generated-article .seoa-comparison,
.seoa-generated-article .seoa-faq { margin: 1.7em 0; padding: clamp(1rem, 2.5vw, 1.6rem); border: 1px solid #dce6f4; border-radius: 18px; background: linear-gradient(145deg, #f8fbff, #eef5ff); color: #172033; }
.seoa-generated-article .seoa-infographic-grid,
.seoa-generated-article .seoa-comparison-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(190px, 100%), 1fr)); gap: .85rem; }
.seoa-generated-article .seoa-infographic-grid > *,
.seoa-generated-article .seoa-comparison-grid > * { min-width: 0; padding: 1rem; border-radius: 13px; background: #fff; box-shadow: 0 5px 18px rgba(27, 65, 120, .08); }
.seoa-generated-article .seoa-steps { padding: 1.1em 1.1em 1.1em 2.7em; border-left: 4px solid var(--seoa-content-accent); background: #f7faff; border-radius: 0 14px 14px 0; }
.seoa-generated-article .seoa-faq h3 { padding-top: 1em; border-top: 1px solid #dce6f4; }

@media (max-width: 600px) {
    .seoa-generated-article { line-height: 1.65; }
    .seoa-generated-article h2 { margin-top: 1.8em; }
}
