/* =============================================================================
   DARK MODE - ARQUIVO OTIMIZADO
   =============================================================================
   Este arquivo contém os estilos de dark mode para componentes.
   As VARIÁVEIS base estão em variables.css
   ============================================================================= */

/* =============================================================================
   1. VARIÁVEIS COMPLEMENTARES DARK MODE
   ============================================================================= */

html.dark-mode,
body.dark-mode {
    --qk-bg: var(--bg);
    --qk-text: var(--text);
    --qk-surface: var(--surface);
    --qk-surface-2: var(--surface-2);
    --qk-muted: var(--muted);
    --qk-border: var(--border);
    --qk-primary: var(--primary);
    --qk-info: var(--info);
    --qk-success: var(--success);
    --qk-warning: var(--warning);
    --qk-danger: var(--danger);
    --qk-accent: #51cf66;
    --dm-overlay-01: rgba(255,255,255,0.01);
    --dm-overlay-02: rgba(255,255,255,0.02);
    --dm-overlay-03: rgba(255,255,255,0.03);
    --dm-overlay-04: rgba(255,255,255,0.04);
    --dm-overlay-05: rgba(255,255,255,0.05);
    --dm-overlay-06: rgba(255,255,255,0.06);
    --dm-overlay-08: rgba(255,255,255,0.08);
    --dm-overlay-10: rgba(255,255,255,0.1);
    --dm-overlay-12: rgba(255,255,255,0.12);
    --dm-overlay-15: rgba(255,255,255,0.15);

    /* Sombras dark mode */
    --dm-shadow: 0 6px 18px rgba(0,0,0,0.6);
    --dm-shadow-lg: 0 8px 30px rgba(0,0,0,0.6);
    --dm-shadow-card: 0 6px 18px rgba(0,0,0,0.65);

    /* Gradientes */
    --dm-gradient-surface: linear-gradient(180deg, #1b1b1b 0%, #121212 100%);
    --dm-gradient-header: linear-gradient(135deg, var(--dm-overlay-02) 0%, transparent 100%);

    /* Cores específicas dark */
    --dm-link: #9fd7ff;
    --dm-success-soft: #51cf66;
    --dm-danger-soft: #ff6b6b;
    --dm-warning-soft: #ffce57;
    --dm-purple-soft: #b197fc;

    /* Aplica cores base */
    background-color: var(--bg);
    color: var(--text);
}

/* =============================================================================
   2. ÁREA DE CONTEÚDO E FOOTER
   ============================================================================= */

body.dark-mode .content {
    background-color: var(--bg);
    color: var(--text);
}

body.dark-mode .footer,
body.dark-mode footer {
    background-color: var(--bg);
    color: var(--muted);
    border-color: var(--border);
}

body.dark-mode .footer a,
body.dark-mode footer a {
    color: var(--info);
}

/* =============================================================================
   3. CARDS BOOTSTRAP
   ============================================================================= */

body.dark-mode .card:not(.bg-primary):not(.bg-success):not(.bg-warning):not(.bg-danger):not(.bg-info):not(.bg-secondary) {
    background: var(--dm-gradient-surface);
    border-color: var(--dm-overlay-03);
    color: var(--text);
    box-shadow: var(--dm-shadow);
}

body.dark-mode .card.bg-primary,
body.dark-mode .card.bg-success,
body.dark-mode .card.bg-danger,
body.dark-mode .card.bg-info,
body.dark-mode .card.bg-secondary {
    box-shadow: var(--dm-shadow);
    color: #fff;
}

body.dark-mode .card.bg-warning {
    background-color: #ffc107 !important;
    box-shadow: var(--dm-shadow);
    color: #000;
}

body.dark-mode .card.bg-primary *,
body.dark-mode .card.bg-success *,
body.dark-mode .card.bg-danger *,
body.dark-mode .card.bg-info *,
body.dark-mode .card.bg-secondary *,
body.dark-mode .card.bg-warning * {
    color: inherit;
}

body.dark-mode .card-header:not([class*="bg-"]),
body.dark-mode .card-footer:not([class*="bg-"]),
body.dark-mode .card-header.bg-light,
body.dark-mode .card-header.bg-white {
    background: var(--dm-overlay-02) !important;
    color: var(--text);
    border-color: var(--dm-overlay-04);
}

body.dark-mode .card-body,
body.dark-mode .card-body.bg-white {
    background: transparent;
    color: var(--text);
}

/* Backgrounds */
body.dark-mode .bg-light,
body.dark-mode .bg-white,
body.dark-mode .bg-gray,
body.dark-mode .bg-grey {
    background-color: var(--surface) !important;
    color: var(--text);
}

/* Botões outline-secondary */
body.dark-mode .btn-outline-secondary {
    color: var(--text);
    border-color: var(--dm-overlay-08);
    background-color: transparent;
}

body.dark-mode .btn-outline-secondary:hover:not(:disabled) {
    background-color: var(--dm-overlay-04);
    border-color: var(--dm-overlay-10);
    color: var(--text);
}

body.dark-mode .btn-outline-secondary:disabled,
body.dark-mode .btn-outline-secondary.disabled {
    color: var(--muted);
    border-color: var(--dm-overlay-06);
    background-color: var(--dm-overlay-02);
    opacity: 0.6;
}

/* Botões outline-success */
body.dark-mode .btn-outline-success {
    color: var(--success);
    border-color: var(--success);
    background-color: transparent;
}

body.dark-mode .btn-outline-success:hover:not(:disabled) {
    background-color: rgba(25, 135, 84, 0.15);
    border-color: var(--success);
    color: var(--success);
}

body.dark-mode .btn-outline-success:focus {
    box-shadow: 0 0 0 0.2rem rgba(25, 135, 84, 0.25);
}

/* Ícones dentro de botões outline herdam a cor */
body.dark-mode .btn-outline-success i,
body.dark-mode .btn-outline-success .bi {
    color: inherit;
}

body.dark-mode .btn-outline-secondary i,
body.dark-mode .btn-outline-secondary .bi {
    color: inherit;
}

/* Botão Clear */
body.dark-mode .btn-clear {
    color: var(--text);
    background-color: transparent;
    border: 1px solid var(--dm-overlay-08);
}

body.dark-mode .btn-clear:hover:not(:disabled) {
    background-color: var(--dm-overlay-04);
    border-color: var(--dm-overlay-10);
    color: var(--text);
}

/* =============================================================================
   4. FORMULÁRIOS
   ============================================================================= */

body.dark-mode .form-label,
body.dark-mode label {
    color: var(--text);
}

body.dark-mode .form-control,
body.dark-mode .form-select,
body.dark-mode input[type="date"],
body.dark-mode input[type="text"],
body.dark-mode input[type="number"],
body.dark-mode input[type="email"],
body.dark-mode input[type="password"],
body.dark-mode textarea,
body.dark-mode select {
    background: var(--dm-overlay-02);
    color: var(--text);
    border: 1px solid var(--dm-overlay-06);
    box-shadow: none;
}

body.dark-mode .form-control:focus,
body.dark-mode .form-select:focus {
    background: var(--dm-overlay-04);
    border-color: rgba(81,207,102,0.3);
    box-shadow: 0 0 0 2px rgba(81,207,102,0.1);
}

body.dark-mode input::placeholder,
body.dark-mode textarea::placeholder {
    color: #888;
}

/* Ícones de calendário nativos do input date */
body.dark-mode input[type="date"]::-webkit-calendar-picker-indicator,
body.dark-mode input[type="datetime-local"]::-webkit-calendar-picker-indicator,
body.dark-mode input[type="time"]::-webkit-calendar-picker-indicator {
    filter: invert(1);
    cursor: pointer;
}

body.dark-mode .form-select option,
body.dark-mode select option {
    background: #121212;
    color: var(--text);
}

/* Checkboxes e Toggles */
body.dark-mode .form-check-input {
    background-color: var(--dm-overlay-10);
    border-color: rgba(255,255,255,0.3);
}

body.dark-mode .form-check-input:checked {
    background-color: #51cf66;
    border-color: #51cf66;
}

body.dark-mode .form-check-input:focus {
    border-color: rgba(81,207,102,0.5);
    box-shadow: 0 0 0 0.2rem rgba(81,207,102,0.25);
}

body.dark-mode .form-check-label {
    color: var(--text);
}

body.dark-mode .input-group-text {
    background: var(--dm-overlay-04);
    color: var(--text);
    border: 1px solid var(--dm-overlay-06);
}

/* =============================================================================
   5. TABELAS
   ============================================================================= */

body.dark-mode table,
body.dark-mode .table {
    color: var(--text);
}

body.dark-mode table thead th,
body.dark-mode .table thead th {
    background: var(--dm-overlay-03);
    color: var(--text);
    border-color: var(--dm-overlay-04);
}

body.dark-mode table tbody td,
body.dark-mode .table tbody td {
    background: transparent;
    color: var(--text);
    border-color: var(--dm-overlay-04);
}

body.dark-mode .table-hover tbody tr:hover {
    background: var(--dm-overlay-03);
    color: var(--text);
}

body.dark-mode tfoot,
body.dark-mode .table-light,
body.dark-mode tfoot td {
    background-color: var(--surface);
    color: var(--text);
    border-color: var(--dm-overlay-04);
}

/* Células de tabela com colspan (mensagens "Nenhum item encontrado") */
body.dark-mode table tbody td[colspan],
body.dark-mode .table tbody td[colspan] {
    background-color: var(--surface);
}

/* =============================================================================
   6. MODAIS
   ============================================================================= */

body.dark-mode .modal-content {
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--dm-overlay-03);
}

body.dark-mode .modal-header {
    background: var(--dm-gradient-header);
    color: var(--text);
    border-color: var(--dm-overlay-04);
}

body.dark-mode .modal-body {
    background: transparent;
    color: var(--text);
}

body.dark-mode .modal-footer {
    background: var(--surface-2);
    border-color: var(--dm-overlay-04);
}

body.dark-mode .modal-backdrop {
    background-color: rgba(0, 0, 0, 0.8);
}

/* =============================================================================
   7. ALERTAS
   ============================================================================= */

body.dark-mode .alert {
    border-color: var(--border);
}

body.dark-mode .alert-info {
    background-color: #142f41;
    color: #b8d4f0;
}

body.dark-mode .alert-success {
    background-color: #143a28;
    color: #b8f0d4;
}

body.dark-mode .alert-warning {
    background-color: #3b3010;
    color: #f0e6b8;
}

body.dark-mode .alert-danger {
    background-color: #3a1010;
    color: #f0b8b8;
}

body.dark-mode .toast {
    background-color: var(--surface);
    border-color: var(--border);
    color: var(--text);
}

body.dark-mode .toast-header {
    background-color: var(--surface-2);
    color: var(--text);
}

/* =============================================================================
   8. BADGES
   ============================================================================= */

body.dark-mode .badge {
    background: var(--dm-overlay-04);
    color: var(--text);
}

body.dark-mode .badge.bg-primary { background: rgba(13,110,253,0.12); color: #dbe9ff; }
body.dark-mode .badge.bg-success { background: rgba(25,135,84,0.12); color: #bff3c8; }
body.dark-mode .badge.bg-warning { background: rgba(255,193,7,0.12); color: #ffe8a8; }
body.dark-mode .badge.bg-danger { background: rgba(220,53,69,0.12); color: #ffd6d8; }
body.dark-mode .badge.bg-info { background: rgba(13,202,240,0.12); color: #d1f5fc; }
body.dark-mode .badge.bg-secondary,
body.dark-mode .badge.bg-light { background: var(--dm-overlay-06); color: var(--text); }

/* =============================================================================
   9. DROPDOWNS
   ============================================================================= */

body.dark-mode .dropdown-menu,
body.dark-mode .dropdown-menu.show {
    background: #000;
    color: var(--text);
    border: 1px solid var(--dm-overlay-06);
    box-shadow: var(--dm-shadow-lg);
}

body.dark-mode .dropdown-menu .dropdown-item {
    color: var(--text);
}

body.dark-mode .dropdown-menu .dropdown-item:hover,
body.dark-mode .dropdown-menu .dropdown-item:focus {
    background: var(--dm-overlay-04);
    color: var(--text);
}

body.dark-mode .dropdown-menu .dropdown-item.disabled {
    color: var(--muted);
}

body.dark-mode .dropdown-menu .dropdown-divider {
    border-top: 1px solid var(--dm-overlay-06);
}

/* =============================================================================
   10. NAVEGAÇÃO E TABS
   ============================================================================= */

body.dark-mode .nav-tabs .nav-link {
    color: var(--muted);
    background: transparent;
    border: none;
}

body.dark-mode .nav-tabs .nav-link.active {
    color: #51cf66;
    background: var(--dm-overlay-02);
    border-bottom: 2px solid rgba(81,207,102,0.5);
}

body.dark-mode .nav-tabs .nav-link:hover {
    color: var(--text);
}

/* =============================================================================
   11. ACCORDION
   ============================================================================= */

body.dark-mode .accordion-item {
    background-color: var(--surface-2);
    color: var(--text);
    border-color: var(--border);
}

body.dark-mode .accordion-button {
    background-color: var(--surface);
    color: var(--text);
}

body.dark-mode .accordion-button:not(.collapsed) {
    background-color: var(--surface-2);
    color: var(--text);
}

body.dark-mode .accordion-button.bg-success-subtle {
    background-color: rgba(var(--gi-success-rgb), 0.1);
    color: #51cf66;
}

body.dark-mode .accordion-body {
    background-color: var(--surface);
    border-top: 1px solid var(--dm-overlay-06);
}

/* =============================================================================
   12. TOP BAR E SIDEBAR
   ============================================================================= */

body.dark-mode .top-bar {
    background-color: var(--surface);
    border-bottom: 1px solid var(--border);
    color: var(--text);
}

body.dark-mode .sidebar a.nav-link,
body.dark-mode .sidebar .nav-link,
body.dark-mode .sidebar .logo-container a {
    color: inherit;
}

/* =============================================================================
   13. TEXTO E UTILITÁRIOS
   ============================================================================= */

body.dark-mode .text-dark { color: var(--text) !important; }
body.dark-mode .text-muted { color: var(--muted) !important; }

body.dark-mode a { color: var(--dm-link); }
body.dark-mode a.nav-link,
body.dark-mode .sidebar a { color: inherit; }

body.dark-mode i { color: var(--text); }
body.dark-mode i.text-success { color: var(--success); }
body.dark-mode i.text-info { color: var(--info); }
body.dark-mode i.text-warning { color: var(--warning); }
body.dark-mode i.text-danger { color: var(--danger); }
body.dark-mode i.text-primary { color: var(--primary); }

/* =============================================================================
   14. BOOTSTRAP TABLE PLUGIN
   ============================================================================= */

body.dark-mode .bootstrap-table .fixed-table-container,
body.dark-mode .bootstrap-table .table {
    background: transparent;
    color: var(--text);
}

body.dark-mode .bootstrap-table .fixed-table-toolbar,
body.dark-mode .fixed-table-toolbar {
    background: var(--dm-overlay-02);
    border-bottom: 1px solid var(--dm-overlay-04);
    color: var(--text);
}

body.dark-mode .bootstrap-table .fixed-table-pagination,
body.dark-mode .fixed-table-pagination {
    background: var(--dm-overlay-02);
    border-top: 1px solid var(--dm-overlay-04);
    color: var(--text);
}

body.dark-mode .fixed-table-pagination .page-link {
    background: transparent;
    color: var(--text);
    border: 1px solid transparent;
}

body.dark-mode .fixed-table-pagination .page-item.active .page-link {
    background: rgba(81,207,102,0.12);
    color: var(--text);
    border-color: rgba(81,207,102,0.18);
}

body.dark-mode .bootstrap-table .search input {
    background: var(--dm-overlay-02);
    color: var(--text);
    border: 1px solid var(--dm-overlay-06);
}

/* =============================================================================
   15. KANBAN
   ============================================================================= */

body.dark-mode .kanban-header-row {
    background: var(--dm-gradient-header);
    background-color: var(--surface);
    border: 1px solid var(--dm-overlay-06);
    color: var(--text);
    box-shadow: 0 2px 8px rgba(0,0,0,0.6);
}

body.dark-mode .kanban-header h1,
body.dark-mode .kanban-header .large-date {
    color: var(--text);
}

body.dark-mode .kanban-fullscreen-btn,
body.dark-mode .kanban-toggle-btn {
    background: var(--surface);
    border: 1px solid var(--dm-overlay-06);
    color: var(--text);
}

body.dark-mode .kanban-fullscreen-btn:hover,
body.dark-mode .kanban-toggle-btn:hover {
    background: var(--surface-2);
    border-color: var(--dm-overlay-10);
}

body.dark-mode #select-aplicacao,
body.dark-mode #empresa-select,
body.dark-mode .kanban-header .form-select {
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--dm-overlay-06);
}

body.dark-mode .kanban-container { background: transparent; }

body.dark-mode .kanban-board {
    background: linear-gradient(135deg, var(--surface-2) 0%, var(--surface) 100%);
    border: 1px solid var(--dm-overlay-03);
    box-shadow: var(--dm-shadow);
}

body.dark-mode .kanban-list {
    background: var(--dm-gradient-header);
}

body.dark-mode .kanban-card {
    background: linear-gradient(135deg, #191919 0%, #161616 100%);
    color: var(--text);
    border: 1px solid var(--dm-overlay-03);
    box-shadow: var(--dm-shadow-card);
}

body.dark-mode .kanban-drag-handle {
    color: #555;
}

body.dark-mode .kanban-drag-handle:hover {
    color: #888;
    background: rgba(255, 255, 255, 0.05);
}

body.dark-mode .kanban-drag-handle:active {
    color: var(--primary);
    background: rgba(255, 255, 255, 0.08);
}

body.dark-mode .kanban-card .card-body strong,
body.dark-mode .card-title,
body.dark-mode .card-vehicle {
    color: var(--text);
}

body.dark-mode .card-os {
    color: var(--primary);
}

body.dark-mode .card-client,
body.dark-mode .card-subtitle {
    color: var(--muted);
}

body.dark-mode .kanban-board-count {
    background: linear-gradient(135deg, var(--surface-2) 0%, var(--surface) 100%);
    border: 1px solid var(--dm-overlay-04);
    color: var(--text);
}

body.dark-mode .kanban-board-count-value { color: var(--text); }
body.dark-mode .kanban-board-count-label { color: var(--muted); }

body.dark-mode .kanban-board-footer {
    background: linear-gradient(135deg, var(--surface-2) 0%, var(--surface) 100%);
    border: 1px solid var(--border);
}

/* Kanban Toasts e Loading */
body.dark-mode .kanban-toast {
    background: var(--dm-gradient-surface);
    color: var(--text);
    border: 1px solid var(--dm-overlay-03);
    box-shadow: 0 6px 24px rgba(0,0,0,0.6);
}

body.dark-mode .kanban-toast .kanban-toast-title { color: var(--text); }
body.dark-mode .kanban-toast .kanban-toast-message { color: var(--muted); }

body.dark-mode .kanban-loading-overlay { background: rgba(0,0,0,0.6); }

body.dark-mode .kanban-spinner-wrapper {
    background: var(--surface-2);
    box-shadow: 0 12px 40px rgba(0,0,0,0.65);
    color: var(--text);
}

body.dark-mode .kanban-loading-text { color: var(--text); }

body.dark-mode .kanban-spinner {
    border-top-color: var(--primary);
    border-color: rgba(81,207,102,0.15);
}

body.dark-mode .kanban-page,
body.dark-mode .kanban-header { background: var(--background); }

body.dark-mode #kanban-date-input,
body.dark-mode .kanban-date-input-inline {
    background: var(--surface);
    color: var(--text);
    border-color: var(--dm-overlay-10);
}

body.dark-mode .kanban-date-filter-inline {
    background: var(--dm-overlay-03);
    border-color: var(--dm-overlay-06);
}

/* Kanban Sortable Items */
body.dark-mode .list-group-item {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
}

body.dark-mode .list-group-item:hover {
    background-color: var(--surface-2);
    box-shadow: var(--dm-shadow);
}

body.dark-mode .list-group-item .kanban-handle,
body.dark-mode .list-group-item .kanban-meta {
    color: var(--muted);
}

/* Config Kanban - Lista de Estruturas */
body.dark-mode #listaEstruturas .list-group-item:hover {
    background-color: var(--dm-overlay-05);
}

body.dark-mode #listaEstruturas .sortable-ghost {
    background-color: var(--dm-overlay-03);
}

body.dark-mode #listaEstruturas .sortable-chosen {
    background-color: var(--surface);
}

/* Modal do Quadro Kanban */
body.dark-mode #quadroKanbanModal .card-header.bg-light {
    background-color: var(--dm-overlay-03) !important;
}

body.dark-mode #quadroKanbanModal .card-header .mb-0.fw-bold,
body.dark-mode #quadroKanbanModal .card-header h6 {
    color: var(--text);
}

body.dark-mode #quadroKanbanModal .text-muted.small {
    color: var(--muted) !important;
}

body.dark-mode #quadroKanbanModal .card-body {
    background-color: var(--surface);
}

/* =============================================================================
   16. FLATPICKR (CALENDÁRIO)
   ============================================================================= */

body.dark-mode .flatpickr-calendar,
body.dark-mode .kanban-flatpickr-calendar {
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--dm-overlay-06);
    box-shadow: var(--dm-shadow-lg);
}

body.dark-mode .flatpickr-innerContainer,
body.dark-mode .flatpickr-rContainer,
body.dark-mode .flatpickr-weekdays,
body.dark-mode .flatpickr-days {
    background: var(--surface);
}

body.dark-mode .flatpickr-weekdays,
body.dark-mode .flatpickr-weekday {
    background: transparent;
    color: var(--muted);
}

body.dark-mode .flatpickr-day {
    color: #f7fafc;
    background: transparent;
}

body.dark-mode .flatpickr-day:hover:not(.flatpickr-disabled) {
    background: rgba(81,207,102,0.12);
    color: #fff;
}

body.dark-mode .flatpickr-day.selected,
body.dark-mode .flatpickr-day.startRange,
body.dark-mode .flatpickr-day.endRange {
    background: var(--primary);
    color: #ffffff;
}

body.dark-mode .flatpickr-day.flatpickr-disabled {
    color: rgba(247,250,252,0.45);
    opacity: 0.85;
}

body.dark-mode .flatpickr-months .flatpickr-month,
body.dark-mode .flatpickr-current-month .flatpickr-monthDropdown-months,
body.dark-mode .flatpickr-current-month input.cur-year {
    background: var(--surface);
    color: var(--text);
}

body.dark-mode .flatpickr-prev-month,
body.dark-mode .flatpickr-next-month,
body.dark-mode .flatpickr-prev-month svg,
body.dark-mode .flatpickr-next-month svg {
    color: var(--text);
    fill: var(--text);
}

/* =============================================================================
   17. ORDEM DE SERVIÇO - CONSULTA E DETALHES
   ============================================================================= */

body.dark-mode .tabela-container .card-header.bg-success,
body.dark-mode .tabela-container .card-header.bg-light {
    background: var(--dm-overlay-02);
    color: var(--text);
    border-bottom: 1px solid var(--dm-overlay-04);
}

body.dark-mode .filtro-label { color: var(--text); }

body.dark-mode .filtro-input {
    background: var(--dm-overlay-02);
    color: var(--text);
    border: 1px solid var(--dm-overlay-06);
}

body.dark-mode .mensagem-inicial,
body.dark-mode .loading-container .text-muted {
    color: var(--text);
}

body.dark-mode #total-registros.badge.bg-light,
body.dark-mode #total-itens.badge.bg-light {
    background: var(--dm-overlay-04);
    color: var(--text);
}

/* Section Cards */
body.dark-mode .section-card,
body.dark-mode .resumo-card {
    background: var(--dm-gradient-surface);
    border: 1px solid var(--dm-overlay-03);
    color: var(--text);
    box-shadow: var(--dm-shadow);
}

body.dark-mode .section-header {
    border-bottom: 1px solid var(--dm-overlay-04);
    padding: 0.6rem 1rem;
    background: var(--dm-overlay-01);
}

body.dark-mode .section-header h6 { color: var(--text); }
body.dark-mode .section-header.bg-danger { background: rgba(220,53,69,0.06); }
body.dark-mode .section-header.bg-warning { background: rgba(255,193,7,0.06); }
body.dark-mode .section-header.bg-success { background: rgba(25,135,84,0.06); }

body.dark-mode .info-label { color: var(--muted); }
body.dark-mode .info-value { color: var(--text); }
body.dark-mode .info-value.empty { color: var(--muted); }

/* Status badges */
body.dark-mode .status-badge.bg-info { background: rgba(13,110,253,0.14); color: #e6eef3; }
body.dark-mode .status-badge.bg-warning { background: rgba(255,193,7,0.12); color: #ffe8a8; }
body.dark-mode .status-badge.bg-success { background: rgba(25,135,84,0.12); color: #bff3c8; }
body.dark-mode .status-badge.bg-danger { background: rgba(220,53,69,0.12); color: #ffd6d8; }
body.dark-mode .status-badge.bg-secondary { background: rgba(108,117,125,0.08); color: var(--text); }

/* Tabela items */
body.dark-mode .table-items thead th,
body.dark-mode .table-items tfoot,
body.dark-mode #tabela-itens thead th {
    background: var(--dm-overlay-03);
    color: var(--text);
}

body.dark-mode .table-items tbody td {
    color: var(--text);
    background: transparent;
}

body.dark-mode .table-items.table-hover tbody tr:hover {
    background: var(--dm-overlay-03);
}

body.dark-mode .table-items .text-muted { color: var(--muted); }

/* Totais em tabelas */
body.dark-mode .text-end.fw-bold,
body.dark-mode td.text-end.fw-bold {
    color: var(--text);
}

body.dark-mode .text-end.fw-bold.text-success,
body.dark-mode td.text-end.fw-bold.text-success {
    color: #51cf66;
}

/* Form range (slider combustível) */
body.dark-mode .form-range { background: transparent; }
body.dark-mode .form-range::-webkit-slider-track { background: var(--dm-overlay-10); }
body.dark-mode .form-range::-moz-range-track { background: var(--dm-overlay-10); }
body.dark-mode .form-range::-webkit-slider-thumb { background: #51cf66; border: none; }
body.dark-mode .form-range::-moz-range-thumb { background: #51cf66; border: none; }

body.dark-mode .combustivel-bar { background: var(--dm-overlay-03); }
body.dark-mode .combustivel-level.bg-danger { background: var(--dm-danger-soft); }
body.dark-mode .combustivel-level.bg-warning { background: var(--dm-warning-soft); }
body.dark-mode .combustivel-level.bg-success { background: var(--dm-success-soft); }

body.dark-mode .card-header.bg-success-gradient {
    background: rgba(25,135,84,0.12);
    color: var(--text);
    border-bottom: 1px solid var(--dm-overlay-04);
}

body.dark-mode .card-body .p-3.bg-success-gradient.text-white {
    background: rgba(25,135,84,0.06);
    color: var(--text);
}

/* =============================================================================
   18. UTILITÁRIOS DE ESPAÇAMENTO COM CORES
   ============================================================================= */

body.dark-mode .p-2.bg-light {
    background: var(--dm-overlay-02);
    color: var(--text);
}

body.dark-mode .p-2.bg-danger.bg-opacity-10 { background: rgba(220,53,69,0.04); }
body.dark-mode .p-2.bg-success.bg-opacity-10 { background: rgba(25,135,84,0.04); }
body.dark-mode .border.border-success { border-color: rgba(81,207,102,0.18); }

/* Fullscreen */
body.dark-mode:fullscreen .kanban-header { background-color: var(--surface); }

/* =============================================================================
   19. RESPONSIVE TABLES (rt-*)
   ============================================================================= */

body.dark-mode .rt-container {
    --rt-border-color: var(--dm-overlay-04);
    --rt-header-bg: var(--dm-overlay-03);
    --rt-hover-bg: var(--dm-overlay-05);
    --rt-stripe-bg: var(--dm-overlay-02);
    background: transparent;
}

body.dark-mode .rt-table thead { background: var(--dm-overlay-03); }

body.dark-mode .rt-table thead th {
    color: var(--text);
    background: var(--dm-overlay-03);
    border-color: var(--dm-overlay-04);
}

body.dark-mode .rt-table thead th.rt-sortable:hover { background: var(--dm-overlay-06); }
body.dark-mode .rt-table thead th::after { border-top-color: #888; }

body.dark-mode .rt-table thead th.rt-sort-asc::after,
body.dark-mode .rt-table thead th.rt-sort-desc::after {
    border-top-color: var(--text);
    border-bottom-color: var(--text);
}

body.dark-mode .rt-table tbody tr { border-color: var(--dm-overlay-04); }
body.dark-mode .rt-table tbody tr:hover { background: var(--dm-overlay-05); }
body.dark-mode .rt-table.rt-striped tbody tr:nth-child(even) { background: var(--dm-overlay-02); }
body.dark-mode .rt-table.rt-striped tbody tr:nth-child(even):hover { background: var(--dm-overlay-05); }

body.dark-mode .rt-table tbody td {
    color: var(--text);
    border-color: var(--dm-overlay-04);
}

/* Botões de ação */
body.dark-mode .rt-action-btn { background: #2d2d2d; }
body.dark-mode .rt-action-btn.rt-btn-success { color: var(--dm-success-soft); border-color: var(--dm-success-soft); background: #1a3a28; }
body.dark-mode .rt-action-btn.rt-btn-primary { color: var(--info); border-color: var(--info); background: #1a3a5c; }
body.dark-mode .rt-action-btn.rt-btn-info { color: var(--info); border-color: var(--info); background: #1a3a3f; }
body.dark-mode .rt-action-btn.rt-btn-warning { color: var(--warning); border-color: var(--warning); background: #3a3010; }
body.dark-mode .rt-action-btn.rt-btn-danger { color: var(--dm-danger-soft); border-color: var(--dm-danger-soft); background: #3a1a1a; }

body.dark-mode .rt-action-btn.rt-btn-success:hover { background: #198754; color: #fff; }
body.dark-mode .rt-action-btn.rt-btn-primary:hover { background: #0d6efd; color: #fff; }
body.dark-mode .rt-action-btn.rt-btn-info:hover { background: #0dcaf0; color: #000; }
body.dark-mode .rt-action-btn.rt-btn-warning:hover { background: #fd7e14; color: #fff; }
body.dark-mode .rt-action-btn.rt-btn-danger:hover { background: #dc3545; color: #fff; }

/* Paginação */
body.dark-mode .rt-pagination {
    background: var(--dm-overlay-02);
    border-color: var(--dm-overlay-04);
}

body.dark-mode .rt-pagination-info { color: var(--muted); }

body.dark-mode .rt-pagination-btn {
    background: var(--dm-overlay-04);
    border-color: var(--dm-overlay-08);
    color: var(--text);
}

body.dark-mode .rt-pagination-btn:hover:not(:disabled) {
    background: var(--dm-overlay-08);
    border-color: var(--dm-overlay-12);
}

body.dark-mode .rt-pagination-btn:disabled { opacity: 0.4; }

body.dark-mode .rt-pagination-btn.rt-active {
    background: var(--success);
    border-color: var(--success);
    color: #fff;
}

body.dark-mode .rt-page-size select {
    background: var(--dm-overlay-04);
    border-color: var(--dm-overlay-08);
    color: var(--text);
}

body.dark-mode .rt-page-size span { color: var(--muted); }
body.dark-mode .rt-loading,
body.dark-mode .rt-empty {
    color: var(--muted);
    background-color: var(--surface);
}

body.dark-mode .rt-loading-spinner {
    border-color: var(--dm-overlay-10);
    border-top-color: #51cf66;
}

body.dark-mode .rt-empty i { color: #666; }

/* Status Badges */
body.dark-mode .rt-status-badge.rt-status-aberto { background: rgba(13, 202, 240, 0.15); color: var(--info); }
body.dark-mode .rt-status-badge.rt-status-andamento { background: rgba(253, 126, 20, 0.15); color: var(--dm-warning-soft); }
body.dark-mode .rt-status-badge.rt-status-concluido { background: rgba(25, 135, 84, 0.15); color: var(--dm-success-soft); }
body.dark-mode .rt-status-badge.rt-status-cancelado { background: rgba(220, 53, 69, 0.15); color: var(--dm-danger-soft); }
body.dark-mode .rt-status-badge.rt-status-aguardando { background: rgba(13, 110, 253, 0.15); color: var(--info); }
body.dark-mode .rt-status-badge.rt-status-orcamento { background: rgba(111, 66, 193, 0.15); color: var(--dm-purple-soft); }

/* Mobile Cards */
body.dark-mode .rt-mobile-card {
    background: var(--dm-gradient-surface);
    border-color: var(--dm-overlay-04);
    box-shadow: 0 4px 12px rgba(0,0,0,0.4);
}

body.dark-mode .rt-mobile-card-header {
    background: var(--dm-overlay-03);
    border-color: var(--dm-overlay-04);
}

body.dark-mode .rt-mobile-card-title { color: var(--text); }
body.dark-mode .rt-mobile-card-body { background: transparent; }
body.dark-mode .rt-mobile-card-row { border-color: var(--dm-overlay-04); }
body.dark-mode .rt-mobile-card-label { color: #888; }
body.dark-mode .rt-mobile-card-value { color: var(--text); }

body.dark-mode .rt-mobile-card-actions {
    background: var(--dm-overlay-02);
    border-color: var(--dm-overlay-04);
}

body.dark-mode .rt-mobile-action {
    color: var(--muted);
    border-color: var(--dm-overlay-04);
}

body.dark-mode .rt-mobile-action:active { background: var(--dm-overlay-06); }
/* Mobile actions */
body.dark-mode .rt-mobile-action.rt-action-view,
body.dark-mode .rt-mobile-action.rt-action-edit,
body.dark-mode .rt-mobile-action.rt-action-add,
body.dark-mode .rt-mobile-action.rt-action-delete,
body.dark-mode .rt-mobile-action.rt-action-print { color: #adb5bd; background: #2d2d2d; }

body.dark-mode .rt-wrapper::-webkit-scrollbar-track { background: var(--dm-overlay-02); }
body.dark-mode .rt-wrapper::-webkit-scrollbar-thumb { background: var(--dm-overlay-10); }
body.dark-mode .rt-wrapper::-webkit-scrollbar-thumb:hover { background: var(--dm-overlay-15); }

/* =============================================================================
   20. ORDEM DE SERVIÇO - EDIÇÃO
   ============================================================================= */

body.dark-mode .readonly-tooltip-bs .tooltip-inner { background: #495057; }
body.dark-mode .readonly-tooltip-bs .tooltip-arrow::before { border-top-color: #495057; }
body.dark-mode .readonly-tooltip-bs.bs-tooltip-bottom .tooltip-arrow::before { border-bottom-color: #495057; }
body.dark-mode .campo-readonly-info { background-color: #2b3035 !important; }

body.dark-mode #modalConfirmacaoSaida .modal-content {
    background: var(--surface);
    border: 1px solid var(--dm-overlay-10);
}

body.dark-mode #modalConfirmacaoSaida .modal-header.bg-warning {
    background: #856404;
    color: #fff;
}

body.dark-mode #modalConfirmacaoSaida .modal-body { color: var(--text); }

body.dark-mode #modalConfirmacaoSaida .modal-footer {
    background: #252525;
    border-top: 1px solid var(--dm-overlay-10);
}

body.dark-mode #modalConfirmacaoSaida .modal-footer .btn-success {
    background-color: var(--success);
    border: 1px solid var(--success);
    color: #fff;
}

body.dark-mode #modalConfirmacaoSaida .modal-footer .btn-secondary {
    background-color: #5c5c5c;
    border: 1px solid #5c5c5c;
    color: #fff;
}

body.dark-mode #modalConfirmacaoSaida .modal-footer .btn-outline-danger {
    border: 1px solid var(--danger);
    color: #fff;
}

body.dark-mode #modalConfirmacaoSaida .modal-footer .btn-outline-danger:hover {
    background-color: var(--danger);
    border-color: var(--danger);
    color: #fff;
}

/* =============================================================================
   21. MODAL ITEM MOBILE
   ============================================================================= */

body.dark-mode #modalItemMobile .modal-content {
    background-color: var(--surface);
    color: var(--text);
}

body.dark-mode #modalItemMobile .modal-header { border-bottom-color: var(--border); }
body.dark-mode #modalItemMobile .modal-footer { border-top-color: var(--border); }
body.dark-mode #modalItemMobile .form-label { color: var(--text); }

body.dark-mode #modalItemMobile .form-control,
body.dark-mode #modalItemMobile .input-group-text {
    background-color: #2d2d2d;
    border-color: #444;
    color: var(--text);
}

body.dark-mode #modalItemMobile .form-control:focus {
    background-color: #333;
    border-color: #51cf66;
    box-shadow: 0 0 0 0.2rem rgba(81, 207, 102, 0.25);
}

body.dark-mode #modalItemMobile .form-text { color: #888; }

/* =============================================================================
   22. GRID ITENS
   ============================================================================= */

body.dark-mode .bg-success-gradient { background: linear-gradient(135deg, rgba(var(--gi-success-rgb), 0.85), rgba(var(--gi-success-rgb), 0.95)); }
body.dark-mode .bg-primary-gradient { background: linear-gradient(135deg, rgba(0, 86, 179, 0.85), rgba(0, 123, 255, 0.85)); }
body.dark-mode .bg-danger-gradient { background: linear-gradient(135deg, rgba(189, 33, 48, 0.85), rgba(220, 53, 69, 0.85)); }

body.dark-mode .grid-itens-card {
    background-color: var(--surface);
    border-color: var(--dm-overlay-08);
}

body.dark-mode .grid-itens-card .card-header { border-bottom-color: var(--dm-overlay-10); }
body.dark-mode .grid-itens-card .card-body { background-color: var(--surface); }

/* Barra de Inclusão Rápida */
body.dark-mode [id$="_barraInclusao"] {
    background: linear-gradient(180deg, #252525 0%, var(--surface) 100%);
    border-color: var(--dm-overlay-08);
}

body.dark-mode [id$="_barraInclusao"] .form-label { color: #999; }

body.dark-mode [id$="_barraInclusao"] .form-control,
body.dark-mode [id$="_chipBusca"] {
    background-color: var(--surface-2);
    border-color: var(--dm-overlay-10);
    color: var(--text);
}

body.dark-mode [id$="_barraInclusao"] .form-control::placeholder { color: #666; }

body.dark-mode [id$="_barraInclusao"] .form-control:focus {
    background-color: #303030;
    border-color: rgba(var(--gi-success-rgb), 0.5);
    box-shadow: 0 0 0 2px rgba(var(--gi-success-rgb), 0.1);
}

body.dark-mode [id$="_barraInclusao"] .form-control[readonly] {
    background-color: #222;
    color: #777;
    border-color: var(--dm-overlay-06);
}

body.dark-mode [id$="_barraInclusao"] .btn-outline-secondary {
    color: #888;
    border-color: var(--dm-overlay-10);
    background-color: transparent;
}

body.dark-mode [id$="_barraInclusao"] .btn-outline-secondary:hover {
    background-color: var(--dm-overlay-08);
    border-color: var(--dm-overlay-15);
    color: #bbb;
}

body.dark-mode [id$="_barraInclusao"] .btn-outline-success {
    border-color: rgba(var(--gi-success-rgb), 0.4);
    color: var(--gi-success);
    background-color: transparent;
}

body.dark-mode [id$="_barraInclusao"] .btn-outline-success:hover {
    background-color: rgba(var(--gi-success-rgb), 0.15);
    border-color: rgba(var(--gi-success-rgb), 0.5);
    color: var(--gi-success);
}

body.dark-mode [id$="_inputBusca"].produto-selecionado {
    background-color: rgba(var(--gi-success-rgb), 0.08);
}

body.dark-mode [id$="_inputBusca"].produto-selecionado,
body.dark-mode [id$="_inputBusca"].produto-selecionado + .btn,
body.dark-mode .input-group:has([id$="_inputBusca"].produto-selecionado) [id$="_chipBusca"] {
    border-color: rgba(var(--gi-success-rgb), 0.4);
}

/* Tabela de Itens */
body.dark-mode .grid-itens-table thead th {
    background-color: var(--dm-overlay-03);
    color: var(--text);
    border-color: var(--dm-overlay-06);
}

body.dark-mode .grid-itens-table tbody td {
    color: var(--text);
    border-color: var(--dm-overlay-04);
}

body.dark-mode .grid-itens-table tbody tr:hover { background-color: var(--dm-overlay-03); }

body.dark-mode .grid-itens-table input[readonly] {
    background-color: transparent;
    border-color: transparent;
    color: var(--text);
}

body.dark-mode .grid-itens-table input.form-control {
    background-color: var(--surface-2);
    border-color: var(--dm-overlay-10);
    color: var(--text);
}

body.dark-mode .grid-itens-table input.form-control:focus {
    background-color: #303030;
    border-color: rgba(var(--gi-success-rgb), 0.5);
    box-shadow: 0 0 0 2px rgba(var(--gi-success-rgb), 0.1);
}

/* Cards Mobile Grid Itens */
body.dark-mode .grid-itens-card-mobile {
    background-color: var(--surface);
    border-color: var(--dm-overlay-08);
}

body.dark-mode .grid-itens-card-mobile .item-header { border-bottom-color: var(--dm-overlay-06); }
body.dark-mode .grid-itens-card-mobile .item-id { color: var(--muted); }
body.dark-mode .grid-itens-card-mobile .item-desc { color: var(--text); }
body.dark-mode .grid-itens-card-mobile .item-details { color: var(--muted); }
body.dark-mode .grid-itens-card-mobile .item-acoes { border-top-color: var(--dm-overlay-06); }
body.dark-mode .grid-itens-card-mobile .item-valor-total { color: #51cf66; }

/* Grid Itens Modais */
body.dark-mode [id$="_modalMobile"] .modal-content,
body.dark-mode [id$="_modalExclusao"] .modal-content {
    background-color: var(--surface);
    border-color: var(--dm-overlay-10);
}

body.dark-mode [id$="_modalMobile"] .modal-header,
body.dark-mode [id$="_modalExclusao"] .modal-header { border-bottom-color: var(--dm-overlay-08); }

body.dark-mode [id$="_modalMobile"] .modal-footer,
body.dark-mode [id$="_modalExclusao"] .modal-footer { border-top-color: var(--dm-overlay-08); }

body.dark-mode [id$="_modalMobile"] .form-label { color: var(--text); }

body.dark-mode [id$="_modalMobile"] .form-control,
body.dark-mode [id$="_modalMobile"] .input-group-text {
    background-color: var(--surface-2);
    border-color: var(--dm-overlay-10);
    color: var(--text);
}

body.dark-mode [id$="_modalMobile"] input[readonly] {
    background-color: #222;
    color: #777;
    border-color: var(--dm-overlay-06);
}

body.dark-mode [id$="_modalMobile"] .form-control:focus {
    background-color: #303030;
    border-color: rgba(var(--gi-success-rgb), 0.5);
    box-shadow: 0 0 0 2px rgba(var(--gi-success-rgb), 0.1);
}

body.dark-mode [id$="_modalMobile"] .form-text { color: #666; }

/* Grid Itens Botões */
body.dark-mode .grid-itens-table .btn-outline-warning {
    color: var(--warning);
    border-color: rgba(255, 193, 7, 0.4);
    background-color: transparent;
}

body.dark-mode .grid-itens-table .btn-outline-warning:hover {
    background-color: rgba(255, 193, 7, 0.15);
    border-color: rgba(255, 193, 7, 0.5);
    color: var(--warning);
}

body.dark-mode .grid-itens-table .btn-outline-danger {
    color: var(--dm-danger-soft);
    border-color: rgba(220, 53, 69, 0.4);
    background-color: transparent;
}

body.dark-mode .grid-itens-table .btn-outline-danger:hover {
    background-color: rgba(220, 53, 69, 0.15);
    border-color: rgba(220, 53, 69, 0.5);
    color: var(--dm-danger-soft);
}

body.dark-mode .grid-itens-table .btn-success {
    background-color: var(--success);
    border-color: var(--success);
    color: #fff;
}

body.dark-mode .grid-itens-table .btn-success:hover {
    background-color: var(--gi-success-dark);
    border-color: var(--gi-success-dark);
}

body.dark-mode .grid-itens-table .btn-secondary {
    background-color: #444;
    border-color: #555;
    color: var(--text);
}

body.dark-mode .grid-itens-table .btn-secondary:hover {
    background-color: #555;
    border-color: #666;
}

body.dark-mode .grid-itens-table .btn-outline-secondary {
    color: var(--muted);
    border-color: var(--dm-overlay-15);
    background-color: transparent;
}

body.dark-mode .grid-itens-table .btn-outline-secondary:hover {
    background-color: var(--dm-overlay-08);
    border-color: rgba(255, 255, 255, 0.2);
    color: var(--text);
}

/* Grid Itens Validação */
body.dark-mode .grid-itens-table input.is-valid { border-color: rgba(var(--gi-success-rgb), 0.5); }
body.dark-mode .grid-itens-table input.is-invalid { border-color: rgba(220, 53, 69, 0.5); }

/* =============================================================================
   23. PRODUTO SEARCH MODAL
   ============================================================================= */

body.dark-mode #produtoSearchModal {
    --ps-primary: #51cf66;
    --ps-primary-dark: #40c057;
    --ps-primary-gradient: linear-gradient(135deg, #2f9e44, #51cf66);
    --ps-primary-rgb: 81, 207, 102;
    --ps-hover-bg: rgba(81, 207, 102, 0.1);
    --ps-active-bg: rgba(81, 207, 102, 0.15);
}

body.dark-mode #psPainelLocalizacao > .p-3 { background-color: var(--surface); }
body.dark-mode #psPainelLocalizacao .ps-table-container { border-color: transparent; background: transparent; }

body.dark-mode #produtoSearchModal .ps-tabela > thead > tr > th {
    background-color: #252525;
    color: #aaa;
    border-bottom-color: #444;
}

body.dark-mode #produtoSearchModal .ps-tabela > thead > tr > th.ps-th-ordenavel:hover {
    background-color: rgba(81, 207, 102, 0.15);
}

body.dark-mode #produtoSearchModal .ps-tabela > tbody > tr > td { border-bottom-color: var(--dm-overlay-04); }
body.dark-mode #produtoSearchModal .ps-tabela > tbody > tr:hover { background-color: rgba(81, 207, 102, 0.1); }
body.dark-mode #produtoSearchModal .ps-tabela > tbody > tr.ps-linha-selecionada > td { background-color: rgba(81, 207, 102, 0.2); }

body.dark-mode .ps-paginacao {
    background-color: var(--surface);
    border-top-color: var(--dm-overlay-04);
}

body.dark-mode .ps-filtros-ativos {
    background-color: rgba(81, 207, 102, 0.1);
    border-color: rgba(81, 207, 102, 0.3);
    color: #69db7c;
}

body.dark-mode .ps-busca-limitada {
    background-color: rgba(255, 193, 7, 0.15);
    border-color: rgba(255, 193, 7, 0.4);
    color: var(--warning);
}

body.dark-mode .ps-busca-limitada i { color: var(--warning); }

body.dark-mode .ps-ir-pagina .input-group-text {
    background-color: #2d2d2d;
    border-color: #444;
    color: #aaa;
}

body.dark-mode .ps-historico-dropdown {
    background: #2d2d2d;
    border-color: #444;
}

body.dark-mode .ps-historico-header {
    background: #252525;
    border-color: #444;
    color: #888;
}

body.dark-mode .ps-historico-item:hover { background-color: #3d3d3d; }
body.dark-mode .ps-historico-texto { color: var(--text); }

body.dark-mode .ps-highlight {
    background-color: #664d03;
    color: #fff3cd;
}

body.dark-mode .ps-preco-lista {
    background: var(--surface-2);
    border-color: #444;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.4);
}

body.dark-mode .ps-preco-item { border-bottom-color: #3a3a3a; }
body.dark-mode .ps-preco-tipo { color: #aaa; }
body.dark-mode .ps-estoque-btn { color: var(--text); }
body.dark-mode .ps-estoque-btn:hover { background-color: var(--dm-overlay-08); }
body.dark-mode .ps-estoque-btn:active { background-color: var(--dm-overlay-12); }
body.dark-mode .ps-preco-mobile { color: #51cf66; }
body.dark-mode .ps-estoque-mobile-label { color: #888; }
body.dark-mode .ps-estoque-modal-overlay { background: rgba(0, 0, 0, 0.7); }

body.dark-mode .ps-estoque-modal {
    background: var(--surface-2);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
}

body.dark-mode .ps-estoque-modal-close { color: #888; }
body.dark-mode .ps-estoque-modal-close:hover { background: var(--dm-overlay-10); color: #ccc; }

body.dark-mode .ps-estoque-modal-header {
    background: linear-gradient(to bottom, #333, #2d2d2d);
    color: #ccc;
    border-bottom-color: #444;
}

body.dark-mode .ps-estoque-modal-table th {
    background: #252525;
    color: #888;
}

body.dark-mode .ps-estoque-modal-table td {
    color: var(--text);
    border-bottom-color: #3a3a3a;
}

body.dark-mode .ps-estoque-modal-total td {
    background: #252525;
    border-top-color: #444;
}

body.dark-mode .ps-texto-comprometido { color: var(--dm-danger-soft); }

/* =============================================================================
   24. MODAL SELEÇÃO DE PREÇO
   ============================================================================= */

body.dark-mode #modalSelecaoPreco .modal-content {
    background-color: var(--surface);
    border-color: var(--dm-overlay-10);
}

body.dark-mode #modalSelecaoPreco .modal-header { border-bottom-color: var(--dm-overlay-08); }
body.dark-mode #modalSelecaoPreco .bg-light { background-color: var(--dm-overlay-03); }
body.dark-mode #modalSelecaoPreco .border-bottom { border-bottom-color: var(--dm-overlay-06); }
body.dark-mode #modalSelecaoPreco .text-muted { color: var(--muted); }
body.dark-mode #modalSelecaoPreco strong { color: var(--text); }

body.dark-mode #modalSelecaoPreco .list-group-item {
    background-color: var(--surface);
    border-color: var(--dm-overlay-08);
    color: var(--text);
}

body.dark-mode #modalSelecaoPreco .list-group-item:hover {
    background-color: rgba(var(--gi-success-rgb), 0.1);
}

body.dark-mode #modalSelecaoPreco kbd {
    background-color: #333;
    color: var(--text);
}

/* =============================================================================
   25. NEGOCIAÇÕES/SEGURADORA
   ============================================================================= */

body.dark-mode #tabela-negociacoes thead th {
    background: var(--dm-overlay-03);
    color: var(--text);
    border-bottom: 1px solid var(--dm-overlay-06);
}

body.dark-mode #tabela-negociacoes tbody td {
    color: var(--text);
    background: transparent;
    border-color: var(--dm-overlay-04);
}

body.dark-mode #card-detalhes .card-header.bg-info {
    background: rgba(81,173,210,0.12);
    color: var(--text);
}

body.dark-mode #det-receber { color: #8be08b; }
