/**
 * PROENCA & FERRAZ â€” Identidade Azul e Cinza 3.12.190
 *
 * Camada visual final. Somente cores, superficies, bordas, sombras e foco sao
 * alterados. Layout, posicionamento, rolagem, canvas, PDF e estados [hidden]
 * continuam sob responsabilidade dos componentes originais.
 */

:root,
html[data-pfi-theme="light"],
html[data-proenca-theme="light"] {
  color-scheme: light !important;

  --pf-ui-white: #ffffff;
  --pf-ui-blue-950: #082f54;
  --pf-ui-blue-900: #0a3a66;
  --pf-ui-blue-800: #0b4f87;
  --pf-ui-blue-700: #0b63a5;
  --pf-ui-blue-600: #1673b8;
  --pf-ui-blue-200: #b9d5ea;
  --pf-ui-blue-100: #e4f0f9;
  --pf-ui-blue-050: #f2f7fb;
  --pf-ui-gray-300: #cbd7e1;
  --pf-ui-gray-200: #dfe7ed;
  --pf-ui-gray-100: #f1f4f7;
  --pf-ui-gray-050: #f7f9fb;
  --pf-ui-text: #103858;
  --pf-ui-muted: #557087;
  --pf-ui-focus: rgba(11, 99, 165, .22);
  --pf-ui-shadow-xs: 0 2px 8px rgba(8, 47, 84, .06);
  --pf-ui-shadow-sm: 0 8px 24px rgba(8, 47, 84, .09);
  --pf-ui-shadow-md: 0 18px 42px rgba(8, 47, 84, .12);

  --proenca-navy: var(--pf-ui-blue-950) !important;
  --proenca-navy-2: var(--pf-ui-blue-900) !important;
  --proenca-blue: var(--pf-ui-blue-700) !important;
  --proenca-blue-hover: var(--pf-ui-blue-800) !important;
  --proenca-red: var(--pf-ui-blue-700) !important;
  --proenca-red-dark: var(--pf-ui-blue-900) !important;
  --proenca-bg: var(--pf-ui-gray-100) !important;
  --proenca-bg-2: var(--pf-ui-gray-050) !important;
  --proenca-bg-deep: var(--pf-ui-gray-100) !important;
  --proenca-surface: var(--pf-ui-white) !important;
  --proenca-surface-soft: var(--pf-ui-gray-050) !important;
  --proenca-surface-blue: var(--pf-ui-blue-050) !important;
  --proenca-panel: var(--pf-ui-white) !important;
  --proenca-panel-2: var(--pf-ui-gray-050) !important;
  --proenca-panel-3: var(--pf-ui-blue-050) !important;
  --proenca-text: var(--pf-ui-text) !important;
  --proenca-text-strong: var(--pf-ui-blue-950) !important;
  --proenca-text-soft: var(--pf-ui-muted) !important;
  --proenca-muted: var(--pf-ui-muted) !important;
  --proenca-border: var(--pf-ui-gray-200) !important;
  --proenca-border-strong: var(--pf-ui-gray-300) !important;
  --proenca-success: var(--pf-ui-blue-700) !important;
  --proenca-success-bg: var(--pf-ui-blue-050) !important;
  --proenca-warning: var(--pf-ui-blue-800) !important;
  --proenca-warning-bg: var(--pf-ui-gray-100) !important;
  --proenca-danger: var(--pf-ui-blue-950) !important;
  --proenca-danger-bg: var(--pf-ui-blue-100) !important;
  --proenca-info: var(--pf-ui-blue-700) !important;
  --proenca-info-bg: var(--pf-ui-blue-050) !important;
  --proenca-green: var(--pf-ui-blue-700) !important;
  --proenca-orange: var(--pf-ui-blue-800) !important;
  --proenca-gold: var(--pf-ui-blue-600) !important;
  --proenca-feature: linear-gradient(120deg, var(--pf-ui-blue-950), var(--pf-ui-blue-700)) !important;
  --proenca-shadow-xs: var(--pf-ui-shadow-xs) !important;
  --proenca-shadow-sm: var(--pf-ui-shadow-sm) !important;
  --proenca-shadow-md: var(--pf-ui-shadow-md) !important;
  --proenca-shadow: var(--pf-ui-shadow-md) !important;
  --proenca-shadow-soft: var(--pf-ui-shadow-sm) !important;

  --pfi-bg: var(--pf-ui-gray-100) !important;
  --pfi-bg-elevated: var(--pf-ui-white) !important;
  --pfi-surface: var(--pf-ui-white) !important;
  --pfi-surface-alt: var(--pf-ui-gray-050) !important;
  --pfi-surface-high: var(--pf-ui-blue-050) !important;
  --pfi-text: var(--pf-ui-blue-950) !important;
  --pfi-text-soft: var(--pf-ui-text) !important;
  --pfi-muted: var(--pf-ui-muted) !important;
  --pfi-border: var(--pf-ui-gray-200) !important;
  --pfi-border-strong: var(--pf-ui-gray-300) !important;
  --pfi-blue: var(--pf-ui-blue-800) !important;
  --pfi-blue-light: var(--pf-ui-blue-600) !important;
  --pfi-red: var(--pf-ui-blue-700) !important;
  --pfi-success: var(--pf-ui-blue-700) !important;
  --pfi-warning: var(--pf-ui-blue-800) !important;
  --pfi-danger: var(--pf-ui-blue-950) !important;
  --pfi-gold: var(--pf-ui-blue-600) !important;
  --pfi-shadow: var(--pf-ui-shadow-md) !important;
  --pfi-shadow-soft: var(--pf-ui-shadow-sm) !important;

  /* Login corporativo: as chaves permanecem por compatibilidade. */
  --pfl-primary: var(--pf-ui-blue-950) !important;
  --pfl-secondary: var(--pf-ui-blue-700) !important;
  --pfl-accent: var(--pf-ui-blue-700) !important;
  --pfl-background: var(--pf-ui-gray-100) !important;
  --pfl-surface: var(--pf-ui-white) !important;
  --pfl-success: var(--pf-ui-blue-700) !important;

  --pfo-bg: var(--pf-ui-gray-100) !important;
  --pfo-surface: var(--pf-ui-white) !important;
  --pfo-surface-2: var(--pf-ui-gray-050) !important;
  --pfo-surface-soft: var(--pf-ui-gray-050) !important;
  --pfo-surface-tint: var(--pf-ui-blue-050) !important;
  --pfo-line: var(--pf-ui-gray-200) !important;
  --pfo-border: var(--pf-ui-gray-200) !important;
  --pfo-border-soft: var(--pf-ui-gray-100) !important;
  --pfo-border-strong: var(--pf-ui-gray-300) !important;
  --pfo-text: var(--pf-ui-text) !important;
  --pfo-text-dark: var(--pf-ui-blue-950) !important;
  --pfo-text-soft: var(--pf-ui-muted) !important;
  --pfo-text-muted: var(--pf-ui-muted) !important;
  --pfo-muted: var(--pf-ui-muted) !important;
  --pfo-blue: var(--pf-ui-blue-700) !important;
  --pfo-blue-strong: var(--pf-ui-blue-800) !important;
  --pfo-blue-deep: var(--pf-ui-blue-950) !important;
  --pfo-navy: var(--pf-ui-blue-950) !important;
  --pfo-navy-2: var(--pf-ui-blue-900) !important;
  --pfo-navy-3: var(--pf-ui-blue-800) !important;
  --pfo-red: var(--pf-ui-blue-700) !important;
  --pfo-red-soft: var(--pf-ui-blue-100) !important;
  --pfo-green: var(--pf-ui-blue-700) !important;
  --pfo-green-soft: var(--pf-ui-blue-050) !important;
  --pfo-shadow: var(--pf-ui-shadow-md) !important;
  --pfo-shadow-soft: var(--pf-ui-shadow-sm) !important;

  --ppa-theme: var(--pf-ui-blue-950) !important;
  --ppa-background: var(--pf-ui-gray-100) !important;
  --ppa-accent: var(--pf-ui-blue-700) !important;
  --ppa-surface: var(--pf-ui-white) !important;
  --ppa-surface-2: var(--pf-ui-gray-050) !important;
  --ppa-text: var(--pf-ui-text) !important;
  --ppa-muted: var(--pf-ui-muted) !important;
  --ppa-muted-2: var(--pf-ui-muted) !important;
  --ppa-line: var(--pf-ui-gray-200) !important;
  --ppa-line-strong: var(--pf-ui-gray-300) !important;

  --ppc-bg: var(--pf-ui-gray-100) !important;
  --ppc-bg-soft: var(--pf-ui-gray-050) !important;
  --ppc-surface: var(--pf-ui-white) !important;
  --ppc-surface-2: var(--pf-ui-gray-050) !important;
  --ppc-surface-3: var(--pf-ui-blue-050) !important;
  --ppc-border: var(--pf-ui-gray-200) !important;
  --ppc-border-strong: var(--pf-ui-gray-300) !important;
  --ppc-text: var(--pf-ui-text) !important;
  --ppc-text-soft: var(--pf-ui-muted) !important;
  --ppc-muted: var(--pf-ui-muted) !important;
  --ppc-secondary: var(--pf-ui-blue-950) !important;
  --ppc-blue: var(--pf-ui-blue-700) !important;
  --ppc-accent: var(--pf-ui-blue-700) !important;
  --ppc-green: var(--pf-ui-blue-700) !important;
  --ppc-orange: var(--pf-ui-blue-800) !important;
  --ppc-danger: var(--pf-ui-blue-950) !important;
  --ppc-shadow: var(--pf-ui-shadow-md) !important;

  --pfnp-bg: var(--pf-ui-gray-100) !important;
  --pfnp-bg-soft: var(--pf-ui-gray-050) !important;
  --pfnp-surface: var(--pf-ui-white) !important;
  --pfnp-surface-2: var(--pf-ui-blue-050) !important;
  --pfnp-border: var(--pf-ui-gray-200) !important;
  --pfnp-border-strong: var(--pf-ui-gray-300) !important;
  --pfnp-text: var(--pf-ui-text) !important;
  --pfnp-muted: var(--pf-ui-muted) !important;
  --pfnp-success: var(--pf-ui-blue-700) !important;
  --pfnp-warning: var(--pf-ui-blue-800) !important;
  --pfnp-danger: var(--pf-ui-blue-950) !important;
  --pfnp-shadow: var(--pf-ui-shadow-sm) !important;
}

/* Tokens definidos dentro dos roots dos modulos. */
body.pfi-theme {
  --ppc-bg: var(--pf-ui-gray-100) !important;
  --ppc-bg-soft: var(--pf-ui-gray-050) !important;
  --ppc-surface: var(--pf-ui-white) !important;
  --ppc-surface-2: var(--pf-ui-gray-050) !important;
  --ppc-surface-3: var(--pf-ui-blue-050) !important;
  --ppc-border: var(--pf-ui-gray-200) !important;
  --ppc-border-strong: var(--pf-ui-gray-300) !important;
  --ppc-text: var(--pf-ui-text) !important;
  --ppc-text-soft: var(--pf-ui-muted) !important;
  --ppc-muted: var(--pf-ui-muted) !important;
  --ppc-green: var(--pf-ui-blue-700) !important;
  --ppc-orange: var(--pf-ui-blue-800) !important;
  --ppc-danger: var(--pf-ui-blue-950) !important;
  --ppc-shadow: var(--pf-ui-shadow-md) !important;
}

.pcc-board,
.pcc-login-required {
  --pcc-bg: var(--pf-ui-gray-100) !important;
  --pcc-panel: var(--pf-ui-white) !important;
  --pcc-panel-2: var(--pf-ui-gray-050) !important;
  --pcc-border: var(--pf-ui-gray-200) !important;
  --pcc-text: var(--pf-ui-text) !important;
  --pcc-muted: var(--pf-ui-muted) !important;
  --pcc-orange: var(--pf-ui-blue-800) !important;
  --pcc-yellow: var(--pf-ui-blue-600) !important;
  --pcc-green: var(--pf-ui-blue-700) !important;
  --pcc-red: var(--pf-ui-blue-950) !important;
  --pcc-shadow: var(--pf-ui-shadow-sm) !important;
}

.prh-portal,
.prh-sign-page,
.prh-access-denied {
  --prh-navy-950: var(--pf-ui-blue-950) !important;
  --prh-navy-900: var(--pf-ui-blue-900) !important;
  --prh-navy-850: var(--pf-ui-blue-900) !important;
  --prh-navy-800: var(--pf-ui-blue-800) !important;
  --prh-navy-750: var(--pf-ui-blue-700) !important;
  --prh-orange: var(--pf-ui-blue-800) !important;
  --prh-green: var(--pf-ui-blue-700) !important;
  --prh-yellow: var(--pf-ui-blue-600) !important;
  --prh-red: var(--pf-ui-blue-950) !important;
  --prh-text: var(--pf-ui-text) !important;
  --prh-muted: var(--pf-ui-muted) !important;
  --prh-line: var(--pf-ui-gray-200) !important;
  --prh-line-strong: var(--pf-ui-gray-300) !important;
  --prh-shadow: var(--pf-ui-shadow-sm) !important;
}

.psos-portal,
.psos-login-required,
.psos-access-denied {
  --psos-navy-975: var(--pf-ui-blue-950) !important;
  --psos-navy-950: var(--pf-ui-blue-950) !important;
  --psos-navy-900: var(--pf-ui-blue-900) !important;
  --psos-navy-850: var(--pf-ui-blue-900) !important;
  --psos-navy-800: var(--pf-ui-blue-800) !important;
  --psos-navy-750: var(--pf-ui-blue-700) !important;
  --psos-orange: var(--pf-ui-blue-800) !important;
  --psos-yellow: var(--pf-ui-blue-600) !important;
  --psos-green: var(--pf-ui-blue-700) !important;
  --psos-accent: var(--pf-ui-blue-700) !important;
  --psos-text: var(--pf-ui-text) !important;
  --psos-muted: var(--pf-ui-muted) !important;
  --psos-muted-2: var(--pf-ui-muted) !important;
  --psos-line: var(--pf-ui-gray-200) !important;
  --psos-line-strong: var(--pf-ui-gray-300) !important;
  --psos-shadow: var(--pf-ui-shadow-sm) !important;
}

.pst-portal {
  --pst-navy-950: var(--pf-ui-blue-950) !important;
  --pst-navy-900: var(--pf-ui-blue-900) !important;
  --pst-navy-800: var(--pf-ui-blue-800) !important;
  --pst-orange-500: var(--pf-ui-blue-700) !important;
  --pst-blue-050: var(--pf-ui-blue-050) !important;
  --pst-blue-100: var(--pf-ui-blue-100) !important;
  --pst-blue-200: var(--pf-ui-blue-200) !important;
  --pst-text: var(--pf-ui-text) !important;
  --pst-muted: var(--pf-ui-muted) !important;
  --pst-border: var(--pf-ui-gray-200) !important;
  --pst-success: var(--pf-ui-blue-700) !important;
  --pst-warning: var(--pf-ui-blue-800) !important;
  --pst-danger: var(--pf-ui-blue-950) !important;
  --pst-shadow: var(--pf-ui-shadow-sm) !important;
}

.pflf-shell {
  --pflf-surface: var(--pf-ui-white) !important;
  --pflf-surface-soft: var(--pf-ui-gray-050) !important;
  --pflf-surface-alt: var(--pf-ui-blue-050) !important;
  --pflf-border: var(--pf-ui-gray-200) !important;
  --pflf-border-strong: var(--pf-ui-gray-300) !important;
  --pflf-text: var(--pf-ui-text) !important;
  --pflf-text-soft: var(--pf-ui-muted) !important;
  --pflf-blue: var(--pf-ui-blue-700) !important;
  --pflf-blue-strong: var(--pf-ui-blue-800) !important;
  --pflf-red: var(--pf-ui-blue-950) !important;
  --pflf-shadow: var(--pf-ui-shadow-md) !important;
  --pflf-shadow-soft: var(--pf-ui-shadow-sm) !important;
}

.pflf-rentals-unified {
  --rent-navy: var(--pf-ui-blue-950) !important;
  --rent-blue: var(--pf-ui-blue-700) !important;
  --rent-red: var(--pf-ui-blue-900) !important;
  --rent-line: var(--pf-ui-gray-200) !important;
  --rent-muted: var(--pf-ui-muted) !important;
}

.pfo-tool-custody {
  --pfo-surface: var(--pf-ui-white) !important;
  --pfo-surface-soft: var(--pf-ui-gray-050) !important;
  --pfo-surface-tint: var(--pf-ui-blue-050) !important;
  --pfo-border: var(--pf-ui-gray-200) !important;
  --pfo-border-strong: var(--pf-ui-gray-300) !important;
  --pfo-text: var(--pf-ui-text) !important;
  --pfo-text-soft: var(--pf-ui-muted) !important;
  --pfo-blue: var(--pf-ui-blue-700) !important;
  --pfo-blue-strong: var(--pf-ui-blue-800) !important;
  --pfo-red: var(--pf-ui-blue-900) !important;
  --pfo-shadow: var(--pf-ui-shadow-md) !important;
  --pfo-shadow-soft: var(--pf-ui-shadow-sm) !important;
  --pfo-ferr-navy: var(--pf-ui-blue-950) !important;
  --pfo-ferr-navy-2: var(--pf-ui-blue-900) !important;
  --pfo-ferr-blue: var(--pf-ui-blue-700) !important;
  --pfo-ferr-red: var(--pf-ui-blue-900) !important;
  --pfo-ferr-ink: var(--pf-ui-text) !important;
  --pfo-ferr-muted: var(--pf-ui-muted) !important;
  --pfo-ferr-line: var(--pf-ui-gray-200) !important;
  --pfo-ferr-soft: var(--pf-ui-gray-050) !important;
  --pfo-ferr-white: var(--pf-ui-white) !important;
  --pfo-ferr-warning: var(--pf-ui-blue-800) !important;
  --pfo-ferr-danger: var(--pf-ui-blue-950) !important;
}

.pfo-ppe-control,
.pfo-ppe-employee-pending,
.pfo-ppe-response,
.pfo-ppe-notification-result,
.pfo-admin-ppe-control {
  --ppe-navy: var(--pf-ui-blue-950) !important;
  --ppe-blue: var(--pf-ui-blue-700) !important;
  --ppe-blue-2: var(--pf-ui-blue-600) !important;
  --ppe-red: var(--pf-ui-blue-900) !important;
  --ppe-red-dark: var(--pf-ui-blue-950) !important;
  --ppe-yellow: var(--pf-ui-blue-600) !important;
  --ppe-yellow-soft: var(--pf-ui-blue-050) !important;
  --ppe-green: var(--pf-ui-blue-700) !important;
  --ppe-green-soft: var(--pf-ui-blue-050) !important;
  --ppe-orange: var(--pf-ui-blue-800) !important;
  --ppe-ink: var(--pf-ui-text) !important;
  --ppe-muted: var(--pf-ui-muted) !important;
  --ppe-line: var(--pf-ui-gray-200) !important;
  --ppe-surface: var(--pf-ui-white) !important;
  --ppe-bg: var(--pf-ui-gray-100) !important;
  --ppe-shadow: var(--pf-ui-shadow-md) !important;
}

.pfo-project-pro {
  --pfo-dark-1: var(--pf-ui-blue-950) !important;
  --pfo-dark-2: var(--pf-ui-blue-900) !important;
  --pfo-dark-3: var(--pf-ui-blue-700) !important;
  --pfo-light-1: var(--pf-ui-white) !important;
  --pfo-light-2: var(--pf-ui-blue-050) !important;
  --pfo-blue-100: var(--pf-ui-blue-100) !important;
  --pfo-blue-050: var(--pf-ui-blue-050) !important;
  --pfo-text-dark: var(--pf-ui-text) !important;
  --pfo-text-muted: var(--pf-ui-muted) !important;
  --pfo-border-soft: var(--pf-ui-gray-200) !important;
  --pfo-red: var(--pf-ui-blue-900) !important;
  --pfo-red-soft: var(--pf-ui-blue-100) !important;
  --pfo-green: var(--pf-ui-blue-700) !important;
  --pfo-green-soft: var(--pf-ui-blue-050) !important;
  --pfo-shadow: var(--pf-ui-shadow-sm) !important;
}

.pfo-project-desktop {
  --pd-navy: var(--pf-ui-blue-950) !important;
  --pd-blue: var(--pf-ui-blue-700) !important;
  --pd-blue2: var(--pf-ui-blue-600) !important;
  --pd-red: var(--pf-ui-blue-900) !important;
  --pd-green: var(--pf-ui-blue-700) !important;
  --pd-text: var(--pf-ui-text) !important;
  --pd-muted: var(--pf-ui-muted) !important;
  --pd-border: var(--pf-ui-gray-200) !important;
}

/* Rede e biblioteca de arquivos: preserva as chaves das duas camadas ativas. */
body .pfnp-profile-segment .pfnp-files-panel {
  --pfnp-proenca-blue: var(--pf-ui-blue-950) !important;
  --pfnp-proenca-blue-2: var(--pf-ui-blue-700) !important;
  --pfnp-proenca-red: var(--pf-ui-blue-900) !important;
  --pfnp-folder-yellow: var(--pf-ui-blue-100) !important;
  --pfnp-folder-yellow-2: var(--pf-ui-blue-200) !important;
  --pfnp-folder-stroke: var(--pf-ui-blue-700) !important;
  --pfnp-card-ink: var(--pf-ui-text) !important;
  --pfnp-card-muted: var(--pf-ui-muted) !important;
}

body .pfnp-profile-segment .pfnp-files-panel .pfnp-folder-card,
body .pfnp-profile-segment .pfnp-files-panel .pfnp-folder-card--company {
  --pfnp-folder-accent: var(--pf-ui-blue-700) !important;
  --pfnp-folder-accent-2: var(--pf-ui-blue-950) !important;
}

body .pfnp-profile-segment .pfnp-files-panel .pfnp-folder-card--leadership {
  --pfnp-folder-accent: var(--pf-ui-blue-900) !important;
  --pfnp-folder-accent-2: var(--pf-ui-blue-700) !important;
}

body.pfnp-enabled .pfnp-profile-segment .pfnp-files-panel {
  --pf-files-navy: var(--pf-ui-blue-950) !important;
  --pf-files-blue: var(--pf-ui-blue-700) !important;
  --pf-files-blue-bright: var(--pf-ui-blue-600) !important;
  --pf-files-red: var(--pf-ui-blue-700) !important;
  --pf-files-red-deep: var(--pf-ui-blue-900) !important;
  --pf-files-yellow: var(--pf-ui-blue-100) !important;
  --pf-files-yellow-deep: var(--pf-ui-blue-200) !important;
  --pf-files-yellow-soft: var(--pf-ui-blue-050) !important;
  --pf-files-ink: var(--pf-ui-text) !important;
  --pf-files-muted: var(--pf-ui-muted) !important;
  --pf-files-line: var(--pf-ui-gray-200) !important;
  --pf-files-surface: var(--pf-ui-white) !important;
  --pf-files-soft: var(--pf-ui-gray-050) !important;
  --pf-files-shadow: var(--pf-ui-shadow-sm) !important;
  --pf-files-shadow-hover: var(--pf-ui-shadow-md) !important;
}

body.pfnp-enabled .pfnp-profile-segment .pfnp-files-panel .pfnp-folder-card,
body.pfnp-enabled .pfnp-profile-segment .pfnp-files-panel .pfnp-folder-card--company {
  --pf-folder-accent: var(--pf-ui-blue-700) !important;
  --pf-folder-accent-2: var(--pf-ui-blue-950) !important;
}

body.pfnp-enabled .pfnp-profile-segment .pfnp-files-panel .pfnp-folder-card--leadership {
  --pf-folder-accent: var(--pf-ui-blue-900) !important;
  --pf-folder-accent-2: var(--pf-ui-blue-700) !important;
}

body.pfo-responsive-audit-v312159 {
  --pfo-r159-border: var(--pf-ui-gray-200) !important;
  --pfo-r159-navy: var(--pf-ui-blue-950) !important;
  --pfo-r159-blue: var(--pf-ui-blue-700) !important;
  --pfo-r159-red: var(--pf-ui-blue-900) !important;
  --pfo-r159-text: var(--pf-ui-text) !important;
  --pfo-r159-muted: var(--pf-ui-muted) !important;
}

body:is(.pfo-native-android, .pfi-mobile-browser-app),
body.ppa-standalone {
  --pfo-app-ref-blue: var(--pf-ui-blue-950) !important;
  --pfo-app-ref-blue-2: var(--pf-ui-blue-700) !important;
  --pfo-app-ref-red: var(--pf-ui-blue-700) !important;
  --pfo-app-ref-bg: var(--pf-ui-gray-100) !important;
  --pfo-app-ref-card: var(--pf-ui-white) !important;
  --pfo-app-ref-line: var(--pf-ui-gray-200) !important;
  --pfo-app-ref-text: var(--pf-ui-text) !important;
  --pfo-app-ref-muted: var(--pf-ui-muted) !important;
  --pfo-app-ref-shadow: var(--pf-ui-shadow-sm) !important;
}

body.pfo-native-android.ppa-exact-v31228,
body.ppa-standalone.ppa-exact-v31228 {
  --px-blue: var(--pf-ui-blue-700) !important;
  --px-blue-2: var(--pf-ui-blue-600) !important;
  --px-red: var(--pf-ui-blue-900) !important;
  --px-bg: var(--pf-ui-gray-100) !important;
  --px-card: var(--pf-ui-white) !important;
  --px-text: var(--pf-ui-text) !important;
  --px-muted: var(--pf-ui-muted) !important;
  --px-line: var(--pf-ui-gray-200) !important;
  --px-green: var(--pf-ui-blue-700) !important;
  --px-green-bg: var(--pf-ui-blue-050) !important;
  --px-red-bg: var(--pf-ui-blue-100) !important;
  --px-shadow: var(--pf-ui-shadow-sm) !important;
}

/* Fundo e faixa institucional. */
body.pfi-theme {
  background-color: var(--pf-ui-gray-100) !important;
  color: var(--pf-ui-text) !important;
}

body.pfi-theme {
  background-image:
    radial-gradient(circle at 8% 0%, rgba(22, 115, 184, .10), transparent 30rem),
    linear-gradient(180deg, var(--pf-ui-white), var(--pf-ui-gray-100) 34rem) !important;
}

body.pfi-theme::before {
  background: linear-gradient(90deg, var(--pf-ui-blue-950), var(--pf-ui-blue-600)) !important;
}

body.pfi-theme ::selection {
  background: var(--pf-ui-blue-200) !important;
  color: var(--pf-ui-blue-950) !important;
}

body.pfi-theme :focus-visible {
  outline-color: var(--pf-ui-blue-600) !important;
}

/* Cabecalho, navegacao e menus de conta. */
.pfi-site-header,
.pfo-social-header,
.pfo-social-header__desktop,
.pfo-social-header--universal,
.ppa-appbar,
.ppa-social-appbar {
  background-color: var(--pf-ui-white) !important;
  color: var(--pf-ui-blue-950) !important;
  border-color: var(--pf-ui-gray-200) !important;
  box-shadow: var(--pf-ui-shadow-sm) !important;
}

.pfo-social-header::after,
.pfi-site-header::after {
  background: linear-gradient(90deg, var(--pf-ui-blue-950), var(--pf-ui-blue-600)) !important;
}

.pfo-social-header .pfi-account__menu,
.pfo-social-header .pfo-social-account__menu,
.pfi-account__menu,
.pfo-social-account__menu {
  background-color: var(--pf-ui-white) !important;
  color: var(--pf-ui-text) !important;
  border-color: var(--pf-ui-gray-200) !important;
  border-top-color: var(--pf-ui-blue-700) !important;
  box-shadow: var(--pf-ui-shadow-md) !important;
}

.pfo-social-header .pfi-account__menu > a.pfi-account__logout,
.pfo-social-header .pfi-account__menu > a.pfi-account__logout .pfi-icon,
.pfo-social-header__create,
.pfo-social-header__notification,
.pfo-social-header__create .pfi-icon,
.pfo-social-header__notification .pfi-icon,
.pfo-social-header__mobile-actions > :first-child,
.pfo-social-header__mobile-actions > :first-child .pfi-icon,
.pfo-social-header__mobile-nav > a,
.pfo-social-header__nav-item,
.pfo-app-quick-shortcuts > a span {
  color: var(--pf-ui-blue-700) !important;
}

body.pfi-theme .pfo-social-header__mobile-nav > a:nth-child(2),
body.pfi-theme .pfo-social-header__mobile-nav > a:nth-child(4),
body.pfi-theme .pfo-app-quick-shortcuts > a:nth-child(4) span {
  color: var(--pf-ui-blue-700) !important;
}

.pfo-social-header__nav-item.is-active:not(.pfo-social-header__nav-item--videos),
.pfo-social-header__mobile-nav > a.is-active {
  background-color: var(--pf-ui-blue-050) !important;
  color: var(--pf-ui-blue-950) !important;
  border-color: var(--pf-ui-blue-200) !important;
}

body.pfi-theme .pfi-mobile-drawer__panel .pfi-rail-nav__item.is-active,
body.pfi-theme .pfi-mobile-drawer__panel .pfi-rail-nav__item[aria-current="page"] {
  background: linear-gradient(135deg, var(--pf-ui-blue-900), var(--pf-ui-blue-600)) !important;
  border-color: var(--pf-ui-blue-700) !important;
  box-shadow: var(--pf-ui-shadow-sm) !important;
}

.pfo-app-quick-shortcuts > a.is-featured,
.pfo-profile__social-summary > a {
  background: linear-gradient(135deg, var(--pf-ui-blue-900), var(--pf-ui-blue-600)) !important;
  color: var(--pf-ui-white) !important;
}

.pfo-post__actions .pfo-action.is-active,
.pfo-post__actions .pfo-action[aria-pressed="true"] {
  color: var(--pf-ui-blue-700) !important;
}

body .pfo-post-menu .pfo-post-menu__item.is-danger {
  background: var(--pf-ui-blue-950) !important;
  color: var(--pf-ui-white) !important;
  border-color: var(--pf-ui-blue-950) !important;
}

/* Componentes sociais escuros permanecem legiveis em azul-marinho. */
.pfo-video-viewer,
.pfo-story-dialog--viewer,
.pfo-story-viewer,
.pfo-reel-viewer {
  background-color: rgba(8, 47, 84, .96) !important;
  color: var(--pf-ui-white) !important;
}

body.pfi-theme [role="dialog"].pfo-video-viewer,
body.pfi-theme [role="dialog"].pfo-story-dialog--viewer {
  background-color: rgba(8, 47, 84, .96) !important;
  color: var(--pf-ui-white) !important;
  border-color: var(--pf-ui-blue-950) !important;
  box-shadow: none !important;
}

/* O compositor de story e um formulario, nao uma superficie de midia. */
.pfo-story-dialog--composer {
  background-color: var(--pf-ui-white) !important;
  color: var(--pf-ui-text) !important;
  border-color: var(--pf-ui-gray-200) !important;
  box-shadow: var(--pf-ui-shadow-md) !important;
}

.pfo-story-dialog--composer .pfo-story-upload__preview {
  background-color: var(--pf-ui-gray-050) !important;
  color: var(--pf-ui-text) !important;
  border-color: var(--pf-ui-gray-200) !important;
}

.pfo-video-viewer__close,
.pfo-video-viewer__more,
.pfo-story-viewer__close,
.pfo-reel-viewer__close {
  background-color: var(--pf-ui-blue-950) !important;
  color: var(--pf-ui-white) !important;
  border-color: var(--pf-ui-blue-200) !important;
}

/* Mensagens: remove os ultimos detalhes vermelhos fixos. */
body.pfo-social-messages-view .pfo-messages.pfo-messages--executive::before,
body.pfo-social-messages-view .pfo-messages.pfo-messages--executive::after,
body.pfo-social-messages-view .pfo-messages__sidebar::before,
body.pfo-social-messages-view .pfo-messages__thread::before,
body.pfo-social-messages-view .pfo-message-form::before {
  background: linear-gradient(90deg, transparent, var(--pf-ui-blue-700), var(--pf-ui-blue-950), transparent) !important;
}

body.pfo-social-messages-view .pfo-messages__eyebrow svg,
body.pfo-social-messages-view .pfo-messages__thread-eyebrow,
body.pfo-social-messages-view .pfo-messages__privacy svg {
  color: var(--pf-ui-blue-700) !important;
}

body.pfo-social-messages-view .pfo-message.is-own > span {
  background: linear-gradient(135deg, var(--pf-ui-blue-700), var(--pf-ui-blue-950)) !important;
  color: var(--pf-ui-white) !important;
  border-color: var(--pf-ui-blue-800) !important;
  box-shadow: inset 4px 0 0 var(--pf-ui-blue-200), var(--pf-ui-shadow-sm) !important;
}

/* Botoes: familias reais do Portal, sem atingir overlays ou containers. */
.pfi-button,
.pfo-button,
.pfo-tool-button,
.pfo-ppe-button,
.pflf-button,
.pfo360-button,
.pfnp-button,
.pfrtm-btn,
.prh-button,
.psos-button,
.pst-button,
.ppc-button,
.pcc-button,
.ppa-button {
  border-color: var(--pf-ui-blue-700) !important;
}

.pfi-button--primary,
.pfo-button--primary,
.pfo-tool-button--primary,
.pfo-ppe-button--primary,
.pflf-button--primary,
.pfo360-button--primary,
.pfnp-button--primary,
.pfrtm-btn--primary,
.prh-button-primary,
.psos-button-primary,
.pst-button--primary,
.ppc-button--primary,
.pcc-button--primary,
.ppa-button--primary {
  background: linear-gradient(135deg, var(--pf-ui-blue-800), var(--pf-ui-blue-600)) !important;
  color: var(--pf-ui-white) !important;
  border-color: var(--pf-ui-blue-700) !important;
}

.pfi-button--danger,
.pfo-button--danger,
.pfo-tool-button--danger,
.pfo-ppe-button--danger,
.pflf-button--danger,
.pfo360-button--danger,
.pfnp-button--danger,
.pfrtm-btn--danger,
.prh-button-danger,
.psos-button-danger,
.pst-button--danger,
.ppc-danger,
.pcc-button--danger {
  background: var(--pf-ui-blue-950) !important;
  color: var(--pf-ui-white) !important;
  border-color: var(--pf-ui-blue-950) !important;
}

/* Formularios dentro dos roots funcionais. */
:is(
  .pfi-page,
  .pfo-oneportal,
  .pfo-social,
  .pfo-tool-custody,
  .pfo-ppe-control,
  .pflf-shell,
  .pfo360-shell,
  .pfnp-profile-segment,
  .pfnp-hub,
  .pfrtm-shell,
  .prh-portal,
  .psos-portal,
  .pst-portal,
  .ppc-portal,
  .pcc-board
) :is(
  input:not([type]),
  input[type="text"],
  input[type="search"],
  input[type="email"],
  input[type="url"],
  input[type="tel"],
  input[type="number"],
  input[type="password"],
  input[type="date"],
  input[type="datetime-local"],
  input[type="month"],
  input[type="week"],
  input[type="time"],
  select,
  textarea
) {
  background-color: var(--pf-ui-white) !important;
  color: var(--pf-ui-text) !important;
  border-color: var(--pf-ui-gray-300) !important;
}

:is(
  .pfi-page,
  .pfo-oneportal,
  .pfo-social,
  .pfo-tool-custody,
  .pfo-ppe-control,
  .pflf-shell,
  .pfo360-shell,
  .pfnp-profile-segment,
  .pfnp-hub,
  .pfrtm-shell,
  .prh-portal,
  .psos-portal,
  .pst-portal,
  .ppc-portal,
  .pcc-board
) :is(
  input:not([type]),
  input[type="text"],
  input[type="search"],
  input[type="email"],
  input[type="url"],
  input[type="tel"],
  input[type="number"],
  input[type="password"],
  input[type="date"],
  input[type="datetime-local"],
  input[type="month"],
  input[type="week"],
  input[type="time"],
  select,
  textarea
):focus {
  border-color: var(--pf-ui-blue-600) !important;
  box-shadow: 0 0 0 4px var(--pf-ui-focus) !important;
}

/* Avisos e estados conhecidos. O significado continua no texto e no icone. */
.pfi-admin-notice,
.pfo-suite-notice,
.pfo-workflow__notice,
.pfo-worker-notice,
.pfo-ppe-notice,
.pfl-alert,
.pflf-notice,
.pflf-alert,
.pfo360-notice,
.pfnp-notice,
.pfrtm-notice,
.prh-notice,
.psos-notice,
.pcc-notice {
  background-color: var(--pf-ui-blue-050) !important;
  color: var(--pf-ui-blue-950) !important;
  border-color: var(--pf-ui-blue-200) !important;
  border-left-color: var(--pf-ui-blue-700) !important;
  box-shadow: var(--pf-ui-shadow-xs) !important;
}

.pfo-state--warning,
.pfnp-notice--warning,
.prh-notice-warning,
.pfrtm-callout--warning,
.pst-callout-warning {
  background-color: var(--pf-ui-gray-100) !important;
  color: var(--pf-ui-blue-900) !important;
  border-color: var(--pf-ui-gray-300) !important;
  border-left-color: var(--pf-ui-blue-800) !important;
}

.pfo-workflow__notice--error,
.pfnp-notice--error,
.pfo360-notice--error,
.prh-notice-error,
.pfo-push-diagnostics__error {
  background-color: var(--pf-ui-blue-100) !important;
  color: var(--pf-ui-blue-950) !important;
  border-color: var(--pf-ui-blue-200) !important;
  border-left-color: var(--pf-ui-blue-950) !important;
}

.pfo-social-header__badge,
.pfo-mobile-notification-badge,
.pfo-native-app-header__badge,
.pfo-notification__type-badge,
.ppa-notification-badge,
.ppa-reference-appbar-badge,
.ppa-social-tabs__badge,
.pfo-ppe-count-badge {
  background-color: var(--pf-ui-blue-700) !important;
  color: var(--pf-ui-white) !important;
  border-color: var(--pf-ui-white) !important;
}

/* Heros que ainda possuem gradientes literais. */
.pfo-ppe-hero,
.pfo360-hero,
.pflf-hero,
.prh-hero,
.psos-hero,
.pst-header {
  background: linear-gradient(135deg, var(--pf-ui-blue-950), var(--pf-ui-blue-600)) !important;
  color: var(--pf-ui-white) !important;
  border-color: var(--pf-ui-blue-200) !important;
}
/* Preserve o contraste do texto no cabecalho azul compartilhado de SST. */
.pst-header h1 {
  color: var(--pf-ui-white);
}

.pst-header h1 + p {
  color: #f2f7fb;
}

@media (max-width: 900px) {
  .pst-header h1 {
    color: var(--proenca-text-strong);
  }

  .pst-header h1 + p {
    color: var(--proenca-text);
  }
}


/* Modais: overlay e superficie sao tratados separadamente. */
.pfi-search-overlay,
.pfi-mobile-drawer,
.ppa-drawer-layer {
  background: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.pfo-tool-dialog__backdrop,
.pfi-search-overlay__backdrop,
.pfi-mobile-drawer__backdrop,
.ppa-drawer-backdrop,
.ppa-install-sheet__backdrop,
.ppa-ios-modal {
  background: rgba(8, 47, 84, .38) !important;
  background-image: none !important;
}

/* Supera somente a regra global de [role="dialog"] aplicada aos overlays-raiz. */
body.pfi-theme .pfo-tool-dialog[role="dialog"] {
  background: transparent !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

body.pfi-theme .ppa-search-layer[role="dialog"] {
  background: rgba(8, 47, 84, .38) !important;
  background-image: none !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

.pfo-tool-dialog__surface,
.ppa-search-layer__panel,
.pfi-mobile-drawer__panel,
.ppa-drawer,
.ppa-install-sheet__card,
.ppa-ios-modal__card {
  background-color: var(--pf-ui-white) !important;
  color: var(--pf-ui-text) !important;
  border-color: var(--pf-ui-gray-200) !important;
  box-shadow: var(--pf-ui-shadow-md) !important;
}

/* PDF e assinatura: preserva todas as propriedades estruturais. */
.pfnp-pdf-stage,
.pfnp-pdf-page,
.pfnp-pdf-page canvas,
.pfnp-signature-pad,
.pfnp-signature-pad canvas {
  background-color: var(--pf-ui-white) !important;
}

.pfnp-sign-configurator .pfnp-sign-anchor {
  background-color: rgba(228, 240, 249, .88) !important;
  color: var(--pf-ui-blue-950) !important;
  border: 2px dashed var(--pf-ui-blue-700) !important;
  box-shadow: 0 0 0 2px rgba(255, 255, 255, .90), 0 8px 20px rgba(8, 47, 84, .22) !important;
}

.pfnp-sign-configurator.is-anchor-locked .pfnp-sign-anchor,
.pfnp-sign-anchor--locked {
  background-color: rgba(185, 213, 234, .92) !important;
  color: var(--pf-ui-blue-950) !important;
  border-color: var(--pf-ui-blue-950) !important;
  border-style: solid !important;
  box-shadow: 0 0 0 4px rgba(11, 99, 165, .20), 0 8px 20px rgba(8, 47, 84, .24) !important;
}

/* Administracao: cada familia fica limitada ao wrapper que realmente a usa. */
.pfi-admin {
  --pfi-a-bg: var(--pf-ui-gray-100) !important;
  --pfi-a-surface: var(--pf-ui-white) !important;
  --pfi-a-surface-2: var(--pf-ui-gray-050) !important;
  --pfi-a-border: var(--pf-ui-gray-200) !important;
  --pfi-a-text: var(--pf-ui-text) !important;
  --pfi-a-soft: var(--pf-ui-muted) !important;
  --pfi-a-muted: var(--pf-ui-muted) !important;
  --pfi-a-blue: var(--pf-ui-blue-700) !important;
  --pfi-a-red: var(--pf-ui-blue-950) !important;
}

.pfo360-admin {
  --p360-blue: var(--pf-ui-blue-700) !important;
  --p360-gold: var(--pf-ui-blue-600) !important;
  --p360-green: var(--pf-ui-blue-700) !important;
  --p360-red: var(--pf-ui-blue-950) !important;
}

.ppa-admin-wrap {
  --ppa-admin-bg: var(--pf-ui-gray-100) !important;
  --ppa-admin-surface: var(--pf-ui-white) !important;
  --ppa-admin-surface-2: var(--pf-ui-gray-050) !important;
  --ppa-admin-line: var(--pf-ui-gray-200) !important;
  --ppa-admin-text: var(--pf-ui-text) !important;
  --ppa-admin-muted: var(--pf-ui-muted) !important;
  --ppa-admin-blue: var(--pf-ui-blue-700) !important;
  --ppa-admin-green: var(--pf-ui-blue-700) !important;
  --ppa-admin-orange: var(--pf-ui-blue-800) !important;
}

.ppa-phone-preview {
  --preview-theme: var(--pf-ui-blue-950) !important;
  --preview-bg: var(--pf-ui-gray-100) !important;
  --preview-accent: var(--pf-ui-blue-700) !important;
}

.pst-admin-wrap {
  --pst-admin-navy: var(--pf-ui-blue-950) !important;
  --pst-admin-blue: var(--pf-ui-blue-700) !important;
  --pst-admin-orange: var(--pf-ui-blue-800) !important;
  --pst-admin-border: var(--pf-ui-gray-200) !important;
  --pst-admin-muted: var(--pf-ui-muted) !important;
}

.pcc-admin-wrap {
  --pcc-blue: var(--pf-ui-blue-700) !important;
  --pcc-red: var(--pf-ui-blue-950) !important;
}

.prh-admin-wrap {
  --prh-blue: var(--pf-ui-blue-700) !important;
  --prh-red: var(--pf-ui-blue-950) !important;
}

.pfnp-admin-wrap {
  --pfnp-a-bg: var(--pf-ui-gray-100) !important;
  --pfnp-a-surface: var(--pf-ui-white) !important;
  --pfnp-a-border: var(--pf-ui-gray-200) !important;
  --pfnp-a-text: var(--pf-ui-text) !important;
  --pfnp-a-muted: var(--pf-ui-muted) !important;
  --pfnp-a-blue: var(--pf-ui-blue-700) !important;
  --pfnp-a-red: var(--pf-ui-blue-950) !important;
  --pfnp-a-green: var(--pf-ui-blue-700) !important;
  --pfnp-a-yellow: var(--pf-ui-blue-600) !important;
}

.pfrtm-admin-wrap {
  --pfrtm-admin-bg: var(--pf-ui-gray-100) !important;
  --pfrtm-admin-surface: var(--pf-ui-white) !important;
  --pfrtm-admin-line: var(--pf-ui-gray-200) !important;
  --pfrtm-admin-text: var(--pf-ui-text) !important;
  --pfrtm-admin-muted: var(--pf-ui-muted) !important;
  --pfrtm-admin-primary: var(--pf-ui-blue-700) !important;
}

.ppc-admin-wrap {
  --ppca-bg: var(--pf-ui-gray-100) !important;
  --ppca-surface: var(--pf-ui-white) !important;
  --ppca-surface2: var(--pf-ui-gray-050) !important;
  --ppca-border: var(--pf-ui-gray-200) !important;
  --ppca-text: var(--pf-ui-text) !important;
  --ppca-muted: var(--pf-ui-muted) !important;
  --ppca-blue: var(--pf-ui-blue-700) !important;
  --ppca-red: var(--pf-ui-blue-950) !important;
  --ppca-green: var(--pf-ui-blue-700) !important;
  --ppca-orange: var(--pf-ui-blue-800) !important;
}

body.login {
  --pfi-login-blue: var(--pf-ui-blue-700) !important;
  --pfi-login-red: var(--pf-ui-blue-950) !important;
  background: linear-gradient(145deg, var(--pf-ui-blue-050), var(--pf-ui-gray-100)) !important;
}

body.login #loginform,
body.login .message,
body.login #login_error {
  background-color: var(--pf-ui-white) !important;
  color: var(--pf-ui-text) !important;
  border-color: var(--pf-ui-blue-200) !important;
  box-shadow: var(--pf-ui-shadow-md) !important;
}

.editor-styles-wrapper {
  background-color: var(--pf-ui-white) !important;
  color: var(--pf-ui-text) !important;
  border-color: var(--pf-ui-blue-200) !important;
}

@media (max-width: 900px) {
  body.pfi-theme,
  body:is(.pfo-native-android, .pfi-mobile-browser-app),
  body.ppa-standalone {
    background-image: linear-gradient(180deg, var(--pf-ui-white), var(--pf-ui-gray-100)) !important;
  }

  .pfi-mobile-menu,
  .pfo-mobile-drawer,
  .ppa-drawer {
    background-color: var(--pf-ui-white) !important;
    color: var(--pf-ui-text) !important;
    border-color: var(--pf-ui-gray-200) !important;
  }
}

/* 2026-08-22: contraste contextual em superficies azuis. */
.pfo-video-dialog .pfo-video-viewer__header > strong,
.pfo-video-dialog .pfo-video-viewer__footer [data-pfo-video-author] {
  color: var(--pf-ui-white) !important;
}

.pfo-video-dialog .pfo-video-viewer__footer [data-pfo-video-meta],
.pfo-post-choice[data-pfo-post-pick] small,
.pfo-post-choice[data-pfo-post-gif-open] small,
.pfo-tool-catalog-admin__toggle small,
.pfo-reel-start__dropzone small {
  color: var(--pf-ui-blue-100) !important;
}

.pfo-comment-composer__tools button b,
.pfo-worker-tabs a.is-active > strong,
.pfo-ppe-semaphore-filters button b {
  color: var(--pf-ui-white) !important;
}

/* 2026-08-23: auditoria visual pontual (mobile, contraste e estado vazio). */
@media (max-width: 900px) {
  body.pfo-worker-support-page:is(.pfo-native-android, .pfi-mobile-browser-app) .pfo-worker-tabs,
  body.pfo-worker-support-page.ppa-standalone .pfo-worker-tabs {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 7px !important;
    max-width: 100% !important;
    padding-inline: 8px 14px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    overscroll-behavior-inline: contain !important;
    scroll-padding-inline: 8px 14px !important;
    scroll-snap-type: x proximity !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  body.pfo-worker-support-page:is(.pfo-native-android, .pfi-mobile-browser-app) .pfo-worker-tabs::-webkit-scrollbar,
  body.pfo-worker-support-page.ppa-standalone .pfo-worker-tabs::-webkit-scrollbar {
    display: none !important;
  }

  body.pfo-worker-support-page:is(.pfo-native-android, .pfi-mobile-browser-app) .pfo-worker-tabs > a,
  body.pfo-worker-support-page.ppa-standalone .pfo-worker-tabs > a {
    flex: 0 0 auto !important;
    min-width: max-content !important;
    scroll-snap-align: start !important;
  }

  body.pfo-worker-support-page:is(.pfo-native-android, .pfi-mobile-browser-app) .pfo-worker-tabs > a:is(.is-active, [aria-current="page"]),
  body.pfo-worker-support-page.ppa-standalone .pfo-worker-tabs > a:is(.is-active, [aria-current="page"]) {
    background: linear-gradient(135deg, var(--pf-ui-blue-800), var(--pf-ui-blue-600)) !important;
    color: var(--pf-ui-white) !important;
    border-color: var(--pf-ui-blue-700) !important;
    box-shadow: 0 4px 12px rgba(8, 47, 84, .18) !important;
    scroll-margin-inline: 8px 14px !important;
  }

  body.pfo-worker-support-page:is(.pfo-native-android, .pfi-mobile-browser-app) .pfo-worker-tabs > a:is(.is-active, [aria-current="page"]) :is(strong, span, small, svg),
  body.pfo-worker-support-page.ppa-standalone .pfo-worker-tabs > a:is(.is-active, [aria-current="page"]) :is(strong, span, small, svg) {
    color: inherit !important;
  }
}

/* Textos auxiliares sobre cartoes claros: contraste AA mesmo em 10-12 px. */
.pfo-tool-custody .pfo-tool-overview-grid article small,
.pfo-tool-custody .pfo-tool-tabs--organized .pfo-tool-nav-menu__item small,
.pfo-tool-custody .pfo-tool-summary__card small,
.pfo-tool-custody .pfo-tool-card small,
.pfo-profession-dashboard .pfo-workflow__metrics article small,
.prh-portal .prh-card :is(small, time, [datetime]),
.prh-portal .prh-card > header > span:not([class*="badge"]):not([class*="status"]),
.prh-portal .prh-timeline li > span,
.pfo-ppe-card header p,
.pfo-ppe-card small,
.pfo-ppe-semaphore-card p,
.pfo-ppe-semaphore-card dt,
.pfo-ppe-semaphore-card small,
.pfo-ppe-choice small {
  color: #435f75 !important;
}

/* Categorias de EPI usam superficie azul escura. */
.ppa-exact-epi-category small {
  color: var(--pf-ui-blue-100) !important;
}

/* A conversa vazia deixa de parecer uma area quebrada. */
body.pfo-social-messages-view .pfo-message-list:not(:has(> *)) {
  display: grid !important;
  min-height: 240px !important;
  padding: 24px !important;
  place-items: center !important;
}

body.pfo-social-messages-view .pfo-message-list:not(:has(> *))::before {
  content: "Nenhuma mensagem nesta conversa.";
  display: block;
  width: min(100%, 420px);
  padding: 22px 18px;
  border: 1px dashed var(--pf-ui-gray-300);
  border-radius: 14px;
  background: var(--pf-ui-gray-050);
  color: #435f75;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.45;
  text-align: center;
}

@media (prefers-reduced-motion: reduce) {
  .pfnp-sign-anchor--locked {
    animation: none !important;
  }
}

@media print {
  body.pfi-theme,
  .editor-styles-wrapper {
    background: var(--pf-ui-white) !important;
    color: var(--pf-ui-blue-950) !important;
  }
}

/* Portal PROENCA 2026-08-23: Meu EPI usa toda a largura em celular e WebView Android. */
@media (max-width: 900px) {
  body.pfo-worker-support-page .pfo-ppe-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
  }

  body.pfo-worker-support-page .pfo-ppe-card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body.pfo-worker-support-page .pfo-ppe-card > header {
    display: flex !important;
    align-items: flex-start !important;
    min-width: 0 !important;
  }

  body.pfo-worker-support-page .pfo-ppe-card > header > div {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  body.pfo-worker-support-page .pfo-ppe-card h3 {
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    hyphens: none !important;
  }

  body.pfo-worker-support-page .pfo-ppe-card > header > strong {
    flex: 0 0 auto !important;
    max-width: 42% !important;
    margin-left: auto !important;
    overflow: hidden !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
    text-align: center !important;
  }
}

@media (max-width: 380px) {
  body.pfo-worker-support-page .pfo-ppe-card dl {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}
