/* ============================================================
   TecnoCursos — tema claro / escuro global (Lista Digital)
   Ativado via data-theme="light|dark" no <html>
   ============================================================ */

:root,
html[data-theme="light"] {
  color-scheme: light;
  --tc-body-bg: #eef1f5;
  --tc-surface: #ffffff;
  --tc-surface-2: #f8fafc;
  --tc-surface-3: #f1f5f9;
  --tc-text: #1f2937;
  --tc-text-secondary: #4b5563;
  --tc-text-muted: #6b7280;
  --tc-border: #e2e8f0;
  --tc-input-bg: #ffffff;
  --tc-input-border: #ced4da;
  --tc-shadow-theme: 0 6px 20px rgba(15, 23, 42, 0.08);
  --tc-table-stripe: rgba(0, 0, 0, 0.02);
  --tc-link: #15803d;
  --tc-modal-bg: #ffffff;
  --tc-dropdown-bg: #ffffff;
  --tc-accent: #F40009;
  --tc-accent-border: rgba(244, 0, 9, 0.45);
  --tc-accent-ring: 0 0 0 0.2rem rgba(244, 0, 9, 0.15);
}

html[data-theme="dark"] {
  color-scheme: dark;
  --tc-body-bg: #0b0f14;
  --tc-surface: #141a22;
  --tc-surface-2: #1a2230;
  --tc-surface-3: #222c3d;
  --tc-text: #e8edf4;
  --tc-text-secondary: #c5d0de;
  --tc-text-muted: #8b98a8;
  --tc-border: rgba(255, 255, 255, 0.1);
  --tc-input-bg: #1a2230;
  --tc-input-border: rgba(255, 255, 255, 0.14);
  --tc-shadow-theme: 0 8px 28px rgba(0, 0, 0, 0.35);
  --tc-table-stripe: rgba(255, 255, 255, 0.03);
  --tc-link: #4ade80;
  --tc-modal-bg: #1a2230;
  --tc-dropdown-bg: #1a2230;
  --tc-accent: #F40009;
  --tc-accent-border: rgba(244, 0, 9, 0.55);
  --tc-accent-ring: 0 0 0 0.2rem rgba(244, 0, 9, 0.2);
}

/* Base */
html[data-theme="dark"] body,
html[data-theme="dark"] #content,
html[data-theme="dark"] #content-wrapper,
html[data-theme="dark"] .container-fluid,
html[data-theme="dark"] main,
html[data-theme="dark"] main.main-content {
  background-color: var(--tc-body-bg) !important;
  color: var(--tc-text);
}

html[data-theme="dark"] .sticky-footer {
  background-color: var(--tc-surface) !important;
  color: var(--tc-text-muted) !important;
  border-top: 1px solid var(--tc-border);
}

html[data-theme="dark"] footer.mt-auto,
html[data-theme="dark"] footer.mt-auto.bg-white {
  background-color: var(--tc-surface) !important;
  color: var(--tc-text-muted) !important;
  border-top-color: var(--tc-border) !important;
}
html[data-theme="dark"] body.tc-home-page footer.mt-auto,
html[data-theme="dark"] body.tc-home-page footer.mt-auto.bg-white {
  background-color: #000 !important;
  border-top-color: rgba(255, 255, 255, 0.08) !important;
}
html[data-theme="dark"] footer.mt-auto .text-muted {
  color: var(--tc-text-muted) !important;
}

/* Sticky footer — apenas em layouts com body.tc-app-layout (ver tc-layout-critical) */

/* Guest */
html[data-theme="dark"] body.bg-light {
  background-color: var(--tc-body-bg) !important;
  color: var(--tc-text);
}

/* Topbar legado (noapp) */
html[data-theme="dark"] .topbar.navbar-light.bg-white {
  background: linear-gradient(90deg, #141a22, #0d1117) !important;
  border-bottom: 1px solid var(--tc-border);
}
html[data-theme="dark"] .topbar.navbar-light .nav-link {
  color: rgba(255, 255, 255, 0.75) !important;
}
html[data-theme="dark"] .topbar.navbar-light .nav-link:hover {
  color: #fff !important;
}
html[data-theme="dark"] .topbar .text-gray-600 {
  color: rgba(255, 255, 255, 0.85) !important;
}

/* Cards — overflow:hidden evita “quadrados” nos cantos (exceto home) */
body:not(.tc-home-page) .card,
.modal-content {
  overflow: hidden;
}
.home-page .card.card-expanded {
  overflow: visible !important;
}
.card > .card-header:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.card > .card-footer:last-child {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

/* Cards */
html[data-theme="dark"] body:not(.tc-home-page) .card {
  background-color: var(--tc-surface) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-border) !important;
  box-shadow: var(--tc-shadow-theme) !important;
}
html[data-theme="dark"] body:not(.tc-home-page) .card-body {
  background-color: var(--tc-surface) !important;
  color: var(--tc-text);
}
html[data-theme="dark"] body:not(.tc-home-page) .card-footer {
  background-color: var(--tc-surface-2) !important;
  border-top-color: var(--tc-border) !important;
  color: var(--tc-text-muted);
}

html[data-theme="dark"] body:not(.tc-home-page) .card .card-title,
html[data-theme="dark"] body:not(.tc-home-page) .card .card-text {
  color: inherit;
}
html[data-theme="dark"] body:not(.tc-home-page) .card:not(.text-white) .card-title {
  color: var(--tc-text);
}
html[data-theme="dark"] body:not(.tc-home-page) .card:not(.text-white) .card-text,
html[data-theme="dark"] body:not(.tc-home-page) .card .text-muted,
html[data-theme="dark"] body:not(.tc-home-page) .card .card-subtitle {
  color: var(--tc-text-muted) !important;
}

/* Tipografia utilitária SB Admin */
html[data-theme="dark"] .text-gray-800,
html[data-theme="dark"] .text-gray-900,
html[data-theme="dark"] .text-dark,
html[data-theme="dark"] .h1, html[data-theme="dark"] .h2,
html[data-theme="dark"] .h3, html[data-theme="dark"] .h4,
html[data-theme="dark"] .h5, html[data-theme="dark"] .h6 {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .text-gray-600,
html[data-theme="dark"] .text-gray-500,
html[data-theme="dark"] .text-muted,
html[data-theme="dark"] .text-body-secondary,
html[data-theme="dark"] small.text-muted {
  color: var(--tc-text-muted) !important;
}

/* Fundos claros */
html[data-theme="dark"] .bg-white,
html[data-theme="dark"] .bg-light {
  background-color: var(--tc-surface-2) !important;
  color: var(--tc-text);
}
html[data-theme="dark"] .border,
html[data-theme="dark"] .border-top,
html[data-theme="dark"] .border-bottom {
  border-color: var(--tc-border) !important;
}

/* Mega menu */
html[data-theme="dark"] .mega-col-title {
  color: var(--tc-text-muted) !important;
}

/* Formulários */
html[data-theme="dark"] .form-control,
html[data-theme="dark"] .form-select,
html[data-theme="dark"] .input-group-text,
html[data-theme="dark"] textarea.form-control {
  background-color: var(--tc-input-bg) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-input-border) !important;
}
html[data-theme="dark"] .form-control:focus,
html[data-theme="dark"] .form-select:focus {
  background-color: var(--tc-input-bg) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-accent-border) !important;
  box-shadow: var(--tc-accent-ring);
}
html[data-theme="dark"] .form-control::placeholder {
  color: var(--tc-text-muted);
  opacity: 0.85;
}
html[data-theme="dark"] .form-label,
html[data-theme="dark"] label {
  color: var(--tc-text-secondary);
}
html[data-theme="dark"] .form-check-label {
  color: var(--tc-text);
}
html[data-theme="dark"] .form-control[readonly],
html[data-theme="dark"] .form-control:disabled,
html[data-theme="dark"] .form-select:disabled {
  background-color: var(--tc-surface-3) !important;
  color: var(--tc-text-muted) !important;
  opacity: 1;
}

/* Tabelas */
html[data-theme="dark"] .table {
  --bs-table-bg: transparent;
  --bs-table-color: var(--tc-text);
  --bs-table-border-color: var(--tc-border);
  color: var(--tc-text);
}
html[data-theme="dark"] .table > :not(caption) > * > * {
  background-color: transparent;
  color: var(--tc-text);
  border-bottom-color: var(--tc-border);
}
html[data-theme="dark"] .table-light,
html[data-theme="dark"] .table thead,
html[data-theme="dark"] .table thead th {
  background-color: var(--tc-surface-3) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-border) !important;
}
html[data-theme="dark"] .table-hover > tbody > tr:hover > * {
  --bs-table-hover-bg: rgba(255, 255, 255, 0.08) !important;
  --bs-table-accent-bg: rgba(255, 255, 255, 0.08) !important;
  background-color: rgba(255, 255, 255, 0.08) !important;
  color: var(--tc-text);
}
html[data-theme="dark"] .table-striped > tbody > tr:nth-of-type(odd) > * {
  background-color: var(--tc-table-stripe) !important;
}

/* DataTables */
html[data-theme="dark"] .dataTables_wrapper,
html[data-theme="dark"] table.dataTable {
  color: var(--tc-text);
}
html[data-theme="dark"] .dataTables_wrapper .dataTables_length select,
html[data-theme="dark"] .dataTables_wrapper .dataTables_filter input {
  background-color: var(--tc-input-bg);
  color: var(--tc-text);
  border-color: var(--tc-input-border);
}
html[data-theme="dark"] .dataTables_wrapper .dataTables_info,
html[data-theme="dark"] .dataTables_wrapper .dataTables_paginate {
  color: var(--tc-text-muted);
}
html[data-theme="dark"] .page-link {
  background-color: var(--tc-surface-2);
  color: var(--tc-text);
  border-color: var(--tc-border);
}
html[data-theme="dark"] .page-item.active .page-link {
  background-color: #16a34a;
  border-color: #16a34a;
}

/* Dropdowns */
html[data-theme="dark"] .dropdown-menu:not(.tc-topbar-dropdown) {
  background-color: var(--tc-dropdown-bg) !important;
  border-color: var(--tc-border) !important;
  box-shadow: var(--tc-shadow-theme) !important;
}
html[data-theme="dark"] .dropdown-menu:not(.tc-topbar-dropdown) .dropdown-item {
  color: var(--tc-text);
}
html[data-theme="dark"] .dropdown-menu:not(.tc-topbar-dropdown) .dropdown-item:hover,
html[data-theme="dark"] .dropdown-menu:not(.tc-topbar-dropdown) .dropdown-item:focus {
  background-color: var(--tc-surface-3);
  color: #fff;
}
html[data-theme="dark"] .dropdown-menu:not(.tc-topbar-dropdown) .dropdown-header {
  color: var(--tc-text-muted);
}
html[data-theme="dark"] .dropdown-divider {
  border-top-color: var(--tc-border);
}

/* Modais */
html[data-theme="dark"] .modal-content {
  background-color: var(--tc-modal-bg) !important;
  color: var(--tc-text);
  border-color: var(--tc-border) !important;
  background-clip: border-box;
}
html[data-theme="dark"] .modal-header,
html[data-theme="dark"] .modal-footer {
  background-color: var(--tc-modal-bg) !important;
  border-color: var(--tc-border) !important;
}
html[data-theme="dark"] .modal-content .modal-header {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
html[data-theme="dark"] .modal-content .modal-footer {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}
html[data-theme="dark"] .modal-title {
  color: var(--tc-text);
}
html[data-theme="dark"] .btn-close {
  filter: invert(1) grayscale(100%) brightness(200%);
}

/* Listas */
html[data-theme="dark"] .list-group-item {
  background-color: var(--tc-surface);
  color: var(--tc-text);
  border-color: var(--tc-border);
}
html[data-theme="dark"] .list-group-item-action:hover,
html[data-theme="dark"] .list-group-item-action:focus {
  background-color: var(--tc-surface-3);
  color: #fff;
}

/* Alerts */
html[data-theme="dark"] .alert {
  border-color: var(--tc-border);
}
html[data-theme="dark"] .alert-secondary {
  background-color: var(--tc-surface-3);
  color: var(--tc-text);
}

/* Nav tabs / pills no conteúdo */
html[data-theme="dark"] .nav-tabs {
  border-bottom-color: var(--tc-border);
}
html[data-theme="dark"] .nav-tabs .nav-link {
  color: var(--tc-text-muted);
}
html[data-theme="dark"] .nav-tabs .nav-link.active {
  background-color: var(--tc-surface);
  color: var(--tc-text);
  border-color: var(--tc-border) var(--tc-border) var(--tc-surface);
}

/* Select2 */
html[data-theme="dark"] .select2-container--bootstrap-5 .select2-selection {
  background-color: var(--tc-input-bg) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-input-border) !important;
}
html[data-theme="dark"] .select2-container--bootstrap-5 .select2-dropdown {
  background-color: var(--tc-dropdown-bg) !important;
  border-color: var(--tc-border) !important;
}
/* Dropdown Select2 é anexado ao body (fora do .select2-container) */
html[data-theme="dark"] .select2-dropdown {
  background-color: var(--tc-dropdown-bg) !important;
  border-color: var(--tc-border) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .select2-dropdown .select2-search--dropdown {
  background-color: var(--tc-dropdown-bg) !important;
  padding: 6px 8px;
}
html[data-theme="dark"] .select2-dropdown .select2-search__field {
  background-color: var(--tc-input-bg) !important;
  color: var(--tc-text) !important;
  border: 1px solid var(--tc-input-border) !important;
  border-radius: .375rem;
}
html[data-theme="dark"] .select2-dropdown .select2-search__field::placeholder {
  color: var(--tc-text-muted) !important;
  opacity: 1;
}
html[data-theme="dark"] .select2-dropdown .select2-results__option {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .select2-dropdown .select2-results__option--highlighted {
  background-color: rgba(59, 130, 246, .85) !important;
  color: #fff !important;
}
html[data-theme="dark"] .select2-dropdown .select2-results__option--selected {
  background-color: rgba(76, 175, 80, .25) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .select2-dropdown .select2-results__message {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] .select2-container--bootstrap-5 .select2-results__option {
  color: var(--tc-text);
}

/* Links */
html[data-theme="dark"] a:not(.btn):not(.nav-link):not(.dropdown-item):not(.tc-topbar-brand):not(.text-white) {
  color: var(--tc-link);
}
html[data-theme="dark"] .card-overlay a,
html[data-theme="dark"] .card-overlay a:hover {
  color: #fff !important;
}
html[data-theme="dark"] a:not(.btn):not(.nav-link):not(.dropdown-item):not(.text-white):hover {
  color: #86efac;
}

/* Imagens em cards */
html[data-theme="dark"] .card .card-img-top {
  background: var(--tc-surface-3);
}

/* Layout público (check-in / avaliação) */
html[data-theme="dark"] body.layout-public {
  background: linear-gradient(135deg, #0b0f14 0%, #141a22 100%) !important;
}
html[data-theme="light"] body.layout-public {
  background: #f3f4f6;
}

/* Botão flutuante de tema */
.tc-theme-toggle-floating {
  position: fixed;
  left: 1rem;
  bottom: 1rem;
  z-index: 11060;
  width: 44px;
  height: 44px;
  border-radius: 12px;
  border: 1px solid var(--tc-border, rgba(255,255,255,.15));
  background: var(--tc-surface, rgba(20,26,34,.92));
  color: var(--tc-text, #fff);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 24px rgba(0,0,0,.25);
  cursor: pointer;
  transition: transform .18s ease, background .18s ease;
}
.tc-theme-toggle-floating:hover {
  transform: scale(1.05);
}

/* Transição suave ao alternar */
html.tc-theme-transition,
html.tc-theme-transition *,
html.tc-theme-transition *::before,
html.tc-theme-transition *::after {
  transition: background-color .22s ease, color .18s ease, border-color .18s ease, box-shadow .22s ease !important;
}

/* ===== Ver Colaborador — treinamentos, movimentações ===== */

/* Linhas alert-success (CONCLUÍDO) em dark mode */
html[data-theme="dark"] tr.alert-success {
  --bs-alert-bg: #1a3d2e !important;
  --bs-alert-color: #d1fae5 !important;
  --bs-alert-border-color: rgba(40, 167, 69, 0.25) !important;
  background-color: #1a3d2e !important;
  color: #d1fae5 !important;
}
html[data-theme="dark"] tr.alert-success > td {
  --bs-table-bg: transparent !important;
  --bs-table-bg-state: transparent !important;
  --bs-table-bg-type: transparent !important;
  --bs-table-color-state: #d1fae5 !important;
  background-color: transparent !important;
  color: #d1fae5 !important;
  border-bottom-color: rgba(40, 167, 69, 0.2) !important;
}
html[data-theme="dark"] .table-striped > tbody > tr.alert-success:nth-of-type(odd) {
  background-color: #1f4d37 !important;
}
html[data-theme="dark"] .table-striped > tbody > tr.alert-success:nth-of-type(odd) > td {
  --bs-table-bg-state: transparent !important;
  background-color: transparent !important;
}

/* Linhas alert-warning (EM ANDAMENTO) em dark mode */
html[data-theme="dark"] tr.alert-warning {
  --bs-alert-bg: #3d3520 !important;
  --bs-alert-color: #fde68a !important;
  --bs-alert-border-color: rgba(255, 193, 7, 0.25) !important;
  background-color: #3d3520 !important;
  color: #fde68a !important;
}
html[data-theme="dark"] tr.alert-warning > td {
  --bs-table-bg: transparent !important;
  --bs-table-bg-state: transparent !important;
  --bs-table-bg-type: transparent !important;
  --bs-table-color-state: #fde68a !important;
  background-color: transparent !important;
  color: #fde68a !important;
  border-bottom-color: rgba(255, 193, 7, 0.2) !important;
}
html[data-theme="dark"] .table-striped > tbody > tr.alert-warning:nth-of-type(odd) {
  background-color: #4a3f1a !important;
}
html[data-theme="dark"] .table-striped > tbody > tr.alert-warning:nth-of-type(odd) > td {
  --bs-table-bg-state: transparent !important;
  background-color: transparent !important;
}

/* Linha de dados do colaborador (.btn-user.btn-success) */
html[data-theme="dark"] tr.btn-user.btn-success {
  background-color: #14532d !important;
  color: #d1fae5 !important;
  border-color: rgba(40, 167, 69, 0.3) !important;
}
html[data-theme="dark"] tr.btn-user.btn-success > td {
  background-color: transparent !important;
  color: #d1fae5 !important;
}

/* DataTables v2 — controles */
html[data-theme="dark"] div.dt-container .dt-length,
html[data-theme="dark"] div.dt-container .dt-search,
html[data-theme="dark"] div.dt-container .dt-info,
html[data-theme="dark"] div.dt-container .dt-paging {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] div.dt-container .dt-length label,
html[data-theme="dark"] div.dt-container .dt-search label {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] div.dt-container select.dt-input,
html[data-theme="dark"] div.dt-container input.dt-input {
  background-color: var(--tc-input-bg) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-input-border) !important;
}
html[data-theme="dark"] div.dt-container select.dt-input option {
  background-color: #1a2230 !important;
  color: #e8edf4 !important;
}
html[data-theme="dark"] div.dt-container .dt-paging button.dt-paging-button {
  background-color: var(--tc-surface-2) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-border) !important;
}
html[data-theme="dark"] div.dt-container .dt-paging button.dt-paging-button.current {
  background-color: #16a34a !important;
  color: #fff !important;
  border-color: #16a34a !important;
}
html[data-theme="dark"] div.dt-container .dt-paging button.dt-paging-button:hover {
  background-color: var(--tc-surface-3) !important;
  color: #fff !important;
}

/* Checkbox dentro de tabela — manter visível */
html[data-theme="dark"] .table input[type="checkbox"] {
  accent-color: #16a34a;
}

/* Breadcrumb */
html[data-theme="dark"] .breadcrumb {
  background-color: var(--tc-surface) !important;
  border-color: var(--tc-border) !important;
}
html[data-theme="dark"] .breadcrumb-item a {
  color: var(--tc-link) !important;
}
html[data-theme="dark"] .breadcrumb-item.active {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] .breadcrumb-item + .breadcrumb-item::before {
  color: var(--tc-text-muted) !important;
}

/* ===== Suporte / Chamados ===== */
html[data-theme="dark"] .support-page {
  --sp-bg: var(--tc-body-bg);
  --sp-card: var(--tc-surface);
  --sp-border: var(--tc-border);
  --sp-gray: #8b98a8;
  --sp-gray-bg: rgba(139, 152, 168, .12);
}
html[data-theme="dark"] .kpi-number {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .support-tabs {
  background: var(--tc-surface) !important;
  border-color: var(--tc-border) !important;
}
html[data-theme="dark"] .support-tab {
  color: var(--tc-text-muted);
}
html[data-theme="dark"] .support-tab:hover {
  background: var(--tc-surface-3) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .support-card-header {
  border-bottom-color: var(--tc-border) !important;
}
html[data-theme="dark"] .support-card-title {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .support-card .form-label,
html[data-theme="dark"] .support-card label {
  color: var(--tc-text-secondary) !important;
}
html[data-theme="dark"] .support-card .form-control,
html[data-theme="dark"] .support-card .form-select {
  background-color: var(--tc-input-bg) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-input-border) !important;
}
html[data-theme="dark"] .support-card .form-control:focus,
html[data-theme="dark"] .support-card .form-select:focus {
  border-color: var(--sp-hero-from) !important;
  box-shadow: 0 0 0 3px rgba(213, 0, 0, .2) !important;
}
html[data-theme="dark"] .support-card .form-check-label {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] .support-card .select2-container--bootstrap-5 .select2-selection {
  background-color: var(--tc-input-bg) !important;
  border-color: var(--tc-input-border) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .support-card .select2-container--bootstrap-5 .select2-selection--single .select2-selection__rendered {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .support-card .select2-container--bootstrap-5 .select2-selection--single .select2-selection__placeholder {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] .support-card .select2-container--bootstrap-5 .select2-selection--single .select2-selection__clear {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] .faq-question {
  background: var(--tc-surface-2) !important;
  border-color: var(--tc-border) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .faq-question:hover {
  background: var(--tc-surface-3) !important;
}
html[data-theme="dark"] .faq-question:not(.collapsed) {
  background: var(--tc-surface-3) !important;
}
html[data-theme="dark"] .faq-answer {
  background: var(--tc-surface-2) !important;
  color: var(--tc-text-secondary) !important;
  border-color: var(--sp-hero-from) !important;
}
html[data-theme="dark"] .ticket-card {
  background: var(--tc-surface) !important;
  border-color: var(--tc-border) !important;
}
html[data-theme="dark"] .ticket-card:hover {
  border-color: rgba(213, 0, 0, .3) !important;
}
html[data-theme="dark"] .ticket-subject {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .filter-bar .form-control,
html[data-theme="dark"] .filter-bar .form-select {
  background-color: var(--tc-input-bg) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-input-border) !important;
}
html[data-theme="dark"] .modal-content.support-modal .modal-body {
  background: var(--tc-surface) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .modal-content.support-modal .modal-footer {
  background: var(--tc-surface) !important;
  border-top-color: var(--tc-border) !important;
}
html[data-theme="dark"] .modal-detail-item strong {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .modal-nivel-control {
  background: var(--tc-surface-2) !important;
  border-color: var(--tc-border) !important;
}
html[data-theme="dark"] .modal-historico-list {
  background: var(--tc-surface-2) !important;
  border-color: var(--tc-border) !important;
}
html[data-theme="dark"] .chamado-historico-row {
  color: var(--tc-text-secondary) !important;
  border-bottom-color: var(--tc-border) !important;
}
html[data-theme="dark"] .chat-bubble.chat-bubble--other {
  background: var(--tc-surface-3) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .chat-bubble.chat-bubble--other .chat-bubble-header {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] .chat-empty {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] .chat-reply-box {
  border-top-color: var(--tc-border) !important;
}
html[data-theme="dark"] .chat-reply-box textarea {
  background-color: var(--tc-input-bg) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-input-border) !important;
}
html[data-theme="dark"] .chat-reply-box textarea:focus {
  border-color: var(--sp-hero-from) !important;
}
html[data-theme="dark"] .chat-draft-item {
  border-color: var(--tc-border) !important;
  background: var(--tc-surface-2) !important;
}
html[data-theme="dark"] .ticket-nivel {
  background: rgba(99, 102, 241, .15) !important;
  color: #a5b4fc !important;
}
html[data-theme="dark"] .ticket-sla {
  background: rgba(16, 185, 129, .12) !important;
  color: #6ee7b7 !important;
}
html[data-theme="dark"] .ticket-sla--late {
  background: rgba(239, 68, 68, .12) !important;
  color: #fca5a5 !important;
}
html[data-theme="dark"] .sla-admin-detail {
  background: rgba(59, 130, 246, .12) !important;
  color: #93c5fd !important;
  border-color: rgba(59, 130, 246, .25) !important;
}
html[data-theme="dark"] .sla-admin-detail--paused {
  background: rgba(245, 158, 11, .12) !important;
  color: #fcd34d !important;
  border-color: rgba(245, 158, 11, .25) !important;
}
html[data-theme="dark"] .modal-concluido-row {
  background: var(--tc-surface-2) !important;
  border-color: var(--tc-border) !important;
}
html[data-theme="dark"] .modal-concluido-row:hover {
  background: var(--tc-surface-3) !important;
}
html[data-theme="dark"] .modal-concluido-row__subject {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .ticket-pagination-wrap .page-link {
  background-color: var(--tc-surface-2) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-border) !important;
}
html[data-theme="dark"] .ticket-pagination-wrap .page-link:hover {
  background-color: var(--tc-surface-3) !important;
}
html[data-theme="dark"] .chat-interno-check {
  color: #fcd34d !important;
}

/* ===== Tutoriais ===== */
html[data-theme="dark"] .tutoriais-card .card-header {
  background: var(--tc-surface-3) !important;
  border-bottom-color: var(--tc-border) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .tutoriais-sumario .sumario-titulo {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .tutoriais-sumario .sumario-descricao {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] .tutoriais-sumario .sumario-arquivo {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] .tutoriais-sumario li + li {
  border-top-color: var(--tc-border) !important;
}
html[data-theme="dark"] .tutoriais-sumario a:hover {
  background: var(--tc-surface-3) !important;
}
html[data-theme="dark"] .tutoriais-video-descricao {
  color: var(--tc-text-secondary) !important;
}
html[data-theme="dark"] .tutoriais-empty {
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] .tutoriais-pdf-embed {
  background: var(--tc-surface-2) !important;
}

/* ===== Perfil — gerenciador de usuários (/perfil) ===== */
html[data-theme="dark"] .perfil-card {
  background: var(--tc-surface) !important;
  box-shadow: var(--tc-shadow-theme) !important;
  color: var(--tc-text);
}
html[data-theme="dark"] .perfil-header h2 {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .table-perfil {
  --bs-table-bg: transparent;
  --bs-table-color: var(--tc-text);
  --bs-table-border-color: var(--tc-border);
  color: var(--tc-text);
}
html[data-theme="dark"] .table-perfil thead th {
  background: var(--tc-surface-3) !important;
  color: var(--tc-text) !important;
  border-bottom-color: var(--tc-border) !important;
}
html[data-theme="dark"] .table-perfil tbody td,
html[data-theme="dark"] .table-perfil tbody td strong {
  color: var(--tc-text) !important;
  background-color: transparent;
  border-bottom-color: var(--tc-border);
}
html[data-theme="dark"] .table-perfil.table-hover > tbody > tr:hover > * {
  background-color: var(--tc-table-stripe) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .badge-ativo {
  background: #1a3d2e !important;
  color: #4ade80 !important;
}
html[data-theme="dark"] .badge-inativo {
  background: #3d1f24 !important;
  color: #fca5a5 !important;
}
html[data-theme="dark"] .badge-permissao,
html[data-theme="dark"] .table-perfil .badge-permissao[style] {
  background: #1c3550 !important;
  color: #93c5fd !important;
}
html[data-theme="dark"] .info-badge {
  background: var(--tc-surface-3) !important;
  color: var(--tc-text-muted) !important;
}
html[data-theme="dark"] .select-permissao {
  background-color: var(--tc-input-bg) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-input-border) !important;
}
html[data-theme="dark"] .select-permissao option {
  background-color: #1a2230 !important;
  color: #e8edf4 !important;
}
html[data-theme="dark"] #acoesMassa {
  background: #2d1f22 !important;
  border-color: var(--tc-accent) !important;
  color: var(--tc-text);
}
html[data-theme="dark"] .table-perfil .badge.bg-light,
html[data-theme="dark"] .table-perfil .badge.bg-light.text-dark {
  background-color: var(--tc-surface-3) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .perfil-card .border-top {
  border-top-color: var(--tc-border) !important;
}
html[data-theme="dark"] .perfil-card .text-primary {
  color: #60a5fa !important;
}
html[data-theme="dark"] .perfil-card .text-success {
  color: #4ade80 !important;
}
html[data-theme="dark"] .perfil-card .text-danger {
  color: #f87171 !important;
}

/* ── SweetAlert2 — dark mode ── */
html[data-theme="dark"] .swal2-popup {
  background: var(--tc-surface) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .swal2-title {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .swal2-html-container {
  color: var(--tc-text-secondary) !important;
}
html[data-theme="dark"] .swal2-footer {
  color: var(--tc-text-muted) !important;
  border-top-color: var(--tc-border) !important;
}
html[data-theme="dark"] .swal2-close {
  color: var(--tc-text-muted) !important;
}

/* ── Lista digital — painel do instrutor ── */
html[data-theme="dark"] .noshow-card {
  background: var(--tc-surface-2) !important;
  border-color: var(--tc-border) !important;
}
html[data-theme="dark"] .noshow-card .form-check-label,
html[data-theme="dark"] .noshow-card .form-label {
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .noshow-feedback.noshow-success { color: #86efac !important; }
html[data-theme="dark"] .noshow-feedback.noshow-error { color: #fca5a5 !important; }
html[data-theme="dark"] .btn-trash {
  background: rgba(248, 113, 113, 0.18) !important;
  color: #fecaca !important;
}
html[data-theme="dark"] .btn-trash:hover {
  background: rgba(248, 113, 113, 0.32) !important;
}
html[data-theme="dark"] #avaliacao-stats-wrap .border-warning {
  border-color: rgba(255, 193, 7, 0.35) !important;
  background: rgba(255, 193, 7, 0.08) !important;
}
html[data-theme="dark"] .painel-overlay-dialog {
  background: var(--tc-surface) !important;
  color: var(--tc-text) !important;
  border: 1px solid var(--tc-border);
}
html[data-theme="dark"] .painel-overlay-header {
  background: rgba(255, 193, 7, 0.12) !important;
  border-bottom-color: var(--tc-border) !important;
  color: var(--tc-text) !important;
}
html[data-theme="dark"] .painel-overlay-footer {
  border-top-color: var(--tc-border) !important;
}
html[data-theme="dark"] #qrcode,
html[data-theme="dark"] #qrcode-avaliacao,
html[data-theme="dark"] #qrcode-avaliador-instrutor {
  background: #fff !important;
}
html[data-theme="dark"] .swal2-input,
html[data-theme="dark"] .swal2-textarea,
html[data-theme="dark"] .swal2-select {
  background-color: var(--tc-input-bg) !important;
  color: var(--tc-text) !important;
  border-color: var(--tc-input-border) !important;
}
