.za-admin-page .za-admin-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    min-height: 76px;
    padding: 16px max(24px,calc((100% - 1440px)/2));
    background: var(--ng-surface-navbar);
    border-bottom: var(--za-border-width) solid var(--za-line);
}
.za-admin-page .za-admin-header__actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 24px;
}
.za-admin-page .za-admin-header form {
    margin: 0;
}
.za-admin-page .za-admin-logout {
    display: flex;
    align-items: center;
    gap: 10px;
    border: 0;
    color: var(--za-muted);
    background: transparent;
    cursor: pointer;
    font-size: 13px;
}
.za-admin-page .za-admin-shell {
    width: min(1440px,calc(100% - 64px));
    margin: 40px auto 64px;
}
.za-admin-page .za-admin-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 30px;
}
.za-admin-page .za-admin-heading h1,.za-admin-page .za-admin-login h1 {
    font-size: 32px;
    line-height: 1.25;
    margin: 12px 0;
}
.za-admin-page .za-admin-heading p {
    margin: 0;
    font-size: 14px;
}
.za-admin-page .za-management-tabs {
    display: flex;
    gap: 8px;
    margin-bottom: 28px;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--za-line);
}
.za-admin-page .za-management-tabs a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    padding: 12px 22px;
    border-radius: var(--za-radius-control);
    color: var(--za-muted);
    text-decoration: none;
}
.za-admin-page .za-management-tabs a[aria-current] {
    background: var(--za-button-fill);
    color: var(--za-button-text);
}
.za-admin-page .za-management-subheading h2 {
    margin: 8px 0;
    font-size: 24px;
}
.za-admin-page .za-management-subheading .za-label { display: none; }
.za-admin-page .za-management-shell .za-section-heading h2 { font-size: 24px; line-height: 1.3; }
.za-admin-page .za-management-search { max-width: 440px; margin-bottom: 24px; }
.za-admin-page .za-management-table-scroll { position: relative; overflow-x: auto; max-width: 100%; }
.za-admin-page .za-management-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.za-admin-page .za-management-table :is(td,th) { padding: 16px 12px; text-align: left; border-bottom: 1px solid var(--za-line); }
.za-admin-page .za-management-table th { color: var(--za-muted); font-size: 11px; }
.za-admin-page .za-management-table td:last-child { text-align: right; }
.za-admin-page .za-management-table small { display: block; margin-top: 6px; color: var(--za-muted); overflow-wrap: anywhere; }
.za-admin-page .za-management-table tr.is-selected { background: var(--za-soft); }
.za-admin-page .za-management-table .za-button { min-height: 38px; padding: 8px 14px; font-size: 12px; white-space: nowrap; }
.za-admin-page .za-management-memberships { display: flex; flex-wrap: wrap; gap: 6px; }
.za-admin-page .za-management-memberships > span { padding: 5px 8px; border-radius: var(--za-radius-control); background: var(--za-soft); }
.za-admin-page .za-access-editor { margin-top: 24px; scroll-margin-top: 90px; }
.za-admin-page .za-access-dates { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.za-admin-page .za-access-checks { display: flex; flex-wrap: wrap; gap: 24px; margin: 24px 0; font-size: 13px; }
.za-admin-page .za-management-current-sections { display: flex; flex-wrap: wrap; gap: 8px; }
.za-admin-page .za-management-current-sections .za-button { min-height: 38px; padding: 8px 12px; font-size: 12px; }
@media (max-width:600px) {
    .za-admin-page .za-management-tabs { gap: 4px; }
    .za-admin-page .za-management-tabs a { flex: 1; padding: 12px 5px; font-size: 12px; gap: 6px; }
    .za-admin-page .za-access-dates { grid-template-columns: minmax(0,1fr); gap: 0; }
    .za-admin-page .za-management-table { min-width: 560px; }
}
.za-admin-page .za-admin-login {
    width: min(460px,calc(100% - 32px));
    margin: clamp(40px,9vh,100px) auto;
    padding: 36px;
}
.za-admin-page .za-admin-login > p {
    font-size: 14px;
    margin-bottom: 26px;
}
.za-admin-page .za-admin-login .za-button {
    width: 100%;
    margin: 24px 0;
}
.za-admin-page .za-admin-field {
    display: grid;
    gap: 9px;
    margin-top: 20px;
    min-width: 0;
    font-size: 13px;
}
.za-admin-page .za-admin-field > :is(span,label) {
    color: var(--ng-text);
    font-weight: 500;
}
.za-admin-page .za-admin-field b {
    color: var(--za-accent);
}
.za-admin-page .za-admin-field small {
    font-size: 11px;
    line-height: 1.7;
    color: var(--za-muted);
}
.za-admin-page .za-admin-error {
    display: block;
    color: var(--za-danger);
    font-size: 12px;
    margin-top: 8px;
}
.za-admin-page .za-admin-editor-grid {
    display: grid;
    grid-template-columns: minmax(0,1fr) 340px;
    gap: 24px;
    align-items: start;
}
.za-admin-page .za-admin-editor-main,.za-admin-page .za-admin-editor-side {
    min-width: 0;
    display: grid;
    gap: 24px;
}
.za-admin-page .za-admin-form-section h2 {
    font-size: 19px;
    margin: 0 0 20px;
}
.za-admin-page .za-admin-form-section > p {
    font-size: 12px;
}
.za-admin-page .za-admin-slug {
    display: flex;
    align-items: center;
    gap: 0;
    min-width: 0;
    border: var(--za-border-width) solid var(--za-line);
    border-radius: var(--za-radius-control);
    background: var(--za-inner);
}
.za-admin-page .za-admin-slug > span {
    padding-left: 14px;
    color: var(--za-muted);
}
.za-admin-page .za-admin-slug input {
    border: 0;
    background: transparent;
}
.za-admin-page .za-admin-cover-preview {
    display: block;
    width: 100%;
    max-height: 200px;
    object-fit: cover;
    border: var(--za-border-width) solid var(--za-line);
    border-radius: var(--za-radius-control);
    margin-top: 18px;
}
.za-admin-page .za-admin-uploading {
    font-size: 12px;
    color: var(--za-accent);
}
.za-admin-page .za-admin-outline {
    font-size: 12px;
    padding-left: 20px;
    color: var(--za-muted);
    line-height: 1.7;
}
.za-admin-page .za-admin-outline li {
    margin-top: 8px;
    overflow-wrap: anywhere;
}
.za-admin-page .za-admin-errors {
    color: var(--ng-text);
    background: color-mix(in srgb,var(--za-danger) 6%,var(--za-surface));
    border-color: color-mix(in srgb,var(--za-danger) 40%,var(--za-line));
}
.za-admin-page .za-admin-errors li {
    margin-top: 7px;
}
.za-admin-page .za-admin-notice {
    color: var(--ng-text);
    background: color-mix(in srgb,var(--za-step-green) 8%,var(--za-surface));
    border-color: var(--za-step-green);
    margin-bottom: 24px;
}
.za-admin-page .za-admin-editor-message {
    color: var(--za-danger);
    font-size: 12px;
}
.za-admin-page .za-admin-form-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    gap: 16px;
    margin-top: 24px;
}
.za-admin-page .za-admin-search {
    margin-top: 0;
    max-width: 460px;
}
.za-admin-page .za-admin-post {
    display: grid;
    grid-template-columns: 140px minmax(0,1fr) auto;
    gap: 24px;
    align-items: center;
    padding: 24px 0;
    border-bottom: var(--za-border-width) solid var(--za-line);
}
.za-admin-page .za-admin-post:last-child {
    border-bottom: 0;
}
.za-admin-page .za-admin-post > img {
    width: 140px;
    height: 90px;
    object-fit: cover;
    border-radius: var(--za-radius-control);
}
.za-admin-page .za-admin-post h2 {
    font-size: 18px;
    line-height: 1.45;
    margin: 10px 0 6px;
}
.za-admin-page .za-admin-post p {
    font-size: 11px;
    margin: 0;
    overflow-wrap: anywhere;
}
.za-admin-page .za-admin-badge {
    display: inline-block;
    font-size: 10px;
    padding: 3px 8px;
    border: var(--za-border-width) solid var(--za-line);
    border-radius: var(--za-radius-panel);
    color: var(--za-muted);
    background: var(--za-inner);
}
.za-admin-page .za-admin-badge.is-published {
    color: var(--za-step-green);
    border-color: color-mix(in srgb,var(--za-step-green) 45%,transparent);
    background: color-mix(in srgb,var(--za-step-green) 8%,transparent);
}
.za-admin-page .za-admin-category {
    margin-left: 10px;
    font-size: 11px;
    color: var(--za-muted);
}
.za-admin-page .za-admin-post__actions {
    display: flex;
    flex-direction: column;
    align-items: end;
    gap: 14px;
}
.za-admin-page .za-admin-empty {
    padding: 30px 0;
}
.za-admin-page .tox-tinymce {
    max-width: 100%;
    border-color: var(--za-line);
    border-radius: var(--za-radius-control);
}
@media (max-width:999px) {
    .za-admin-page .za-admin-editor-grid {
        grid-template-columns: minmax(0,1fr);
    }
    .za-admin-page .za-admin-editor-side {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
    .za-admin-page .za-admin-editor-side > :last-child {
        grid-column: 1/-1;
    }
}
@media (max-width:767px) {
    .za-admin-page .za-admin-header {
        padding: 16px;
        flex-wrap: wrap;
    }
    .za-admin-page .za-admin-header__actions {
        gap: 12px;
        flex-wrap: wrap;
        justify-content: flex-end;
    }
    .za-admin-page .za-admin-shell {
        width: calc(100% - 32px);
        margin-top: 28px;
    }
    .za-admin-page .za-admin-heading {
        flex-direction: column;
        align-items: start;
    }
    .za-admin-page .za-admin-heading h1,.za-admin-page .za-admin-login h1 {
        font-size: 28px;
    }
    .za-admin-page .za-admin-login {
        padding: 24px;
    }
    .za-admin-page .za-admin-editor-side {
        grid-template-columns: minmax(0,1fr);
    }
    .za-admin-page .za-admin-post {
        grid-template-columns: 80px minmax(0,1fr);
        gap: 16px;
    }
    .za-admin-page .za-admin-post > img {
        width: 80px;
        height: 72px;
    }
    .za-admin-page .za-admin-post h2 {
        font-size: 16px;
    }
    .za-admin-page .za-admin-post__actions {
        grid-column: 1/-1;
        flex-direction: row;
        align-items: center;
    }
    .za-admin-page .za-admin-form-actions {
        justify-content: stretch;
    }
    .za-admin-page .za-admin-form-actions > .za-button {
        flex: 1;
    }
}
.za-brand-panel {
    margin-bottom: 24px;
}
.za-admin-modality-list, .za-admin-modality-fields {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(min(100%,260px),1fr));
    gap: 16px;
    margin-top: 24px;
}
.za-admin-modality-choice {
    display: grid;
    gap: 8px;
    padding: 18px;
    text-align: left;
    color: var(--ng-text);
    background: var(--za-surface);
    border: 1px solid var(--za-line);
    border-radius: var(--za-radius-card);
    cursor: pointer;
}
.za-admin-modality-choice span { color: var(--za-muted); font-size: 12px; }
.za-admin-feature-row {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 12px 0;
}
.za-admin-feature-row > input {
    flex: 1;
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--za-line);
    border-radius: var(--za-radius-card);
    background: var(--za-surface);
    color: var(--ng-text);
}
.za-brand-fields {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 12px 24px;
}
.za-brand-fields .za-admin-field {
    min-width: 0;
}
.za-brand-fields .za-admin-field small {
    overflow-wrap: anywhere;
    font-size: 11px;
}
.za-brand-settings textarea {
    resize: vertical;
    min-height: 82px;
}
.za-brand-save {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 24px;
}
.za-brand-copy-group {
    border-top: 1px solid var(--za-line);
    margin-top: 24px;
    padding-top: 20px;
}
.za-brand-copy-group summary {
    cursor: pointer;
    font-weight: 600;
    color: var(--za-text);
}
.za-brand-copy-group summary small {
    margin-left: 12px;
    color: var(--za-muted);
}
.za-brand-logo-preview {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;
    margin-top: 24px;
}
.za-brand-logo-preview img {
    object-fit: contain;
}
.za-brand-preview {
    display: grid;
    justify-items: start;
    gap: 16px;
    margin-top: 24px;
    padding: 24px;
    border: var(--za-border-width) solid var(--za-line);
    border-radius: var(--za-radius-control);
    background: var(--ng-surface-navbar);
}
.za-brand-preview .za-brand {
    max-width: 100%;
}
.za-brand-preview .za-brand__name {
    min-width: 0;
    overflow-wrap: anywhere;
}
@media (max-width:767px) {
    .za-brand-fields {
        grid-template-columns: minmax(0,1fr);
    }
}

/* Management is a working screen: keep the editor close to its navigation. */
.za-admin-page .za-management-shell {
    --za-page-padding: 22px;
    --za-input-padding: 8px 11px;
    --za-input-font-size: 13px;
    display: grid;
    gap: 16px;
    margin-top: 24px;
}
.za-admin-page .za-management-shell .za-admin-heading {
    margin: 0;
    gap: 12px;
}
.za-admin-page .za-management-shell .za-admin-heading h1 {
    margin: 4px 0 6px;
    font-size: 28px;
}
.za-admin-page .za-management-shell .za-admin-heading p { line-height: 1.5; }
.za-admin-page .za-management-shell .za-management-tabs {
    align-items: center;
    margin: 0;
    padding-bottom: 8px;
    gap: 6px;
}
.za-admin-page .za-management-shell .za-management-tabs a {
    min-height: 38px;
    padding: 8px 14px;
    font-size: 13px;
}
.za-admin-page .za-management-shell .za-section-heading {
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 12px;
}
.za-admin-page .za-management-shell :is(.za-section-heading h2,.za-page-panel > h2,.za-brand-panel form > h2) {
    margin: 0;
    font-size: 20px;
    line-height: 1.35;
}
.za-admin-page .za-management-shell .za-page-panel > p,
.za-admin-page .za-management-shell .za-brand-panel form > p {
    margin: 8px 0 14px;
    font-size: 12px;
    line-height: 1.6;
}
.za-admin-page .za-management-shell .za-admin-field { gap: 6px; margin-top: 12px; }
.za-admin-page .za-management-shell .za-admin-form-actions {
    justify-content: flex-start;
    gap: 12px 20px;
    margin-top: 14px;
    font-size: 13px;
}
.za-admin-page .za-management-shell .za-button {
    min-height: 38px;
    padding: 8px 16px;
    font-size: 12px;
    line-height: 1.5;
}
.za-admin-page .za-management-modalities {
    display: grid;
    gap: 16px;
    align-items: start;
    min-width: 0;
}
.za-admin-page .za-management-modality-picker .za-label { display: none; }
.za-admin-page .za-management-modality-picker .za-text-link { font-size: 12px; }
.za-admin-page .za-management-shell .za-admin-modality-list {
    gap: 8px;
    margin-top: 14px;
}
.za-admin-page .za-management-shell .za-admin-modality-choice { gap: 4px; padding: 12px; font-size: 13px; }
.za-admin-page .za-management-shell .za-admin-modality-choice[aria-pressed="true"] {
    background: var(--za-soft);
    border-color: var(--za-accent);
    box-shadow: inset 3px 0 var(--za-accent);
}
.za-admin-page .za-management-shell .za-admin-modality-fields {
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 12px 16px;
    margin-top: 16px;
}
.za-admin-page .za-management-shell .za-admin-modality-fields .za-admin-field { margin: 0; }
.za-admin-page .za-management-shell .za-admin-form-section > h3 { margin: 18px 0 4px; font-size: 15px; }
.za-admin-page .za-management-shell .za-admin-feature-row { gap: 10px; margin: 6px 0; }
.za-admin-page .za-management-shell .za-admin-feature-row > input { padding: 7px 10px; }
.za-admin-page .za-management-shell .za-admin-feature-row .za-icon-button { width: 34px; height: 34px; min-height: 34px; }
.za-admin-page .za-management-shell .za-management-search { margin: 12px 0; }
.za-admin-page .za-management-filters {
    display: grid;
    grid-template-columns: minmax(0,440px) minmax(0,200px);
    align-items: end;
    gap: 16px;
    margin: 12px 0;
}
.za-admin-page .za-management-shell .za-management-filters .za-admin-field { margin: 0; }
.za-admin-page .za-management-shell .za-management-table :is(td,th) { padding: 10px 12px; }
.za-admin-page .za-management-shell .za-access-editor,
.za-admin-page .za-management-shell .za-brand-panel { margin: 0; }
.za-admin-page .za-management-shell .za-access-checks { margin: 16px 0; gap: 12px 24px; }
.za-admin-page .za-management-shell .za-brand-fields { gap: 0 20px; }
.za-admin-page .za-management-shell .za-brand-preview { gap: 10px; padding: 16px; margin-top: 16px; }
.za-admin-page .za-management-shell .za-brand-save { gap: 12px; margin-top: 16px; }
.za-admin-page .za-management-shell .za-brand-copy-group { margin-top: 16px; padding-top: 14px; }
@media (min-width:1100px) {
    .za-admin-page .za-management-shell { grid-template-columns: minmax(0,1fr) auto; }
    .za-admin-page .za-management-shell > .za-management-tabs { align-self: end; padding-bottom: 0; border-bottom: 0; }
    .za-admin-page .za-management-shell > :not(.za-admin-heading):not(.za-management-tabs),
    .za-admin-page .za-management-shell > .za-management-subheading { grid-column: 1/-1; }
    .za-admin-page .za-management-modalities { grid-template-columns: 270px minmax(0,1fr); }
    .za-admin-page .za-management-shell .za-admin-modality-list { grid-template-columns: minmax(0,1fr); }
}
@media (max-width:767px) {
    .za-admin-page .za-management-shell { --za-page-padding: 16px; margin-top: 20px; }
    .za-admin-page .za-management-shell .za-admin-modality-fields { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .za-admin-page .za-management-shell .za-management-tabs a { flex: 1; min-height: 44px; padding: 10px 8px; }
    .za-admin-page .za-management-shell .za-button { min-height: 44px; }
    .za-admin-page .za-management-shell :is(input:not([type=checkbox]),select) { min-height: 44px; }
    .za-admin-page .za-management-shell .za-admin-feature-row .za-icon-button { width: 44px; height: 44px; }
}
@media (max-width:480px) {
    .za-admin-page .za-management-shell .za-admin-modality-fields { grid-template-columns: minmax(0,1fr); }
    .za-admin-page .za-management-filters { grid-template-columns: minmax(0,1fr); gap: 10px; }
}
