/**
 * Layout všech stránek — text přes šířku shellu, vlevo, s vertikálním rytmem.
 * (včetně dřívějšího site-fluid-prose.css)
 */

:root {
    --page-stack-gap: clamp(1.35rem, 3.5vw, 2.25rem);
    --page-section-gap: clamp(2rem, 5.5vw, 3.5rem);
}

/* —— Nadpisy —— */
.page-heading,
.site-page-heading,
.obrlobus-section__title {
    width: 100%;
    max-width: var(--content-shell-max);
    margin-inline: auto;
    margin-bottom: var(--page-stack-gap);
    padding-inline: var(--page-gutter-left) var(--page-gutter-right);
    box-sizing: border-box;
    text-align: left;
}

.page-heading::after {
    margin-left: 0;
    margin-right: auto;
}

.page-main:not(.js-listing-root) .page-heading {
    max-width: 100%;
    margin-inline: 0;
    padding-inline: 0;
}

/* —— Textové bloky — plná šířka, ne úzký sloupec uprostřed —— */
.page-list-intro,
.page-list-intro-section .page-list-intro,
.page-content-narrow,
.page-prose,
.page-muted-lead,
.page-placeholder,
.obrlobus-intro__text,
.obrlobus-section__lead,
.auth-form-message {
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    text-align: left;
    text-align-last: left;
    box-sizing: border-box;
}

.page-list-intro-section {
    --intro-text-max-ch: 100%;
    width: 100%;
    max-width: var(--content-shell-max);
    margin: 0 auto var(--page-section-gap);
    padding-inline: var(--page-gutter-left) var(--page-gutter-right);
    box-sizing: border-box;
}

.page-list-intro-section.page-intro--text-expanded {
    --intro-text-max-ch: 100%;
}

.page-archive-lead .page-list-intro-section,
.story-archive-lead .page-list-intro-section {
    padding-inline: 0;
}

.page-characters-archive .page-archive-lead .char-pinned-section,
.page-characters-archive .page-archive-lead .char-catalog-wrap,
.page-characters-archive .page-archive-lead .char-grid-wrap.char-catalog-wrap {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    padding-inline: 0;
}

.obrlobus-home-block--intro-text.page-intro--text-expanded .obrlobus-intro__text {
    max-width: 100%;
}

.page-main:not(.js-listing-root) .page-content-narrow,
.page-main:not(.js-listing-root) .page-placeholder,
.page-main:not(.js-listing-root) .auth-form-message {
    padding-inline: 0;
    margin-bottom: var(--page-section-gap);
}

.page-main:not(.js-listing-root) .page-placeholder {
    max-width: 100%;
    margin-inline: 0;
    text-align: left;
    padding: var(--inset-comfort-lg);
}

.page-main:not(.js-listing-root) .page-prose {
    margin-bottom: var(--page-section-gap);
}

.page-list-intro::after {
    width: 100%;
    max-width: 100%;
    margin-top: var(--page-stack-gap);
}

.page-main .auth-form {
    margin-top: var(--page-stack-gap);
    margin-bottom: var(--page-section-gap);
}

.page-actions-center {
    margin-top: var(--page-stack-gap);
    margin-bottom: var(--page-section-gap);
}

/* —— Listing archivy —— */
.page-main.js-listing-root .page-heading,
.page-main.js-listing-root .page-list-intro-section,
.page-main.js-listing-root .story-filters,
.page-main.js-listing-root .char-grid-wrap,
.page-main.js-listing-root .art-grid-wrapper,
.page-main.js-listing-root .page-list-summary,
.page-main.js-listing-root .page-list-filter-details,
.page-main.js-listing-root .listing-wheel-filters {
    max-width: var(--content-shell-max);
    margin-inline: auto;
}

.story-filters,
.char-grid-wrap,
.art-grid-wrapper,
.page-list-summary,
.page-list-filter-details,
.listing-wheel-filters {
    max-width: var(--content-shell-max);
}

.page-main.js-listing-root .story-filters,
.page-main.js-listing-root:not(.page-stories-archive):not(.page-characters-archive) .story-filters {
    margin-bottom: var(--page-section-gap);
}

.page-stories-archive .story-filters,
.page-characters-archive .story-filters {
    margin-bottom: var(--page-section-gap);
}

.page-stories-archive .story-filters__bar,
.page-characters-archive .story-filters__bar {
    padding: clamp(1rem, 2.5vw, 1.35rem) clamp(1.1rem, 2.8vw, 1.5rem);
    gap: clamp(0.85rem, 2vw, 1.15rem);
}

.page-gallery-archive .page-main {
    padding-inline: 0;
}

.page-gallery-archive .art-grid-wrapper {
    padding-top: clamp(0.5rem, 1.5vw, 1rem);
}

.page-gallery-archive .art-grid-wrapper > .page-heading {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    margin-bottom: var(--page-section-gap);
    padding-inline: 0;
    box-sizing: border-box;
}

.page-characters-archive .char-grid-wrap {
    padding-top: clamp(0.5rem, 1.5vw, 1rem);
}

/* —— Domovská stránka —— */
.obrlobus-section__inner {
    width: 100%;
    max-width: var(--content-shell-max);
    margin-inline: auto;
    padding-inline: var(--page-gutter-left) var(--page-gutter-right);
    box-sizing: border-box;
}

.obrlobus-home-block--intro-text .obrlobus-section__inner {
    padding-top: clamp(1.5rem, 4vw, 2.5rem);
    padding-bottom: clamp(1rem, 3vw, 1.75rem);
}

.obrlobus-home-block--intro-text .obrlobus-intro__text {
    margin-top: var(--page-stack-gap);
}

.obrlobus-section__title {
    margin-bottom: var(--page-stack-gap);
}

@media (max-width: 768px) {
    .page-heading,
    .site-page-heading {
        text-align: left;
    }

    .page-heading::after {
        margin-left: 0;
        margin-right: auto;
    }
}

/* Čtečka — zúžená míra jen pro dlouhý text příběhu */
.story-reader-body .story-body {
    max-width: var(--reading-measure);
    margin-inline: auto;
}

.story-reader-body .reader-container {
    max-width: var(--content-shell-max);
}
