.mw76-root .mw76-state-surface {
    box-sizing: border-box;
    inline-size: 100%;
    max-inline-size: var(--mw76-content-reading);
    margin-inline: auto;
    padding: var(--mw76-space-16) var(--mw76-space-12);
    border: 1px solid var(--mw76-surface-tint);
    border-block-start: 0.25rem solid var(--mw76-color-primary);
    border-radius: var(--mw76-radius-card);
    background: var(--mw76-surface);
    box-shadow: var(--mw76-shadow-card);
    text-align: center;
}
.mw76-root .mw-ui-state,
.mw76-root .mw-ui-state__content {
    display: block;
    padding: 0;
    margin: 0;
    min-block-size: 0;
    border: 0;
    border-radius: 0;
    background: none;
    box-shadow: none;
    text-align: center;
    color: var(--mw76-text);
}
.mw76-root .mw-ui-state__icon {
    display: inline-grid;
    place-items: center;
    inline-size: 4rem;
    block-size: 4rem;
    margin-block-end: var(--mw76-space-6);
    border-radius: 50%;
    background: var(--mw76-surface-tint);
    color: var(--mw76-color-action);
}
.mw76-root .mw-ui-state__icon svg { inline-size: 2rem; block-size: 2rem; }
.mw76-root .mw-ui-state__title,
.mw76-root .mw76-state-title {
    margin: 0;
    margin-block-end: var(--mw76-space-4);
    font-family: var(--mw76-font-display);
    font-size: var(--mw76-heading-1);
    font-weight: var(--mw76-weight-bold);
    line-height: 1.3;
    color: var(--mw76-color-secondary);
}
[lang="ar"] .mw76-root .mw-ui-state__title,
[lang="ar"] .mw76-root .mw76-state-title { line-height: var(--mw76-line-height-arabic); }
.mw76-root .mw-ui-state__message,
.mw76-root .mw76-state-message {
    margin: 0 auto var(--mw76-space-8);
    max-inline-size: 36rem;
    font-size: var(--mw76-font-body);
    line-height: inherit;
    color: var(--mw76-text-muted);
}
.mw76-root .mw76-kicker {
    color: var(--mw76-color-action);
    font-size: var(--mw76-font-label);
    font-weight: var(--mw76-weight-bold);
    margin-block-end: var(--mw76-space-4);
}
.mw76-root .mw76-feature-name { color: var(--mw76-text); margin-block: 0 var(--mw76-space-4); }
.mw76-root .mw76-actions { display: flex; justify-content: center; flex-wrap: wrap; gap: var(--mw76-space-3); }
.mw76-root .mw76-request-id {
    margin-block: var(--mw76-space-8) 0;
    font-size: var(--mw76-font-caption);
    color: var(--mw76-text-muted);
    overflow-wrap: anywhere;
}
.mw76-root .mw-language-switcher,
.mw76-root .mw-language-options { display: flex; align-items: center; flex-wrap: wrap; gap: var(--mw76-space-1); }
.mw76-root .mw-language-switcher { font: inherit; color: var(--mw76-text-muted); }
.mw76-root .mw-language-label { font-size: var(--mw76-font-caption); margin-inline-end: var(--mw76-space-2); }
.mw76-root .mw-language-form,
.mw76-root .mw76-logout { margin: 0; }
.mw76-root .mw-language-button {
    font: inherit;
    font-size: var(--mw76-font-label);
    min-block-size: 2.75rem;
    padding: var(--mw76-space-2) var(--mw76-space-3);
    border: 1px solid transparent;
    border-radius: var(--mw76-radius-control);
    background: var(--mw76-surface);
    color: var(--mw76-link);
}
.mw76-root .mw-language-button.is-active { background: var(--mw76-surface-tint); color: var(--mw76-color-action); font-weight: 700; border-color: var(--mw76-color-action); }
.mw76-root .support-impersonation-banner {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
    gap: var(--mw76-space-4); padding: var(--mw76-space-4); background: var(--mw76-surface-tint); color: var(--mw76-text);
}
.mw76-root .support-impersonation-banner__content { display: flex; flex-wrap: wrap; gap: var(--mw76-space-3); }
.mw76-root .support-impersonation-banner__stop .btn,
.mw76-root .mw-pwa-actions .btn,
.mw76-root .mw-pwa-update .btn,
.mw76-root .mw-push-actions .btn { background: var(--mw76-surface); color: var(--mw76-link); border: 1px solid var(--mw76-border); min-block-size: 2.75rem; border-radius: var(--mw76-radius-control); box-shadow: none; }
.mw76-root .mw-pwa-actions .btn-primary,
.mw76-root .mw-pwa-update .btn-primary,
.mw76-root .mw-push-actions .btn-primary { background: var(--mw76-color-action); color: var(--mw76-surface); border-color: var(--mw76-color-action); }
/* Retain the existing PWA/push geometry and conditions; own the reused surfaces. */
.mw76-root .mw-pwa-install,
.mw76-root .mw-pwa-update,
.mw76-root .mw-push-settings,
.mw76-root .mw-toast {
    background: var(--mw76-surface);
    color: var(--mw76-text);
    border-color: var(--mw76-border);
    border-radius: var(--mw76-radius-card);
    box-shadow: var(--mw76-shadow-card);
}
.mw76-root .mw-pwa-install-copy strong,
.mw76-root .mw-pwa-update span { color: var(--mw76-text); font-weight: var(--mw76-weight-bold); }
.mw76-root .mw-pwa-install-copy span { color: var(--mw76-text-muted); }
@media (max-width: 575.98px) {
    .mw76-root .mw76-state-surface { padding: var(--mw76-space-8) var(--mw76-space-6); }
    .mw76-root .mw-ui-state__title,
    .mw76-root .mw76-state-title { font-size: var(--mw76-heading-2); }
    .mw76-root .mw76-actions { flex-direction: column; }
}

/* Public and Auth chrome only. No selector below owns a legacy-main descendant. */
.mw76-root.mw76-public .mw76-public-brand-copy { display: flex; flex-direction: column; gap: var(--mw76-space-1); }
.mw76-root.mw76-public .mw76-public-brand-copy strong { font: inherit; }
.mw76-root.mw76-public .mw76-public-brand-copy small { font-size: var(--mw76-font-caption); font-weight: var(--mw76-weight-regular); color: var(--mw76-text-muted); }
.mw76-root.mw76-public .mw76-public-link {
    display: inline-flex; align-items: center; min-block-size: 2.75rem; padding: var(--mw76-space-2) var(--mw76-space-3);
    color: var(--mw76-color-secondary); font-weight: var(--mw76-weight-semibold); text-decoration: none; border-block-end: 2px solid transparent;
}
.mw76-root.mw76-public .mw76-public-link.is-active { color: var(--mw76-color-action); border-block-end-color: var(--mw76-color-primary); }
.mw76-root.mw76-public .mw76-public-link:hover { background: var(--mw76-surface-tint); }
.mw76-root.mw76-public.mw76-footer { background: var(--mw76-surface-muted); border-block-start: 1px solid var(--mw76-surface-tint); }
.mw76-root.mw76-public .mw76-public-footer-brand { display: flex; flex-direction: column; gap: var(--mw76-space-3); max-inline-size: var(--mw76-content-auth); }
.mw76-root.mw76-public .mw76-public-footer-brand strong { color: var(--mw76-color-secondary); font-size: var(--mw76-heading-2); }
.mw76-root.mw76-public .mw76-public-footer-links .mw76-link { min-block-size: 2.75rem; display: inline-flex; align-items: center; }
.mw76-root.mw76-auth .mw76-auth-chrome .mw-language-label { display: none; }

/* Only the declared authenticated Public drawer bridges untouched _AppNavigation markup. */
.mw76-root.mw76-public .mw76-operational-drawer {
    inline-size: min(24rem, 100%); background: var(--mw76-surface); color: var(--mw76-text); border-color: var(--mw76-border);
}
.mw76-root.mw76-public .mw76-operational-heading { gap: var(--mw76-space-4); padding: var(--mw76-space-6); border-block-end: 1px solid var(--mw76-surface-tint); }
.mw76-root.mw76-public .mw76-operational-links { padding: var(--mw76-space-4); }
.mw76-root.mw76-public .mw76-operational-links .app-nav { display: flex; flex-direction: column; gap: var(--mw76-space-2); }
.mw76-root.mw76-public .mw76-operational-links .app-nav-section { margin-block: var(--mw76-space-3); }
.mw76-root.mw76-public .mw76-operational-links .app-nav-link {
    display: flex; align-items: center; gap: var(--mw76-space-3); padding: var(--mw76-space-3) var(--mw76-space-4);
    min-block-size: 2.75rem; color: var(--mw76-link); background: var(--mw76-surface); border-radius: var(--mw76-radius-control); text-decoration: none;
}
.mw76-root.mw76-public .mw76-operational-links .app-nav-link:hover,
.mw76-root.mw76-public .mw76-operational-links .app-nav-link.is-active { background: var(--mw76-surface-tint); color: var(--mw76-color-action); }
.mw76-root.mw76-public .mw76-operational-links .app-nav-link svg { inline-size: var(--mw76-space-6); block-size: var(--mw76-space-6); flex-shrink: 0; }
.mw76-root.mw76-public .mw76-operational-links .app-nav-title { color: var(--mw76-text-muted); font-size: var(--mw76-font-caption); padding: var(--mw76-space-4); }
@media (prefers-reduced-motion: reduce) {
    .mw76-root.mw76-public .mw76-operational-drawer,
    .mw76-root.mw76-public .mw76-public-menu.collapsing { transition: none; }
}

/* Customer chrome bridges the existing authorized navigation; dashboard content stays legacy. */
.mw76-root.mw76-customer .mw76-customer-workspace { color: var(--mw76-color-secondary); font-weight: var(--mw76-weight-semibold); }
.mw76-root.mw76-customer .mw76-customer-account-toggle {
    display: inline-flex; align-items: center; gap: var(--mw76-space-3); padding: var(--mw76-space-2);
    border: 1px solid var(--mw76-surface-tint); border-radius: var(--mw76-radius-card);
    background: var(--mw76-surface); color: var(--mw76-text); font: inherit;
}
.mw76-root.mw76-customer .mw76-customer-avatar { display: grid; place-items: center; flex-shrink: 0; inline-size: 2.75rem; block-size: 2.75rem; border-radius: 50%; background: var(--mw76-surface-tint); color: var(--mw76-color-action); font-weight: var(--mw76-weight-bold); }
.mw76-root.mw76-customer .mw76-customer-account-copy { display: flex; flex-direction: column; align-items: start; text-align: start; }
.mw76-root.mw76-customer .mw76-customer-account-copy strong { max-inline-size: 14rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: var(--mw76-font-label); }
.mw76-root.mw76-customer .mw76-customer-account-copy small { color: var(--mw76-text-muted); font-size: var(--mw76-font-caption); }
.mw76-root.mw76-customer .mw76-customer-account-menu { padding: var(--mw76-space-3); min-inline-size: 13rem; max-inline-size: calc(100vw - 2rem); border: 1px solid var(--mw76-border); border-radius: var(--mw76-radius-card); background: var(--mw76-surface); color: var(--mw76-text); box-shadow: var(--mw76-shadow-card); text-align: start; }
.mw76-root.mw76-customer .mw76-customer-account-name { display: block; padding: var(--mw76-space-2); overflow-wrap: anywhere; font-size: var(--mw76-font-label); }
.mw76-root.mw76-customer .mw76-customer-panel { inline-size: min(18rem, 90vw); background: var(--mw76-surface); color: var(--mw76-text); border-color: var(--mw76-surface-tint); }
.mw76-root.mw76-customer .mw76-customer-navigation-heading { display: flex; align-items: center; justify-content: space-between; gap: var(--mw76-space-2); padding: var(--mw76-space-4); border-block-end: 1px solid var(--mw76-surface-tint); color: var(--mw76-color-secondary); }
.mw76-root.mw76-customer .mw76-customer-navigation-links { padding: var(--mw76-space-3); }
.mw76-root.mw76-customer .app-nav { display: flex; flex-direction: column; gap: var(--mw76-space-4); }
.mw76-root.mw76-customer .app-nav-section { display: flex; flex-direction: column; gap: var(--mw76-space-1); }
.mw76-root.mw76-customer .app-nav-title { color: var(--mw76-text-muted); font-size: var(--mw76-font-caption); padding: var(--mw76-space-3); }
.mw76-root.mw76-customer .app-nav-link { display: flex; align-items: center; gap: var(--mw76-space-3); padding: var(--mw76-space-3); min-block-size: 2.75rem; border-inline-start: 3px solid transparent; border-radius: var(--mw76-radius-control); color: var(--mw76-link); text-decoration: none; font-size: var(--mw76-font-label); }
.mw76-root.mw76-customer .app-nav-link:hover { background: var(--mw76-surface-muted); }
.mw76-root.mw76-customer .app-nav-link.is-active { background: var(--mw76-surface-tint); border-inline-start-color: var(--mw76-color-primary); color: var(--mw76-color-action); font-weight: var(--mw76-weight-semibold); }
.mw76-root.mw76-customer .app-nav-icon { display: inline-flex; flex-shrink: 0; }
.mw76-root.mw76-customer .app-nav-icon svg { inline-size: 1.25rem; block-size: 1.25rem; }
@media (prefers-reduced-motion: reduce) {
    .mw76-root.mw76-customer .mw76-customer-panel { transition: none; }
}

/* Tenant chrome bridges the existing authorized navigation; dashboard content areas stay legacy. */
.mw76-root.mw76-tenant .mw76-tenant-workspace { min-inline-size: 0; color: var(--mw76-color-secondary); }
.mw76-root.mw76-tenant .mw76-tenant-workspace h1,
.mw76-root.mw76-tenant .mw76-tenant-workspace-label { margin: 0; font-size: var(--mw76-font-body); font-weight: var(--mw76-weight-semibold); line-height: inherit; }
.mw76-root.mw76-tenant .mw76-tenant-center { display: block; font-size: var(--mw76-font-caption); color: var(--mw76-text-muted); overflow-wrap: anywhere; }
.mw76-root.mw76-tenant .mw76-tenant-account-toggle {
    display: inline-flex; align-items: center; gap: var(--mw76-space-3); padding: var(--mw76-space-2);
    border: 1px solid var(--mw76-surface-tint); border-radius: var(--mw76-radius-card);
    background: var(--mw76-surface); color: var(--mw76-text); font: inherit;
}
.mw76-root.mw76-tenant .mw76-tenant-avatar { display: grid; place-items: center; flex-shrink: 0; inline-size: 2.75rem; block-size: 2.75rem; border-radius: 50%; background: var(--mw76-surface-tint); color: var(--mw76-color-action); font-weight: var(--mw76-weight-bold); }
.mw76-root.mw76-tenant .mw76-tenant-account-copy { display: flex; flex-direction: column; align-items: start; text-align: start; }
.mw76-root.mw76-tenant .mw76-tenant-account-copy strong { max-inline-size: 14rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: var(--mw76-font-label); }
.mw76-root.mw76-tenant .mw76-tenant-account-copy small { color: var(--mw76-text-muted); font-size: var(--mw76-font-caption); }
.mw76-root.mw76-tenant .mw76-tenant-account-menu { padding: var(--mw76-space-3); min-inline-size: 13rem; max-inline-size: calc(100vw - 2rem); border: 1px solid var(--mw76-border); border-radius: var(--mw76-radius-card); background: var(--mw76-surface); color: var(--mw76-text); box-shadow: var(--mw76-shadow-card); text-align: start; }
.mw76-root.mw76-tenant .mw76-tenant-account-name { display: block; padding: var(--mw76-space-2); overflow-wrap: anywhere; font-size: var(--mw76-font-label); }
.mw76-root.mw76-tenant .mw76-tenant-panel { inline-size: min(18rem, 90vw); background: var(--mw76-surface); color: var(--mw76-text); border-color: var(--mw76-surface-tint); }
.mw76-root.mw76-tenant .mw76-tenant-navigation-heading { display: flex; align-items: center; justify-content: space-between; gap: var(--mw76-space-2); padding: var(--mw76-space-4); border-block-end: 1px solid var(--mw76-surface-tint); color: var(--mw76-color-secondary); }
.mw76-root.mw76-tenant .mw76-tenant-navigation-links { padding: var(--mw76-space-3); }
.mw76-root.mw76-tenant .app-nav { display: flex; flex-direction: column; gap: var(--mw76-space-4); }
.mw76-root.mw76-tenant .app-nav-section { display: flex; flex-direction: column; gap: var(--mw76-space-1); }
.mw76-root.mw76-tenant .app-nav-title { color: var(--mw76-text-muted); font-size: var(--mw76-font-caption); padding: var(--mw76-space-3); }
.mw76-root.mw76-tenant .app-nav-link { display: flex; align-items: center; gap: var(--mw76-space-3); padding: var(--mw76-space-3); min-block-size: 2.75rem; border-inline-start: 3px solid transparent; border-radius: var(--mw76-radius-control); color: var(--mw76-link); text-decoration: none; font-size: var(--mw76-font-label); }
.mw76-root.mw76-tenant .app-nav-link:hover { background: var(--mw76-surface-muted); }
.mw76-root.mw76-tenant .app-nav-link.is-active { background: var(--mw76-surface-tint); border-inline-start-color: var(--mw76-color-primary); color: var(--mw76-color-action); font-weight: var(--mw76-weight-semibold); }
.mw76-root.mw76-tenant .app-nav-icon { display: inline-flex; flex-shrink: 0; }
.mw76-root.mw76-tenant .app-nav-icon svg { inline-size: 1.25rem; block-size: 1.25rem; }
@media (prefers-reduced-motion: reduce) {
    .mw76-root.mw76-tenant .mw76-tenant-panel { transition: none; }
}

/* Platform chrome: Admin rail composition, current Salon tokens and real platform navigation. */
.mw76-root.mw76-platform .mw76-platform-workspace { display: flex; align-items: center; gap: var(--mw76-space-3); color: var(--mw76-color-secondary); }
.mw76-root.mw76-platform .mw76-platform-workspace-copy { display: flex; flex-direction: column; }
.mw76-root.mw76-platform .mw76-platform-workspace-copy small { font-size: var(--mw76-font-caption); color: var(--mw76-text-muted); }
.mw76-root.mw76-platform .mw76-platform-workspace-copy strong { font-size: var(--mw76-font-body); font-weight: var(--mw76-weight-semibold); }
.mw76-root.mw76-platform .mw76-platform-emblem { display: grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; background: var(--mw76-surface-tint); color: var(--mw76-color-action); border-radius: var(--mw76-radius-control); }
.mw76-root.mw76-platform .mw76-platform-account-toggle { display: inline-flex; align-items: center; gap: var(--mw76-space-3); padding: var(--mw76-space-2); background: var(--mw76-surface); color: var(--mw76-text); border: 1px solid var(--mw76-surface-tint); border-radius: var(--mw76-radius-control); font: inherit; }
.mw76-root.mw76-platform .mw76-platform-avatar { display: grid; place-items: center; inline-size: 2.75rem; block-size: 2.75rem; border-radius: var(--mw76-radius-control); background: var(--mw76-color-secondary); color: var(--mw76-surface); font-weight: var(--mw76-weight-bold); flex-shrink: 0; }
.mw76-root.mw76-platform .mw76-platform-account-copy { display: flex; flex-direction: column; text-align: start; }
.mw76-root.mw76-platform .mw76-platform-account-copy strong { max-inline-size: 12rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: var(--mw76-font-label); }
.mw76-root.mw76-platform .mw76-platform-account-copy small { color: var(--mw76-text-muted); font-size: var(--mw76-font-caption); }
.mw76-root.mw76-platform .mw76-platform-account-menu { padding: var(--mw76-space-3); min-inline-size: 13rem; max-inline-size: calc(100vw - 2rem); border: 1px solid var(--mw76-border); border-radius: var(--mw76-radius-control); background: var(--mw76-surface); color: var(--mw76-text); box-shadow: var(--mw76-shadow-card); text-align: start; }
.mw76-root.mw76-platform .mw76-platform-account-name { display: block; padding: var(--mw76-space-2); overflow-wrap: anywhere; font-size: var(--mw76-font-label); }
.mw76-root.mw76-platform .mw76-platform-panel { inline-size: min(17rem, 90vw); background: var(--mw76-color-secondary); color: var(--mw76-surface); border: 0; }
.mw76-root.mw76-platform .mw76-platform-navigation-heading { display: flex; align-items: center; flex-wrap: wrap; gap: var(--mw76-space-3); padding: var(--mw76-space-6) var(--mw76-space-4); border-block-end: 1px solid var(--mw76-border); }
.mw76-root.mw76-platform .mw76-platform-panel .mw76-brand { color: var(--mw76-surface); }
.mw76-root.mw76-platform .mw76-platform-navigation-title { flex-basis: 100%; font-size: var(--mw76-font-caption); color: var(--mw76-surface-tint); font-weight: var(--mw76-weight-medium); }
.mw76-root.mw76-platform .mw76-platform-navigation-links { padding: var(--mw76-space-3); }
.mw76-root.mw76-platform .app-nav { display: flex; flex-direction: column; gap: var(--mw76-space-4); }
.mw76-root.mw76-platform .app-nav-section { display: flex; flex-direction: column; gap: var(--mw76-space-1); }
.mw76-root.mw76-platform .app-nav-title { padding: var(--mw76-space-3); font-size: var(--mw76-font-caption); color: var(--mw76-surface-tint); }
.mw76-root.mw76-platform .app-nav-link { display: flex; align-items: center; gap: var(--mw76-space-3); padding: var(--mw76-space-2) var(--mw76-space-3); min-block-size: 2.75rem; border-inline-start: 3px solid transparent; border-radius: var(--mw76-radius-control); color: var(--mw76-surface); font-size: var(--mw76-font-label); text-decoration: none; overflow-wrap: anywhere; }
.mw76-root.mw76-platform .app-nav-link:hover { background: var(--mw76-surface-tint); color: var(--mw76-color-secondary); }
.mw76-root.mw76-platform .app-nav-link.is-active { background: var(--mw76-color-action); border-inline-start-color: var(--mw76-surface); color: var(--mw76-surface); font-weight: var(--mw76-weight-semibold); }
.mw76-root.mw76-platform .app-nav-icon { display: inline-flex; flex-shrink: 0; }
.mw76-root.mw76-platform .app-nav-icon svg { inline-size: 1.25rem; block-size: 1.25rem; }
.mw76-root.mw76-platform .mw76-platform-panel :where(a, button):focus-visible { outline-color: var(--mw76-surface); }
.mw76-root.mw76-platform .mw76-platform-menu-close { margin-inline-start: auto; background: transparent; color: var(--mw76-surface); border-color: var(--mw76-surface); }
@media (prefers-reduced-motion: reduce) {
    .mw76-root.mw76-platform .mw76-platform-panel { transition: none; }
}
