/* Employee phone header only. Direct-child selectors do not resize notification cards. */
.ep-brand-title { font: inherit; }
@media screen and (max-width: 760px) {
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel {
        display: flex !important; align-items: center !important; justify-content: space-between !important;
        height: 72px !important; min-height: 72px !important; gap: 10px !important; padding: 12px !important;
        border-bottom: 1px solid var(--ep-border) !important; background: var(--ep-surface) !important;
        box-shadow: 0 2px 10px #102a3305 !important;
    }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-link {
        display: flex !important; align-items: center !important; gap: 8px !important; min-width: 0 !important;
        flex: 1 1 auto !important; width: auto !important; margin: 0 !important; padding: 0 !important;
    }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-logo {
        width: 36px !important; height: 36px !important; flex: 0 0 36px !important;
        padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important;
    }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-logo img { width: 36px !important; height: 36px !important; object-fit: contain; }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-name {
        display: block !important; min-width: 0; font-size: 16px !important; font-weight: 750 !important;
        line-height: 1.2 !important; letter-spacing: -.02em !important; color: var(--ep-text) !important;
        white-space: nowrap !important;
    }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions {
        display: flex !important; align-items: center !important; flex: 0 0 auto !important;
        gap: 6px !important; margin: 0 !important; padding: 0 !important;
    }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .theme-toggle,
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .notification-menu > summary,
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .employee-mobile-avatar-trigger {
        display: grid !important; place-items: center !important; position: relative !important;
        width: 44px !important; height: 44px !important; min-width: 44px !important; min-height: 44px !important;
        max-width: 44px !important; max-height: 44px !important; flex: 0 0 44px !important;
        padding: 0 !important; margin: 0 !important; border: 1px solid var(--ep-border) !important;
        border-radius: 12px !important; color: var(--ep-muted) !important; background: var(--ep-bg) !important;
        box-shadow: none !important; transform: none !important; cursor: pointer;
    }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .notification-menu { margin: 0 !important; width: 44px !important; }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-theme-toggle .theme-toggle-icon,
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-theme-toggle svg {
        width: 21px !important; height: 21px !important;
    }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-theme-toggle svg { stroke-width: 1.8; }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-bell-icon::before {
        width: 21px !important; height: 21px !important;
        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M18 8a6 6 0 0 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9M10 21h4'/%3E%3C/svg%3E") !important;
    }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .employee-mobile-avatar-trigger {
        border-radius: 50% !important; padding: 4px !important; color: var(--ep-brand) !important; background: var(--ep-soft) !important;
        font-size: 12px !important; font-weight: 650 !important;
    }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-avatar-trigger img {
        width: 34px !important; height: 34px !important; border-radius: 50%; object-fit: cover;
    }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .notification-badge {
        top: -4px !important; right: -4px !important; min-width: 17px; height: 17px; padding: 0 4px;
        display: grid; place-items: center; font-size: 9px !important; line-height: 1; border: 2px solid var(--ep-surface);
    }
    .page:has(.employee-mobile-tabbar) .sidebar .brand-panel :is(button, summary):focus-visible { outline: 3px solid var(--ep-brand) !important; outline-offset: 2px; }
    @media (max-width: 360px) {
        .page:has(.employee-mobile-tabbar) .sidebar .brand-panel { padding: 12px 8px !important; gap: 6px !important; }
        .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-name { font-size: 14px !important; }
        .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions { gap: 4px !important; }
    }
}

/* Consistent app bar across employee routes, with compact, readable branding. */
@media screen and (max-width: 760px) {
    html body .page:not(.login-only-layout):has(.employee-mobile-tabbar) > .sidebar {
        background: var(--ep-surface) !important;
        border-bottom: 0 !important;
        border-radius: 0 !important;
    }
    html body .page:not(.login-only-layout):has(.employee-mobile-tabbar) > .sidebar .brand-panel {
        padding: 12px 16px !important;
        gap: 12px !important;
        background: var(--ep-surface) !important;
        border-bottom: 1px solid var(--ep-border) !important;
        border-radius: 0 0 20px 20px !important;
        box-shadow: 0 4px 16px color-mix(in srgb, var(--ep-brand) 5%, transparent) !important;
    }
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-link { gap: 10px !important; }
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-logo {
        width: 40px !important; height: 40px !important; flex-basis: 40px !important;
    }
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-logo img { width: 40px !important; height: 40px !important; }
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-name {
        font-size: 15px !important; line-height: 1.25 !important; letter-spacing: -.025em !important;
    }
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-name .ep-brand-title {
        display: block !important; color: var(--ep-text) !important;
        font-size: inherit !important; line-height: inherit !important;
        letter-spacing: inherit !important;
    }
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-name .ep-brand-subtitle {
        display: block !important; max-width: none; margin-top: 3px;
        font-size: 10px !important; line-height: 1.4 !important; letter-spacing: .01em;
        color: var(--ep-muted) !important; white-space: nowrap !important;
        text-transform: none !important;
    }
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions { gap: 6px !important; }
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .theme-toggle,
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .notification-menu > summary {
        border: 1px solid transparent !important;
        border-radius: 14px !important;
        background: var(--ep-bg) !important;
        color: var(--ep-brand) !important;
        transition: background-color .15s ease, border-color .15s ease;
    }
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .theme-toggle:hover,
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .notification-menu > summary:hover {
        border-color: var(--ep-border) !important;
        background: var(--ep-soft) !important;
    }
    html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .employee-mobile-avatar-trigger {
        margin-left: 2px !important; padding: 3px !important;
        border: 1px solid color-mix(in srgb, var(--ep-brand) 30%, var(--ep-border)) !important;
        background: var(--ep-surface) !important;
    }
    @media (max-width: 360px) {
        html body .page:not(.login-only-layout):has(.employee-mobile-tabbar) > .sidebar .brand-panel { padding-inline: 10px !important; gap: 8px !important; }
        html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-link { gap: 7px !important; }
        html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .brand-name { font-size: 14px !important; }
        html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions { gap: 4px !important; }
    }
    @media (prefers-reduced-motion: reduce) {
        html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .theme-toggle,
        html body .page:has(.employee-mobile-tabbar) .sidebar .brand-panel .employee-mobile-header-actions > .notification-menu > summary { transition: none; }
    }
}
