/* Cross-surface UI hardening for visitor + admin */
:root {
    --tap-size: 44px;
}

*,
*::before,
*::after {
    overflow-wrap: anywhere;
    word-break: break-word;
}

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

img,
video,
canvas,
svg,
iframe {
    max-width: 100%;
    height: auto;
}

.site-header,
.admin-top,
.admin-main,
.admin-content,
.panel,
.form-panel,
.table-panel,
.responsive-table,
.v4-client-shell,
.v4-client-wrap,
.v4-client-topbar,
.v4-page-head,
.v4-task-summary,
.v4-report-metrics,
.v4-detail-grid {
    min-width: 0;
}

.nav a,
.sidebar nav a,
.primary-btn,
.secondary-btn,
.v4-button,
.v4-icon-button,
.filter-tabs a,
.pagination a,
.row-actions a,
.row-actions button,
.global-search button,
.view-site,
.sidebar-toggle,
.sidebar-close {
    min-height: var(--tap-size);
    align-items: center;
}

.table-panel,
.responsive-table {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}

.table-panel table,
.table-panel .message-table {
    width: 100%;
    min-width: 640px;
}

.v4-card-grid,
.media-grid,
.module-grid,
.project-meta,
.process-grid,
.contact-form label {
    min-width: 0;
}

.section-pad {
    padding-left: var(--pad);
    padding-right: var(--pad);
}

.contact-form,
.contact h1,
.article-body,
.case-content > div,
.richtext,
.case-header h1,
.page-hero h1,
.not-found h1,
.thanks h1,
.footer-grid {
    overflow-wrap: anywhere;
}

@media (max-width: 1020px) {
    .admin-content {
        padding-left: 14px;
        padding-right: 14px;
    }

    .section-pad {
        padding-left: clamp(18px, 5vw, 32px);
        padding-right: clamp(18px, 5vw, 32px);
    }
}

@media (max-width: 760px) {
    .admin-content {
        padding-top: 20px;
    }

    .admin-main,
    .admin-content,
    .panel,
    .collection-head,
    .contact-form,
    .article-body,
    .v4-content-list,
    .v4-client-wrap {
        width: 100%;
        max-width: 100%;
    }

    .contact-form {
        padding-inline: 16px;
        margin-inline: 0;
    }

    .footer-grid,
    .v4-task-summary,
    .v4-report-metrics {
        grid-template-columns: 1fr;
    }

    .v4-task {
        min-width: 0;
    }

    .admin-top h1,
    .collection-head h2 {
        line-height: 1.15;
    }
}

