/* Shared reading and viewport rules for every public Seolab layout. */
body.seolab-public {
    --seolab-primary: #345686;
    --seolab-primary-hover: #263f63;
    --seolab-accent: #f9bc00;
    --seolab-accent-soft: #fff8dc;
    --seolab-background: #f5f7fa;
    --seolab-surface: #ffffff;
    --seolab-ink: #1b262c;
    --seolab-muted: #64748b;
    --seolab-border: #e2e8f0;
}
html:has(> body.seolab-public),
body.seolab-public {
    overflow-x: clip;
}
body.seolab-public {
    min-inline-size: 0;
    max-inline-size: 100%;
}
.seolab-public p {
    text-align: justify !important;
    text-align-last: start;
    overflow-wrap: anywhere;
}
.seolab-public :where(main, #main-page, .table-responsive) {
    min-inline-size: 0;
    max-inline-size: 100%;
}
.seolab-public :where(.row, .d-flex, .d-grid) > * {
    min-inline-size: 0;
}
.seolab-public :where(img, video, iframe, canvas, svg) {
    max-inline-size: 100%;
}
.seolab-public :where(h1, h2, h3, h4, h5, h6, li, td, th) {
    overflow-wrap: anywhere;
}
.seolab-public pre {
    max-inline-size: 100%;
    overflow-x: auto;
}
@supports not (overflow-x: clip) {
    html:has(> body.seolab-public),
    body.seolab-public {
        overflow-x: hidden;
    }
}
