/* Lifting wyglądu (2026-10-26, M. Ślusarczyk): „Grafit i morska zieleń” + tryb ciemny z przełącznika (domyślnie jasny).
   Tylko wygląd — bez zmian działania. Usunięcie linku do tego pliku w templates/base.html przywraca poprzedni wygląd. */

:root, [data-bs-theme="light"] {
    --l-akcent: #0f766e;
    --l-akcent-ciemny: #0b5e58;
    --l-akcent-tlo: #e3f4f1;
    --l-tekst: #1f2a2e;
    --l-slaby: #5b6b70;
    --l-linia: #dfe6e5;
    --l-pasek: #f4f8f7;

    /* zmienne aplikacji (main-style.css, side-navbar.css) */
    --general-background-color: #a5e3c8;  /* 2026-10-27: miętowa zieleń — wybór Michała (było #f2f5f4, potem #e4e9e8) */
    --main-container-background: #ffffff;
    --box-shadow: rgba(16, 24, 40, .06);
    --box-border: #dfe6e5;
    --text-color-header: #1f2a2e;
    --main-button-background: #0f766e;
    --main-button-hover-background: #0b5e58;
    --main-button-cancel-background: #b42318;
    --main-button-color: #ffffff;
    --small-main-button-background: #e3f4f1;
    --small-main-button-color: #0f766e;
    --footer-color: #5b6b70;
    --scrollbar-color: #c3cad3;
    --scrollbar-background: transparent;
    --scrollbar-hover-color: #8a95a3;
    --navbar-background-color: #1f2a2e;
    --navbar-text-color: rgba(255, 255, 255, .82);
    --navbar-text-color-active: #ffffff;
    --navabar-border-color: #1f2a2e;
    --navbar-hover-color: rgba(255, 255, 255, .10);
    --navbar-hr-color: rgba(255, 255, 255, .15);

    /* Bootstrap */
    --bs-body-font-family: "Nunito Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
    --bs-body-bg: #a5e3c8;
    --bs-body-color: #1f2a2e;
    --bs-primary: #0f766e;
    --bs-primary-rgb: 15, 118, 110;
    --bs-link-color: #0f766e;
    --bs-link-color-rgb: 15, 118, 110;
    --bs-link-hover-color: #0b5e58;
    --bs-border-color: #dfe6e5;
    --bs-border-radius: .5rem;
}

[data-bs-theme="dark"] {
    --l-akcent: #2dd4bf;
    --l-akcent-ciemny: #5eead4;
    --l-akcent-tlo: #1f4a44;
    --l-tekst: #e6e9ee;
    --l-slaby: #9aa4b2;
    --l-linia: #2a3836;
    --l-pasek: #1e2827;

    --general-background-color: #101615;
    --main-container-background: #172120;
    --box-shadow: rgba(0, 0, 0, .35);
    --box-border: #2a3836;
    --text-color-header: #e6e9ee;
    --main-button-background: #19a595;
    --main-button-hover-background: #22b9a8;
    --main-button-cancel-background: #c2453a;
    --small-main-button-background: #1f4a44;
    --small-main-button-color: #a7f3e6;
    --footer-color: #9aa4b2;
    --scrollbar-color: #3a4350;
    --scrollbar-hover-color: #566273;
    --navbar-background-color: #0c1211;
    --navabar-border-color: #1b2725;

    --bs-body-bg: #101615;
    --bs-body-color: #e6e9ee;
    --bs-primary: #2dd4bf;
    --bs-primary-rgb: 45, 212, 191;
    --bs-link-color: #2dd4bf;
    --bs-link-color-rgb: 45, 212, 191;
    --bs-link-hover-color: #5eead4;
    --bs-border-color: #2a3836;
}

/* ogólne */
body { font-family: var(--bs-body-font-family); color: var(--bs-body-color); -webkit-font-smoothing: antialiased; }
.main-container {
    border-radius: 12px;
    box-shadow: 0 1px 3px var(--box-shadow), 0 1px 2px var(--box-shadow);
}
.page-header-box { font-weight: 700; letter-spacing: -.01em; font-size: 22px; }
footer { color: var(--footer-color); font-size: 12px; text-align: center; }

/* pasek boczny */
#sidebar .logo { font-weight: 800; letter-spacing: .06em; color: #ffffff; }
#sidebar a { border-radius: 8px; transition: background-color .15s ease; }
#sidebar li.active a {
    background-color: rgba(255, 255, 255, .12);
    box-shadow: inset 3px 0 0 #2dd4bf;
    color: #ffffff;
}
#sidebar hr { border-color: var(--navbar-hr-color); opacity: 1; }

/* przyciski */
.main-button, .main-button-small { border-radius: 8px; font-weight: 500; transition: background-color .15s ease, transform .05s ease; }
.main-button:active, .main-button-small:active { transform: translateY(1px); }
.main-button-small:hover { background-color: var(--l-akcent); color: #fff; }
.btn-primary { --bs-btn-bg: var(--l-akcent); --bs-btn-border-color: var(--l-akcent); --bs-btn-hover-bg: var(--l-akcent-ciemny); --bs-btn-hover-border-color: var(--l-akcent-ciemny); }

/* tabele */
.table { --bs-table-bg: transparent; --bs-table-color: var(--bs-body-color); border-color: var(--l-linia); }
.table > thead > tr > th, table.dataTable thead th {
    background-color: var(--l-pasek) !important;
    color: var(--l-slaby);
    font-size: .78rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .03em;
    border-bottom: 1px solid var(--l-linia) !important;
}
.table > tbody > tr:nth-of-type(even) > *, table.dataTable tbody tr:nth-of-type(even) > * { background-color: color-mix(in srgb, var(--l-pasek) 70%, transparent); }
.table > tbody > tr:hover > *, table.dataTable tbody tr:hover > * { background-color: var(--l-akcent-tlo) !important; }
table.dataTable tbody tr { background-color: transparent; }
table.dataTable tbody td, .table td { border-color: var(--l-linia); }

/* formularze */
.form-control, .form-select, .dataTables_wrapper .dataTables_filter input, .dataTables_wrapper .dataTables_length select,
.select2-container--default .select2-selection--single, .select2-container--default .select2-selection--multiple {
    border-radius: 8px !important;
    border-color: var(--l-linia) !important;
    background-color: var(--main-container-background);
    color: var(--bs-body-color);
}
.form-control:focus, .form-select:focus { border-color: var(--l-akcent) !important; box-shadow: 0 0 0 .2rem color-mix(in srgb, var(--l-akcent) 25%, transparent); }
.select2-container--default .select2-selection--single .select2-selection__rendered { color: var(--bs-body-color); }
.select2-dropdown { background-color: var(--main-container-background); color: var(--bs-body-color); border-color: var(--l-linia); }
.select2-container--default .select2-results__option--highlighted[aria-selected] { background-color: var(--l-akcent); }
.dataTables_wrapper, .dataTables_wrapper .dataTables_info, .dataTables_wrapper .dataTables_paginate { color: var(--l-slaby) !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button { border-radius: 6px !important; color: var(--bs-body-color) !important; }
.dataTables_wrapper .dataTables_paginate .paginate_button.current { background: var(--l-akcent) !important; border-color: var(--l-akcent) !important; color: #fff !important; }

/* okna (modale) i karty */
.modal-content, .card { border-radius: 12px; border-color: var(--l-linia); }
.modal-header, .card-header { border-color: var(--l-linia); }

/* tryb ciemny — elementy z kolorami wpisanymi na sztywno w starych stylach */
[data-bs-theme="dark"] .main-container, [data-bs-theme="dark"] .modal-content { color: var(--bs-body-color); }
[data-bs-theme="dark"] .alert-warning { background-color: #33270f; color: #f0c674; border-color: #6b5020; }
[data-bs-theme="dark"] .alert-danger { background-color: #3a1d1b; color: #f2a59c; border-color: #6b302b; }
[data-bs-theme="dark"] .alert-success { background-color: #15301f; color: #8fd4a9; border-color: #2d5a3e; }
[data-bs-theme="dark"] .alert-info { background-color: #13302d; color: #7ee0d2; border-color: #245650; }
[data-bs-theme="dark"] input, [data-bs-theme="dark"] select, [data-bs-theme="dark"] textarea { color-scheme: dark; }
[data-bs-theme="dark"] .leaflet-container { filter: none; }

/* przełącznik kolorystyki (Jasny / Ciemny) — prawy górny róg każdej strony */
.przelacznik-motywu {
    position: fixed; top: 10px; right: 14px; z-index: 2000;
    padding: 5px 12px; border-radius: 999px; cursor: pointer;
    font: 600 12.5px var(--bs-body-font-family);
    background-color: var(--main-container-background); color: var(--bs-body-color);
    border: 1px solid var(--box-border); box-shadow: 0 1px 3px var(--box-shadow);
}
.przelacznik-motywu:hover { border-color: var(--l-akcent); color: var(--l-akcent); }
@media print { .przelacznik-motywu { display: none; } }


/* 2026-10-26: motyw ciemny — kontrast w całym programie (jasne tło → ciemny tekst) */
[data-bs-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice {
    background-color: #dfe3e6; border-color: #c4cad0; color: #212529;
}
[data-bs-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove { color: #495057; }
[data-bs-theme="dark"] .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover { color: #000; }
[data-bs-theme="dark"] .select2-container--default .select2-results__option[aria-selected=true]:not(.select2-results__option--highlighted) {
    background-color: #dfe3e6; color: #212529;
}
[data-bs-theme="dark"] .select2-container--default .select2-results__option--highlighted[aria-selected] { color: #06201d; }
[data-bs-theme="dark"] .select2-container--default .select2-search--inline .select2-search__field { color: var(--bs-body-color); }
[data-bs-theme="dark"] .bg-light { color: #212529 !important; }
[data-bs-theme="dark"] .bg-light.text-muted, [data-bs-theme="dark"] .bg-light .text-muted { color: #495057 !important; }
[data-bs-theme="dark"] .form-control:disabled, [data-bs-theme="dark"] .form-select:disabled { color: #495057 !important; }
[data-bs-theme="dark"] .btn-outline-dark, [data-bs-theme="dark"] .btn-outline-secondary {
    background-color: #d5d7da; color: #212529; border-color: #b8bcc1;
}
[data-bs-theme="dark"] .btn-outline-dark:hover, [data-bs-theme="dark"] .btn-outline-secondary:hover,
[data-bs-theme="dark"] .btn-outline-dark:focus-visible, [data-bs-theme="dark"] .btn-outline-secondary:focus-visible {
    background-color: #c3c6ca; color: #000; border-color: #a9aeb4;
}
[data-bs-theme="dark"] .columns-list-button { background-color: #d5d7da; color: #212529; border-color: #b8bcc1; }


/* 2026-10-27: okna, karty i listy rozwijane w kolorze „okienek” (nie tła strony) */
.modal-content { background-color: var(--main-container-background); }
.card { --bs-card-bg: var(--main-container-background); }
.dropdown-menu { --bs-dropdown-bg: var(--main-container-background); }
