/* Enhanced Dark Theme for HZ Application */

[data-theme="dark"] .additional_image_delete {
  background-color: var(--bg-card);
  color: var(--text-primary);
}

[data-theme="dark"] .readonlydates:read-only {
  background-color: var(--bg-secondary);
  color: var(--text-muted);
}

[data-theme="dark"] .hompage-jumbotron {
  background-image: linear-gradient(rgba(0,0,0,0.7), rgba(0,0,0,0.7)), url('/images/background-blur.png');
}

[data-theme="dark"] .hompage-jumbotron h1, 
[data-theme="dark"] .hompage-jumbotron p {
  color: #ffffff;
  text-shadow: 2px 2px 8px rgba(0,0,0,0.8);
}

[data-theme="dark"] .top-nav a {
  color: var(--text-primary) !important;
}

[data-theme="dark"] .content-wrapper a, 
[data-theme="dark"] .content-wrapper a:active, 
[data-theme="dark"] .content-wrapper a:hover, 
[data-theme="dark"] .content-wrapper a:link {
  color: var(--link-color) !important;
}

/* Table sticky improvements */
[data-theme="dark"] .table-sticky {
  background-color: var(--bg-card);
  border: 1px solid var(--border-color);
}

[data-theme="dark"] .table-sticky thead th {
  background-color: var(--bg-secondary);
  color: var(--text-primary);
  border-bottom: 2px solid var(--border-color);
}

[data-theme="dark"] .table-sticky thead th:first-child {
  background-color: var(--bg-secondary);
}

[data-theme="dark"] .table-sticky tbody th {
  background-color: var(--bg-secondary);
  border-right: 1px solid var(--border-color);
  color: var(--text-primary);
}

/* Button improvements */
[data-theme="dark"] button[name="clearSearch"] {
  color: var(--text-secondary);
  background-color: transparent;
  border-color: var(--border-color);
}

[data-theme="dark"] button[name="clearSearch"]:hover {
  background-color: var(--bg-secondary);
  color: var(--text-primary);
}

[data-theme="dark"] button[name="search"] {
  color: #fff;
  background-color: var(--btn-primary-bg);
  border-color: var(--btn-primary-bg);
}

[data-theme="dark"] button[name="search"]:hover {
  background-color: #3ea775;
  border-color: #3ea775;
}

/* Special background adjustments */
[data-theme="dark"] .bg-your-club {
  background-color: rgba(255, 239, 185, 0.15) !important;
  border: 1px solid rgba(255, 239, 185, 0.3);
}

[data-theme="dark"] .result-table {
  color: var(--text-primary);
}

/* Auto refresh button */
[data-theme="dark"] .auto-refresh.active {
  background: var(--btn-primary-bg) !important;
  color: #ffffff !important;
}

/* Scoresheet comments */
[data-theme="dark"] .scoresheet-comment, 
[data-theme="dark"] .scoresheet-comment p {
  color: var(--text-primary) !important;
}

/* Modal improvements */
[data-theme="dark"] .modal .modal-content {
  background-color: var(--bg-card);
  border: 1px solid var(--border-color);
}

[data-theme="dark"] .modal .modal-content .modal-header {
  background-color: var(--bg-secondary);
  border-bottom: 1px solid var(--border-color);
}

[data-theme="dark"] .modal .modal-content .modal-header .modal-title {
  color: var(--text-primary);
}

[data-theme="dark"] .modal .modal-content .modal-header .btn-close {
  filter: invert(1);
}

[data-theme="dark"] .modal .modal-content .modal-body {
  background-color: var(--bg-card);
  color: var(--text-primary);
}

[data-theme="dark"] .modal .modal-content .modal-footer {
  background-color: var(--bg-secondary);
  border-top: 1px solid var(--border-color);
}

/* Table headers and content */
[data-theme="dark"] .table thead th {
  background-color: var(--bg-secondary);
  color: var(--text-primary);
  font-size: 0.8em !important;
}

[data-theme="dark"] #ss-table thead th {
  background-color: var(--bg-secondary);
  color: var(--text-primary);
}

[data-theme="dark"] #ss-table tbody td {
  border-right: 1px solid var(--border-color);
  color: var(--text-primary);
}

/* Loader adjustments */
[data-theme="dark"] .loader {
  background: linear-gradient(to right, var(--text-secondary) 10%, rgba(255, 255, 255, 0) 42%);
}

[data-theme="dark"] .loader:before {
  background: var(--text-secondary);
}

[data-theme="dark"] .loader:after {
  background: var(--bg-primary);
}

/* Legend adjustments */
[data-theme="dark"] .legend {
  background-color: var(--bg-card);
  border: 1px solid var(--border-color);
  color: var(--text-primary);
}

[data-theme="dark"] .legend .has-scoresheets {
  background-color: rgba(249, 246, 160, 0.3);
}

[data-theme="dark"] .legend .has-calculated {
  background-color: rgba(160, 249, 162, 0.3);
}

/* Mini loader */
[data-theme="dark"] .mini-loader {
  border: 2px solid var(--text-secondary);
  border-bottom-color: transparent;
}

/* Fake links */
[data-theme="dark"] .fake-link {
  color: var(--link-color) !important;
}

/* List group striped */
[data-theme="dark"] ul.list-group.list-group-striped li:nth-of-type(odd) {
  background: var(--bg-secondary);
}

[data-theme="dark"] ul.list-group.list-group-striped li:hover {
  background: var(--border-color);
}

/* Activity cards */
[data-theme="dark"] .activity .card-body {
  background-color: var(--bg-card);
}

[data-theme="dark"] .activity .list-group-item {
  background-color: var(--bg-card);
  color: var(--text-primary);
  border-color: var(--border-color);
}

/* Select2 improvements */
[data-theme="dark"] .select2-container--default .select2-selection--single,
[data-theme="dark"] .select2-container--default .select2-selection--multiple {
  background-color: var(--input-bg);
  border-color: var(--input-border);
  color: var(--text-primary);
}

[data-theme="dark"] .select2-container--default .select2-selection__rendered {
  color: var(--text-primary);
}

[data-theme="dark"] .select2-container--default .select2-selection__placeholder {
  color: var(--text-muted);
}

[data-theme="dark"] .select2-container--default .select2-dropdown {
  background-color: var(--bg-card);
  border-color: var(--border-color);
}

[data-theme="dark"] .select2-container--default .select2-results__option {
  background-color: var(--bg-card);
  color: var(--text-primary);
}

[data-theme="dark"] .select2-container--default .select2-results__option:hover,
[data-theme="dark"] .select2-container--default .select2-results__option--highlighted {
  background-color: var(--bg-secondary);
  color: var(--text-primary);
}

[data-theme="dark"] .select2-container--default .select2-results__option--selected {
  background-color: var(--btn-primary-bg);
  color: #ffffff;
}

[data-theme="dark"] .select2-container--default .select2-search__field {
  background-color: var(--input-bg);
  border-color: var(--input-border);
  color: var(--text-primary);
}

/* Bootstrap table improvements */
[data-theme="dark"] .bootstrap-table .fixed-table-container {
  background-color: var(--bg-card);
  border: 1px solid var(--border-color);
}

[data-theme="dark"] .bootstrap-table .fixed-table-header {
  background-color: var(--bg-secondary);
}

[data-theme="dark"] .bootstrap-table .fixed-table-body {
  background-color: var(--bg-card);
}

[data-theme="dark"] .bootstrap-table .fixed-table-toolbar {
  background-color: var(--bg-secondary);
  border-bottom: 1px solid var(--border-color);
  color: var(--text-primary);
}

/* Top bar box adjustments - only apply if no inline style is set */
[data-theme="dark"] .top-bar-box:not([style*="background-color"]) {
  background-color: var(--navbar-bg);
  border-bottom: 1px solid var(--border-color);
}

[data-theme="dark"] .top-bar-box .top-bar {
  background-color: var(--navbar-bg);
}

/* Fix white backgrounds in top-nav-box */
[data-theme="dark"] .top-bar-box .top-nav-box:before {
  background: var(--navbar-bg) !important;
  border-top: 1px solid var(--border-color);
}

[data-theme="dark"] .top-bar-box .top-nav-box {
  background: var(--navbar-bg) !important;
}

/* Fix page-info background */
[data-theme="dark"] .top-bar-box .top-bar > .page-info:before {
  background: var(--navbar-bg) !important;
  border-bottom: 1px solid var(--border-color);
}

/* Fix notification content backgrounds */
[data-theme="dark"] .top-bar-box .notification-content {
  background: var(--card-bg) !important;
  border: 1px solid var(--border-color) !important;
}

[data-theme="dark"] .top-bar-box .notification-content:after {
  border-bottom-color: var(--card-bg) !important;
}

/* Fix user profile dropdown */
[data-theme="dark"] .top-bar-box .user-profile-content {
  background: var(--card-bg) !important;
  border: 1px solid var(--border-color) !important;
}

[data-theme="dark"] .top-bar-box .user-profile-content:after {
  border-bottom-color: var(--card-bg) !important;
}

/* Fix sub-menu backgrounds */
[data-theme="dark"] .top-bar-box .top-nav-box .sub-menu {
  background: var(--card-bg) !important;
  border: 1px solid var(--border-color) !important;
}

[data-theme="dark"] .top-bar-box .top-nav-box .sub-menu ul li {
  background: var(--card-bg) !important;
  border-color: var(--border-color) !important;
}

/* Fix nav-tabs active state */
[data-theme="dark"] .nav-tabs .nav-link.active {
  background-color: var(--card-bg) !important;
  border-color: var(--border-color) var(--border-color) var(--card-bg) !important;
  color: var(--text-primary) !important;
}

/* Fix content-box backgrounds */
[data-theme="dark"] .content-box {
  background: var(--card-bg) !important;
  border: 1px solid var(--border-color) !important;
  color: var(--text-primary) !important;
}

/* Fix table primary backgrounds */
[data-theme="dark"] .table-primary,
[data-theme="dark"] .table-primary > td,
[data-theme="dark"] .table-primary > th {
  background-color: #1e3a5f !important;
  color: var(--text-primary) !important;
}

/* Fix table warning backgrounds - darker yellow for better readability */
[data-theme="dark"] .table-warning,
[data-theme="dark"] .table-warning > td,
[data-theme="dark"] .table-warning > th {
  background-color: #5a4d1a !important; /* Dark brownish-yellow instead of bright yellow */
  color: var(--text-primary) !important;
}

/* Alternative darker warning colors */
[data-theme="dark"] .bg-warning {
  background-color: #5a4d1a !important;
  color: var(--text-primary) !important;
}

[data-theme="dark"] .text-warning {
  color: #ffc107 !important; /* Keep text warning bright for visibility */
}

/* Fix primary buttons with text-light */
[data-theme="dark"] .btn.btn-primary.text-light,
[data-theme="dark"] .btn-primary.text-light {
  color: #ffffff !important;
  background-color: var(--btn-primary-bg) !important;
  border-color: var(--btn-primary-border) !important;
}

/* Fix table bordered tbody td backgrounds */
[data-theme="dark"] .table.table-bordered tbody td {
  background-color: var(--table-bg) !important;
  color: var(--text-primary) !important;
  border-color: var(--border-color) !important;
}

/* Logo adjustments */
[data-theme="dark"] .top-bar-box .top-bar .logo-box .logo {
  filter: brightness(1.2);
}

/* Top navigation */
[data-theme="dark"] .top-nav-box {
  background-color: var(--navbar-bg);
}

[data-theme="dark"] .top-nav li a {
  color: var(--text-primary) !important;
}

[data-theme="dark"] .top-nav li a:hover {
  color: var(--link-color) !important;
}

/* Mobile navigation toggle */
[data-theme="dark"] .mobile-nav-toggle {
  color: var(--text-primary);
  background-color: var(--bg-secondary);
  border: 1px solid var(--border-color);
}

/* User profile dropdown */
[data-theme="dark"] .user-profile .dropdown-menu {
  background-color: var(--bg-card);
  border-color: var(--border-color);
}

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

[data-theme="dark"] .user-profile .dropdown-item:hover {
  background-color: var(--bg-secondary);
  color: var(--link-color);
}

/* Content wrapper */
[data-theme="dark"] .content-wrapper {
  background-color: var(--bg-primary);
  color: var(--text-primary);
}

/* Main layout */
[data-theme="dark"] .main-layout {
  background-color: var(--bg-primary);
}

/* Footer adjustments */
[data-theme="dark"] .row[style*="background-color: #d5d5d5"] {
  background-color: var(--bg-secondary) !important;
}

[data-theme="dark"] .row[style*="background-color: #d5d5d5"] p {
  color: var(--text-primary);
}

[data-theme="dark"] .row[style*="background-color: #d5d5d5"] a {
  color: var(--link-color);
}

[data-theme="dark"] .row[style*="background-color: #d5d5d5"] a:hover {
  color: #3ea775;
}

/* Print styles adjustments */
@media print {
  [data-theme="dark"] * {
    background-color: white !important;
    color: black !important;
  }
}

/* Responsive adjustments */
@media (max-width: 992px) {
  [data-theme="dark"] .theme-toggle {
    top: 10px;
    right: 10px;
    padding: 6px 12px;
    font-size: 12px;
  }
  
  [data-theme="dark"] .theme-toggle .theme-text {
    display: none;
  }
}

/* Focus states */
[data-theme="dark"] *:focus {
  outline: 2px solid var(--link-color);
  outline-offset: 2px;
}

/* Selection styles */
[data-theme="dark"] ::selection {
  background-color: var(--link-color);
  color: #ffffff;
}

[data-theme="dark"] ::-moz-selection {
  background-color: var(--link-color);
  color: #ffffff;
}
