/*
 * Motyw "granat + złoto" — nakładka na style.css.
 * Aby wrócić do poprzedniego (fioletowego) wyglądu, usuń <link> do tego pliku w base.html i base_login.html.
 */

:root {
  --color-primary: #2563EB;
  --color-primary-hover: #1D4ED8;
  --color-on-primary: #FFFFFF;
  --color-secondary: #0EA5E9;
  --color-accent: #059669;
  --color-gold: #CDA94A;
  --color-background: #F3F5F8;
  --color-foreground: #0F172A;
  --color-text-muted: #64748B;
  --color-muted: #F1F5F9;
  --color-border: #E2E8F0;
  --color-destructive: #DC2626;
  --color-ring: #2563EB;

  --shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.04);
  --shadow-md: 0 1px 3px rgba(15, 23, 42, 0.06), 0 1px 2px rgba(15, 23, 42, 0.04);
  --shadow-lg: 0 4px 12px rgba(15, 23, 42, 0.08);
  --shadow-xl: 0 12px 32px rgba(15, 23, 42, 0.18);

  --radius-lg: 10px;
  --radius-xl: 12px;

  --bs-primary: #2563EB;
  --bs-primary-rgb: 37, 99, 235;
  --bs-link-color: #2563EB;
  --bs-link-color-rgb: 37, 99, 235;
  --bs-link-hover-color: #1D4ED8;
  --bs-link-hover-color-rgb: 29, 78, 216;
}

html, body, .app-wrapper, .main-content { background: var(--color-background); }
.text-muted { color: var(--color-text-muted) !important; }

/* ── Sidebar: solid navy, gold accent for the active item ── */
.sidebar {
  background: #0F172A;
  border-radius: 0;
  border-right: 1px solid #1E293B;
}
.sidebar-brand { background: transparent; border-radius: 0; border-bottom: 1px solid #1E293B; }
.sidebar-office { color: rgba(255, 255, 255, 0.5); border-bottom-color: #1E293B; }
.sidebar .nav-link {
  color: rgba(255, 255, 255, 0.72);
  border-radius: 6px;
  border-left: 3px solid transparent;
}
.sidebar .nav-link:hover { background: rgba(255, 255, 255, 0.06); color: #fff; }
.sidebar .nav-link.active {
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  box-shadow: none;
  border-left-color: var(--color-gold);
}
.sidebar .nav-link.active i { color: var(--color-gold); }
.sidebar .nav-section { color: rgba(255, 255, 255, 0.38); }
.sidebar .border-secondary { border-color: #1E293B !important; }
.mobile-topbar { background: #0F172A; }

/* ── Buttons: one blue for actions, no lift on hover ── */
.btn, .btn-sm { box-shadow: none !important; }
.btn:hover, .btn:focus, .btn:active { transform: none !important; }
.btn-primary {
  background: var(--color-primary) !important;
  border-color: var(--color-primary) !important;
  padding: 0.55rem 1.15rem;
}
.btn-primary:hover, .btn-primary:focus {
  background: var(--color-primary-hover) !important;
  border-color: var(--color-primary-hover) !important;
  opacity: 1;
}
.btn-outline-primary, .btn-outline-success, .btn-outline-secondary, .btn-secondary { border-width: 1px !important; }
.btn-outline-primary { padding: 0.55rem 1.15rem; }
.btn-secondary {
  background: #fff !important;
  color: #334155 !important;
  border: 1px solid #CBD5E1 !important;
  padding: 0.55rem 1.15rem;
}
.btn-secondary:hover, .btn-secondary:focus { background: #F1F5F9 !important; color: #0F172A !important; }
.btn-outline-secondary { color: #334155 !important; border-color: #CBD5E1 !important; }
.btn-outline-secondary:hover { background: #F1F5F9 !important; color: #0F172A !important; border-color: #94A3B8 !important; }

/* ── Cards, tables, inputs ── */
.card { box-shadow: var(--shadow-md); transition: none; }
.card:hover { box-shadow: var(--shadow-md); }
.card-header { background: #fff !important; }
.table th, .table thead th {
  background: #F8FAFC;
  color: #475569;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.table th a { color: inherit !important; }
.table-hover tbody tr:hover { background-color: rgba(37, 99, 235, 0.04) !important; }
.form-control, .form-select { border-color: #CBD5E1; }
.form-control:focus, .form-select:focus { box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15) !important; }
.btn:focus-visible { box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.35) !important; }
.form-check-input:checked { background-color: var(--color-primary); border-color: var(--color-primary); }

/* ── Badges, links, misc ── */
.badge.bg-info, .bg-info { background-color: var(--color-secondary) !important; color: #fff !important; }
.text-info { color: var(--color-secondary) !important; }
a:hover { color: var(--color-primary-hover); }
.page-link { color: var(--color-primary); }
.page-item.active .page-link { background: var(--color-primary); border-color: var(--color-primary); color: #fff; }
.nav-tabs .nav-link.active { color: var(--color-foreground); border-bottom-color: #fff; }
.nav-tabs .nav-link { color: var(--color-text-muted); }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #CBD5E1; }
::-webkit-scrollbar-thumb:hover { background: #94A3B8; }
.ss-options div.selected { background: var(--color-primary); }
.searchable-select-wrapper.open .form-select { border-color: var(--color-primary); box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.15); }

/* ── Dark mode: neutral navy instead of purple ── */
[data-bs-theme="dark"] {
  --color-background: #0B1120;
  --color-foreground: #E2E8F0;
  --color-text-muted: #94A3B8;
  --color-border: #1E293B;
}
[data-bs-theme="dark"] html, [data-bs-theme="dark"] body,
[data-bs-theme="dark"] .app-wrapper, [data-bs-theme="dark"] .main-content { background: #0B1120; }
[data-bs-theme="dark"] .sidebar, [data-bs-theme="dark"] .mobile-topbar { background: #020617; border-right-color: #0F172A; }
[data-bs-theme="dark"] .card { background: #111827; border-color: #1E293B !important; }
[data-bs-theme="dark"] .card-header { background: #111827 !important; color: #E2E8F0; border-color: #1E293B !important; }
[data-bs-theme="dark"] .table { --bs-table-bg: #111827; --bs-table-striped-bg: #0F172A; --bs-table-hover-bg: #1E293B; }
[data-bs-theme="dark"] .table-light { --bs-table-bg: #0F172A; --bs-table-color: #CBD5E1; }
[data-bs-theme="dark"] .table th, [data-bs-theme="dark"] .table thead th { background: #0F172A; color: #94A3B8; }
[data-bs-theme="dark"] td, [data-bs-theme="dark"] .table td, [data-bs-theme="dark"] .card-body { color: #E2E8F0; }
[data-bs-theme="dark"] p, [data-bs-theme="dark"] span, [data-bs-theme="dark"] small { color: #CBD5E1; }
[data-bs-theme="dark"] h1, [data-bs-theme="dark"] h2, [data-bs-theme="dark"] h3,
[data-bs-theme="dark"] h4, [data-bs-theme="dark"] h5, [data-bs-theme="dark"] h6,
[data-bs-theme="dark"] label, [data-bs-theme="dark"] .form-check-label { color: #E2E8F0; }
[data-bs-theme="dark"] .text-muted { color: #94A3B8 !important; }
[data-bs-theme="dark"] .form-select, [data-bs-theme="dark"] .form-control { background-color: #0F172A; color: #E2E8F0; border-color: #334155; }
[data-bs-theme="dark"] .form-select option { background-color: #0F172A; color: #E2E8F0; }
[data-bs-theme="dark"] .modal-content { background: #111827; }
[data-bs-theme="dark"] .ss-search, [data-bs-theme="dark"] .ss-search input { background: #111827; border-color: #334155; color: #E2E8F0; }
[data-bs-theme="dark"] .ss-options div { color: #E2E8F0; }
[data-bs-theme="dark"] .ss-options div:hover, [data-bs-theme="dark"] .ss-options div.highlighted { background: #1E293B; }
[data-bs-theme="dark"] .nav-tabs .nav-link { color: #94A3B8; }
[data-bs-theme="dark"] .nav-tabs .nav-link.active { color: #fff; background: #111827; border-color: #1E293B; }
[data-bs-theme="dark"] .btn-secondary, [data-bs-theme="dark"] .btn-outline-secondary {
  background: transparent !important; color: #CBD5E1 !important; border-color: #334155 !important;
}
[data-bs-theme="dark"] .btn-secondary:hover, [data-bs-theme="dark"] .btn-outline-secondary:hover { background: #1E293B !important; color: #fff !important; }
[data-bs-theme="dark"] .btn-outline-primary { border-color: #3B82F6 !important; color: #93C5FD !important; }
[data-bs-theme="dark"] .btn-outline-primary:hover { background: #2563EB !important; color: #fff !important; }
[data-bs-theme="dark"] .btn-outline-info { border-color: #0EA5E9 !important; color: #7DD3FC !important; }
[data-bs-theme="dark"] .btn-outline-info:hover { background: #0EA5E9 !important; color: #fff !important; }
[data-bs-theme="dark"] .alert-info { background: rgba(37, 99, 235, 0.15); color: #93C5FD; border-color: rgba(37, 99, 235, 0.3); }
[data-bs-theme="dark"] .dropdown-menu { background: #111827; border-color: #1E293B; }
[data-bs-theme="dark"] .dropdown-item { color: #E2E8F0; }
[data-bs-theme="dark"] .dropdown-item:hover { background: #1E293B; }
[data-bs-theme="dark"] ::-webkit-scrollbar-thumb { background: #334155; }

/* Login header */
.login-brand { background: #0F172A !important; border-bottom: 3px solid var(--color-gold); }
[data-bs-theme="dark"] .table th a.text-dark { color: inherit !important; }
