/* ═══════════════════════════════════════════
   iskelet6 — Ana Stil Dosyası
   Renk Paleti: Zeytin Yeşili + Bakır
   ═══════════════════════════════════════════ */

/* ─── Renk Paleti Override ─── */

:root,
[data-bs-theme="light"] {
    --bs-primary:       #556B2F;
    --bs-primary-rgb:   85, 107, 47;
    --bs-secondary:     #B87333;
    --bs-secondary-rgb: 184, 115, 51;

    --bs-link-color:           #556B2F;
    --bs-link-hover-color:     #6B8E3D;
    --bs-link-color-rgb:       85, 107, 47;
    --bs-link-hover-color-rgb: 107, 142, 61;

    --app-primary-soft:   #EDF2E6;
    --app-secondary-soft: #F8EEE5;
    --app-primary-hover:  #6B8E3D;
    --app-secondary-hover:#D48A3F;
}

[data-bs-theme="dark"] {
    --app-primary-soft:   #1F2A14;
    --app-secondary-soft: #2F2116;
    --app-primary-hover:  #6B8E3D;
    --app-secondary-hover:#D48A3F;
}

/* ─── Bootstrap Component Overrides ─── */

.btn-primary {
    --bs-btn-bg: #556B2F;
    --bs-btn-border-color: #556B2F;
    --bs-btn-hover-bg: #6B8E3D;
    --bs-btn-hover-border-color: #6B8E3D;
    --bs-btn-active-bg: #4A5D28;
    --bs-btn-active-border-color: #4A5D28;
    --bs-btn-disabled-bg: #556B2F;
    --bs-btn-disabled-border-color: #556B2F;
}

.btn-outline-primary {
    --bs-btn-color: #556B2F;
    --bs-btn-border-color: #556B2F;
    --bs-btn-hover-bg: #556B2F;
    --bs-btn-hover-border-color: #556B2F;
    --bs-btn-active-bg: #4A5D28;
    --bs-btn-active-border-color: #4A5D28;
}

.btn-secondary {
    --bs-btn-bg: #B87333;
    --bs-btn-border-color: #B87333;
    --bs-btn-hover-bg: #D48A3F;
    --bs-btn-hover-border-color: #D48A3F;
    --bs-btn-active-bg: #A06429;
    --bs-btn-active-border-color: #A06429;
}

.btn-outline-secondary {
    --bs-btn-color: #B87333;
    --bs-btn-border-color: #B87333;
    --bs-btn-hover-bg: #B87333;
    --bs-btn-hover-border-color: #B87333;
    --bs-btn-active-bg: #A06429;
    --bs-btn-active-border-color: #A06429;
}

/* bg-opacity-10 vb. ile birlikte çalışsın */
.bg-primary {
    background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;
}

/* ─── Navbar ─── */

.app-navbar {
    background-color: var(--app-primary-soft);
    border-bottom: 2px solid #556B2F;
}

[data-bs-theme="dark"] .app-navbar {
    background-color: var(--app-primary-soft);
    border-bottom-color: #3D5020;
}

.app-navbar .navbar-brand {
    color: #556B2F;
    font-weight: 700;
}

[data-bs-theme="dark"] .app-navbar .navbar-brand {
    color: #8FAE5E;
}

.app-navbar .nav-link {
    color: var(--bs-body-color);
    transition: color 0.15s, background-color 0.15s;
    border-radius: 6px;
    margin: 0 1px;
    padding: 0.4rem 0.6rem;
}

.app-navbar .nav-link:hover {
    color: #556B2F !important;
    background-color: rgba(85, 107, 47, 0.08);
}

[data-bs-theme="dark"] .app-navbar .nav-link:hover {
    color: #8FAE5E !important;
    background-color: rgba(143, 174, 94, 0.1);
}

/* Aktif menü — arka plan vurgusu + sol kenar */
.app-navbar .nav-link.active {
    color: #fff !important;
    font-weight: 600;
    background-color: #556B2F !important;
}

[data-bs-theme="dark"] .app-navbar .nav-link.active {
    color: #fff !important;
    background-color: #3D5020 !important;
}

/* Dropdown ok rengini aktif durumda beyaz yap */
.app-navbar .nav-link.active.dropdown-toggle::after {
    border-top-color: #fff;
}

@media (max-width: 991.98px) {
    .app-navbar .nav-link.active {
        border-radius: 6px;
    }
}

.app-navbar .dropdown-menu {
    border: 1px solid rgba(85, 107, 47, 0.15);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

[data-bs-theme="dark"] .app-navbar .dropdown-menu {
    background-color: #1a2210;
    border-color: rgba(143, 174, 94, 0.15);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
}

.app-navbar .dropdown-item:hover {
    background-color: rgba(85, 107, 47, 0.08);
    color: #556B2F;
}

[data-bs-theme="dark"] .app-navbar .dropdown-item {
    color: var(--bs-body-color);
}

[data-bs-theme="dark"] .app-navbar .dropdown-item:hover {
    background-color: rgba(143, 174, 94, 0.12);
    color: #8FAE5E;
}

.app-navbar .dropdown-item.active,
.app-navbar .dropdown-item:active {
    background-color: #556B2F;
    color: #fff;
    font-weight: 600;
    border-left: 3px solid #B87333;
}

[data-bs-theme="dark"] .app-navbar .dropdown-item.active {
    background-color: #3D5020;
    color: #fff;
}

/* Sağ taraf ikon butonları */
.app-navbar .nav-link .bi-sun-fill,
.app-navbar .nav-link .bi-moon-stars-fill {
    color: #B87333;
}

.app-navbar .nav-link .bi-person-circle {
    color: #556B2F;
}

[data-bs-theme="dark"] .app-navbar .nav-link .bi-person-circle {
    color: #8FAE5E;
}

/* ─── Footer ─── */

.app-footer {
    background-color: var(--app-primary-soft);
    border-top: 1px solid rgba(85, 107, 47, 0.2);
}

[data-bs-theme="dark"] .app-footer {
    background-color: var(--app-primary-soft);
    border-top-color: rgba(143, 174, 94, 0.15);
}

.app-footer small {
    color: #556B2F;
}

[data-bs-theme="dark"] .app-footer small {
    color: #7A9B50;
}

/* ─── Offcanvas (Mobil Menü) ─── */

.app-navbar .offcanvas {
    background-color: var(--app-primary-soft);
}

[data-bs-theme="dark"] .app-navbar .offcanvas {
    background-color: #1a2210;
}

.app-navbar .offcanvas-header {
    border-bottom: 1px solid rgba(85, 107, 47, 0.2);
}

.app-navbar .offcanvas-title {
    color: #556B2F;
    font-weight: 700;
}

[data-bs-theme="dark"] .app-navbar .offcanvas-title {
    color: #8FAE5E;
}

/* ─── Login Sayfası ─── */

.login-wrapper {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--app-primary-soft) 0%, var(--app-secondary-soft) 100%);
}

[data-bs-theme="dark"] .login-wrapper {
    background: linear-gradient(135deg, var(--app-primary-soft) 0%, var(--app-secondary-soft) 100%);
}

.login-card {
    width: 100%;
    max-width: 420px;
}

/* ─── Page Layout ─── */

html {
    height: 100%;
}

body {
    min-height: 100%;
    display: flex;
    flex-direction: column;
}

main {
    flex: 1 0 auto;
}

footer {
    flex-shrink: 0;
}


/* ─── Card Styles ─── */

.card {
    border: 1px solid var(--bs-border-color);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

/* Kartlarda border-* sınıfları çalışsın (border-primary vb.) */
.card.border-primary,
.card.border-success,
.card.border-warning,
.card.border-info,
.card.border-danger {
    border-width: 1px;
}

[data-bs-theme="dark"] .card {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

/* Rapor/özet kartları: arka plan tint + yüksek kontrast metin */
.card.bg-opacity-10 .card-body h4,
.card.bg-opacity-10 .card-body h5,
.card.bg-opacity-10 .card-body h6 {
    color: var(--bs-body-color) !important;
}
.card.bg-opacity-10 .card-body h6 {
    opacity: 0.85;
}
.card.bg-opacity-10 .card-body small.text-muted {
    color: var(--bs-secondary-color) !important;
}

.card-header {
    font-weight: 600;
    font-size: 0.9rem;
}

/* ─── Dashboard Cards ─── */

.stat-card {
    transition: transform 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.stat-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.stat-card .stat-icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    font-size: 1.5rem;
}

/* ─── SweetAlert2 Dark Mode ─── */

[data-bs-theme="dark"] .swal2-popup {
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
}

[data-bs-theme="dark"] .swal2-title {
    color: var(--bs-body-color);
}

[data-bs-theme="dark"] .swal2-html-container {
    color: var(--bs-secondary-color);
}

[data-bs-theme="dark"] .swal2-confirm {
    background-color: #556B2F !important;
}

[data-bs-theme="dark"] .swal2-input,
[data-bs-theme="dark"] .swal2-textarea {
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
    border-color: var(--bs-border-color);
}

/* ─── Stok Değeri Özet Barı (tema uyumlu) ─── */
.stock-value-summary {
    background-color: var(--app-primary-soft);
    border-color: rgba(var(--bs-primary-rgb), 0.25) !important;
}
[data-bs-theme="dark"] .stock-value-summary {
    background-color: var(--app-primary-soft);
    border-color: rgba(255, 255, 255, 0.1) !important;
}
[data-bs-theme="dark"] .stock-value-summary .text-muted {
    color: var(--bs-secondary-color) !important;
}

/* ─── DataTables ─── */

.dataTables_wrapper {
    overflow-x: hidden;
}

/* ─── Tom Select ─── */

.ts-wrapper .ts-control .item {
    color: var(--bs-body-color) !important;
}

.ts-wrapper .ts-dropdown .option {
    color: var(--bs-body-color);
}

[data-bs-theme="dark"] .ts-wrapper .ts-control {
    background-color: var(--bs-body-bg) !important;
    color: var(--bs-body-color) !important;
    border-color: var(--bs-border-color);
}

[data-bs-theme="dark"] .ts-wrapper .ts-control input,
[data-bs-theme="dark"] .ts-wrapper .ts-control input::placeholder {
    color: var(--bs-body-color) !important;
}

[data-bs-theme="dark"] .ts-dropdown,
[data-bs-theme="dark"] .ts-dropdown .ts-dropdown-content {
    background-color: var(--bs-body-bg) !important;
    color: var(--bs-body-color) !important;
    border-color: var(--bs-border-color);
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.4);
}

[data-bs-theme="dark"] .ts-dropdown .option {
    color: var(--bs-body-color) !important;
    background-color: transparent;
}

[data-bs-theme="dark"] .ts-dropdown .option:hover {
    background-color: rgba(143, 174, 94, 0.15) !important;
    color: #8FAE5E !important;
}

[data-bs-theme="dark"] .ts-dropdown .option.active {
    background-color: #556B2F !important;
    color: #fff !important;
}

[data-bs-theme="dark"] .ts-dropdown .no-results,
[data-bs-theme="dark"] .ts-dropdown .optgroup-header,
[data-bs-theme="dark"] .ts-dropdown .create {
    color: var(--bs-secondary-color) !important;
    background-color: var(--bs-body-bg) !important;
}

[data-bs-theme="dark"] .ts-wrapper.form-select .ts-control,
[data-bs-theme="dark"] .ts-wrapper.form-control .ts-control,
[data-bs-theme="dark"] .ts-wrapper.single .ts-control {
    background-color: var(--bs-body-bg) !important;
}

/* ─── Flatpickr Dark Mode ─── */

[data-bs-theme="dark"] .flatpickr-calendar {
    background: var(--bs-body-bg);
    border-color: var(--bs-border-color);
    box-shadow: 0 4px 12px rgba(0,0,0,0.3);
}

[data-bs-theme="dark"] .flatpickr-months .flatpickr-month,
[data-bs-theme="dark"] .flatpickr-current-month .flatpickr-monthDropdown-months,
[data-bs-theme="dark"] span.flatpickr-weekday,
[data-bs-theme="dark"] .flatpickr-day {
    color: var(--bs-body-color);
    background: transparent;
}

[data-bs-theme="dark"] .flatpickr-day:hover {
    background: var(--app-primary-soft);
}

[data-bs-theme="dark"] .flatpickr-day.selected {
    background: #556B2F;
    border-color: #556B2F;
}

/* ─── Stock Image Thumbnail ─── */

.stock-thumb {
    transition: transform 0.15s, box-shadow 0.15s;
}

.stock-thumb:hover {
    transform: scale(1.2);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

#imageZoomModal .modal-content {
    background-color: transparent !important;
}

/* ─── Gece modu: bg-light ve table-light uyumu ─── */
[data-bs-theme="dark"] .card.bg-light,
[data-bs-theme="dark"] .bg-light {
    background-color: var(--bs-body-bg) !important;
    border-color: var(--bs-border-color) !important;
}
[data-bs-theme="dark"] .card.bg-light .text-muted,
[data-bs-theme="dark"] .bg-light .text-muted {
    color: var(--bs-secondary-color) !important;
}
[data-bs-theme="dark"] .table-light,
[data-bs-theme="dark"] thead.table-light th,
[data-bs-theme="dark"] tr.table-light td {
    background-color: var(--bs-tertiary-bg, var(--app-primary-soft)) !important;
    color: var(--bs-tertiary-color, var(--bs-body-color)) !important;
    border-color: var(--bs-border-color) !important;
}
[data-bs-theme="dark"] tr.table-secondary {
    background-color: var(--bs-tertiary-bg, var(--app-primary-soft)) !important;
    color: var(--bs-body-color) !important;
}

/* ─── Rapor özet kartları (karşılaştırma) ─── */
.report-summary-card {
    background-color: var(--app-primary-soft);
    border: 1px solid rgba(var(--bs-primary-rgb), 0.2);
}
.report-summary-card .text-muted {
    color: var(--bs-secondary-color) !important;
}
[data-bs-theme="dark"] .report-summary-card {
    background-color: var(--app-primary-soft);
    border-color: rgba(143, 174, 94, 0.25);
}
[data-bs-theme="dark"] .report-summary-card .text-muted {
    color: var(--bs-secondary-color) !important;
}

/* ─── Rapor tabloları: ay satırları ve toplam satırları ─── */
.report-month-row {
    background-color: var(--app-primary-soft);
    color: var(--bs-body-color);
}
.report-total-row {
    background-color: var(--bs-tertiary-bg, var(--app-primary-soft));
    color: var(--bs-body-color);
}
[data-bs-theme="dark"] .report-month-row {
    background-color: var(--app-primary-soft);
    color: var(--bs-body-color);
}
[data-bs-theme="dark"] .report-total-row {
    background-color: rgba(143, 174, 94, 0.12);
    color: var(--bs-body-color);
}
/* Hover: toplam satırında değişim yok; ay satırı ve normal satırlarda tema uyumlu */
.report-summary-table tbody tr.report-total-row:hover {
    background-color: rgba(143, 174, 94, 0.12) !important;
}
.report-summary-table tbody tr.report-month-row:hover {
    background-color: rgba(85, 107, 47, 0.12) !important;
}
[data-bs-theme="dark"] .report-summary-table tbody tr:hover {
    background-color: rgba(143, 174, 94, 0.08) !important;
}
[data-bs-theme="dark"] .report-summary-table tbody tr.report-total-row:hover {
    background-color: rgba(143, 174, 94, 0.18) !important;
}
[data-bs-theme="dark"] .report-summary-table tbody tr.report-month-row:hover {
    background-color: rgba(143, 174, 94, 0.18) !important;
}

/* ─── Ana Sayfa Finansal Kartlar (Mobil) ─── */

.home-summary-cards .card-body {
    min-width: 0;
    overflow: hidden;
}

.home-summary-amount {
    font-size: clamp(0.75rem, 3.5vw, 1.25rem);
    overflow-wrap: break-word;
    word-break: break-word;
}

@media (max-width: 575.98px) {
    .home-summary-amount {
        font-size: 0.8rem;
    }
}

/* ─── Print ─── */

@media print {
    .navbar, footer, .btn, .dataTables_filter,
    .dataTables_length, .dataTables_paginate,
    .dt-buttons, .no-print {
        display: none !important;
    }
}
