/* Dark Mode Styles for Voto Certo System */

body.dark-mode {
    background-color: #1a1a1a;
    color: #e0e0e0;
}

/* Main content area */
body.dark-mode .wrapper,
body.dark-mode .content,
body.dark-mode #kt_content {
    background-color: #1a1a1a;
}

/* Container */
body.dark-mode .container {
    background-color: #1a1a1a;
}

/* Background utilities */
body.dark-mode .bg-light {
    background-color: #2a2a2a !important;
}

body.dark-mode .bg-white {
    background-color: #2a2a2a !important;
}

/* Cards */
body.dark-mode .card {
    background-color: #2a2a2a;
    border-color: #3a3a3a !important;
    color: #e0e0e0;
}

body.dark-mode .card-header {
    background-color: #2a2a2a;
    border-bottom-color: #3a3a3a;
}

body.dark-mode .card-body {
    background-color: #2a2a2a;
    color: #e0e0e0;
}

body.dark-mode .card-footer {
    background-color: #2a2a2a;
    border-top-color: #3a3a3a;
}

/* Tables */
body.dark-mode .table {
    color: #e0e0e0;
    background-color: transparent;
    border-color: #3a3a3a;
}

body.dark-mode .table-bordered {
    border-color: #3a3a3a;
}

body.dark-mode .table-bordered th,
body.dark-mode .table-bordered td {
    border-color: #3a3a3a;
}

body.dark-mode .table thead th {
    background-color: #1f1f1f !important;
    border-color: #3a3a3a;
    color: #e0e0e0;
}

body.dark-mode .table thead th:first-child {
    background-color: #1f1f1f !important;
}

body.dark-mode .table tbody tr {
    background-color: #2a2a2a;
    border-color: #3a3a3a;
}

body.dark-mode .table tbody tr:hover {
    background-color: #353535 !important;
}

body.dark-mode .table tbody tr:nth-child(even) {
    background-color: #262626;
}

body.dark-mode .table tbody tr:nth-child(even):hover {
    background-color: #353535 !important;
}

body.dark-mode .table tbody td {
    background-color: inherit;
}

body.dark-mode .table tbody td:first-child {
    background-color: inherit !important;
}

body.dark-mode .table td {
    border-color: #3a3a3a;
    color: #e0e0e0;
    background-color: inherit;
}

body.dark-mode .table th {
    border-color: #3a3a3a;
    color: #e0e0e0;
}

body.dark-mode .table-striped tbody tr:nth-of-type(odd) {
    background-color: #2a2a2a;
}

body.dark-mode .table-striped tbody tr:nth-of-type(even) {
    background-color: #262626;
}

body.dark-mode .table-hover tbody tr:hover {
    background-color: #353535 !important;
    color: #e0e0e0;
}

/* Remove white borders from table wrappers */
body.dark-mode .table-responsive {
    border-color: #3a3a3a !important;
    border: none !important;
}

body.dark-mode .dataTables_wrapper {
    border-color: #3a3a3a !important;
    border: none !important;
}

body.dark-mode .dataTables_wrapper .dataTables_scroll {
    border-color: #3a3a3a !important;
}

body.dark-mode .dataTables_wrapper .dataTables_scrollHead,
body.dark-mode .dataTables_wrapper .dataTables_scrollBody {
    border-color: #3a3a3a !important;
}

body.dark-mode .card .table-responsive {
    border: none !important;
}

/* Remove all possible white borders */
body.dark-mode * {
    border-color: inherit;
}

body.dark-mode .border,
body.dark-mode .border-top,
body.dark-mode .border-bottom,
body.dark-mode .border-left,
body.dark-mode .border-right {
    border-color: #3a3a3a !important;
}

body.dark-mode .border-light {
    border-color: #3a3a3a !important;
}

body.dark-mode .border-white {
    border-color: #3a3a3a !important;
}

/* Forms */
body.dark-mode .form-control {
    background-color: #2a2a2a;
    border-color: #3a3a3a;
    color: #e0e0e0;
}

body.dark-mode .form-control:focus {
    background-color: #2a2a2a;
    border-color: #3699FF;
    color: #e0e0e0;
}

body.dark-mode .form-control:disabled,
body.dark-mode .form-control[readonly] {
    background-color: #1f1f1f;
    border-color: #3a3a3a;
    color: #9a9a9a;
    opacity: 1;
}

body.dark-mode .form-control::placeholder {
    color: #757575;
}

body.dark-mode label {
    color: #e0e0e0;
}

body.dark-mode .form-group label {
    color: #e0e0e0;
}

/* Select */
body.dark-mode select.form-control {
    background-color: #2a2a2a;
    color: #e0e0e0;
}

body.dark-mode select.form-control option {
    background-color: #2a2a2a;
    color: #e0e0e0;
}

body.dark-mode select {
    background-color: #2a2a2a !important;
    color: #e0e0e0 !important;
    border-color: #3a3a3a !important;
}

/* Select2 */
body.dark-mode .select2-container--default .select2-selection--single {
    background-color: #2a2a2a !important;
    border-color: #3a3a3a !important;
    color: #e0e0e0 !important;
}

body.dark-mode .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #e0e0e0 !important;
}

body.dark-mode .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #757575 !important;
}

body.dark-mode .select2-dropdown {
    background-color: #2a2a2a !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .select2-container--default .select2-results__option {
    background-color: #2a2a2a !important;
    color: #e0e0e0 !important;
}

body.dark-mode .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: #3699FF !important;
    color: #ffffff !important;
}

body.dark-mode .select2-container--default .select2-results__option[aria-selected=true] {
    background-color: #353535 !important;
}

body.dark-mode .select2-container--default .select2-search--dropdown .select2-search__field {
    background-color: #2a2a2a !important;
    border-color: #3a3a3a !important;
    color: #e0e0e0 !important;
}

body.dark-mode .select2-container--default .select2-selection--multiple {
    background-color: #2a2a2a !important;
    border-color: #3a3a3a !important;
}

body.dark-mode .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: #3a3a3a !important;
    border-color: #4a4a4a !important;
    color: #e0e0e0 !important;
}

body.dark-mode .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
    color: #e0e0e0 !important;
}

/* Input group */
body.dark-mode .input-group-text {
    background-color: #2a2a2a;
    border-color: #3a3a3a;
    color: #e0e0e0;
}

/* Modals */
body.dark-mode .modal-content {
    background-color: #2a2a2a;
    color: #e0e0e0;
}

body.dark-mode .modal-header {
    background-color: #2a2a2a;
    border-bottom-color: #3a3a3a;
}

body.dark-mode .modal-body {
    background-color: #2a2a2a;
}

body.dark-mode .modal-footer {
    background-color: #2a2a2a;
    border-top-color: #3a3a3a;
}

body.dark-mode .modal-title {
    color: #e0e0e0;
}

body.dark-mode .close {
    color: #e0e0e0;
}

/* Dropdown menu */
body.dark-mode .dropdown-menu {
    background-color: #2a2a2a;
    border-color: #3a3a3a;
}

body.dark-mode .dropdown-item {
    color: #e0e0e0;
}
body.dark-mode .navi-text {
    color: #888888 !important;
}
body.dark-mode .custom-file-input {
    background: #333333 !important;
    color: #e0e0e0 !important;
}

body.dark-mode .dropdown-item:hover {
    background-color: #333333;
    color: #e0e0e0;
}

body.dark-mode .navi-link {
    color: #e0e0e0;
}

body.dark-mode .navi-link:hover {
    background-color: #333333;
}

/* Subheader */
body.dark-mode .subheader {
    background-color: #1a1a1a;
}

body.dark-mode .subheader .text-dark {
    color: #e0e0e0 !important;
}

/* Footer */
body.dark-mode .footer {
    background-color: #1a1a1a;
    border-top: 1px solid #3a3a3a;
}

body.dark-mode .footer .text-dark {
    color: #e0e0e0 !important;
}

body.dark-mode .footer .text-muted {
    color: #9a9a9a !important;
}

/* Aside/Sidebar */
body.dark-mode .aside {
    background-color: #1a1a1a;
}

body.dark-mode .aside-secondary {
    background-color: #1a1a1a;
    border-right: 1px solid #3a3a3a;
}

body.dark-mode .aside .nav-link {
    color: #e0e0e0;
}

body.dark-mode .aside .nav-link:hover {
    background-color: #333333;
}

/* Text colors */
body.dark-mode .text-dark {
    color: #e0e0e0 !important;
}

body.dark-mode .text-muted {
    color: #9a9a9a !important;
}

body.dark-mode h1,
body.dark-mode h2,
body.dark-mode h3,
body.dark-mode h4,
body.dark-mode h5,
body.dark-mode h6 {
    color: #e0e0e0;
}

/* Buttons - preserve primary color but adjust for dark mode */
body.dark-mode .btn-light {
    background-color: #3a3a3a;
    border-color: #4a4a4a;
    color: #e0e0e0;
}

body.dark-mode .btn-light:hover {
    background-color: #4a4a4a;
    border-color: #5a5a5a;
}

body.dark-mode .btn-secondary {
    background-color: #4a4a4a;
    border-color: #5a5a5a;
    color: #e0e0e0;
}

body.dark-mode .btn-secondary:hover {
    background-color: #5a5a5a;
    border-color: #6a6a6a;
    color: #ffffff;
}

body.dark-mode .btn-secondary:focus,
body.dark-mode .btn-secondary:active {
    background-color: #5a5a5a;
    border-color: #6a6a6a;
    color: #ffffff;
}

/* Tabs */
body.dark-mode .nav-tabs {
    border-bottom-color: #3a3a3a;
}

body.dark-mode .nav-tabs .nav-link {
    color: #e0e0e0;
}

body.dark-mode .nav-tabs .nav-link:hover {
    border-color: #3a3a3a;
}

body.dark-mode .nav-tabs .nav-link.active {
    background-color: #2a2a2a;
    border-color: #3a3a3a #3a3a3a #2a2a2a;
    color: #3699FF;
}

body.dark-mode .tab-content {
    background-color: #2a2a2a;
}

/* Alerts */
body.dark-mode .alert {
    background-color: #2a2a2a;
    border-color: #3a3a3a;
    color: #e0e0e0;
}

/* DataTables */
body.dark-mode .dataTables_wrapper {
    color: #e0e0e0;
}

body.dark-mode .dataTables_wrapper .dataTables_filter input {
    background-color: #2a2a2a;
    border-color: #3a3a3a;
    color: #e0e0e0;
}

body.dark-mode .dataTables_wrapper .dataTables_length select {
    background-color: #2a2a2a;
    border-color: #3a3a3a;
    color: #e0e0e0;
}

body.dark-mode .dataTables_wrapper .dataTables_info {
    color: #9a9a9a;
}

body.dark-mode .dataTables_wrapper .dataTables_paginate .paginate_button {
    background-color: #2a2a2a;
    border-color: #3a3a3a;
    color: #e0e0e0 !important;
}

body.dark-mode .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background-color: #353535 !important;
    border-color: #3a3a3a !important;
    color: #e0e0e0 !important;
}

body.dark-mode .dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background-color: #3699FF !important;
    border-color: #3699FF !important;
    color: #ffffff !important;
}

body.dark-mode .dataTables_wrapper .dataTables_paginate .paginate_button.disabled {
    color: #5a5a5a !important;
}

body.dark-mode table.dataTable tbody tr {
    background-color: #2a2a2a;
}

body.dark-mode table.dataTable tbody tr:nth-child(even) {
    background-color: #262626;
}

body.dark-mode table.dataTable tbody tr:hover {
    background-color: #353535 !important;
}

body.dark-mode table.dataTable.stripe tbody tr.odd,
body.dark-mode table.dataTable.display tbody tr.odd {
    background-color: #2a2a2a;
}

body.dark-mode table.dataTable.stripe tbody tr.even,
body.dark-mode table.dataTable.display tbody tr.even {
    background-color: #262626;
}

body.dark-mode table.dataTable.hover tbody tr:hover,
body.dark-mode table.dataTable.display tbody tr:hover {
    background-color: #353535 !important;
}

/* DataTables specific classes - remove white borders */
body.dark-mode table.dataTable.no-footer {
    border-bottom: 1px solid #3a3a3a !important;
}

body.dark-mode table.dataTable.dtr-inline {
    border-color: #3a3a3a !important;
}

body.dark-mode table.display {
    border-color: #3a3a3a !important;
}

body.dark-mode table.display tbody td {
    border-color: #3a3a3a !important;
}

body.dark-mode table.display tbody th {
    border-color: #3a3a3a !important;
}

body.dark-mode .dataTables_scrollHead table {
    border-color: #3a3a3a !important;
}

body.dark-mode .dataTables_scrollBody table {
    border-color: #3a3a3a !important;
}

/* DataTables sorting columns */
body.dark-mode table.dataTable thead .sorting,
body.dark-mode table.dataTable thead .sorting_asc,
body.dark-mode table.dataTable thead .sorting_desc {
    background-color: #1f1f1f !important;
}

body.dark-mode table.dataTable tbody td.sorting_1 {
    background-color: inherit !important;
}

body.dark-mode table.dataTable tbody td.sorting_2 {
    background-color: inherit !important;
}

body.dark-mode table.dataTable tbody td.sorting_3 {
    background-color: inherit !important;
}

body.dark-mode table.dataTable.stripe tbody tr.odd td.sorting_1,
body.dark-mode table.dataTable.display tbody tr.odd td.sorting_1 {
    background-color: #2a2a2a !important;
}

body.dark-mode table.dataTable.stripe tbody tr.even td.sorting_1,
body.dark-mode table.dataTable.display tbody tr.even td.sorting_1 {
    background-color: #262626 !important;
}

/* Progress bars */
body.dark-mode .progress {
    background-color: #2a2a2a;
}

/* Badges */
body.dark-mode .badge-light {
    background-color: #3a3a3a;
}

/* Alerts */
body.dark-mode .alert-success {
    background-color: #1e4620;
    border-color: #2d5f2e;
    color: #b8e6ba;
}

body.dark-mode .alert-success .text-success {
    color: #b8e6ba !important;
    color: #e0e0e0;
}

/* Lists */
body.dark-mode .list-group-item {
    background-color: #2a2a2a;
    border-color: #3a3a3a;
    color: #e0e0e0;
}

body.dark-mode .list-group-item:hover {
    background-color: #333333;
}

/* Pagination */
body.dark-mode .pagination .page-link {
    background-color: #2a2a2a;
    border-color: #3a3a3a;
    color: #e0e0e0;
}

body.dark-mode .pagination .page-link:hover {
    background-color: #333333;
    border-color: #3a3a3a;
}

body.dark-mode .pagination .page-item.active .page-link {
    background-color: #3699FF;
    border-color: #3699FF;
}

/* Breadcrumb */
body.dark-mode .breadcrumb {
    background-color: #2a2a2a;
}

body.dark-mode .breadcrumb-item {
    color: #e0e0e0;
}

body.dark-mode .breadcrumb-item.active {
    color: #9a9a9a;
}

/* Specific component overrides */
body.dark-mode .symbol {
    background-color: #3a3a3a;
}

body.dark-mode .separator {
    border-bottom-color: #3a3a3a;
}

/* SweetAlert2 */
body.dark-mode .swal2-popup {
    background-color: #2a2a2a;
    color: #e0e0e0;
}

body.dark-mode .swal2-title {
    color: #e0e0e0;
}

body.dark-mode .swal2-content {
    color: #e0e0e0;
}

/* Code blocks */
body.dark-mode pre {
    background-color: #1a1a1a;
    border-color: #3a3a3a;
    color: #e0e0e0;
}

body.dark-mode code {
    background-color: #1a1a1a;
    color: #e0e0e0;
}
