:root,
[data-bs-theme="dark"],
[data-bs-theme="light"] {
  --bs-body-bg: #ffffff;
  --bs-body-color: #0a2540;
  --bs-heading-color: #0a2540;

  --bs-primary: #15a9e6;
  --bs-primary-rgb: 21, 169, 230;
  --bs-primary-light: #e1f0fa;
  --bs-secondary-light: #f2f7fc;
  --bs-dark-light: #eef3f8;

  --bs-light: #f2f7fc;
  --bs-light-rgb: 242, 247, 252;
  --bs-border-color: #d6e6f5;
  --bs-secondary-bg: #f2f7fc;
  --bs-tertiary-bg: #f8fbfe;

  --bs-gray-100: #f2f7fc;
  --bs-gray-200: #e1eefa;
  --bs-gray-300: #d6e6f5;
  --bs-gray-400: #b8d4ea;
  --bs-gray-500: #8fb8d9;
  --bs-gray-600: #4a6b85;
  --bs-gray-700: #2d4a63;
  --bs-gray-800: #1e3a52;
  --bs-gray-900: #0a2540;

  --bs-text-gray-100: #f2f7fc;
  --bs-text-gray-200: #e1eefa;
  --bs-text-gray-300: #d6e6f5;
  --bs-text-gray-400: #b8d4ea;
  --bs-text-gray-500: #8fb8d9;
  --bs-text-gray-600: #4a6b85;
  --bs-text-gray-700: #2d4a63;
  --bs-text-gray-800: #1e3a52;
  --bs-text-gray-900: #0a2540;
}

html,
body,
[data-bs-theme="dark"] body {
  background-color: #ffffff !important;
  color: #0a2540 !important;
}

.card,
.bg-body,
.modal-content,
[data-bs-theme="dark"] .card,
[data-bs-theme="dark"] .bg-body,
[data-bs-theme="dark"] .modal-content {
  background-color: #ffffff !important;
  color: #0a2540 !important;
}

.modal-title,
[data-bs-theme="dark"] .modal-title {
  color: #0a2540 !important;
}

.modal-header,
.modal-footer {
  border-color: #d6e6f5 !important;
}

a,
[data-bs-theme="dark"] a,
.text-sidebar,
[data-bs-theme="dark"] .text-sidebar {
  color: #15a9e6 !important;
}

hr,
.separator,
[data-bs-theme="dark"] .separator,
[data-bs-theme="dark"] hr {
  border-color: #d6e6f5 !important;
  opacity: 1;
}

.form-control,
.form-select,
.form-select-solid,
[data-bs-theme="dark"] .form-control,
[data-bs-theme="dark"] .form-select,
[data-bs-theme="dark"] .form-select-solid {
  background-color: #f2f7fc !important;
  border-color: #d6e6f5 !important;
  color: #0a2540 !important;
}

.form-control::placeholder,
[data-bs-theme="dark"] .form-control::placeholder {
  color: #4a6b85 !important;
}

.form-label,
label,
[data-bs-theme="dark"] .form-label,
[data-bs-theme="dark"] label {
  color: #4a6b85 !important;
}

.form-check-input,
[data-bs-theme="dark"] .form-check-input {
  background-color: #ffffff !important;
  border: 1.5px solid #4a6b85 !important;
  box-shadow: none !important;
}

.form-check-input:hover {
  border-color: #15a9e6 !important;
}

.form-check-input:focus {
  border-color: #15a9e6 !important;
  box-shadow: 0 0 0 0.2rem rgba(21, 169, 230, 0.25) !important;
}

.form-check-input:checked,
[data-bs-theme="dark"] .form-check-input:checked {
  background-color: #15a9e6 !important;
  border-color: #15a9e6 !important;
}

.select2-container--bootstrap5 .select2-selection,
.select2-container--bootstrap5 .select2-dropdown {
  background-color: #f2f7fc !important;
  border-color: #d6e6f5 !important;
  color: #0a2540 !important;
}

.select2-container--bootstrap5 .select2-results__option {
  background-color: #ffffff !important;
  color: #0a2540 !important;
}

.select2-container--bootstrap5 .select2-results__option--highlighted,
.select2-container--bootstrap5 .select2-results__option--selected {
  background-color: #e1f0fa !important;
  color: #0a4d8c !important;
}

.select2-container--bootstrap5 .select2-selection__choice {
  background-color: #e1f0fa !important;
  color: #0a4d8c !important;
  border-color: #b8d4ea !important;
}

.btn-primary,
[data-bs-theme="dark"] .btn-primary {
  background-color: #15a9e6 !important;
  border-color: #15a9e6 !important;
  color: #ffffff !important;
}

.btn-primary:hover,
[data-bs-theme="dark"] .btn-primary:hover {
  background-color: #0f8ec4 !important;
  border-color: #0f8ec4 !important;
}

.btn-secondary,
[data-bs-theme="dark"] .btn-secondary {
  background-color: #f2f7fc !important;
  border-color: #d6e6f5 !important;
  color: #0a2540 !important;
}

.btn-secondary:hover,
[data-bs-theme="dark"] .btn-secondary:hover {
  background-color: #e1eefa !important;
  border-color: #b8d4ea !important;
}

.badge-light-primary {
  background-color: #e1f0fa !important;
  color: #0a4d8c !important;
}
.badge-light-primary:hover {
  background-color: #cfe6f7 !important;
}

.badge-light-dark {
  background-color: #0a2540 !important;
  color: #ffffff !important;
}

.badge-light-success {
  background-color: #15a9e6 !important;
  color: #ffffff !important;
}

.badge-light-primary i,
.badge-light-dark i,
.badge-light-success i {
  color: inherit !important;
}

.btn-icon.btn-light,
.btn-active-light-primary.btn-active-light-primary {
  background-color: #e1f0fa !important;
  color: #0a4d8c !important;
}

.btn-icon.btn-light:hover,
.btn-active-light-primary.btn-active-light-primary:hover {
  background-color: #15a9e6 !important;
  color: #ffffff !important;
}

.btn-icon.btn-light i,
.btn-active-light-primary.btn-active-light-primary i {
  color: #0a4d8c !important;
}

#kt_app_header .btn-color-gray-800 {
  background-color: transparent !important;
  color: #0a2540 !important;
}
#kt_app_header .btn-color-gray-800 i {
  color: #0a2540 !important;
}
#kt_app_header .btn-color-gray-800:hover {
  background-color: #e1f0fa !important;
  color: #15a9e6 !important;
}

.text-muted,
.text-gray-600,
.fw-bold.text-muted {
  color: #4a6b85 !important;
}

.dt-column-title,
table.dataTable thead th {
  color: #1e3a52 !important;
}

.dt-empty-footer td,
#file_manager_list_info,
.dataTables_empty {
  color: #4a6b85 !important;
}

#kt_app_footer,
.app-footer,
footer.footer {
  display: none !important;
}

html body #kt_app_header,
html body .app-header {
  background-color: #ffffff !important;
  border-bottom: 1px solid #d6e6f5 !important;
}

#kt_app_header .app-header-menu,
#kt_app_header a {
  color: #0a2540 !important;
}

#kt_app_header .btn-icon {
  background-color: #e1f0fa !important;
  color: #0a4d8c !important;
}

#kt_app_header .btn-icon:hover {
  background-color: #15a9e6 !important;
  color: #ffffff !important;
}

#kt_app_header .btn-icon i,
#kt_app_header .btn-icon .ki-duotone {
  color: #0a4d8c !important;
}

html body #kt_app_sidebar,
html body .app-sidebar {
  background-color: #e1f0fa !important;
  border-right: 1px solid #b8d4ea !important;
}

#kt_app_sidebar .menu-link,
#kt_app_sidebar .menu-title {
  color: #0a4d8c !important;
}

#kt_app_sidebar .menu-link i,
#kt_app_sidebar .menu-icon {
  color: #0a4d8c !important;
}

#kt_app_sidebar .menu-link.active {
  background-color: #15a9e6 !important;
  color: #ffffff !important;
}

#kt_app_sidebar .menu-link.active .menu-title,
#kt_app_sidebar .menu-link.active .menu-icon,
#kt_app_sidebar .menu-link.active i {
  color: #ffffff !important;
}

#kt_app_sidebar .menu-link:hover {
  background-color: #cfe6f7 !important;
  color: #0a4d8c !important;
}

#kt_app_sidebar .text-sidebar {
  color: #0a4d8c !important;
}

html body #kt_app_content,
html body .app-content {
  background-color: #ffffff !important;
}

.menu-sub-dropdown,
.dropdown-menu {
  background-color: #ffffff !important;
  border: 1px solid #d6e6f5 !important;
  box-shadow: 0 4px 12px rgba(10, 37, 64, 0.12) !important;
}

.menu-sub-dropdown .menu-link {
  color: #0a2540 !important;
}

.menu-sub-dropdown .menu-link:hover {
  background-color: #e1f0fa !important;
  color: #0a4d8c !important;
}

.menu-sub-dropdown .menu-link i,
.menu-sub-dropdown .menu-icon {
  color: #0a2540 !important;
}

a:has(> i.ki-moon),
a:has(> i.theme-dark-show),
a:has(> i.theme-light-show) {
  display: none !important;
}

[data-kt-element="theme-mode-menu"] {
  display: none !important;
}

/* przycisk "Delete" (btn-light-danger) - wymuszone kolory bez polegania na zmiennych */
a.btn.btn-light-danger,
button.btn.btn-light-danger,
.btn.btn-light-danger {
  background-color: #fce8e8 !important;
  border-color: #f5c6c6 !important;
  color: #b02a2a !important;
}

.btn.btn-light-danger:hover {
  background-color: #b02a2a !important;
  border-color: #b02a2a !important;
  color: #ffffff !important;
}

.btn.btn-light-danger span,
.btn.btn-light-danger i,
.btn.btn-light-danger .ki-duotone {
  color: inherit !important;
}

/* przełączniki (toggle switch) - stan wyłączony potrzebuje własnego toru */
.form-switch .form-check-input {
  background-color: #d6e6f5 !important;
  border-color: #b8d4ea !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23ffffff'/%3e%3c/svg%3e") !important;
}

.form-switch .form-check-input:checked {
  background-color: #15a9e6 !important;
  border-color: #15a9e6 !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23ffffff'/%3e%3c/svg%3e") !important;
}

.form-switch .form-check-input:focus {
  box-shadow: 0 0 0 0.2rem rgba(21, 169, 230, 0.25) !important;
}

/* komunikaty ostrzegawcze (np. "The home directory is mandatory") */
.bg-light-warning,
.border-warning {
  background-color: #fff8e6 !important;
  border-color: #f0d97a !important;
  color: #7a5c00 !important;
}

.bg-light-warning .text-warning,
.bg-light-warning span,
.bg-light-warning i {
  color: #7a5c00 !important;
}

/* przycisk zamknięcia (X) w komunikacie */
.bg-light-warning .btn-close,
[data-bs-theme="dark"] .bg-light-warning .btn-close {
  filter: none !important;
}
