/* Tokens de superfície reutilizáveis no administrativo e portais. */
.surface-dark {
    --surface-text-primary: #fff;
    --surface-text-secondary: #d9d4f8;
    --surface-border: rgba(255,255,255,.22);
    --surface-icon: #fff;
    color: var(--surface-text-primary);
}
.surface-light {
    --surface-text-primary: #142452;
    --surface-text-secondary: #627293;
    --surface-border: #e0e8f7;
    --surface-icon: #2859ac;
    color: var(--surface-text-primary);
}
.surface-title { color: var(--surface-text-primary, inherit); }
.surface-subtitle { color: var(--surface-text-secondary, inherit); }
.surface-divider { border-color: var(--surface-border, currentColor); }
.surface-icon { color: var(--surface-icon, currentColor); }
.surface-dark img.icon-monochrome,
.surface-dark .icon-auto-contrast { filter: brightness(0) invert(1); }
.surface-light img.icon-monochrome,
.surface-light .icon-auto-contrast { filter: none; }
.icon-transparent,
:where(.staff-shell,.client-shell,.public-portal) i.fa,
:where(.staff-shell,.client-shell,.public-portal) i.fas,
:where(.staff-shell,.client-shell,.public-portal) i.far,
:where(.staff-shell,.client-shell,.public-portal) i.fab {
    background: transparent !important;
    box-shadow: none !important;
}
.icon-currentcolor svg { color: inherit; fill: none; stroke: currentColor; }
/* Cabeçalho canônico do painel: título seguido do caminho Menu → submenu. */
.staff-page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;min-height:54px;margin:0 0 10px;padding:0}
.staff-page-heading__identity{min-width:0}
.staff-page-heading__title{margin:0;color:#102044;font-size:1.35rem;line-height:1.15;font-weight:850;letter-spacing:-.025em}
.staff-page-heading__path{display:flex;align-items:center;gap:7px;margin-top:5px;color:#64748b;font-size:.68rem;line-height:1.2}
.staff-page-heading__path i{color:#94a3b8;font-size:.5rem}
.staff-page-heading__path strong{color:#64748b;font-weight:700}
.staff-page-heading__actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.staff-page-heading__actions .btn{height:31px;padding:6px 11px;border-radius:7px;font-size:.65rem;font-weight:750}
.staff-page-heading__meta{color:#64748b;font-size:.64rem;white-space:nowrap}
.staff-page-heading__actions.has-controls{align-items:flex-end}
.staff-period-filter{display:flex;align-items:flex-end;gap:7px;margin:0}
.staff-period-filter>label{margin:0 0 6px;color:#64748b;font-size:.58rem;font-weight:800;text-transform:uppercase}
.staff-period-filter__controls{display:flex;align-items:center;gap:6px}
.staff-period-filter .form-control{width:190px;height:32px;padding:4px 8px;border-radius:7px;font-size:.65rem;background:#fff}
.staff-period-filter .btn{display:inline-flex;align-items:center;gap:5px;white-space:nowrap}
@media(max-width:767.98px){.staff-page-heading{align-items:flex-start;flex-direction:column}.staff-page-heading__actions{justify-content:flex-start;width:100%}.staff-page-heading__meta{white-space:normal}}
@media(max-width:575.98px){.staff-period-filter{width:100%;align-items:stretch;flex-direction:column}.staff-period-filter>label{margin:0}.staff-period-filter__controls{width:100%}.staff-period-filter .form-control{min-width:0;width:100%;flex:1}.staff-period-filter .btn span{display:none}}
/* Compatibilidade: telas legadas seguem a mesma ordem enquanto migram para o componente. */
.page-header>div:first-child{display:flex;flex-direction:column;align-items:flex-start}
.page-header>div:first-child>.page-title{order:1;margin:0;color:#102044;font-size:1.35rem;line-height:1.15;font-weight:850;letter-spacing:-.025em}
.page-header>div:first-child>.page-subtitle{order:2;margin:5px 0 0!important;color:#64748b!important;font-size:.68rem!important;line-height:1.2;font-weight:400!important;letter-spacing:0!important;text-transform:none!important}
.page-header>div:first-child>p:not(.page-subtitle){order:3}
.page-header .account-profile-lead{display:none}
