.wp-page {
    inline-size: min(100%, var(--wp-page-max));
    margin-inline: auto;
    padding: var(--wp-space-4);
}

.wp-page-header {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--wp-space-4) var(--wp-space-6);
    margin-block-end: var(--wp-space-6);
}

.wp-page-header__copy {
    min-inline-size: 0;
    max-inline-size: var(--wp-measure-wide);
}

.wp-stack {
    display: grid;
    gap: var(--wp-space-4);
}

.wp-stack--compact {
    gap: var(--wp-space-2);
}

.wp-stack--section {
    gap: var(--wp-space-6);
}

.wp-cluster,
.wp-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--wp-space-3);
}

.wp-actions {
    justify-content: flex-end;
}

.wp-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
    gap: var(--wp-space-4);
}

.wp-prose {
    inline-size: min(100%, var(--wp-measure));
}

.writer-admin-main,
.writer-workspace-main,
.writer-public-content {
    min-inline-size: 0;
}

.writer-admin-main {
    padding:
        var(--wp-space-6)
        max(var(--wp-space-4), env(safe-area-inset-right))
        calc(var(--wp-space-8) + env(safe-area-inset-bottom))
        max(var(--wp-space-4), env(safe-area-inset-left));
}

.writer-workspace-main {
    inline-size: min(100%, var(--wp-page-max));
    margin-inline: auto;
}

.writer-page-content,
.writer-public-content {
    gap: var(--wp-space-6) !important;
}

.writer-page-head {
    margin-block-end: var(--wp-space-6);
}

.writer-navbar-shell {
    padding-top: env(safe-area-inset-top);
}

.writer-mobile-dock {
    padding-block-end: env(safe-area-inset-bottom);
}

.table-responsive,
.wp-scroll-region {
    max-inline-size: 100%;
    overflow: auto;
    overscroll-behavior: contain;
}

@media (min-width: 48rem) {
    .wp-page {
        padding: var(--wp-space-6);
    }

    .writer-admin-main {
        padding-inline: var(--wp-space-6);
    }
}

@media (min-width: 80rem) {
    .writer-admin-main {
        padding-inline: var(--wp-space-8);
    }
}

@media (max-width: 47.999rem) {
    .wp-page-header,
    .writer-section-head {
        align-items: stretch;
        flex-direction: column;
    }

    .wp-actions,
    .writer-section-head__actions {
        justify-content: flex-start;
    }

    .wp-actions > :is(.btn, form),
    .wp-actions > form > .btn {
        inline-size: 100%;
    }
}
