/* Dark mode — ativado via data-theme="dark" no <html> */

[data-theme="dark"] {
    color-scheme: dark;

    --dm-bg: #0f1419;
    --dm-bg-elevated: #1a2229;
    --dm-bg-soft: #151c23;
    --dm-bg-hover: #243039;
    --dm-border: #2d3a44;
    --dm-border-soft: #243039;
    --dm-text: #e8eef2;
    --dm-text-muted: #94a8b3;
    --dm-primary: #5ec4cf;
    --dm-primary-dark: #4db8c4;
    --dm-shadow: rgba(0, 0, 0, 0.35);

    --report-primary: #5ec4cf;
    --report-primary-dark: #4db8c4;
    --report-border: #2d3a44;
    --report-muted: #94a8b3;
    --report-bg-soft: #151c23;
    --report-adjusted-bg: #5ec4cf;
    --report-adjusted-text: #0f1419;

    --primary: #5ec4cf;
    --light: #151c23;
}

[data-theme="dark"],
[data-theme="dark"] body {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text);
}

[data-theme="dark"] .bg-light,
[data-theme="dark"] .bg-white {
    background-color: var(--dm-bg) !important;
}

[data-theme="dark"] .text-dark,
[data-theme="dark"] .text-body,
[data-theme="dark"] h1,
[data-theme="dark"] h2,
[data-theme="dark"] h3,
[data-theme="dark"] h4,
[data-theme="dark"] h5,
[data-theme="dark"] h6,
[data-theme="dark"] label,
[data-theme="dark"] .col-form-label,
[data-theme="dark"] .form-check-label {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .text-muted,
[data-theme="dark"] .text-secondary,
[data-theme="dark"] small,
[data-theme="dark"] .small {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .card,
[data-theme="dark"] .modal-content,
[data-theme="dark"] .dropdown-menu,
[data-theme="dark"] .list-group-item,
[data-theme="dark"] .popover,
[data-theme="dark"] .portal-card,
[data-theme="dark"] .registro-card,
[data-theme="dark"] .report-panel .report-card,
[data-theme="dark"] .report-panel__info-card,
[data-theme="dark"] .report-panel__section-card,
[data-theme="dark"] .report-panel__period-card,
[data-theme="dark"] .report-panel__trimestre-hero,
[data-theme="dark"] .colaboradores-panel__card,
[data-theme="dark"] .folgas-panel__card,
[data-theme="dark"] .faturas-panel__card,
[data-theme="dark"] .plano-panel__card,
[data-theme="dark"] .moderacao-panel__card {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text);
    box-shadow: 0 8px 24px var(--dm-shadow);
}

[data-theme="dark"] .card-header,
[data-theme="dark"] .card-footer,
[data-theme="dark"] .modal-header,
[data-theme="dark"] .modal-footer,
[data-theme="dark"] .dropdown-divider,
[data-theme="dark"] hr {
    background-color: transparent;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .table,
[data-theme="dark"] .table td,
[data-theme="dark"] .table th,
[data-theme="dark"] table.dataTable,
[data-theme="dark"] .report-panel__table {
    color: var(--dm-text);
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .table thead th,
[data-theme="dark"] table.dataTable thead th,
[data-theme="dark"] .report-panel__table thead th {
    background: var(--dm-bg-soft) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* DataTables CDN define tbody tr como #fff — sobrescrever com !important */
[data-theme="dark"] table.dataTable tbody tr,
[data-theme="dark"] table.dataTable tbody td,
[data-theme="dark"] .table tbody tr,
[data-theme="dark"] .table tbody td {
    background-color: var(--dm-bg-elevated) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] table.dataTable.stripe tbody tr.odd,
[data-theme="dark"] table.dataTable.display tbody tr.odd,
[data-theme="dark"] table.dataTable.row-border tbody tr.odd,
[data-theme="dark"] .table-striped tbody tr:nth-of-type(odd),
[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(odd) {
    background-color: var(--dm-bg-soft) !important;
}

[data-theme="dark"] table.dataTable.stripe tbody tr.odd td,
[data-theme="dark"] table.dataTable.display tbody tr.odd td,
[data-theme="dark"] table.dataTable.row-border tbody tr.odd td,
[data-theme="dark"] .table-striped tbody tr:nth-of-type(odd) td,
[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(odd) td {
    background-color: var(--dm-bg-soft) !important;
}

[data-theme="dark"] table.dataTable.stripe tbody tr.even,
[data-theme="dark"] table.dataTable.display tbody tr.even,
[data-theme="dark"] table.dataTable.row-border tbody tr.even,
[data-theme="dark"] .table-striped tbody tr:nth-of-type(even),
[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(even) {
    background-color: var(--dm-bg-elevated) !important;
}

[data-theme="dark"] table.dataTable.stripe tbody tr.even td,
[data-theme="dark"] table.dataTable.display tbody tr.even td,
[data-theme="dark"] table.dataTable.row-border tbody tr.even td,
[data-theme="dark"] .table-striped tbody tr:nth-of-type(even) td,
[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(even) td {
    background-color: var(--dm-bg-elevated) !important;
}

[data-theme="dark"] .table-hover tbody tr:hover,
[data-theme="dark"] table.dataTable.hover tbody tr:hover,
[data-theme="dark"] table.dataTable.display tbody tr:hover,
[data-theme="dark"] table.dataTable tbody tr:hover {
    background-color: var(--dm-bg-hover) !important;
}

[data-theme="dark"] .table-hover tbody tr:hover td,
[data-theme="dark"] table.dataTable.hover tbody tr:hover td,
[data-theme="dark"] table.dataTable.display tbody tr:hover td,
[data-theme="dark"] table.dataTable tbody tr:hover td {
    background-color: var(--dm-bg-hover) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .form-control,
[data-theme="dark"] .custom-select,
[data-theme="dark"] .report-panel__period-select,
[data-theme="dark"] select,
[data-theme="dark"] textarea,
[data-theme="dark"] input[type="text"],
[data-theme="dark"] input[type="email"],
[data-theme="dark"] input[type="password"],
[data-theme="dark"] input[type="number"],
[data-theme="dark"] input[type="date"],
[data-theme="dark"] input[type="time"],
[data-theme="dark"] .dataTables_wrapper .dataTables_filter input,
[data-theme="dark"] .dataTables_wrapper .dataTables_length select {
    background-color: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .form-control:focus,
[data-theme="dark"] .custom-select:focus,
[data-theme="dark"] select:focus,
[data-theme="dark"] textarea:focus {
    background-color: var(--dm-bg-soft) !important;
    border-color: var(--dm-primary) !important;
    color: var(--dm-text) !important;
    box-shadow: 0 0 0 0.2rem rgba(94, 196, 207, 0.18);
}

[data-theme="dark"] .form-control::placeholder {
    color: #6f8590;
}

[data-theme="dark"] .input-group-text,
[data-theme="dark"] .custom-file-label {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .dropdown-item {
    color: var(--dm-text);
}

[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .dropdown-item:focus {
    background: var(--dm-bg-hover);
    color: var(--dm-text);
}

[data-theme="dark"] .dropdown-item-text {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .alert-warning {
    background: #3d3218;
    border-color: #6b571f;
    color: #f3df9d;
}

[data-theme="dark"] .alert-info {
    background: #163038;
    border-color: #245560;
    color: #b8e8ef;
}

[data-theme="dark"] .alert-success {
    background: #163221;
    border-color: #245c37;
    color: #b8eaca;
}

[data-theme="dark"] .alert-danger {
    background: #3a1820;
    border-color: #6b2433;
    color: #f5c2cb;
}

[data-theme="dark"] .btn-outline-secondary,
[data-theme="dark"] .btn-outline-light {
    color: var(--dm-text);
    border-color: var(--dm-border);
}

[data-theme="dark"] .btn-outline-secondary:hover,
[data-theme="dark"] .btn-outline-light:hover {
    background: var(--dm-bg-hover);
    color: var(--dm-text);
}

[data-theme="dark"] .btn-light {
    background: var(--dm-bg-soft);
    border-color: var(--dm-border);
    color: var(--dm-text);
}

[data-theme="dark"] .close,
[data-theme="dark"] .modal-title {
    color: var(--dm-text);
}

[data-theme="dark"] .empresa-header,
[data-theme="dark"] .colaborador-header,
[data-theme="dark"] .contador-header,
[data-theme="dark"] .portal-page__header,
[data-theme="dark"] .registro-page__header {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    box-shadow: 0 4px 18px var(--dm-shadow);
}

[data-theme="dark"] .empresa-header__brand-text strong,
[data-theme="dark"] .colaborador-header__brand-text strong,
[data-theme="dark"] .contador-header__brand-text strong,
[data-theme="dark"] .portal-page__brand-text strong,
[data-theme="dark"] .registro-page__brand-text strong,
[data-theme="dark"] .empresa-header__user-text strong,
[data-theme="dark"] .colaborador-header__user-text strong,
[data-theme="dark"] .contador-header__user-text strong {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .contador-header__brand-text small,
[data-theme="dark"] .portal-page__brand-text small,
[data-theme="dark"] .registro-page__brand-text small,
[data-theme="dark"] .empresa-header__user-text small,
[data-theme="dark"] .colaborador-header__user-text small,
[data-theme="dark"] .contador-header__user-text small {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .empresa-header__brand-text small {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .colaborador-header__brand.navbar-brand,
[data-theme="dark"] .colaborador-header__brand.navbar-brand:hover,
[data-theme="dark"] .colaborador-header__brand.navbar-brand:focus {
    color: #ffffff !important;
}

[data-theme="dark"] .colaborador-header__brand-text strong {
    color: #ffffff !important;
}

[data-theme="dark"] .colaborador-header__brand-text small {
    color: #ffffff !important;
}

[data-theme="dark"] .empresa-header__brand-text,
[data-theme="dark"] .colaborador-header__brand-text,
[data-theme="dark"] .contador-header__brand-text,
[data-theme="dark"] .empresa-header__user-text,
[data-theme="dark"] .colaborador-header__user-text,
[data-theme="dark"] .contador-header__user-text {
    color: var(--dm-text);
}

[data-theme="dark"] .empresa-header__logo,
[data-theme="dark"] .colaborador-header__logo,
[data-theme="dark"] .contador-header__logo,
[data-theme="dark"] .portal-page__logo,
[data-theme="dark"] .registro-page__logo {
    background: var(--dm-bg-soft) !important;
}

[data-theme="dark"] .empresa-header__icon-btn,
[data-theme="dark"] .empresa-header__user-btn,
[data-theme="dark"] .colaborador-header__icon-btn,
[data-theme="dark"] .colaborador-header__user-btn,
[data-theme="dark"] .contador-header__icon-btn,
[data-theme="dark"] .contador-header__user-btn,
[data-theme="dark"] .theme-toggle,
[data-theme="dark"] .theme-toggle--portal-header,
[data-theme="dark"] .theme-toggle--portal {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .empresa-header__icon-btn:hover,
[data-theme="dark"] .empresa-header__user-btn:hover,
[data-theme="dark"] .colaborador-header__icon-btn:hover,
[data-theme="dark"] .colaborador-header__user-btn:hover,
[data-theme="dark"] .contador-header__icon-btn:hover,
[data-theme="dark"] .contador-header__user-btn:hover,
[data-theme="dark"] .theme-toggle:hover,
[data-theme="dark"] .theme-toggle--portal-header:hover,
[data-theme="dark"] .theme-toggle--portal:hover {
    background: var(--dm-bg-hover) !important;
    border-color: var(--dm-primary) !important;
    color: var(--dm-primary-dark) !important;
}

[data-theme="dark"] .empresa-header__menu,
[data-theme="dark"] .colaborador-header__menu,
[data-theme="dark"] .contador-header__menu,
[data-theme="dark"] .header-notifications__menu {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .empresa-sidebar,
[data-theme="dark"] .contador-sidebar,
[data-theme="dark"] .cms-sidebar {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .empresa-sidebar__brand,
[data-theme="dark"] .contador-sidebar__brand {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .empresa-sidebar__link,
[data-theme="dark"] .contador-sidebar__link,
[data-theme="dark"] .cms-sidebar .nav-link {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .empresa-sidebar__link:hover,
[data-theme="dark"] .empresa-sidebar__link.active,
[data-theme="dark"] .contador-sidebar__link:hover,
[data-theme="dark"] .contador-sidebar__link.active,
[data-theme="dark"] .cms-sidebar .nav-link:hover,
[data-theme="dark"] .cms-sidebar .nav-link.active {
    background: var(--dm-bg-hover) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .portal-page,
[data-theme="dark"] .registro-page {
    background:
        radial-gradient(circle at top right, rgba(94, 196, 207, 0.08), transparent 35%),
        linear-gradient(180deg, #0f1419 0%, #121820 100%) !important;
}

[data-theme="dark"] .portal-card__body,
[data-theme="dark"] .registro-card__body,
[data-theme="dark"] .portal-hero__title,
[data-theme="dark"] .registro-card__title {
    color: var(--dm-text);
}

[data-theme="dark"] .registro-card__hero {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

[data-theme="dark"] .portal-alert,
[data-theme="dark"] .registro-alert,
[data-theme="dark"] .registro-confirm--premium {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text);
}

[data-theme="dark"] .portal-page__footer {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .portal-card {
    background: linear-gradient(180deg, var(--dm-bg-elevated) 0%, var(--dm-bg-soft) 100%) !important;
}

[data-theme="dark"] .portal-hero__eyebrow,
[data-theme="dark"] .portal-hero__subtitle {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .portal-action-card {
    background: linear-gradient(180deg, var(--dm-bg-elevated) 0%, var(--dm-bg-soft) 100%) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
    box-shadow: 0 8px 22px var(--dm-shadow);
}

[data-theme="dark"] .portal-action-card:hover {
    border-color: var(--dm-primary) !important;
    box-shadow: 0 14px 30px var(--dm-shadow);
    color: var(--dm-text) !important;
}

[data-theme="dark"] .portal-action-card__icon {
    background: rgba(94, 196, 207, 0.14) !important;
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .portal-action-card__title {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .portal-field__label,
[data-theme="dark"] .portal-form__hint {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .portal-field__control {
    background-color: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .portal-field__control:focus {
    border-color: var(--dm-primary) !important;
    box-shadow: 0 0 0 3px rgba(94, 196, 207, 0.18);
}

[data-theme="dark"] .portal-field__control::placeholder {
    color: #6f8590;
}

[data-theme="dark"] .portal-field__icon,
[data-theme="dark"] .portal-field__toggle {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .portal-field__toggle:hover {
    background: var(--dm-bg-hover) !important;
}

[data-theme="dark"] .portal-btn--secondary {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .portal-form__links a {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .report-panel,
[data-theme="dark"] .colaboradores-panel,
[data-theme="dark"] .folgas-panel,
[data-theme="dark"] .faturas-panel {
    color: var(--dm-text);
}

[data-theme="dark"] .report-panel__month-title,
[data-theme="dark"] .report-panel__trimestre-title,
[data-theme="dark"] .report-panel__section-title,
[data-theme="dark"] .colaboradores-panel__title {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .report-panel__month-arrow,
[data-theme="dark"] .report-panel__trimestre-arrow {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .report-panel__table-wrap,
[data-theme="dark"] .colaboradores-panel__table-wrap {
    background: var(--dm-bg-elevated);
    border-color: var(--dm-border);
}

[data-theme="dark"] .dataTables_wrapper .dataTables_info,
[data-theme="dark"] .dataTables_wrapper .dataTables_paginate,
[data-theme="dark"] .pagination .page-link {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .pagination .page-link {
    background: var(--dm-bg-soft);
    border-color: var(--dm-border);
}

[data-theme="dark"] .pagination .page-item.active .page-link {
    background: var(--dm-primary);
    border-color: var(--dm-primary);
    color: #0f1419 !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button.current,
[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover {
    background: linear-gradient(135deg, var(--dm-primary-dark), var(--dm-primary)) !important;
    border-color: var(--dm-primary) !important;
    color: #0f1419 !important;
}

[data-theme="dark"] .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: var(--dm-bg-hover) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .colaboradores-panel__form .colaboradores-panel__file-row label,
[data-theme="dark"] .colaboradores-panel__form .colaboradores-panel__file-row .col-md-auto {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .app-footer {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    box-shadow: 0 8px 24px var(--dm-shadow) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .app-footer__inner {
    background: transparent;
    color: var(--dm-text);
}

[data-theme="dark"] .app-footer__label {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .app-footer__value {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .app-footer__link--brand .app-footer__value {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .app-footer__link--support .app-footer__value {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .app-footer__icon {
    background: rgba(94, 196, 207, 0.12) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .app-footer__link--support .app-footer__icon {
    background: rgba(75, 87, 197, 0.15) !important;
    border-color: var(--dm-border) !important;
    color: #b6bdff !important;
}

[data-theme="dark"] .app-footer__link:hover,
[data-theme="dark"] .app-footer__link:focus {
    background: var(--dm-bg-hover) !important;
}

[data-theme="dark"] .report-panel__footer,
[data-theme="dark"] .portal-page__footer,
[data-theme="dark"] .registro-page__footer {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .senha-panel__alert {
    background: rgba(94, 196, 207, 0.1) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .senha-panel__alert i {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .senha-panel__alert strong {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .senha-panel__alert p {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .senha-panel__badge {
    background: rgba(94, 196, 207, 0.12) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .nav-tabs {
    border-color: var(--dm-border);
}

[data-theme="dark"] .nav-tabs .nav-link {
    color: var(--dm-text-muted);
}

[data-theme="dark"] .nav-tabs .nav-link.active {
    background: var(--dm-bg-elevated);
    border-color: var(--dm-border) var(--dm-border) var(--dm-bg-elevated);
    color: var(--dm-text);
}

[data-theme="dark"] .tab-content {
    color: var(--dm-text);
}

[data-theme="dark"] .custom-control-label::before {
    background: var(--dm-bg-soft);
    border-color: var(--dm-border);
}

[data-theme="dark"] .badge-light {
    background: var(--dm-bg-hover);
    color: var(--dm-text);
}

[data-theme="dark"] .theme-toggle__label {
    color: var(--dm-text);
}

/* ========== Variáveis dos painéis ========== */
[data-theme="dark"] .colaboradores-panel,
[data-theme="dark"] .colaborador-panel,
[data-theme="dark"] .report-panel,
[data-theme="dark"] .plano-panel,
[data-theme="dark"] .moderacao-panel,
[data-theme="dark"] .escala-dashboard,
[data-theme="dark"] .folgas-panel,
[data-theme="dark"] .faturas-panel,
[data-theme="dark"] .faltas-panel,
[data-theme="dark"] .politicas-panel,
[data-theme="dark"] .metas-panel,
[data-theme="dark"] .senha-panel,
[data-theme="dark"] .atestados-panel,
[data-theme="dark"] .ferias-panel,
[data-theme="dark"] .registros-mensais-panel,
[data-theme="dark"] .registro-page,
[data-theme="dark"] .portal-page,
[data-theme="dark"] .export-page {
    --cp-primary: var(--dm-primary);
    --cp-primary-dark: var(--dm-primary-dark);
    --cp-border: var(--dm-border);
    --cp-muted: var(--dm-text-muted);
    --cp-text: var(--dm-text);
    --plano-primary: var(--dm-primary);
    --plano-primary-dark: var(--dm-primary-dark);
    --plano-border: var(--dm-border);
    --plano-muted: var(--dm-text-muted);
    --plano-text: var(--dm-text);
    --mp-primary: var(--dm-primary);
    --mp-primary-dark: var(--dm-primary-dark);
    --mp-border: var(--dm-border);
    --mp-muted: var(--dm-text-muted);
    --mp-text: var(--dm-text);
    --ed-primary: var(--dm-primary);
    --ed-border: var(--dm-border);
    --ed-muted: var(--dm-text-muted);
    --registro-primary: var(--dm-primary);
    --registro-primary-dark: var(--dm-primary-dark);
    --registro-border: var(--dm-border);
    --registro-muted: var(--dm-text-muted);
    --registro-text: var(--dm-text);
    --registro-bg: var(--dm-bg);
    --portal-primary: var(--dm-primary);
    --portal-primary-dark: var(--dm-primary-dark);
    --portal-border: var(--dm-border);
    --portal-muted: var(--dm-text-muted);
    --portal-text: var(--dm-text);
    --portal-bg: var(--dm-bg);
    color: var(--dm-text);
}

/* ========== Superfícies brancas dos painéis ========== */
[data-theme="dark"] [class$="__scroll"],
[data-theme="dark"] [class$="__footer"],
[data-theme="dark"] [class$="__card"],
[data-theme="dark"] [class*="panel__card"],
[data-theme="dark"] [class$="__card-body"],
[data-theme="dark"] [class*="__card-body"],
[data-theme="dark"] [class$="__card-head"],
[data-theme="dark"] [class*="__card-head"],
[data-theme="dark"] [class$="__field-group"],
[data-theme="dark"] [class$="__hero"],
[data-theme="dark"] [class$="__intro"],
[data-theme="dark"] [class$="__table-wrap"],
[data-theme="dark"] [class*="__table-wrap"],
[data-theme="dark"] [class*="__calendar-wrap"],
[data-theme="dark"] [class$="__detail-card"],
[data-theme="dark"] [class$="__description"],
[data-theme="dark"] [class$="__type-card"],
[data-theme="dark"] [class*="__type-card"],
[data-theme="dark"] [class$="__toggle-card"],
[data-theme="dark"] [class$="__file-label"],
[data-theme="dark"] [class$="__progress"],
[data-theme="dark"] [class$="__empty"],
[data-theme="dark"] [class$="__feedback"],
[data-theme="dark"] [class$="__period-card"],
[data-theme="dark"] [class$="__info-card"],
[data-theme="dark"] [class$="__section-card"],
[data-theme="dark"] [class$="__trimestre-hero"],
[data-theme="dark"] [class$="__notice"],
[data-theme="dark"] [class$="__falta-preview"],
[data-theme="dark"] [class$="__falta-preview-item"],
[data-theme="dark"] [class$="__fechamento-stat"],
[data-theme="dark"] [class$="__detail-item"],
[data-theme="dark"] [class$="__view-btn"],
[data-theme="dark"] [class$="__dialog-meta"],
[data-theme="dark"] [class$="__create-toggle"],
[data-theme="dark"] [class*="__create-toggle"],
[data-theme="dark"] [class$="__form-tab-intro"],
[data-theme="dark"] [class$="__form-note"],
[data-theme="dark"] [class$="__form-footer"],
[data-theme="dark"] [class$="__toolbar"],
[data-theme="dark"] [class$="__list-head"],
[data-theme="dark"] [class$="__panel"],
[data-theme="dark"] [class$="__period-preview"],
[data-theme="dark"] [class$="__summary"],
[data-theme="dark"] [class$="__item"],
[data-theme="dark"] [class$="__header"],
[data-theme="dark"] [class$="__modal-header"],
[data-theme="dark"] [class$="__tabs-header"],
[data-theme="dark"] [class$="__body"],
[data-theme="dark"] .export-page__panel,
[data-theme="dark"] .export-page__header {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text);
    box-shadow: 0 8px 24px var(--dm-shadow);
}

[data-theme="dark"] [class$="__stat"],
[data-theme="dark"] [class$="__badge"]:not(.badge):not([class*="status--"]) {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text);
}

[data-theme="dark"] [class$="__stat--muted"] {
    background: var(--dm-bg-soft) !important;
}

[data-theme="dark"] [class$="__stat--success"],
[data-theme="dark"] [class$="__stat--warning"],
[data-theme="dark"] [class$="__stat--danger"] {
    background: rgba(94, 196, 207, 0.08) !important;
    border-color: var(--dm-border) !important;
}

/* ========== Textos escuros nos painéis ========== */
[data-theme="dark"] [class*="-panel"] [class$="__title"],
[data-theme="dark"] [class*="-panel"] [class$="__subtitle"],
[data-theme="dark"] [class*="-panel"] [class$="__name"],
[data-theme="dark"] [class*="-panel"] [class$="__label"],
[data-theme="dark"] [class*="-panel"] [class$="__text"],
[data-theme="dark"] [class*="-panel"] [class$="__desc"],
[data-theme="dark"] [class*="-panel"] [class$="__meta"],
[data-theme="dark"] [class*="-panel"] [class$="__value"],
[data-theme="dark"] [class*="-panel"] [class$="__eyebrow"],
[data-theme="dark"] [class*="-panel"] [class$="__list-title"],
[data-theme="dark"] [class*="-panel"] [class$="__list-desc"],
[data-theme="dark"] [class*="-panel"] [class$="__section-label"],
[data-theme="dark"] [class*="-panel"] [class$="__field-label"],
[data-theme="dark"] [class*="-panel"] [class*="field-group-title"],
[data-theme="dark"] [class*="-panel"] [class$="__card-title"],
[data-theme="dark"] [class*="-panel"] [class$="__card-desc"],
[data-theme="dark"] [class*="-panel"] [class$="__detail-title"],
[data-theme="dark"] [class*="-panel"] [class$="__detail-label"],
[data-theme="dark"] [class*="-panel"] [class$="__detail-value"],
[data-theme="dark"] [class*="-panel"] [class$="__detail-meta"],
[data-theme="dark"] [class*="-panel"] [class$="__type-title"],
[data-theme="dark"] [class*="-panel"] [class$="__type-desc"],
[data-theme="dark"] [class*="-panel"] [class$="__dialog-title"],
[data-theme="dark"] [class*="-panel"] [class$="__dialog-text"],
[data-theme="dark"] [class*="-panel"] [class$="__feedback-title"],
[data-theme="dark"] [class*="-panel"] [class$="__feedback-text"],
[data-theme="dark"] [class*="-panel"] [class$="__table-title"],
[data-theme="dark"] [class*="-panel"] [class$="__policy-title"],
[data-theme="dark"] [class*="-panel"] [class$="__semestre"],
[data-theme="dark"] [class*="-panel"] [class$="__semestre-date"],
[data-theme="dark"] [class*="-panel"] [class$="__semestre-label"],
[data-theme="dark"] [class*="-panel"] [class$="__date"],
[data-theme="dark"] [class*="-panel"] [class$="__resumo"],
[data-theme="dark"] [class*="-panel"] [class$="__colaborador"],
[data-theme="dark"] [class*="-panel"] [class$="__row-link"],
[data-theme="dark"] [class*="-panel"] [class$="__link"],
[data-theme="dark"] [class*="-panel"] [class$="__notice-text"],
[data-theme="dark"] [class*="-panel"] [class$="__fechamento-title"],
[data-theme="dark"] [class*="-panel"] [class$="__fechamento-subtitle"],
[data-theme="dark"] [class*="-panel"] [class$="__fechamento-stat-label"],
[data-theme="dark"] [class*="-panel"] [class$="__fechamento-stat-value"],
[data-theme="dark"] [class*="-panel"] [class$="__fechamento-hint"],
[data-theme="dark"] [class*="-panel"] [class$="__period-label"],
[data-theme="dark"] [class*="-panel"] [class$="__info-card"] dt,
[data-theme="dark"] [class*="-panel"] [class$="__info-card"] dd,
[data-theme="dark"] .export-page__title,
[data-theme="dark"] .export-page__name,
[data-theme="dark"] .export-page__meta,
[data-theme="dark"] .export-page__subtitle,
[data-theme="dark"] .report-panel .report-title,
[data-theme="dark"] .report-panel .report-subtitle,
[data-theme="dark"] .colaboradores-panel__create-toggle,
[data-theme="dark"] .colaboradores-panel__table-title,
[data-theme="dark"] .colaboradores-panel__table-desc,
[data-theme="dark"] .colaboradores-panel__form-tab-intro,
[data-theme="dark"] .colaboradores-panel__form-note,
[data-theme="dark"] .empresa-sidebar__brand-label,
[data-theme="dark"] .empresa-sidebar__brand-name,
[data-theme="dark"] .empresa-sidebar__section-label,
[data-theme="dark"] .contador-sidebar__brand-label,
[data-theme="dark"] .contador-sidebar__brand-name,
[data-theme="dark"] .contador-sidebar__section-label {
    color: var(--dm-text) !important;
}

[data-theme="dark"] [class*="-panel"] [class$="__semestre-label"],
[data-theme="dark"] [class*="-panel"] [class$="__list-desc"],
[data-theme="dark"] [class*="-panel"] [class$="__table-desc"] {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] [class*="-panel"] [class$="__date"] i,
[data-theme="dark"] [class*="-panel"] [class$="__semestre-date"] i {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .ferias-panel__date i {
    color: #b6bdff !important;
}

/* ========== Tabelas dos painéis — cabeçalho e células ========== */
[data-theme="dark"] [class*="-panel__table"] thead th,
[data-theme="dark"] [class*="-panel"] [class*="-panel__table"] thead th {
    background: var(--dm-bg-soft) !important;
    color: var(--dm-text-muted) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] [class*="-panel__table"] tbody td,
[data-theme="dark"] [class*="-panel"] [class*="-panel__table"] tbody td {
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] [class*="-panel__table"] tbody td .font-weight-bold,
[data-theme="dark"] [class*="-panel"] [class*="-panel__table"] tbody td .font-weight-bold {
    color: var(--dm-text) !important;
}

/* ========== Formulários e sub-componentes dos painéis ========== */
[data-theme="dark"] [class*="-panel"] [class*="__form"],
[data-theme="dark"] [class*="-panel"] [class*="__form-"],
[data-theme="dark"] [class*="-panel"] [class*="__filter"],
[data-theme="dark"] [class*="-panel"] [class*="__toolbar"],
[data-theme="dark"] [class*="-panel"] [class*="__shell"],
[data-theme="dark"] [class*="-panel"] [class*="__trigger"],
[data-theme="dark"] [class*="-panel"] [class*="__upload"],
[data-theme="dark"] [class*="-panel"] [class*="__preview"],
[data-theme="dark"] [class*="-panel"] [class*="__box"],
[data-theme="dark"] [class*="-panel"] [class*="__wrap"],
[data-theme="dark"] [class*="-panel"] [class*="__actions"],
[data-theme="dark"] [class*="-panel"] [class*="__action-card"],
[data-theme="dark"] [class*="-panel"] [class*="__option"],
[data-theme="dark"] [class*="-panel"] [class*="__chip"],
[data-theme="dark"] [class*="-panel"] [class*="__pill"],
[data-theme="dark"] [class*="-panel"] [class*="__step"],
[data-theme="dark"] [class*="-panel"] [class*="__alert"],
[data-theme="dark"] [class*="-panel"] [class*="__notice"],
[data-theme="dark"] [class*="-panel"] [class*="__banner"],
[data-theme="dark"] [class*="-panel"] [class*="__state"],
[data-theme="dark"] [class*="-panel"] [class*="__empty-state"],
[data-theme="dark"] [class*="-panel"] [class*="__datatable"],
[data-theme="dark"] [class*="-panel"] .nav-link,
[data-theme="dark"] [class*="-panel"] .card,
[data-theme="dark"] [class*="-panel"] .card-header,
[data-theme="dark"] [class*="-panel"] .card-body {
    background-color: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text);
}

[data-theme="dark"] .atestados-panel__card,
[data-theme="dark"] .colaboradores-panel__checkbox,
[data-theme="dark"] [class*="-panel"] [class*="__checkbox"] {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text);
}

[data-theme="dark"] .colaboradores-panel__checkbox:hover,
[data-theme="dark"] [class*="-panel"] [class*="__checkbox"]:hover {
    background: var(--dm-bg-hover) !important;
    border-color: var(--dm-primary) !important;
}

[data-theme="dark"] .colaboradores-panel__checkbox-box {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .colaboradores-panel__checkbox-copy strong {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .colaboradores-panel__checkbox-copy small {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .ferias-panel__alert--info {
    background: rgba(88, 104, 210, 0.16) !important;
    border-color: rgba(120, 136, 230, 0.35) !important;
    color: #c5ccf7 !important;
}

[data-theme="dark"] .ferias-panel__alert--info i {
    color: #9aa8ff !important;
}

[data-theme="dark"] .ferias-panel__alert--success {
    background: rgba(46, 160, 92, 0.14) !important;
    border-color: rgba(72, 180, 110, 0.32) !important;
    color: #9ed9b8 !important;
}

[data-theme="dark"] .ferias-panel__alert--success i {
    color: #7ecfa0 !important;
}

[data-theme="dark"] .ferias-panel__alert--danger {
    background: rgba(200, 70, 90, 0.14) !important;
    border-color: rgba(220, 100, 118, 0.32) !important;
    color: #f0b0bc !important;
}

[data-theme="dark"] .ferias-panel__alert--danger i {
    color: #e88999 !important;
}

[data-theme="dark"] [class*="-panel"] .form-control,
[data-theme="dark"] [class*="-panel"] .custom-select,
[data-theme="dark"] [class*="-panel"] select,
[data-theme="dark"] [class*="-panel"] textarea,
[data-theme="dark"] [class*="-panel"] input[type="text"],
[data-theme="dark"] [class*="-panel"] input[type="email"],
[data-theme="dark"] [class*="-panel"] input[type="password"],
[data-theme="dark"] [class*="-panel"] input[type="number"],
[data-theme="dark"] [class*="-panel"] input[type="date"],
[data-theme="dark"] [class*="-panel"] input[type="time"] {
    background-color: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] [class*="-panel"] .form-control:focus,
[data-theme="dark"] [class*="-panel"] .custom-select:focus,
[data-theme="dark"] [class*="-panel"] select:focus,
[data-theme="dark"] [class*="-panel"] textarea:focus,
[data-theme="dark"] [class*="-panel"] input[type="text"]:focus,
[data-theme="dark"] [class*="-panel"] input[type="email"]:focus,
[data-theme="dark"] [class*="-panel"] input[type="password"]:focus,
[data-theme="dark"] [class*="-panel"] input[type="number"]:focus,
[data-theme="dark"] [class*="-panel"] input[type="date"]:focus,
[data-theme="dark"] [class*="-panel"] input[type="time"]:focus {
    background-color: var(--dm-bg-soft) !important;
    border-color: var(--dm-primary) !important;
    color: var(--dm-text) !important;
    box-shadow: 0 0 0 0.2rem rgba(94, 196, 207, 0.18);
}

[data-theme="dark"] [class*="-panel"] .nav-link {
    background: var(--dm-bg-soft) !important;
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] [class*="-panel"] .nav-link:hover,
[data-theme="dark"] [class*="-panel"] .nav-link:focus,
[data-theme="dark"] [class*="-panel"] .nav-link.active {
    background: var(--dm-bg-elevated) !important;
    color: var(--dm-text) !important;
    border-bottom-color: var(--dm-bg-elevated) !important;
}

[data-theme="dark"] [class*="-panel"] .text-muted,
[data-theme="dark"] [class*="-panel"] .text-secondary {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] [class*="-panel"] .btn-primary,
[data-theme="dark"] [class*="-panel"] [class*="__submit"],
[data-theme="dark"] [class*="-panel"] [class*="__create-action"] {
    background: linear-gradient(135deg, var(--dm-primary-dark), var(--dm-primary)) !important;
    border-color: var(--dm-primary) !important;
    color: #0f1419 !important;
}

[data-theme="dark"] [class*="-panel"] [class*="__create-action"] {
    color: #ffffff !important;
}

[data-theme="dark"] [class*="-panel"] a:not(.btn):not(.nav-link):not(.dropdown-item) {
    color: var(--dm-primary);
}

[data-theme="dark"] [class*="-panel"] strong,
[data-theme="dark"] [class*="-panel"] b {
    color: var(--dm-text);
}

[data-theme="dark"] [class*="-panel"] [class$="__subtitle"],
[data-theme="dark"] [class*="-panel"] [class$="__meta"],
[data-theme="dark"] [class*="-panel"] [class$="__desc"],
[data-theme="dark"] [class*="-panel"] [class$="__hint"],
[data-theme="dark"] [class*="-panel"] [class*="field-group-desc"],
[data-theme="dark"] [class*="-panel"] [class$="__list-desc"],
[data-theme="dark"] [class*="-panel"] [class$="__detail-meta"],
[data-theme="dark"] [class*="-panel"] [class$="__stat-label"],
[data-theme="dark"] [class*="-panel"] [class$="__eyebrow"],
[data-theme="dark"] .export-page__meta,
[data-theme="dark"] .export-page__subtitle,
[data-theme="dark"] .report-panel .report-subtitle,
[data-theme="dark"] .colaboradores-panel__subtitle,
[data-theme="dark"] .empresa-sidebar__brand-label,
[data-theme="dark"] .contador-sidebar__brand-label {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] [class*="-panel"] [class$="__stat-value"],
[data-theme="dark"] [class*="-panel"] [class$="__link"],
[data-theme="dark"] [class*="-panel"] [class$="__back-link"],
[data-theme="dark"] .export-page__link {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] [class*="-panel"] [class$="__link"]:hover,
[data-theme="dark"] [class*="-panel"] [class$="__back-link"]:hover,
[data-theme="dark"] .export-page__link:hover {
    color: var(--dm-primary-dark) !important;
}

/* ========== Sidebar ========== */
[data-theme="dark"] .empresa-sidebar__scroll,
[data-theme="dark"] .contador-sidebar__scroll,
[data-theme="dark"] .empresa-sidebar__footer,
[data-theme="dark"] .contador-sidebar__footer {
    background: var(--dm-bg-elevated) !important;
}

[data-theme="dark"] .empresa-sidebar__sublink,
[data-theme="dark"] .contador-sidebar__sublink,
[data-theme="dark"] .empresa-sidebar__logout,
[data-theme="dark"] .contador-sidebar__logout {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .empresa-sidebar__sublink:hover,
[data-theme="dark"] .empresa-sidebar__sublink.is-active,
[data-theme="dark"] .contador-sidebar__sublink:hover,
[data-theme="dark"] .contador-sidebar__sublink.is-active {
    background: var(--dm-bg-hover) !important;
    color: var(--dm-text) !important;
}

/* ========== Colaborador panel / tabs ========== */
[data-theme="dark"] .colaborador-panel__card {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .colaborador-panel__tabs .nav-link {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .colaborador-panel__tabs .nav-link:hover,
[data-theme="dark"] .colaborador-panel__tabs .nav-link:focus,
[data-theme="dark"] .colaborador-panel__tabs .nav-link.active {
    background: var(--dm-bg-elevated) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .colaborador-panel__name,
[data-theme="dark"] .colaborador-panel__chip,
[data-theme="dark"] .colaborador-panel__back {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .colaborador-panel__chip {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
}

/* ========== Tabelas dos painéis ========== */
[data-theme="dark"] [class*="-panel"] table thead th,
[data-theme="dark"] [class*="-panel"] .dataTables_wrapper .dataTables_filter label,
[data-theme="dark"] [class*="-panel"] .dataTables_wrapper .dataTables_length label {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] [class*="-panel"] table tbody tr,
[data-theme="dark"] [class*="-panel"] table tbody td {
    background-color: var(--dm-bg-elevated) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] [class*="-panel"] table tbody tr:nth-of-type(odd),
[data-theme="dark"] [class*="-panel"] table tbody tr:nth-of-type(odd) td,
[data-theme="dark"] [class*="-panel"] table.dataTable.stripe tbody tr.odd,
[data-theme="dark"] [class*="-panel"] table.dataTable.stripe tbody tr.odd td,
[data-theme="dark"] [class*="-panel"] table.dataTable.display tbody tr.odd,
[data-theme="dark"] [class*="-panel"] table.dataTable.display tbody tr.odd td {
    background-color: var(--dm-bg-soft) !important;
    background: var(--dm-bg-soft) !important;
}

[data-theme="dark"] [class*="-panel"] table tbody tr:nth-of-type(even),
[data-theme="dark"] [class*="-panel"] table tbody tr:nth-of-type(even) td,
[data-theme="dark"] [class*="-panel"] table.dataTable.stripe tbody tr.even,
[data-theme="dark"] [class*="-panel"] table.dataTable.stripe tbody tr.even td,
[data-theme="dark"] [class*="-panel"] table.dataTable.display tbody tr.even,
[data-theme="dark"] [class*="-panel"] table.dataTable.display tbody tr.even td {
    background-color: var(--dm-bg-elevated) !important;
    background: var(--dm-bg-elevated) !important;
}

[data-theme="dark"] [class*="-panel"] table tbody tr:hover,
[data-theme="dark"] [class*="-panel"] table tbody tr:hover td {
    background-color: var(--dm-bg-hover) !important;
    background: var(--dm-bg-hover) !important;
}

/* ========== Export page (estilos inline) ========== */
[data-theme="dark"] .export-page__period-preview {
    background: var(--dm-bg-soft) !important;
    border: 1px dashed var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .export-page__period-preview strong {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .export-page__period-preview .text-muted,
[data-theme="dark"] .export-page__period-preview small {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .export-page__summary {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .export-page__summary .text-muted {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .export-page__list {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .export-page__item {
    border-bottom-color: var(--dm-border) !important;
}

[data-theme="dark"] .export-page__check:checked + .export-page__item-body {
    background: rgba(94, 196, 207, 0.12) !important;
}

[data-theme="dark"] .export-page__panel {
    border-color: var(--dm-border) !important;
    box-shadow: 0 8px 24px var(--dm-shadow) !important;
}

[data-theme="dark"] .export-page__panel .card-header {
    background: var(--dm-bg-soft) !important;
    border-bottom-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .export-page__item:hover {
    background: var(--dm-bg-hover) !important;
}

[data-theme="dark"] .export-page__avatar {
    background: var(--dm-bg-soft) !important;
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .export-page__badge {
    background: var(--dm-bg-soft) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

/* ========== Notificações ========== */
[data-theme="dark"] .header-notifications__head {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .header-notifications__title,
[data-theme="dark"] .header-notifications__mark-all button {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .header-notifications__mark-all button:hover {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .header-notifications__item {
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .header-notifications__item:hover,
[data-theme="dark"] .header-notifications__item.is-unread {
    background: var(--dm-bg-hover) !important;
}

[data-theme="dark"] .header-notifications__item-title,
[data-theme="dark"] .header-notifications__item-text {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .header-notifications__item-time {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .header-notifications__badge {
    box-shadow: 0 0 0 2px var(--dm-bg-elevated);
}

/* ========== Status / badges semânticos ========== */
[data-theme="dark"] .report-panel__status--feriado { background: rgba(29, 111, 184, 0.18); color: #8ec5ff; }
[data-theme="dark"] .report-panel__status--folga,
[data-theme="dark"] .report-panel__status--falta-justificada { background: rgba(31, 122, 69, 0.18); color: #8fd4a8; }
[data-theme="dark"] .report-panel__status--ferias { background: rgba(75, 87, 197, 0.18); color: #b6bdff; }
[data-theme="dark"] .report-panel__status--falta { background: rgba(179, 38, 61, 0.18); color: #f5a3b0; }
[data-theme="dark"] .report-panel__status--atestado { background: rgba(154, 114, 0, 0.18); color: #f3df9d; }
[data-theme="dark"] .report-panel__status--fora { background: var(--dm-bg-soft); color: var(--dm-text-muted); }

[data-theme="dark"] [class*="-panel"] [class*="__status--"],
[data-theme="dark"] [class*="-panel"] [class*="__badge."],
[data-theme="dark"] .faltas-panel__badge,
[data-theme="dark"] .politicas-panel__badge,
[data-theme="dark"] .metas-panel__badge,
[data-theme="dark"] .faturas-panel__status {
    border: 1px solid var(--dm-border);
}

[data-theme="dark"] .folgas-panel__horas {
    background: rgba(94, 196, 207, 0.18) !important;
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .folgas-panel__horas--integral {
    background: var(--dm-bg-hover) !important;
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .ferias-panel__dias {
    background: rgba(75, 87, 197, 0.18) !important;
    color: #b6bdff !important;
}

[data-theme="dark"] .faltas-panel__badge.tipo-banco {
    background: rgba(94, 196, 207, 0.18) !important;
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .faltas-panel__badge.tipo-compensacao,
[data-theme="dark"] .faltas-panel__badge.status-aprovado {
    background: rgba(31, 122, 69, 0.18) !important;
    color: #8fd4a8 !important;
}

[data-theme="dark"] .faltas-panel__badge.tipo-falta,
[data-theme="dark"] .faltas-panel__badge.status-pendente {
    background: rgba(154, 114, 0, 0.18) !important;
    color: #f3df9d !important;
}

[data-theme="dark"] .faltas-panel__badge.status-reprovado {
    background: rgba(179, 38, 61, 0.18) !important;
    color: #f5a3b0 !important;
}

[data-theme="dark"] .metas-panel__nota {
    background: rgba(31, 122, 69, 0.18) !important;
    color: #8fd4a8 !important;
}

[data-theme="dark"] .metas-panel__nota--pending {
    background: var(--dm-bg-hover) !important;
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .moderacao-panel__tipo {
    background: rgba(94, 196, 207, 0.18) !important;
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .moderacao-panel__tipo--dia-inteiro {
    background: rgba(75, 87, 197, 0.18) !important;
    color: #b6bdff !important;
}

[data-theme="dark"] .politicas-panel__status--sim {
    background: rgba(31, 122, 69, 0.18) !important;
    color: #8fd4a8 !important;
}

[data-theme="dark"] .politicas-panel__status--nao {
    background: rgba(154, 114, 0, 0.18) !important;
    color: #f3df9d !important;
}

[data-theme="dark"] .politicas-panel__policy-icon {
    background: rgba(75, 87, 197, 0.18) !important;
    color: #b6bdff !important;
}

[data-theme="dark"] .atestados-panel__status--aprovado {
    background: rgba(31, 122, 69, 0.18) !important;
    color: #8fd4a8 !important;
}

[data-theme="dark"] .atestados-panel__status--reprovado {
    background: rgba(179, 38, 61, 0.18) !important;
    color: #f5a3b0 !important;
}

[data-theme="dark"] .atestados-panel__status--pendente {
    background: rgba(154, 114, 0, 0.18) !important;
    color: #f3df9d !important;
}

[data-theme="dark"] .registros-mensais-panel__status--aceito {
    background: rgba(31, 122, 69, 0.18) !important;
    color: #8fd4a8 !important;
}

[data-theme="dark"] .registros-mensais-panel__status--pendente {
    background: rgba(154, 114, 0, 0.18) !important;
    color: #f3df9d !important;
}

[data-theme="dark"] .registros-mensais-panel__categoria {
    background: rgba(94, 196, 207, 0.18) !important;
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .registros-mensais-panel__modal-alert {
    background: rgba(154, 114, 0, 0.12) !important;
    border-color: rgba(154, 114, 0, 0.35) !important;
    color: #f3df9d !important;
}

[data-theme="dark"] .colaboradores-panel__row-link {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .colaboradores-panel__row-link:hover,
[data-theme="dark"] .colaboradores-panel__row-link:focus {
    color: var(--dm-primary-dark) !important;
}

[data-theme="dark"] .moderacao-panel__colaborador,
[data-theme="dark"] .moderacao-panel__link {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .moderacao-panel__colaborador:hover,
[data-theme="dark"] .moderacao-panel__link:hover {
    color: var(--dm-primary-dark) !important;
}

/* ========== Modais / accordion / collapse ========== */
[data-theme="dark"] [class*="-panel"] .modal-content,
[data-theme="dark"] [class*="-panel"] .modal-header,
[data-theme="dark"] [class*="-panel"] .modal-footer,
[data-theme="dark"] [class*="-panel"] .modal-body {
    background: var(--dm-bg-elevated) !important;
    color: var(--dm-text);
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .report-panel__section-toggle,
[data-theme="dark"] .report-panel__section-toggle.collapsed {
    background: var(--dm-bg-soft) !important;
    color: var(--dm-text) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .report-panel__section-body {
    background: transparent;
}

[data-theme="dark"] .report-panel .report-tooltip {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text);
}

[data-theme="dark"] .report-panel .report-card:hover {
    border-color: var(--dm-primary) !important;
}

[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(odd),
[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(odd) td {
    background: var(--dm-bg-soft) !important;
    background-color: var(--dm-bg-soft) !important;
}

[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(even),
[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(even) td {
    background: var(--dm-bg-elevated) !important;
    background-color: var(--dm-bg-elevated) !important;
}

[data-theme="dark"] .report-panel__table tbody tr,
[data-theme="dark"] .report-panel__table tbody td {
    background: var(--dm-bg-elevated) !important;
    background-color: var(--dm-bg-elevated) !important;
}

[data-theme="dark"] .report-panel__table tbody tr:hover,
[data-theme="dark"] .report-panel__table tbody tr:hover td {
    background: var(--dm-bg-hover) !important;
    background-color: var(--dm-bg-hover) !important;
}

[data-theme="dark"] .report-panel__table thead th {
    background: var(--dm-bg-soft) !important;
}

[data-theme="dark"] .report-panel__notice {
    border-color: var(--dm-border);
    background: var(--dm-bg-soft);
}

[data-theme="dark"] .report-panel__notice-text {
    color: var(--dm-text-muted);
}

[data-theme="dark"] .report-panel__notice-swatch {
    background-color: var(--report-adjusted-bg) !important;
    box-shadow: inset 0 0 0 1px rgba(15, 20, 25, 0.25);
}

[data-theme="dark"] .report-panel__notice-text strong {
    color: var(--report-adjusted-bg);
}

[data-theme="dark"] .report-panel__table td.report-panel__cell-adjusted,
[data-theme="dark"] .report-panel__table td.bg-primary.report-panel__cell-adjusted,
[data-theme="dark"] .report-panel__table td.report-panel__cell-adjusted.text-white,
html[data-theme="dark"] .report-panel__table td.report-panel__cell-adjusted,
html[data-theme="dark"] .report-panel__table td.bg-primary.report-panel__cell-adjusted {
    background: var(--report-adjusted-bg) !important;
    background-color: var(--report-adjusted-bg) !important;
    color: var(--report-adjusted-text) !important;
}

[data-theme="dark"] .report-panel__table tbody tr:hover td.report-panel__cell-adjusted,
[data-theme="dark"] .report-panel__table tbody tr:hover td.bg-primary.report-panel__cell-adjusted,
html[data-theme="dark"] .report-panel__table tbody tr:hover td.report-panel__cell-adjusted {
    background: var(--report-adjusted-bg) !important;
    background-color: var(--report-adjusted-bg) !important;
    color: var(--report-adjusted-text) !important;
}

[data-theme="dark"] .report-panel__table td.report-panel__cell-adjusted .edit {
    background: rgba(15, 20, 25, 0.18);
    color: var(--report-adjusted-text);
}

[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(odd) td.report-panel__cell-adjusted,
[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(even) td.report-panel__cell-adjusted,
html[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(odd) td.report-panel__cell-adjusted,
html[data-theme="dark"] .report-panel__table.table-striped tbody tr:nth-of-type(even) td.report-panel__cell-adjusted {
    background: var(--report-adjusted-bg) !important;
    background-color: var(--report-adjusted-bg) !important;
    color: var(--report-adjusted-text) !important;
}

/* DataTables CDN — colunas sorting_1/2/3 e classe display também forçam #fff */
html[data-theme="dark"] table.dataTable tbody tr,
html[data-theme="dark"] table.dataTable tbody th,
html[data-theme="dark"] table.dataTable tbody td {
    background-color: var(--dm-bg-elevated) !important;
    background: var(--dm-bg-elevated) !important;
    color: var(--dm-text) !important;
}

html[data-theme="dark"] table.dataTable.display tbody tr.odd,
html[data-theme="dark"] table.dataTable.stripe tbody tr.odd,
html[data-theme="dark"] table.dataTable.display tbody tr.odd > td,
html[data-theme="dark"] table.dataTable.stripe tbody tr.odd > td,
html[data-theme="dark"] table.dataTable.display tbody tr.odd > .sorting_1,
html[data-theme="dark"] table.dataTable.display tbody tr.odd > .sorting_2,
html[data-theme="dark"] table.dataTable.display tbody tr.odd > .sorting_3,
html[data-theme="dark"] table.dataTable.order-column.stripe tbody tr.odd > .sorting_1,
html[data-theme="dark"] table.dataTable.order-column.stripe tbody tr.odd > .sorting_2,
html[data-theme="dark"] table.dataTable.order-column.stripe tbody tr.odd > .sorting_3,
html[data-theme="dark"] .table-striped.table.dataTable tbody tr.odd,
html[data-theme="dark"] .table-striped.table.dataTable tbody tr.odd > td {
    background-color: var(--dm-bg-soft) !important;
    background: var(--dm-bg-soft) !important;
}

html[data-theme="dark"] table.dataTable.display tbody tr.even,
html[data-theme="dark"] table.dataTable.stripe tbody tr.even,
html[data-theme="dark"] table.dataTable.display tbody tr.even > td,
html[data-theme="dark"] table.dataTable.stripe tbody tr.even > td,
html[data-theme="dark"] table.dataTable.display tbody tr.even > .sorting_1,
html[data-theme="dark"] table.dataTable.display tbody tr.even > .sorting_2,
html[data-theme="dark"] table.dataTable.display tbody tr.even > .sorting_3,
html[data-theme="dark"] table.dataTable.order-column.stripe tbody tr.even > .sorting_1,
html[data-theme="dark"] table.dataTable.order-column.stripe tbody tr.even > .sorting_2,
html[data-theme="dark"] table.dataTable.order-column.stripe tbody tr.even > .sorting_3,
html[data-theme="dark"] .table-striped.table.dataTable tbody tr.even,
html[data-theme="dark"] .table-striped.table.dataTable tbody tr.even > td {
    background-color: var(--dm-bg-elevated) !important;
    background: var(--dm-bg-elevated) !important;
}

html[data-theme="dark"] table.dataTable.display tbody tr:hover,
html[data-theme="dark"] table.dataTable.display tbody tr:hover > td,
html[data-theme="dark"] table.dataTable.hover tbody tr:hover,
html[data-theme="dark"] table.dataTable.hover tbody tr:hover > td,
html[data-theme="dark"] table.dataTable.display tbody tr:hover > .sorting_1,
html[data-theme="dark"] table.dataTable.display tbody tr:hover > .sorting_2,
html[data-theme="dark"] table.dataTable.display tbody tr:hover > .sorting_3 {
    background-color: var(--dm-bg-hover) !important;
    background: var(--dm-bg-hover) !important;
}

/* ========== CKEditor ========== */
[data-theme="dark"] .metas-panel__editor-group .ck.ck-editor,
[data-theme="dark"] .metas-panel__editor-group .ck.ck-toolbar,
[data-theme="dark"] .metas-panel__editor-group .ck.ck-editor__main > .ck-editor__editable,
[data-theme="dark"] .politicas-admin__editor-group .ck.ck-editor,
[data-theme="dark"] .politicas-admin__editor-group .ck.ck-toolbar,
[data-theme="dark"] .politicas-admin__editor-group .ck.ck-editor__main > .ck-editor__editable,
[data-theme="dark"] .politicas-admin .ck.ck-editor,
[data-theme="dark"] .politicas-admin .ck.ck-toolbar,
[data-theme="dark"] .politicas-admin .ck.ck-editor__main > .ck-editor__editable {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .metas-panel__editor-group .ck.ck-button,
[data-theme="dark"] .metas-panel__editor-group .ck.ck-label,
[data-theme="dark"] .politicas-admin__editor-group .ck.ck-button,
[data-theme="dark"] .politicas-admin__editor-group .ck.ck-label,
[data-theme="dark"] .politicas-admin .ck.ck-button,
[data-theme="dark"] .politicas-admin .ck.ck-dropdown__button {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .politicas-admin__editor-group .ck.ck-button:hover,
[data-theme="dark"] .politicas-admin__editor-group .ck.ck-button.ck-on,
[data-theme="dark"] .politicas-admin .ck.ck-button:hover,
[data-theme="dark"] .politicas-admin .ck.ck-button.ck-on,
[data-theme="dark"] .politicas-admin .ck.ck-dropdown__button:hover {
    background: var(--dm-bg-hover) !important;
}

[data-theme="dark"] .politicas-admin__editor-group .ck.ck-toolbar__separator,
[data-theme="dark"] .politicas-admin .ck.ck-toolbar__separator {
    background: var(--dm-border) !important;
}

[data-theme="dark"] .metas-panel__editor-group .ck.ck-editor__editable:not(.ck-editor__nested-editable).ck-focused,
[data-theme="dark"] .politicas-admin__editor-group .ck.ck-editor__editable:not(.ck-editor__nested-editable).ck-focused,
[data-theme="dark"] .politicas-admin .ck.ck-editor__editable:not(.ck-editor__nested-editable).ck-focused {
    box-shadow: inset 0 0 0 1px rgba(94, 196, 207, 0.35) !important;
}

[data-theme="dark"] .politicas-admin__editor-group .ck.ck-editor__editable.ck-content,
[data-theme="dark"] .politicas-admin .ck.ck-editor__editable.ck-content {
    background: var(--dm-bg-soft) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .politicas-admin__editor-group .ck.ck-editor__editable.ck-content h1,
[data-theme="dark"] .politicas-admin__editor-group .ck.ck-editor__editable.ck-content h2,
[data-theme="dark"] .politicas-admin__editor-group .ck.ck-editor__editable.ck-content h3,
[data-theme="dark"] .politicas-admin__editor-group .ck.ck-editor__editable.ck-content p,
[data-theme="dark"] .politicas-admin__editor-group .ck.ck-editor__editable.ck-content li,
[data-theme="dark"] .politicas-admin .ck.ck-editor__editable.ck-content h1,
[data-theme="dark"] .politicas-admin .ck.ck-editor__editable.ck-content h2,
[data-theme="dark"] .politicas-admin .ck.ck-editor__editable.ck-content h3,
[data-theme="dark"] .politicas-admin .ck.ck-editor__editable.ck-content p,
[data-theme="dark"] .politicas-admin .ck.ck-editor__editable.ck-content li {
    color: var(--dm-text) !important;
}

/* ========== Labels de formulário (sistema todo) ========== */
[data-theme="dark"] [class*="-panel"] .form-group label,
[data-theme="dark"] [class*="-panel"] .form-group label:not(.colaboradores-panel__file-trigger),
[data-theme="dark"] [class*="-panel"] .form-group.placeholder label,
[data-theme="dark"] [class*="-panel"] form label:not(.btn):not(.colaboradores-panel__checkbox):not(.colaboradores-panel__file-trigger),
[data-theme="dark"] label.col-form-label,
[data-theme="dark"] .col-form-label {
    color: var(--dm-text-muted) !important;
    background: transparent !important;
}

/* ========== Cards de seleção ativos ========== */
[data-theme="dark"] [class*="__type-card"].is-active,
[data-theme="dark"] .faltas-panel__type-card.is-active {
    border-color: var(--dm-primary) !important;
    background: linear-gradient(180deg, rgba(94, 196, 207, 0.14), var(--dm-bg-elevated)) !important;
    box-shadow: 0 8px 20px var(--dm-shadow) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] [class*="__type-card"].is-active [class*="__type-icon"],
[data-theme="dark"] .faltas-panel__type-card.is-active .faltas-panel__type-icon {
    background: var(--dm-primary) !important;
    color: #0f1419 !important;
}

[data-theme="dark"] [class*="__type-card"]:not(.is-active) [class*="__type-icon"] {
    background: rgba(94, 196, 207, 0.12) !important;
    color: var(--dm-primary) !important;
}

/* ========== Aside CMS / legado (panel.css) ========== */
[data-theme="dark"] aside {
    background-color: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text);
}

[data-theme="dark"] aside .nav .nav-link,
[data-theme="dark"] aside nav ul li a {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] aside .nav .nav-link:hover,
[data-theme="dark"] aside .nav .nav-link.parent,
[data-theme="dark"] aside nav ul li a:hover {
    color: var(--dm-text) !important;
    background-color: var(--dm-bg-hover) !important;
}

[data-theme="dark"] aside hr {
    border-color: var(--dm-border) !important;
}

/* ========== Escala dashboard / FullCalendar ========== */
[data-theme="dark"] .escala-dashboard__date-nav {
    background: linear-gradient(180deg, var(--dm-bg-soft) 0%, var(--dm-bg-elevated) 100%) !important;
    border-bottom-color: var(--dm-border) !important;
}

[data-theme="dark"] .escala-dashboard__date-picker-btn {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
    box-shadow: 0 4px 14px var(--dm-shadow) !important;
}

[data-theme="dark"] .escala-dashboard__date-picker-btn:hover,
[data-theme="dark"] .escala-dashboard__date-picker-btn:focus {
    border-color: var(--dm-primary) !important;
    box-shadow: 0 0 0 3px rgba(94, 196, 207, 0.15) !important;
}

[data-theme="dark"] .escala-dashboard__date-picker-btn i {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .escala-dashboard__tabs-shell {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    box-shadow: 0 8px 24px var(--dm-shadow) !important;
}

[data-theme="dark"] .escala-dashboard__tabs-header {
    background: linear-gradient(180deg, var(--dm-bg-soft) 0%, var(--dm-bg-elevated) 100%) !important;
    border-bottom-color: var(--dm-border) !important;
}

[data-theme="dark"] .escala-dashboard__tabs .nav-link {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .escala-dashboard__tabs .nav-link.active {
    color: var(--dm-primary) !important;
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    border-bottom-color: var(--dm-bg-elevated) !important;
}

[data-theme="dark"] .escala-dashboard__card-head {
    background: linear-gradient(180deg, var(--dm-bg-soft) 0%, var(--dm-bg-elevated) 100%) !important;
    border-bottom-color: var(--dm-border) !important;
}

[data-theme="dark"] .escala-dashboard__card-title {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .escala-dashboard__card-desc {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .escala-dashboard__calendar-wrap {
    background: linear-gradient(180deg, var(--dm-bg-soft) 0%, var(--dm-bg-elevated) 100%) !important;
    border-color: var(--dm-border) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04), 0 10px 28px var(--dm-shadow) !important;
}

[data-theme="dark"] .escala-dashboard .calendar .fc-toolbar.fc-header-toolbar {
    border-bottom-color: var(--dm-border) !important;
}

[data-theme="dark"] .escala-dashboard .calendar .fc-toolbar.fc-header-toolbar h2 {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .escala-dashboard .calendar .fc-col-header-cell-cushion,
[data-theme="dark"] .escala-dashboard .calendar .fc-day-header {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .escala-dashboard .calendar .fc-day-number,
[data-theme="dark"] .escala-dashboard .calendar .fc-daygrid-day-number {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .escala-dashboard .calendar .fc-day-other .fc-daygrid-day-number,
[data-theme="dark"] .escala-dashboard .calendar .fc-other-month .fc-day-number {
    color: var(--dm-text-muted) !important;
    opacity: 0.7;
}

[data-theme="dark"] .escala-dashboard .calendar .fc-daygrid-day,
[data-theme="dark"] .escala-dashboard .calendar .fc-day-grid .fc-day {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .escala-dashboard .calendar .fc-daygrid-day:hover {
    background: var(--dm-bg-hover) !important;
}

[data-theme="dark"] .escala-dashboard .calendar .fc-day-today,
[data-theme="dark"] .escala-dashboard .calendar .fc-today {
    background: rgba(94, 196, 207, 0.1) !important;
}

[data-theme="dark"] .escala-dashboard .calendar .fc-day-today .fc-daygrid-day-number,
[data-theme="dark"] .escala-dashboard .calendar .fc-today .fc-day-number {
    background: linear-gradient(135deg, var(--dm-primary), var(--dm-primary-dark)) !important;
    color: #0f1419 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25) !important;
}

[data-theme="dark"] .escala-dashboard .calendar .fc-view-container,
[data-theme="dark"] .escala-dashboard .calendar .fc-widget-header,
[data-theme="dark"] .escala-dashboard .calendar .fc-head-container,
[data-theme="dark"] .escala-dashboard .calendar .fc-dayGridMonth-view .fc-head-container {
    background: transparent !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .escala-dashboard__welcome,
[data-theme="dark"] .escala-dashboard__subtitle {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .escala-dashboard__welcome strong {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .atestados-panel__field-label,
[data-theme="dark"] .atestados-panel__file-name {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .atestados-panel__file-hint {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .atestados-panel__file-label {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .atestados-panel__file-label:hover {
    background: var(--dm-bg-hover) !important;
    border-color: var(--dm-primary) !important;
}

[data-theme="dark"] .faltas-panel__file-name {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .faltas-panel__file-hint {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .faltas-panel__file-label {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .faltas-panel__file-label:hover {
    background: var(--dm-bg-hover) !important;
    border-color: var(--dm-primary) !important;
}

/* ========== Headers — menus e create toggle ========== */
[data-theme="dark"] .empresa-header__menu-title,
[data-theme="dark"] .colaborador-header__menu-title,
[data-theme="dark"] .contador-header__menu-title,
[data-theme="dark"] .empresa-header__menu .dropdown-item,
[data-theme="dark"] .colaborador-header__menu .dropdown-item,
[data-theme="dark"] .contador-header__menu .dropdown-item {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .empresa-header__menu .dropdown-item:hover,
[data-theme="dark"] .colaborador-header__menu .dropdown-item:hover,
[data-theme="dark"] .contador-header__menu .dropdown-item:hover {
    background: var(--dm-bg-hover) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .colaboradores-panel__create-toggle,
[data-theme="dark"] [class*="__create-toggle"] {
    background: linear-gradient(180deg, var(--dm-bg-soft) 0%, var(--dm-bg-elevated) 100%) !important;
    border-bottom-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .colaboradores-panel__create-toggle:hover,
[data-theme="dark"] .colaboradores-panel__create-toggle:focus,
[data-theme="dark"] [class*="__create-toggle"]:hover,
[data-theme="dark"] [class*="__create-toggle"]:focus {
    background: var(--dm-bg-hover) !important;
}

[data-theme="dark"] .colaboradores-panel__create-toggle.is-open,
[data-theme="dark"] [class*="__create-toggle"].is-open {
    border-bottom-color: var(--dm-border) !important;
}

[data-theme="dark"] .colaboradores-panel__create-title,
[data-theme="dark"] [class*="__create-title"] {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .colaboradores-panel__create-desc,
[data-theme="dark"] [class*="__create-desc"] {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .colaboradores-panel__form-tabs-header {
    background: linear-gradient(180deg, var(--dm-bg-soft) 0%, var(--dm-bg-elevated) 100%) !important;
    border-bottom-color: var(--dm-border) !important;
}

[data-theme="dark"] .colaboradores-panel__form-tabs .nav-link {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .colaboradores-panel__form-tabs .nav-link i {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] .colaboradores-panel__form-tabs .nav-link:hover,
[data-theme="dark"] .colaboradores-panel__form-tabs .nav-link:focus {
    color: var(--dm-primary) !important;
    background: var(--dm-bg-hover) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .colaboradores-panel__form-tabs .nav-link:hover i,
[data-theme="dark"] .colaboradores-panel__form-tabs .nav-link:focus i {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .colaboradores-panel__form-tabs .nav-link.active {
    color: var(--dm-primary) !important;
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    border-bottom-color: var(--dm-bg-elevated) !important;
    box-shadow: 0 -4px 14px var(--dm-shadow) !important;
}

[data-theme="dark"] .colaboradores-panel__form-tabs .nav-link.active i {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .colaboradores-panel__form-tabs::-webkit-scrollbar-thumb {
    background: var(--dm-border) !important;
}

[data-theme="dark"] .colaboradores-panel__form {
    background: var(--dm-bg-elevated) !important;
}

/* ========== DataTables — toolbar dos painéis ========== */
[data-theme="dark"] [class*="__table-wrap--datatables"] .dataTables_wrapper .dataTables_filter label,
[data-theme="dark"] [class*="__table-wrap--datatables"] .dataTables_wrapper .dataTables_length label,
[data-theme="dark"] [class*="__table-wrap--datatables"] .dataTables_wrapper .dataTables_info {
    color: var(--dm-text-muted) !important;
}

[data-theme="dark"] [class*="__table-wrap--datatables"] .dataTables_wrapper .dataTables_filter input,
[data-theme="dark"] [class*="__table-wrap--datatables"] .dataTables_wrapper .dataTables_length select,
[data-theme="dark"] [class*="__table-wrap--datatables"] .dataTables_wrapper .dt-buttons .dt-button {
    background: var(--dm-bg-soft) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] [class*="__table-wrap--datatables"] .dataTables_wrapper .dt-buttons .dt-button:hover {
    background: var(--dm-bg-hover) !important;
    border-color: var(--dm-primary) !important;
    color: var(--dm-text) !important;
}

[data-theme="dark"] .atestados-panel__table-wrap,
[data-theme="dark"] .atestados-panel__table thead th {
    background: var(--dm-bg-soft) !important;
    color: var(--dm-text-muted) !important;
    border-color: var(--dm-border) !important;
}

[data-theme="dark"] .atestados-panel__date,
[data-theme="dark"] .atestados-panel__tipo,
[data-theme="dark"] .atestados-panel__horario,
[data-theme="dark"] .atestados-panel__list-title,
[data-theme="dark"] .atestados-panel__list-desc,
[data-theme="dark"] .atestados-panel__section-label,
[data-theme="dark"] .politicas-admin__acceptance-value,
[data-theme="dark"] [class*="__acceptance-value"] {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .atestados-panel__date i,
[data-theme="dark"] .atestados-panel__doc-link {
    color: var(--dm-primary) !important;
}

[data-theme="dark"] .atestados-panel__doc-link:hover {
    color: var(--dm-primary-dark) !important;
}

[data-theme="dark"] .atestados-panel__empty i {
    color: var(--dm-text-muted) !important;
}

/* ========== Loaders ========== */
[data-theme="dark"] .loading.loading--premium {
    background: rgba(8, 12, 16, 0.84) !important;
}

[data-theme="dark"] .loading__panel {
    background: linear-gradient(180deg, var(--dm-bg-elevated) 0%, var(--dm-bg-soft) 100%) !important;
    border-color: var(--dm-border) !important;
    box-shadow: 0 24px 60px var(--dm-shadow) !important;
}

[data-theme="dark"] .loading__text {
    color: var(--dm-text) !important;
}

[data-theme="dark"] .loading__ring {
    border-color: rgba(94, 196, 207, 0.18) !important;
    border-top-color: var(--dm-primary) !important;
}

/* ========== CMS ========== */
[data-theme="dark"] .cms-sidebar,
[data-theme="dark"] .border-bottom.bg-white {
    background: var(--dm-bg-elevated) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-text);
}

/* Toggle de tema — ícones locais (public/images/icons/) */
.theme-toggle__icon,
.theme-toggle [data-theme-icon] {
    width: 1.125rem;
    height: 1.125rem;
    display: block;
    object-fit: contain;
    flex-shrink: 0;
}

.theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 1px solid #e3eaec;
    border-radius: 12px;
    background: #ffffff;
    color: #14656d;
    cursor: pointer;
    transition: background-color 0.18s ease, border-color 0.18s ease, transform 0.18s ease, color 0.18s ease;
    box-shadow: 0 4px 12px rgba(20, 101, 109, 0.06);
}

.theme-toggle:hover {
    background: #e7f4f5;
    border-color: #b9dde2;
    color: #0f555c;
    transform: translateY(-1px);
}

.theme-toggle--portal {
    position: fixed;
    top: 1rem;
    right: 1rem;
    z-index: 1040;
}

.theme-toggle--portal-header {
    position: static;
    top: auto;
    right: auto;
    flex-shrink: 0;
}

.theme-toggle--with-label {
    width: auto;
    min-width: 42px;
    padding: 0 0.85rem;
}

.theme-toggle__label {
    font-size: 0.78rem;
    font-weight: 600;
    white-space: nowrap;
}

@media (max-width: 575.98px) {
    .theme-toggle--portal {
        top: 0.75rem;
        right: 0.75rem;
    }

    .theme-toggle__label {
        display: none;
    }
}

[data-theme="dark"] .boletins-admin__item,
[data-theme="dark"] .boletins-panel__card,
[data-theme="dark"] .registro-boletim__item {
    background: var(--dm-surface, #1c2a2e);
    border-color: var(--dm-border, #2f4449);
}

[data-theme="dark"] .boletins-admin__title,
[data-theme="dark"] .registro-boletim__title,
[data-theme="dark"] .registro-boletim__item-title,
[data-theme="dark"] .boletins-admin__upload-label,
[data-theme="dark"] .boletins-admin__upload-name,
[data-theme="dark"] .boletins-admin__upload-placeholder strong {
    color: var(--dm-text, #e8f1f2);
}

[data-theme="dark"] .boletins-admin__date,
[data-theme="dark"] .boletins-admin__acceptance,
[data-theme="dark"] .boletins-admin__empty,
[data-theme="dark"] .registro-boletim__text,
[data-theme="dark"] .registro-boletim__item-meta,
[data-theme="dark"] .boletins-admin__upload-hint,
[data-theme="dark"] .boletins-admin__upload-placeholder,
[data-theme="dark"] .boletins-admin__upload-placeholder span:last-child {
    color: var(--dm-text-muted, #9db4b8);
}

[data-theme="dark"] .boletins-admin__thumb-link,
[data-theme="dark"] .boletins-panel__media,
[data-theme="dark"] .registro-boletim,
[data-theme="dark"] .boletins-admin__upload {
    background: rgba(255, 255, 255, 0.03);
    border-color: var(--dm-border, #2f4449);
}

[data-theme="dark"] .registro-boletim {
    border-color: var(--dm-border, #2f4449);
}

[data-theme="dark"] .boletins-admin__progress {
    background: rgba(255, 255, 255, 0.08);
}

[data-theme="dark"] .boletins-admin__upload-preview {
    border-color: var(--dm-border, #2f4449);
    background: rgba(255, 255, 255, 0.04);
}

