/* Dark mode variables */
:root {
    --bg-primary: #ffffff;
    --text-primary: #333333;
    --border-color: #dee2e6;
    --nav-bg: #212529;
    --nav-text: rgba(255,255,255,.55);
    --table-header-bg: #f8f9fa;
    --input-bg: #ffffff;
    --input-text: #495057;
    --card-bg: #ffffff;
    --table-row-hover: rgba(0,0,0,.075);
    --table-row-odd: rgba(0,0,0,.05);
}

[data-theme="dark"] {
    --bg-primary: #121212;
    --text-primary: #ffffff;
    --border-color: #404040;
    --nav-bg: #1a1a1a;
    --nav-text: rgba(255,255,255,.8);
    --table-header-bg: #2d2d2d;
    --input-bg: #2d2d2d;
    --input-text: #ffffff;
    --card-bg: #1e1e1e;
    --table-row-hover: rgba(255, 255, 0, 0.15);
    --table-row-odd: rgba(255,255,255,.05);
    --table-border: #404040;
}

/* Dark mode styles */
[data-theme="dark"] body {
    background-color: var(--bg-primary);
    color: var(--text-primary);
}

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

[data-theme="dark"] .navbar-dark .navbar-nav .nav-link {
    color: var(--nav-text);
}

[data-theme="dark"] .table th {
    background-color: var(--table-header-bg);
    color: var(--text-primary);
    font-weight: 600;
    vertical-align: bottom;
    border-bottom: 2px solid var(--border-color);
    padding: .75rem;
    border-color: var(--border-color);
}

[data-theme="dark"] .table td,
[data-theme="dark"] .table tbody td {
    padding: .75rem;
    vertical-align: middle;
    border-color: var(--border-color);
    color: #ffffff !important;
    background-color: var(--card-bg);
}

[data-theme="dark"] .form-control {
    background-color: var(--input-bg);
    color: var(--input-text);
    border-color: var(--border-color);
}

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

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

/* Dropdown styles - konsolide edildi ve optimize edildi */
[data-theme="dark"] .dropdown-menu {
    background-color: #1a1a1a !important;
    border-color: var(--border-color);
    color: #ffffff;
}

/* Dropdown öğeleri için temel stiller */
[data-theme="dark"] .dropdown-item {
    color: #ffffff;
}

[data-theme="dark"] .dropdown-item:hover {
    background-color: #2d2d2d;
    color: #ffffff;
}

/* Dropdown link elementleri için düzenlemeler */
[data-theme="dark"] a.dropdown-item,
[data-theme="dark"] .dropdown-item a {
    color: #ffffff !important;
    text-decoration: none;
}

/* Dropdown link hover efektleri */
[data-theme="dark"] a.dropdown-item:hover,
[data-theme="dark"] a.dropdown-item:focus,
[data-theme="dark"] .dropdown-item a:hover,
[data-theme="dark"] .dropdown-item a:focus {
    color: #ffd700 !important; /* Sarı renk */
    background-color: #2d2d2d !important;
}

/* Tablo dropdown işlemler menüsü için özel stiller - Ultra spesifik */
[data-theme="dark"] body .table .dropdown .dropdown-menu {
    background-color: #1a1a1a !important;
    border-color: #404040 !important;
    color: #ffffff !important;
}

/* Tablo işlemler menüsündeki öğelerin normal durumu */
[data-theme="dark"] body .table .dropdown .dropdown-menu .dropdown-item {
    color: #ffffff !important;
    background-color: transparent !important;
}

/* Tablo işlemler menüsündeki hover durumu - sarı renk */
[data-theme="dark"] body .table .dropdown .dropdown-menu .dropdown-item:hover,
[data-theme="dark"] body .table .dropdown .dropdown-menu .dropdown-item:focus {
    color: #ffd700 !important; /* Sarı renk */
    background-color: #2d2d2d !important;
    text-decoration: none;
}

/* Düzenle ve Sil butonları için özel düzenleme */
[data-theme="dark"] body .table .dropdown .dropdown-menu .dropdown-item i.fa-edit,
[data-theme="dark"] body .table .dropdown .dropdown-menu .dropdown-item i.fa-trash {
    color: #ffffff !important;
}

/* Düzenle ve Sil butonları hover efekti */
[data-theme="dark"] body .table .dropdown .dropdown-menu .dropdown-item:hover i.fa-edit,
[data-theme="dark"] body .table .dropdown .dropdown-menu .dropdown-item:hover i.fa-trash,
[data-theme="dark"] body .table .dropdown .dropdown-menu .dropdown-item:focus i.fa-edit,
[data-theme="dark"] body .table .dropdown .dropdown-menu .dropdown-item:focus i.fa-trash {
    color: #ffd700 !important; /* Sarı renk */
}

/* Accordion styles */
[data-theme="dark"] .accordion-item {
    background-color: var(--card-bg);
    border-color: var(--border-color);
}

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

[data-theme="dark"] .accordion-button:not(.collapsed) {
    background-color: var(--table-header-bg);
    color: var(--text-primary);
}

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

/* Search/Filter styles */
[data-theme="dark"] .form-select {
    background-color: var(--input-bg);
    color: var(--input-text);
    border-color: var(--border-color);
}

[data-theme="dark"] .search-filter {
    background-color: var(--input-bg);
    color: var(--input-text);
    border-color: var(--border-color);
}

/* Table styles enhancement */
[data-theme="dark"] .table {
    background-color: var(--card-bg);
    color: #ffffff;
    border-color: var(--table-border);
}

[data-theme="dark"] .table tbody tr {
    background-color: var(--card-bg);
    color: #ffffff;
    transition: background-color 0.2s ease;
}

[data-theme="dark"] .table tbody tr:nth-of-type(odd) {
    background-color: var(--table-row-odd);
    color: #ffffff;
}

[data-theme="dark"] .table tbody tr:hover {
    background-color: var(--table-row-hover) !important;
    color: #000000 !important;
}

[data-theme="dark"] .table td,
[data-theme="dark"] .table th {
    border-color: var(--border-color);
    color: #ffffff !important;
}

[data-theme="dark"] .table-bordered > :not(caption) > * {
    border-width: 1px 0;
}

[data-theme="dark"] .table-bordered > :not(caption) > * > * {
    border-width: 0 1px;
    border-color: var(--table-border);
}

[data-theme="dark"] .table > :not(caption) > * > * {
    background-color: var(--card-bg);
}

[data-theme="dark"] .table-striped > tbody > tr:nth-of-type(odd),
[data-theme="dark"] .table-hover > tbody > tr:nth-of-type(odd) {
    background-color: var(--table-row-odd);
}

[data-theme="dark"] .table-striped > tbody > tr:nth-of-type(odd):hover,
[data-theme="dark"] .table-hover > tbody > tr:nth-of-type(odd):hover {
    background-color: var(--table-row-hover) !important;
}

[data-theme="dark"] .table-hover tbody tr:hover {
    background-color: var(--table-row-hover) !important;
    color: #000000 !important;
}

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

[data-theme="dark"] .dataTables_length,
[data-theme="dark"] .dataTables_filter,
[data-theme="dark"] .dataTables_info,
[data-theme="dark"] .dataTables_paginate {
    color: var(--text-primary) !important;
}

[data-theme="dark"] .table-bordered {
    border-color: var(--border-color);
}

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

[data-theme="dark"] .table-dark th,
[data-theme="dark"] .table-dark td {
    border-color: var(--border-color);
}

/* Style adjustments for specific table types */
[data-theme="dark"] .table-primary,
[data-theme="dark"] .table-secondary,
[data-theme="dark"] .table-success,
[data-theme="dark"] .table-info,
[data-theme="dark"] .table-warning,
[data-theme="dark"] .table-danger {
    color: var(--text-primary);
    border-color: var(--border-color);
}

/* Theme toggle button */
.theme-toggle {
    background: none;
    border: none;
    padding: 5px;
    margin-left: 10px;
    cursor: pointer;
    color: var(--nav-text);
}

.theme-toggle i {
    font-size: 1.2rem;
}

[data-theme="dark"] table.table {
    color: #ffffff !important;
}

[data-theme="dark"] table.table tbody tr td {
    color: #ffffff !important;
}

[data-theme="dark"] table.table-hover tbody tr:hover td {
    background-color: var(--table-row-hover) !important;
    color: #000000 !important;
}

[data-theme="dark"] table.table-bordered tbody tr td,
[data-theme="dark"] table.table-bordered thead tr th {
    border-color: var(--table-border) !important;
}

[data-theme="dark"] #vessels-tab-pane .table,
[data-theme="dark"] #customers-tab-pane .table {
    background-color: var(--card-bg);
    color: #ffffff !important;
}

[data-theme="dark"] #vessels-tab-pane .table td,
[data-theme="dark"] #customers-tab-pane .table td,
[data-theme="dark"] #vessels-tab-pane .table th,
[data-theme="dark"] #customers-tab-pane .table th {
    color: #ffffff !important;
}

[data-theme="dark"] #vessels-tab-pane .table tbody tr:hover,
[data-theme="dark"] #customers-tab-pane .table tbody tr:hover {
    background-color: var(--table-row-hover) !important;
    color: #000000 !important;
}

[data-theme="dark"] #vessels-tab-pane .table tbody tr td a,
[data-theme="dark"] #customers-tab-pane .table tbody tr td a {
    color: #ffffff !important;
    text-decoration: none;
}

[data-theme="dark"] #vessels-tab-pane .table tbody tr:hover td,
[data-theme="dark"] #customers-tab-pane .table tbody tr:hover td,
[data-theme="dark"] #vessels-tab-pane .table tbody tr:hover td a,
[data-theme="dark"] #customers-tab-pane .table tbody tr:hover td a {
    color: #000000 !important;
}

/* Pagination dark mode styles */
[data-theme="dark"] .pagination {
    background-color: transparent;
}

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

[data-theme="dark"] .pagination .page-item.active .page-link {
    background-color: #0d6efd;
    border-color: #0d6efd;
    color: #fff;
}

[data-theme="dark"] .pagination .page-item.disabled .page-link {
    background-color: var(--card-bg);
    border-color: var(--border-color);
    color: #6c757d;
}

[data-theme="dark"] .pagination .page-item:not(.active) .page-link:hover {
    background-color: #2d2d2d;
    border-color: var(--border-color);
    color: var(--text-primary);
}

/* Pagination container dark mode style */
[data-theme="dark"] nav[aria-label] {
    background-color: transparent;
}

/* Vessel Detail sayfasına özel pagination container stilleri */
[data-theme="dark"] .pagination-container {
    background-color: var(--card-bg);
    border-color: var(--border-color);
    border-radius: 5px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

[data-theme="dark"] .pagination-container .entries-per-page {
    color: var(--text-primary);
}

[data-theme="dark"] .pagination-container .entries-per-page select {
    background-color: var(--input-bg);
    color: var(--text-primary);
    border-color: var(--border-color);
}

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

/* Vessel Detail sayfası tablo içindeki özel pagination container stilleri */
[data-theme="dark"] #crewPaginationContainer,
[data-theme="dark"] #servicesPaginationContainer,
[data-theme="dark"] #receiptsPaginationContainer,
[data-theme="dark"] #invoicesPaginationContainer {
    background-color: var(--table-header-bg);
    border-top: 1px solid var(--border-color);
    padding: 10px;
}
