/*----------------------------------
Dark Mode Styles for Highdmin Template
Apply this stylesheet when dark mode is enabled
----------------------------------*/

/* Base dark mode colors - same as main-dark.css */
:root {
    --dark-bg-primary: #1a1d2e;
    --dark-bg-secondary: #22253a;
    --dark-bg-tertiary: #2a2d42;
    --dark-surface: #1e2139;
    --dark-surface-hover: #282b40;
    --dark-border: #3a3d52;
    --dark-text-primary: #e4e6eb;
    --dark-text-secondary: #b8bac4;
    --dark-text-muted: #8a8c98;
}

/* Body and main structure */
.dark-mode body {
    background-color: var(--dark-bg-primary);
    color: var(--dark-text-primary);
}

.dark-mode html {
    background-color: var(--dark-bg-primary);
}

/* Headings */
.dark-mode .h1, .dark-mode .h2, .dark-mode .h3, .dark-mode .h4, .dark-mode .h5, .dark-mode .h6,
.dark-mode h1, .dark-mode h2, .dark-mode h3, .dark-mode h4, .dark-mode h5, .dark-mode h6 {
    color: var(--dark-text-primary);
}

/* Links */
.dark-mode a {
    color: var(--dark-text-primary);
}

.dark-mode a:hover {
    color: #a768f3 !important;
}

/* Side Menu */
.dark-mode .side-menu {
    background: var(--dark-bg-secondary);
    box-shadow: 0 1px 10px 1px rgba(0, 0, 0, .3);
}

.dark-mode .side-menu .topbar-left {
    background-color: var(--dark-bg-secondary);
}

.dark-mode #sidebar-menu > ul > li > a {
    color: var(--dark-text-secondary);
}

.dark-mode #sidebar-menu > ul > li > a:hover,
.dark-mode #sidebar-menu > ul > li > a:focus,
.dark-mode #sidebar-menu > ul > li > a:active,
.dark-mode #sidebar-menu > ul > li > a.active {
    color: #02c0ce;
}

.dark-mode .nav-second-level li a,
.dark-mode .nav-thrid-level li a {
    color: var(--dark-text-secondary);
}

.dark-mode .nav-second-level li a:focus,
.dark-mode .nav-second-level li a:hover,
.dark-mode .nav-thrid-level li a:focus,
.dark-mode .nav-thrid-level li a:hover {
    background-color: var(--dark-surface-hover);
    color: var(--dark-text-primary);
}

.dark-mode .menu-title {
    color: var(--dark-text-muted);
}

.dark-mode .account-copyright {
  color: var(--dark-text-muted);
}

/* User Box */
.dark-mode .user-box h5 a {
    color: var(--dark-text-primary);
}

/* Navbar */
.dark-mode .navbar-custom {
    background-color: var(--dark-surface);
    box-shadow: 0 1px 10px 1px rgba(0, 0, 0, .3);
}

.dark-mode .navbar-custom .nav-link {
    color: var(--dark-text-primary);
}

.dark-mode .button-menu-mobile {
    color: var(--dark-text-primary);
}

/* Content Page */
.dark-mode .content-page {
    background-color: var(--dark-bg-primary);
}

/* Footer */
.dark-mode .footer {
    color: var(--dark-text-secondary);
    background: var(--dark-surface);
    border-top: 1px solid var(--dark-border);
}

/* Notification */
.dark-mode .notification-list .noti-title {
    background-color: var(--dark-surface);
}

.dark-mode .notification-list .notify-item {
    color: var(--dark-text-primary);
}

.dark-mode .notification-list .notify-item .notify-details {
    color: var(--dark-text-primary);
}

.dark-mode .notification-list .notify-item .notify-details small {
    color: var(--dark-text-secondary);
}

/* Cards */
.dark-mode .card-box {
    background-color: var(--dark-surface);
    border: 0px solid var(--dark-border);
}

.dark-mode .card {
    background-color: var(--dark-surface);
    border: 0px solid var(--dark-border);
}

.dark-mode .card-header,
.dark-mode .card-footer {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
}

.dark-mode .card-title,
.dark-mode .header-title {
    color: var(--dark-text-primary);
}

/* Page Title */
.dark-mode .page-title {
    color: var(--dark-text-primary);
}

.dark-mode .page-title-box {
    color: var(--dark-text-primary);
}

.dark-mode .breadcrumb {
    background-color: transparent;
}

.dark-mode .breadcrumb a,
.dark-mode .breadcrumb-item + .breadcrumb-item::before {
    color: var(--dark-text-muted);
}

/* Dropdowns */
.dark-mode .dropdown-menu {
    background-color: var(--dark-surface);
    border-color: var(--dark-border);
    box-shadow: 0 10px 70px 0 rgba(0, 0, 0, .5);
}

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

.dark-mode .dropdown-item:focus,
.dark-mode .dropdown-item:hover,
.dark-mode .dropdown-item.active,
.dark-mode .dropdown-item:active {
    color: var(--dark-text-primary);
    background-color: var(--dark-surface-hover);
}

.dark-mode .app-header .navbar-nav .dropdown-menu {
    background-color: var(--dark-surface);
}

.dark-mode .app-header .navbar-nav .dropdown-menu:after {
    border-bottom: 12px solid var(--dark-surface);
}

.dark-mode .app-header .navbar-nav .dropdown-menu .dropdown-item {
    color: var(--dark-text-primary);
}

.dark-mode .app-header .navbar-nav .dropdown-menu .dropdown-header {
    color: var(--dark-text-secondary);
    border-bottom: 1px solid var(--dark-border);
}

/* Background colors - keep themed colors, adjust neutrals */
.dark-mode .bg-light {
    background-color: var(--dark-surface) !important;
}

.dark-mode .bg-white {
    background-color: var(--dark-surface) !important;
}

.dark-mode .bg-dark {
    background-color: var(--dark-bg-secondary) !important;
}

/* Text colors */
.dark-mode .text-muted {
    color: var(--dark-text-muted) !important;
}

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

/* Buttons - adjust light/secondary buttons */
.dark-mode .btn-light {
    color: var(--dark-text-primary);
    background-color: var(--dark-surface);
    border-color: var(--dark-border);
}

.dark-mode .btn-light:hover,
.dark-mode .btn-light:focus {
    background-color: var(--dark-surface-hover);
    border-color: var(--dark-border);
}

.dark-mode .btn-secondary {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
}

.dark-mode .btn-default {
    background-color: var(--dark-surface);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

/* Badges */
.dark-mode .badge-secondary {
    background-color: var(--dark-bg-tertiary);
}

/* Pagination */
.dark-mode .pagination > li > a,
.dark-mode .pagination > li > span,
.dark-mode .page-link {
    color: var(--dark-text-primary);
    background-color: var(--dark-surface);
    border-color: var(--dark-border);
}

.dark-mode .pagination > li > a:hover,
.dark-mode .pagination > li > span:hover,
.dark-mode .page-link:hover {
    background-color: var(--dark-surface-hover);
    border-color: var(--dark-border);
}

/* List Group */
.dark-mode .list-group-item {
    background-color: var(--dark-surface);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

/* Forms */
.dark-mode label {
    color: var(--dark-text-primary);
}

.dark-mode .form-control {
    color: var(--dark-text-primary);
    border-color: var(--dark-border);
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .form-control:focus {
    color: var(--dark-text-primary);
    border-color: #a768f3;
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .form-control::placeholder {
    color: var(--dark-text-muted);
}

.dark-mode .custom-select {
    color: var(--dark-text-primary);
    border-color: var(--dark-border);
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .input-group-prepend .btn,
.dark-mode .input-group-append .btn {
    border-color: var(--dark-border);
}

/* Checkbox and Radio */
.dark-mode .checkbox label::before {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
}

.dark-mode .radio label::before {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
}

/* Tables */
.dark-mode .table {
    color: var(--dark-text-primary);
}

.dark-mode .table > thead > tr > th,
.dark-mode .table > tbody > tr > th,
.dark-mode .table > tfoot > tr > th,
.dark-mode .table > thead > tr > td,
.dark-mode .table > tbody > tr > td,
.dark-mode .table > tfoot > tr > td {
    border-color: var(--dark-border);
}

.dark-mode .table-striped tbody tr:nth-of-type(odd),
.dark-mode .table-hover tbody tr:hover,
.dark-mode .table-active,
.dark-mode .table-active > td,
.dark-mode .table-active > th {
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .table-bordered {
    border-color: var(--dark-border);
}

/* Data Tables */
.dark-mode table.dataTable {
    color: var(--dark-text-primary);
    background-color: var(--dark-surface);
}

.dark-mode .dataTables_wrapper {
    color: var(--dark-text-primary);
}

.dark-mode .dataTables_wrapper .dataTables_length,
.dark-mode .dataTables_wrapper .dataTables_filter,
.dark-mode .dataTables_wrapper .dataTables_info,
.dark-mode .dataTables_wrapper .dataTables_paginate {
    color: var(--dark-text-primary);
}

.dark-mode .dataTables_wrapper .dataTables_filter input {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

/* Modals */
.dark-mode .modal-content {
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

.dark-mode .modal-header {
    border-bottom: 1px solid var(--dark-border);
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .modal-footer {
    border-top: 1px solid var(--dark-border);
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .modal-header .close,
.dark-mode .close {
    color: var(--dark-text-primary);
}

.dark-mode .modal-backdrop {
    background-color: var(--dark-bg-primary);
}

.dark-mode .modal-demo {
    background-color: var(--dark-surface);
}

.dark-mode .custom-modal-title {
    background-color: var(--dark-bg-secondary);
    color: var(--dark-text-primary);
}

.dark-mode .custom-modal-text {
    color: var(--dark-text-primary);
}

/* Alerts */
.dark-mode .alert-light {
    background-color: var(--dark-surface);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

/* Tooltips & Popovers */
.dark-mode .tooltip .tooltip-inner {
    background-color: var(--dark-bg-secondary);
}

.dark-mode .popover {
    background-color: var(--dark-surface);
    border-color: var(--dark-border);
}

.dark-mode .popover .popover-header {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

.dark-mode .popover-body {
    color: var(--dark-text-primary);
}

/* Progress bars - keep colored ones */
.dark-mode .progress {
    background-color: var(--dark-bg-tertiary);
}

/* Tabs */
.dark-mode .nav-tabs {
    border-bottom: 1px solid var(--dark-border);
}

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

.dark-mode .nav-tabs .nav-item.show .nav-link,
.dark-mode .nav-tabs .nav-link.active {
    color: var(--dark-text-primary);
    background-color: var(--dark-surface);
    border-color: var(--dark-border) var(--dark-border) var(--dark-surface);
}

.dark-mode .navtab-bg {
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .tab-content {
    color: var(--dark-text-primary);
}

/* Widgets */
.dark-mode .inbox-widget .inbox-item {
    border-bottom: 1px solid var(--dark-border);
}

.dark-mode .inbox-widget .inbox-item .inbox-item-author {
    color: var(--dark-text-primary);
}

.dark-mode .inbox-widget .inbox-item .inbox-item-text,
.dark-mode .inbox-widget .inbox-item .inbox-item-date {
    color: var(--dark-text-secondary);
}

/* Timeline */
.dark-mode .timeline:before {
    background-color: var(--dark-border);
}

.dark-mode .timeline .timeline-icon {
    background: var(--dark-border);
}

.dark-mode h3.timeline-title {
    color: var(--dark-text-secondary);
}

.dark-mode .timeline-item .timeline-desk .arrow {
    border-right: 12px solid var(--dark-surface) !important;
}

.dark-mode .timeline-item.alt .timeline-desk .arrow-alt {
    border-left: 12px solid var(--dark-surface) !important;
}

.dark-mode .timeline-desk .panel {
    background: var(--dark-surface);
    border-color: var(--dark-border);
}

.dark-mode .timeline-desk h5 span {
    color: var(--dark-text-secondary);
}

.dark-mode .timeline-desk .notification {
    background: var(--dark-bg-tertiary);
}

/* Email */
.dark-mode .message-list li {
    background-color: var(--dark-surface);
    border-bottom: 1px solid var(--dark-border);
}

.dark-mode .message-list li a {
    color: var(--dark-text-secondary);
}

.dark-mode .message-list li:hover,
.dark-mode .message-list li.active,
.dark-mode .message-list li.selected {
    background: var(--dark-surface-hover);
}

.dark-mode .message-list li.unread a {
    color: var(--dark-text-primary);
}

.dark-mode .message-list .checkbox-wrapper-mail {
    box-shadow: inset 0 0 0 1px var(--dark-border);
}

.dark-mode .message-list .checkbox-wrapper-mail label {
    background: var(--dark-border);
}

.dark-mode .mail-list a {
    color: var(--dark-text-secondary);
}

.dark-mode .reply-box {
    border: 2px solid var(--dark-border);
    background-color: var(--dark-surface);
}

/* Calendar */
.dark-mode .fc-view {
    background-color: var(--dark-surface);
}

.dark-mode .fc-day {
    background: var(--dark-surface);
}

.dark-mode .fc th.fc-widget-header {
    background: var(--dark-bg-tertiary);
    color: var(--dark-text-primary);
}

.dark-mode .fc-unthemed th,
.dark-mode .fc-unthemed td,
.dark-mode .fc-unthemed thead,
.dark-mode .fc-unthemed tbody,
.dark-mode .fc-unthemed .fc-divider,
.dark-mode .fc-unthemed .fc-row,
.dark-mode .fc-unthemed .fc-popover {
    border-color: var(--dark-border);
}

.dark-mode .fc-button {
    background: var(--dark-bg-tertiary);
    color: var(--dark-text-primary);
}

.dark-mode .fc-state-hover {
    background: var(--dark-surface-hover);
}

.dark-mode .fc-state-highlight {
    background: var(--dark-surface-hover);
}

.dark-mode .fc-unthemed .fc-today {
    background: var(--dark-surface);
}

.dark-mode .external-event {
    color: #ffffff;
}

/* Charts */
.dark-mode #flotTip {
    background-color: var(--dark-surface);
    color: var(--dark-text-primary);
}

.dark-mode .legendLabel {
    color: var(--dark-text-secondary);
}

.dark-mode .morris-hover.morris-default-style {
    background: var(--dark-surface);
    color: var(--dark-text-primary);
}

.dark-mode .ct-chart .ct-label {
    fill: var(--dark-text-secondary);
    color: var(--dark-text-secondary);
}

.dark-mode .ct-grid {
    stroke: var(--dark-border);
}

.dark-mode .chartist-tooltip {
    background: var(--dark-bg-secondary);
}

.dark-mode .jqsfield {
    color: var(--dark-text-primary) !important;
}

/* Select2 */
.dark-mode .select2-container--default .select2-selection--single,
.dark-mode .select2-container--default .select2-selection--multiple {
    background-color: var(--dark-bg-tertiary);
    border: 1px solid var(--dark-border);
}

.dark-mode .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--dark-text-primary);
}

.dark-mode .select2-dropdown {
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

.dark-mode .select2-container--default .select2-results__option {
    color: var(--dark-text-primary);
}

.dark-mode .select2-container--default .select2-results__option[aria-selected=true] {
    background-color: var(--dark-surface-hover);
    color: var(--dark-text-primary);
}

.dark-mode .select2-container--default .select2-search--dropdown .select2-search__field {
    background-color: var(--dark-bg-tertiary);
    border: 1px solid var(--dark-border);
    color: var(--dark-text-primary);
}

/* Summernote */
.dark-mode .note-editor.note-frame {
    border: 3px solid var(--dark-border);
}

.dark-mode .note-popover .popover-content,
.dark-mode .card-header.note-toolbar {
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .note-editor.note-frame .note-statusbar {
    background-color: var(--dark-bg-tertiary);
}

/* Datepicker */
.dark-mode .datepicker,
.dark-mode .datepicker-dropdown {
    background: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

.dark-mode .datepicker table tr td,
.dark-mode .datepicker table tr th {
    color: var(--dark-text-primary);
}

.dark-mode .datepicker .datepicker-switch:hover,
.dark-mode .datepicker .next:hover,
.dark-mode .datepicker .prev:hover,
.dark-mode .datepicker tfoot tr th:hover,
.dark-mode .datepicker table tr td.day.focused,
.dark-mode .datepicker table tr td.day:hover {
    background: var(--dark-surface-hover);
}

.dark-mode .datepicker-inline {
    border: 2px solid var(--dark-border);
}

/* Daterange Picker */
.dark-mode .daterangepicker {
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

.dark-mode .daterangepicker .ranges li {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

.dark-mode .daterangepicker select.hourselect,
.dark-mode .daterangepicker select.minuteselect,
.dark-mode .daterangepicker select.secondselect,
.dark-mode .daterangepicker select.ampmselect {
    border: 1px solid var(--dark-border);
    background-color: var(--dark-bg-tertiary);
    color: var(--dark-text-primary);
}

/* Bootstrap Tagsinput */
.dark-mode .bootstrap-tagsinput {
    border: 1px solid var(--dark-border);
    background-color: var(--dark-bg-tertiary);
}

/* Dropzone */
.dark-mode .dropzone {
    border: 2px dashed var(--dark-border);
    background: var(--dark-surface);
    color: var(--dark-text-primary);
}

/* Wizard */
.dark-mode .wizard > .content {
    background: var(--dark-surface);
}

.dark-mode .wizard > .steps {
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .wizard > .steps .disabled a,
.dark-mode .wizard > .steps .disabled a:hover,
.dark-mode .wizard > .steps .disabled a:active {
    background: transparent;
    color: var(--dark-text-primary);
}

.dark-mode .wizard > .content > .body input {
    border-color: var(--dark-border);
    background-color: var(--dark-bg-tertiary);
    color: var(--dark-text-primary);
}

.dark-mode .wizard > .content > .body label.error {
    color: #f1556c;
}

/* Tasks */
.dark-mode .taskList li {
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

.dark-mode .task-placeholder {
    border: 1px dashed var(--dark-border) !important;
    background-color: var(--dark-surface-hover) !important;
}

/* Projects */
.dark-mode .project-box {
    background-color: var(--dark-surface);
}

.dark-mode .project-box h4 {
    color: var(--dark-text-primary);
}

/* File Manager */
.dark-mode .file-man-box {
    border: 1px solid var(--dark-border);
    background-color: var(--dark-surface);
}

.dark-mode .file-man-box .file-download {
    color: var(--dark-text-secondary);
}

.dark-mode .file-man-box .file-download:hover {
    color: var(--dark-text-primary);
}

.dark-mode .file-man-box:hover {
    box-shadow: 0 0 24px 0 rgba(0, 0, 0, .3);
}

/* Search Results */
.dark-mode .search-result-box .tab-content {
    background-color: var(--dark-surface);
}

.dark-mode .search-result-box .search-item {
    border-bottom: 1px solid var(--dark-border);
}

/* Gallery */
.dark-mode .portfolioFilter a {
    color: var(--dark-text-primary);
}

.dark-mode .portfolio-masonry-box .portfolio-masonry-detail h4 {
    color: #ffffff !important;
}

.dark-mode .portfolio-masonry-box .portfolio-masonry-detail p {
    color: #ffffff !important;
}

/* Account Pages */
.dark-mode .account-page-full {
    background-color: var(--dark-surface);
}

.dark-mode .account-page-full .card {
    background-color: var(--dark-surface);
}

/* Pricing */
.dark-mode .price_card {
    background: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

.dark-mode .price-features {
    color: var(--dark-text-secondary);
}

.dark-mode .pricing-wrap {
    background-color: var(--dark-surface);
}

.dark-mode .pr-list {
    color: var(--dark-text-secondary);
}

.dark-mode .pr-per {
    color: var(--dark-text-secondary);
}

/* FAQ */
.dark-mode .question {
    color: var(--dark-text-primary);
}

.dark-mode .answer {
    color: var(--dark-text-secondary);
}

/* Company Card */
.dark-mode .company-card .company-detail {
    color: var(--dark-text-primary);
}

/* Tickets */
.dark-mode .tickets-list a {
    color: var(--dark-text-secondary);
}

/* Search */
.dark-mode .app-search .form-control,
.dark-mode .app-search .form-control:focus {
    border: 1px solid var(--dark-border);
    color: var(--dark-text-primary);
    background: var(--dark-bg-tertiary);
}

.dark-mode .app-search button {
    color: var(--dark-text-secondary);
}

.dark-mode .app-search button:hover {
    color: var(--dark-text-primary);
}

/* Responsive Table */
.dark-mode .table-rep-plugin .btn-default {
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
    color: var(--dark-text-primary);
}

.dark-mode .table-rep-plugin .checkbox-row label::before {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
}

/* Tablesaw */
.dark-mode .tablesaw thead {
    background: var(--dark-bg-tertiary);
}

.dark-mode .tablesaw thead th {
    color: var(--dark-text-primary);
}

.dark-mode .tablesaw td {
    border-top: 1px solid var(--dark-border) !important;
    color: var(--dark-text-primary);
}

.dark-mode .tablesaw-enhanced .tablesaw-bar .btn {
    border: 1px solid var(--dark-border);
    background-color: var(--dark-surface);
    color: var(--dark-text-primary);
}

/* Footable */
.dark-mode .footable-odd {
    background-color: var(--dark-surface);
}

.dark-mode .footable-detail-show {
    background-color: var(--dark-surface-hover);
}

.dark-mode .footable-row-detail {
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .footable-pagination li a {
    color: var(--dark-text-primary);
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

/* Maps */
.dark-mode .gmaps,
.dark-mode .gmaps-panaroma {
    background: var(--dark-bg-tertiary);
}

.dark-mode .jvectormap-tip {
    background: var(--dark-bg-secondary);
}

.dark-mode .mapael .mapTooltip {
    background-color: #02c0ce;
}

/* Icon List Demo */
.dark-mode .icon-list-demo div {
    color: var(--dark-text-primary);
}

.dark-mode .icon-list-demo i {
    color: var(--dark-text-secondary);
}

.dark-mode .icon-list-demo .col-md-4:hover,
.dark-mode .icon-list-demo .col-md-4:hover i {
    color: #02c0ce;
}

/* Social Links */
.dark-mode .social-links li a {
    color: var(--dark-text-secondary);
    border: 2px solid var(--dark-border);
}

.dark-mode .social-links li a:hover {
    color: var(--dark-text-primary);
    border: 2px solid var(--dark-text-primary);
}

/* Ribbons */
.dark-mode .ribbon-box .ribbon {
    color: #ffffff;
}

/* Sweet Alert */
.dark-mode .swal2-modal {
    background-color: var(--dark-surface);
    color: var(--dark-text-primary);
}

.dark-mode .swal2-modal .swal2-title {
    color: var(--dark-text-primary);
}

.dark-mode .swal2-modal .swal2-content {
    color: var(--dark-text-primary);
}

.dark-mode .swal2-modal .swal2-file,
.dark-mode .swal2-modal .swal2-input,
.dark-mode .swal2-modal .swal2-textarea {
    border: 2px solid var(--dark-border);
    background-color: var(--dark-bg-tertiary);
    color: var(--dark-text-primary);
}

.dark-mode .swal2-container.swal2-shown {
    background-color: rgba(26, 29, 46, 0.9);
}

/* Parsley Validation */
.dark-mode .parsley-errors-list {
    color: #f1556c;
}

/* Autocomplete */
.dark-mode .autocomplete-suggestions {
    border: 1px solid var(--dark-border);
    background: var(--dark-surface);
}

.dark-mode .autocomplete-suggestion {
    color: var(--dark-text-primary);
}

.dark-mode .autocomplete-selected {
    background-color: #02c0ce;
    color: #ffffff;
}

.dark-mode .autocomplete-suggestions strong {
    color: var(--dark-text-primary);
}

.dark-mode .autocomplete-group strong {
    color: var(--dark-text-primary);
}

/* Bootstrap Select */
.dark-mode .bootstrap-select > .dropdown-menu > .dropdown-menu {
    background-color: var(--dark-surface);
}

.dark-mode .bootstrap-select > .dropdown-menu > .dropdown-menu li a {
    color: var(--dark-text-primary);
}

.dark-mode .bootstrap-select > .dropdown-menu > .dropdown-menu li a:hover {
    background-color: #02c0ce;
    color: #ffffff;
}

.dark-mode .bootstrap-select.btn-group.no-results {
    background-color: var(--dark-surface);
    color: #f1556c;
}

/* X Editable */
.dark-mode .editable-click,
.dark-mode a.editable-click,
.dark-mode a.editable-click:hover {
    color: #02c0ce;
}

/* Color Picker */
.dark-mode .colorpicker {
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

/* Clock Picker */
.dark-mode .clockpicker-popover {
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

.dark-mode .clockpicker-popover .popover-title {
    background-color: var(--dark-bg-tertiary);
    color: var(--dark-text-primary);
}

/* Time Picker */
.dark-mode .bootstrap-timepicker-widget table td input {
    color: #ffffff;
    background-color: #02c0ce;
}

.dark-mode .bootstrap-timepicker-widget table td a:hover {
    background-color: transparent;
    color: #02c0ce;
}

/* TinyMCE */
.dark-mode .mce-panel {
    border: 1px solid var(--dark-border) !important;
    background-color: var(--dark-bg-tertiary) !important;
}

.dark-mode .mce-menu {
    background-color: var(--dark-surface) !important;
}

.dark-mode .mce-window {
    background-color: var(--dark-surface);
}

.dark-mode .mce-window-head {
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .mce-window-head .mce-title {
    color: var(--dark-text-primary);
}

/* Comment List */
.dark-mode .comment-list .comment-box-item .commnet-item-msg {
    color: var(--dark-text-primary);
}

.dark-mode .comment-list .comment-box-item .commnet-item-user {
    color: var(--dark-text-secondary);
}

/* Transaction List */
.dark-mode .transaction-list li {
    border-bottom: 1px solid var(--dark-border);
    color: var(--dark-text-primary);
}

/* Media */
.dark-mode .media {
    color: var(--dark-text-primary);
}

/* Code */
.dark-mode code {
    color: #02c0ce;
    background-color: var(--dark-bg-tertiary);
}

/* Blockquote */
.dark-mode .blockquote {
    color: var(--dark-text-primary);
    border-left-color: var(--dark-border);
}

/* Wells / Panels */
.dark-mode .well {
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

.dark-mode .panel {
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

.dark-mode .panel-heading {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

.dark-mode .panel-footer {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
}

/* Jumbotron */
.dark-mode .jumbotron {
    background-color: var(--dark-surface);
    color: var(--dark-text-primary);
}

/* List Group */
.dark-mode .list-group-item.active,
.dark-mode .list-group-item.active:focus,
.dark-mode .list-group-item.active:hover {
    background-color: #02c0ce;
    border-color: #02c0ce;
}

/* Notification Widget */
.dark-mode .notification-wrapper {
    background-color: var(--dark-surface);
}

/* Add New Plus */
.dark-mode .add-new-plus {
    color: var(--dark-text-secondary);
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .add-new-plus:hover {
    color: var(--dark-text-primary);
    background-color: var(--dark-surface-hover);
}

/* Profile */
.dark-mode .profile-user-box {
    background-color: var(--dark-surface);
}

/* Count Down */
.dark-mode #count-down .clock-presenter .digit,
.dark-mode #count-down .clock-presenter .note {
    color: var(--dark-text-primary);
}

/* SVG Graphics */
.dark-mode .svg-rocket {
    fill: var(--dark-text-primary);
}

/* Enlarged Sidebar States */
.dark-mode.enlarged #wrapper .left.side-menu #sidebar-menu > ul > li > a:hover,
.dark-mode.enlarged #wrapper .left.side-menu #sidebar-menu > ul > li > a:active,
.dark-mode.enlarged #wrapper .left.side-menu #sidebar-menu > ul > li > a:focus {
    color: var(--dark-text-primary);
    background-color: var(--dark-surface-hover);
}

.dark-mode.enlarged #wrapper .left.side-menu #sidebar-menu ul ul {
    background-color: var(--dark-surface);
}

.dark-mode.enlarged #wrapper .left.side-menu #sidebar-menu ul > li:hover > a {
    color: var(--dark-text-primary);
    background-color: var(--dark-surface-hover);
}

.dark-mode.enlarged #wrapper .left.side-menu #sidebar-menu ul > li:hover > ul {
    background-color: var(--dark-surface);
    box-shadow: 0 0 10px 0 rgba(0, 0, 0, .3);
}

.dark-mode.enlarged #wrapper .left.side-menu #sidebar-menu ul > li:hover > ul a {
    background-color: var(--dark-surface);
    color: var(--dark-text-primary);
}

.dark-mode.enlarged #wrapper .left.side-menu #sidebar-menu ul > li:hover > ul a:hover {
    color: #02c0ce;
}

.dark-mode.enlarged #wrapper .left.side-menu #sidebar-menu ul ul li.active a {
    color: #02c0ce;
}

/* Input Groups */
.dark-mode .input-group-text {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

/* Custom File Input */
.dark-mode .custom-file-label {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

.dark-mode .custom-file-label::after {
    background-color: var(--dark-surface);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

/* Range Inputs */
.dark-mode input[type="range"] {
    background-color: var(--dark-bg-tertiary);
}

/* HR */
.dark-mode hr {
    border-top-color: var(--dark-border);
}

/* Spinner / Loader Backgrounds */
.dark-mode .spinner-border,
.dark-mode .spinner-grow {
    color: var(--dark-text-primary);
}

/* Task Detail */
.dark-mode .task-detail .task-dates li,
.dark-mode .task-detail .task-tags,
.dark-mode .task-detail .assign-team a {
    color: var(--dark-text-primary);
}

.dark-mode .task-detail .files-list .file-box {
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
}

/* Vertical Tabs */
.dark-mode .tabs-vertical-env .tab-content {
    background: var(--dark-surface);
}

.dark-mode .tabs-vertical-env .nav.tabs-vertical li > a {
    color: var(--dark-text-secondary);
}

.dark-mode .tabs-vertical-env .nav.tabs-vertical li > a.active {
    background: #02c0ce;
    color: #ffffff;
}

/* Tabs Bordered */
.dark-mode .tabs-bordered {
    border-bottom: 2px solid var(--dark-border) !important;
}

.dark-mode .tabs-bordered li a,
.dark-mode .tabs-bordered li a:hover,
.dark-mode .tabs-bordered li a:focus {
    color: var(--dark-text-primary);
}

/* Nav Pills */
.dark-mode .nav-pills > li > a {
    color: var(--dark-text-primary);
}

/* Accordion */
.dark-mode .accordion .card {
    background-color: var(--dark-surface);
    border-color: var(--dark-border);
}

.dark-mode .accordion .card-header {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
}

.dark-mode .accordion .card-header a {
    color: var(--dark-text-primary);
}

/* Toast Notifications */
.dark-mode .jq-toast-single {
    background-color: #02c0ce;
    color: #ffffff;
}

.dark-mode .close-jq-toast-single {
    background-color: var(--dark-bg-secondary);
    color: #ffffff;
}

/* Nestable */
.dark-mode .dd {
    background-color: var(--dark-surface);
}

.dark-mode .dd-handle {
    background-color: var(--dark-bg-tertiary);
    border-color: var(--dark-border);
    color: var(--dark-text-primary);
}

.dark-mode .dd-handle:hover {
    background-color: var(--dark-surface-hover);
}

.dark-mode .dd-item > button {
    color: var(--dark-text-primary);
}

/* Sortable */
.dark-mode .sortable-item {
    background-color: var(--dark-surface);
    border: 1px solid var(--dark-border);
    color: var(--dark-text-primary);
}

/* Avatar / User Images */
.dark-mode .avatar {
    border: 2px solid var(--dark-border);
}

/* Stat Cards */
.dark-mode .widget-flat {
    border: 2px solid var(--dark-border);
    background-color: var(--dark-surface);
}

/* Mini Widgets */
.dark-mode .mini-stat {
    background-color: var(--dark-surface);
}

.dark-mode .mini-stat-icon {
    color: var(--dark-text-secondary);
}

/* Empty States */
.dark-mode .empty-state {
    color: var(--dark-text-secondary);
}

/* Loading States */
.dark-mode .loading-state {
    background-color: var(--dark-surface);
    color: var(--dark-text-secondary);
}

/* Skeleton Loaders */
.dark-mode .skeleton {
    background-color: var(--dark-bg-tertiary);
}

.dark-mode .skeleton::after {
    background: linear-gradient(90deg, transparent, var(--dark-surface-hover), transparent);
}

/* Print Styles - Keep Light */
@media print {
    .dark-mode {
        background: #ffffff !important;
        color: #000000 !important;
    }
    
    .dark-mode * {
        background: transparent !important;
        color: #000000 !important;
    }
}

/* Utilities */
.dark-mode .border {
    border-color: var(--dark-border) !important;
}

.dark-mode .border-top {
    border-top-color: var(--dark-border) !important;
}

.dark-mode .border-right {
    border-right-color: var(--dark-border) !important;
}

.dark-mode .border-bottom {
    border-bottom-color: var(--dark-border) !important;
}

.dark-mode .border-left {
    border-left-color: var(--dark-border) !important;
}

/* Shadows - Adjust for dark mode */
.dark-mode .bx-shadow {
    box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.3), 0 1px 0 0 rgba(0, 0, 0, 0.1);
}

.dark-mode .bx-shadow-lg {
    box-shadow: 0 0 24px 0 rgba(0, 0, 0, 0.5), 0 1px 0 0 rgba(0, 0, 0, 0.3);
}

/* Responsive Adjustments */
@media (max-width: 768px) {
    .dark-mode .navbar-custom {
        background-color: var(--dark-surface);
        box-shadow: 0 0 24px 0 rgba(0, 0, 0, .3);
    }
}

@media (max-width: 480px) {
    .dark-mode .side-menu {
        background-color: var(--dark-bg-secondary);
        box-shadow: 0 0 24px 0 rgba(0, 0, 0, .3);
    }
}

/* Additional Form Elements */
.dark-mode .form-check-label {
    color: var(--dark-text-primary);
}

.dark-mode .form-text {
    color: var(--dark-text-secondary);
}

.dark-mode .invalid-feedback {
    color: #f1556c;
}

.dark-mode .valid-feedback {
    color: #0acf97;
}

.dark-mode .was-validated .form-control:invalid,
.dark-mode .form-control.is-invalid {
    border-color: #f1556c;
}

.dark-mode .was-validated .form-control:valid,
.dark-mode .form-control.is-valid {
    border-color: #0acf97;
}

/* Custom Scrollbars */
.dark-mode ::-webkit-scrollbar {
    width: 8px;
    height: 8px;
    background-color: var(--dark-surface);
}

.dark-mode ::-webkit-scrollbar-thumb {
    background-color: var(--dark-bg-tertiary);
    border-radius: 4px;
}

.dark-mode ::-webkit-scrollbar-thumb:hover {
    background-color: var(--dark-border);
}

.dark-mode ::-webkit-scrollbar-track {
    background-color: var(--dark-surface);
}

/* Selection */
.dark-mode ::selection {
    background-color: rgba(167, 104, 243, 0.3);
    color: var(--dark-text-primary);
}

.dark-mode ::-moz-selection {
    background-color: rgba(167, 104, 243, 0.3);
    color: var(--dark-text-primary);
}