/* DuoRegio – Dark Mode (opt-in via html[data-theme="dark"]) */

html[data-theme="dark"] {
  --gray-50:  #20283c;
  --gray-100: #1F242C;
  --gray-200: #434B58;
  --gray-300: #8A929E;
  --gray-500: #c5cee0;
  --gray-700: #dde4f1;
  --gray-800: #eef2f9;
  --gray-900: #f6f9fd;
  --white: #1F242C;
  --green-pale: #1E3A2A;
  --blue-pale:  #282E38;
  --orange-light: #3a2a08;
  --teal-light: #0e3a36;
  --purple-pale: #261d44;
  --shadow-sm: 0 1px 3px rgba(0,0,0,0.5);
  --shadow-md: 0 4px 16px rgba(0,0,0,0.45);
  --shadow-lg: 0 12px 40px rgba(0,0,0,0.55);
  --shadow-xl: 0 20px 60px rgba(0,0,0,0.6);
  color-scheme: dark;
}

html[data-theme="dark"] body {
  background: #14171D !important;
  color: var(--gray-700);
}

html[data-theme="dark"] body::before { opacity: .03 !important; mix-blend-mode: overlay; }

html[data-theme="dark"] a { color: #6ee7a3; }
html[data-theme="dark"] a:hover { color: #86efac; }

html[data-theme="dark"] input,
html[data-theme="dark"] textarea,
html[data-theme="dark"] select {
  background-color: #434B58 !important;
  color: #eef2f9 !important;
  border-color: #3e4a63 !important;
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder { color: #76829a !important; }

html[data-theme="dark"] [style*="background: white"],
html[data-theme="dark"] [style*="background:white"],
html[data-theme="dark"] [style*="background: #fff"],
html[data-theme="dark"] [style*="background:#fff"],
html[data-theme="dark"] [style*="background: #ffffff"],
html[data-theme="dark"] [style*="background:#ffffff"],
html[data-theme="dark"] [style*="background-color: white"],
html[data-theme="dark"] [style*="background-color:white"],
html[data-theme="dark"] [style*="background-color: #fff"],
html[data-theme="dark"] [style*="background-color:#fff"] {
  background-color: #1F242C !important;
}

html[data-theme="dark"] [style*="background: #f9fafb"],
html[data-theme="dark"] [style*="background:#f9fafb"],
html[data-theme="dark"] [style*="background: #f6f9fd"],
html[data-theme="dark"] [style*="background:#f6f9fd"],
html[data-theme="dark"] [style*="background: #eef2f9"],
html[data-theme="dark"] [style*="background:#eef2f9"],
html[data-theme="dark"] [style*="background: #fafafa"],
html[data-theme="dark"] [style*="background:#fafafa"],
html[data-theme="dark"] [style*="background: #e5e7eb"],
html[data-theme="dark"] [style*="background:#e5e7eb"],
html[data-theme="dark"] [style*="background: #f3f4f6"],
html[data-theme="dark"] [style*="background:#f3f4f6"],
html[data-theme="dark"] [style*="background: #f0f4f8"],
html[data-theme="dark"] [style*="background:#f0f4f8"] {
  background-color: #282E38 !important;
}

html[data-theme="dark"] [style*="color: #1a1a2e"],
html[data-theme="dark"] [style*="color:#1a1a2e"],
html[data-theme="dark"] [style*="color: #111827"],
html[data-theme="dark"] [style*="color:#111827"],
html[data-theme="dark"] [style*="color: #20283c"],
html[data-theme="dark"] [style*="color:#20283c"],
html[data-theme="dark"] [style*="color: #434B58"],
html[data-theme="dark"] [style*="color:#434B58"],
html[data-theme="dark"] [style*="color: #374151"],
html[data-theme="dark"] [style*="color:#374151"],
html[data-theme="dark"] [style*="color: rgb(0, 0, 0)"],
html[data-theme="dark"] [style*="color:rgb(0,0,0)"],
html[data-theme="dark"] [style*="color: rgb(0,0,0)"],
html[data-theme="dark"] [style*="color: #000000"],
html[data-theme="dark"] [style*="color:#000000"],
html[data-theme="dark"] [style*="color: black"],
html[data-theme="dark"] [style*="color:black"],
html[data-theme="dark"] [style*="color: rgb(17, 24, 39)"],
html[data-theme="dark"] [style*="color: rgb(31, 41, 55)"],
html[data-theme="dark"] [style*="color: #1f2937"],
html[data-theme="dark"] [style*="color:#1f2937"],
html[data-theme="dark"] [style*="color: #333333"],
html[data-theme="dark"] [style*="color:#333333"],
html[data-theme="dark"] [style*="color: rgb(51, 51, 51)"] {
  color: #eef2f9 !important;
}
html[data-theme="dark"] [style*="color: #4b5563"],
html[data-theme="dark"] [style*="color:#4b5563"],
html[data-theme="dark"] [style*="color: #3e4a63"],
html[data-theme="dark"] [style*="color:#3e4a63"] {
  color: #c5cee0 !important;
}
html[data-theme="dark"] [style*="color: #6b7280"],
html[data-theme="dark"] [style*="color:#6b7280"],
html[data-theme="dark"] [style*="color: #76829a"],
html[data-theme="dark"] [style*="color:#76829a"] {
  color: #8A929E !important;
}
html[data-theme="dark"] [style*="color: #9ca3af"],
html[data-theme="dark"] [style*="color:#9ca3af"] {
  color: #76829a !important;
}

html[data-theme="dark"] [style*="border: 1px solid #e5e7eb"],
html[data-theme="dark"] [style*="border:1px solid #e5e7eb"],
html[data-theme="dark"] [style*="border: 2px solid #e5e7eb"],
html[data-theme="dark"] [style*="border:2px solid #e5e7eb"],
html[data-theme="dark"] [style*="border: 1px solid #f3f4f6"],
html[data-theme="dark"] [style*="border:1px solid #f3f4f6"],
html[data-theme="dark"] [style*="border: 1px solid #dde4f1"],
html[data-theme="dark"] [style*="border:1px solid #dde4f1"],
html[data-theme="dark"] [style*="border-bottom: 1px solid #f3f4f6"],
html[data-theme="dark"] [style*="border-bottom:1px solid #f3f4f6"] {
  border-color: #36425a !important;
}

html[data-theme="dark"] header,
html[data-theme="dark"] nav,
html[data-theme="dark"] body > nav,
html[data-theme="dark"] .nav-bar,
html[data-theme="dark"] .nav-wrapper {
  background: rgba(15,23,42,0.95) !important;
  border-bottom-color: #434B58 !important;
}
html[data-theme="dark"] .nav-drop,
html[data-theme="dark"] .nav-mobile,
html[data-theme="dark"] .nav-mobile-menu {
  background: #1F242C !important;
  color: #dde4f1 !important;
  border-color: #434B58 !important;
}
html[data-theme="dark"] .nav-drop a,
html[data-theme="dark"] .nav-mobile a,
html[data-theme="dark"] .nav-mobile-menu a { color: #dde4f1 !important; }
html[data-theme="dark"] .nav-drop a:hover { background: #434B58 !important; }
html[data-theme="dark"] .nav-mobile-menu a:hover,
html[data-theme="dark"] .nav-mobile-menu a.active { background: #434B58 !important; color: #4ade80 !important; }
html[data-theme="dark"] .nav-mobile-section { color: #76829a !important; }
html[data-theme="dark"] .nav-mobile-sep { background: #434B58 !important; }

html[data-theme="dark"] .lang-flags { background: #434B58 !important; }
html[data-theme="dark"] .lang-flag.active { background: #3e4a63 !important; }

html[data-theme="dark"] .konto-section,
html[data-theme="dark"] .auth-card,
html[data-theme="dark"] .feature-card,
html[data-theme="dark"] .pkg-card,
html[data-theme="dark"] .border-card,
html[data-theme="dark"] .art-card,
html[data-theme="dark"] .partner-card,
html[data-theme="dark"] .ag-row,
html[data-theme="dark"] .post-item,
html[data-theme="dark"] .nud-item,
html[data-theme="dark"] details,
html[data-theme="dark"] .filter-btn,
html[data-theme="dark"] .ch-tab {
  background: #1F242C !important;
  color: #dde4f1 !important;
  border-color: #434B58 !important;
}
html[data-theme="dark"] .filter-btn.active { background: var(--green) !important; color: #fff !important; }

html[data-theme="dark"] footer { background: #14171D !important; color: #8A929E !important; }

html[data-theme="dark"] table { background: #1F242C !important; color: #dde4f1; }
html[data-theme="dark"] th, html[data-theme="dark"] td { border-color: #36425a !important; }

html[data-theme="dark"] pre, html[data-theme="dark"] code {
  background: #1F242C !important;
  color: #dde4f1 !important;
}

html[data-theme="dark"] .leaflet-container { filter: brightness(0.78) saturate(0.85); }
html[data-theme="dark"] .leaflet-popup-content-wrapper {
  background: #1F242C !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .leaflet-popup-tip { background: #1F242C !important; }

/* CTA banner na home: w trybie jasnym tło to ciemny gradient z var(--gray-900/800),
   ale w dark mode te zmienne są jasne — przywracamy ciemny gradient,
   żeby białe teksty wewnątrz były widoczne. */
/* CTA banner — w obu motywach pokazujemy jeden czysty layer z gradientem zewnętrznym (cta-banner).
   Wcześniejszy ciemny inner box wyglądał jak "karta w karcie" — usunięte dla spójności. */
/* CTA banner: w light mode jasne tło, w dark mode subtelny ciemny gradient w tonacji brand */
html[data-theme="dark"] .cta-banner {
  background: linear-gradient(135deg, #0f2a1a, #0c2434) !important;
  border-color: rgba(255,255,255,.08) !important;
}
html[data-theme="dark"] .cta-inner h2 { color: #fff !important; }
html[data-theme="dark"] .cta-inner p { color: rgba(255,255,255,.72) !important; }
html[data-theme="dark"] .cta-btn-outline {
  color: rgba(255,255,255,.85) !important;
  border-color: rgba(255,255,255,.22) !important;
}
html[data-theme="dark"] .cta-btn-outline:hover {
  background: rgba(255,255,255,.08) !important;
  border-color: #fff !important;
  color: #fff !important;
}
html[data-theme="dark"] .cta-text h2 { color: #ffffff !important; }
html[data-theme="dark"] .cta-text p { color: rgba(255,255,255,0.78) !important; }
html[data-theme="dark"] .btn-white { background: #f6f9fd !important; color: #20283c !important; }

/* Nav buttons (Praca/Firmy/Społeczność/Narzędzia) — w light mode color: var(--gray-600)
   nie jest zdefiniowany, fallback dziedziczenia daje widoczny tekst.
   W dark mode wymuszamy jasny kolor. */
html[data-theme="dark"] .nav-btn,
html[data-theme="dark"] .nav-links a,
html[data-theme="dark"] .nav-mobile-cta,
html[data-theme="dark"] .nav-drop-label {
  color: #dde4f1 !important;
}
html[data-theme="dark"] .nav-btn:hover {
  background: #434B58 !important;
  color: #ffffff !important;
}

/* Logo w nav (DuoRegio brand) — zachowaj zielony akcent na ciemnym tle */
html[data-theme="dark"] .nav-brand,
html[data-theme="dark"] .lo {
  color: #4ade80 !important;
}

/* Sekcyjne tytuły / nagłówki, które mogą mieć color: black/dark hardcodowane */
html[data-theme="dark"] h1,
html[data-theme="dark"] h2,
html[data-theme="dark"] h3,
html[data-theme="dark"] h4 { color: #eef2f9; }
html[data-theme="dark"] .section-title { color: #eef2f9 !important; }
html[data-theme="dark"] .section-subtitle { color: #8A929E !important; }

/* Hero/banner sekcje z jasnymi pastelowymi gradientami (zielony→niebieski,
   różowy, żółty itp.) — w dark mode podmieniamy na ciemny gradient,
   żeby tytuły z color: var(--gray-900) (zremapowanym na jasny) były czytelne. */
html[data-theme="dark"] [style*="linear-gradient(135deg,#ecfdf5"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #ecfdf5"],
html[data-theme="dark"] [style*="linear-gradient(135deg,#f0fdf4"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #f0fdf4"],
html[data-theme="dark"] [style*="linear-gradient(135deg,#eff6ff"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #eff6ff"],
html[data-theme="dark"] [style*="linear-gradient(135deg,#dbeafe"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #dbeafe"],
html[data-theme="dark"] [style*="linear-gradient(135deg,#fef3c7"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #fef3c7"],
html[data-theme="dark"] [style*="linear-gradient(135deg,#fefce8"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #fefce8"],
html[data-theme="dark"] [style*="linear-gradient(135deg,#fce7f3"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #fce7f3"],
html[data-theme="dark"] [style*="linear-gradient(135deg,#fdf4ff"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #fdf4ff"],
html[data-theme="dark"] [style*="linear-gradient(135deg,#fef2f2"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #fef2f2"],
html[data-theme="dark"] [style*="linear-gradient(135deg,#fffbeb"],
html[data-theme="dark"] [style*="linear-gradient(135deg, #fffbeb"],
html[data-theme="dark"] [style*="linear-gradient(180deg,#f"],
html[data-theme="dark"] [style*="linear-gradient(180deg, #f"] {
  background: linear-gradient(135deg, #20283c 0%, #434B58 100%) !important;
}

/* Hero z var(--green-pale) i podobnych pale-akcentów — zostaw, ale dodaj tytułom kontrast */
html[data-theme="dark"] .hero h1,
html[data-theme="dark"] section.hero h1,
html[data-theme="dark"] .hero p,
html[data-theme="dark"] section.hero p { color: #eef2f9 !important; }
html[data-theme="dark"] .hero p { color: #c5cee0 !important; }
/* Dolny gradient hero zanika do JASNEGO #f0f4f8 (tło light) → w dark to biały pasek na styku z następną sekcją. Zanikaj do ciemnego tła. */
html[data-theme="dark"] .hero::after { background: linear-gradient(180deg, transparent, #14171D) !important; }

/* Pigułkowe odznaki na pastelowych tłach (np. "DuoRegio" badge w funkcjach) */
html[data-theme="dark"] [style*="background:#fee2e2"],
html[data-theme="dark"] [style*="background: #fee2e2"],
html[data-theme="dark"] [style*="background:#fef3c7"],
html[data-theme="dark"] [style*="background: #fef3c7"],
html[data-theme="dark"] [style*="background:#dcfce7"],
html[data-theme="dark"] [style*="background: #dcfce7"],
html[data-theme="dark"] [style*="background:#dbeafe"],
html[data-theme="dark"] [style*="background: #dbeafe"] {
  background-color: #434B58 !important;
}

/* Karty ofert pracy — class-based, nie złapie ich [style*=...] */
html[data-theme="dark"] .job-card,
html[data-theme="dark"] .offer-spotlight-card {
  background: #1F242C !important;
  border-color: #434B58 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .offer-spotlight-card.sponsored {
  border-color: var(--green) !important;
}
html[data-theme="dark"] .offer-spotlight-card.partner {
  background: linear-gradient(135deg, #1f1a10, #1F242C) !important;
  border-color: var(--orange) !important;
}
html[data-theme="dark"] .offer-spotlight-card.random {
  border-style: dashed !important;
  border-color: #3e4a63 !important;
}
html[data-theme="dark"] .job-title,
html[data-theme="dark"] .job-company-name { color: #eef2f9 !important; }
html[data-theme="dark"] .job-detail,
html[data-theme="dark"] .job-tag { color: #c5cee0 !important; }
html[data-theme="dark"] .job-tag { background: #434B58 !important; border-color: #3e4a63 !important; }

/* Karty firm */
html[data-theme="dark"] .fc-card,
html[data-theme="dark"] .featured-company,
html[data-theme="dark"] .company-card {
  background: #1F242C !important;
  border-color: #434B58 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .fc-name,
html[data-theme="dark"] .company-name { color: #eef2f9 !important; }
html[data-theme="dark"] .fc-info,
html[data-theme="dark"] .fc-jobs-label,
html[data-theme="dark"] .company-stat-label { color: #8A929E !important; }

/* Aktualności */
html[data-theme="dark"] .art-card,
html[data-theme="dark"] .post-item,
html[data-theme="dark"] .nud-item {
  background: #1F242C !important;
  border-color: #434B58 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .art-card-title { color: #eef2f9 !important; }
html[data-theme="dark"] .art-card-excerpt,
html[data-theme="dark"] .art-card-meta { color: #8A929E !important; }

.theme-toggle {
  width: 32px; height: 30px;
  border: none; background: transparent;
  cursor: pointer; border-radius: 8px;
  display: inline-flex; align-items: center; justify-content: center;
  font-size: 1rem; transition: all .15s;
  margin-left: 6px;
  color: var(--gray-700);
}
.theme-toggle:hover { background: var(--gray-100); }
html[data-theme="dark"] .theme-toggle { color: #fbbf24; }
html[data-theme="dark"] .theme-toggle:hover { background: #434B58; }
.theme-toggle .ico-sun { display: none; }
.theme-toggle .ico-moon { display: inline; }
html[data-theme="dark"] .theme-toggle .ico-sun { display: inline; }
html[data-theme="dark"] .theme-toggle .ico-moon { display: none; }

/* ── CV Generator ──────────────────────────────────────────────────── */
html[data-theme="dark"] .cv-section {
  background: #1F242C !important;
  border-color: #434B58 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .cv-section-title { color: #eef2f9 !important; }
html[data-theme="dark"] .cv-field label,
html[data-theme="dark"] .cv-label { color: #8A929E !important; }
html[data-theme="dark"] .block {
  background: #282E38 !important;
  border-color: #36425a !important;
}
html[data-theme="dark"] .tpl-card {
  background: #1F242C !important;
  border-color: #36425a !important;
  color: #c5cee0 !important;
}
html[data-theme="dark"] .tpl-card:hover { border-color: var(--green) !important; }
html[data-theme="dark"] .tpl-card.active {
  background: #1E3A2A !important;
  border-color: var(--green) !important;
  color: #eef2f9 !important;
}
html[data-theme="dark"] .add-btn {
  background: #282E38 !important;
  border-color: #36425a !important;
  color: #76829a !important;
}
html[data-theme="dark"] .add-btn:hover {
  background: #1E3A2A !important;
  border-color: var(--green) !important;
  color: #4ade80 !important;
}
html[data-theme="dark"] .lang-rm {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #8A929E !important;
}

/* ── Chat ──────────────────────────────────────────────────────────── */
html[data-theme="dark"] .post-card,
html[data-theme="dark"] .post-header,
html[data-theme="dark"] .odp-card,
html[data-theme="dark"] .reply-box,
html[data-theme="dark"] .chat-form-card {
  background: #1F242C !important;
  border-color: #434B58 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .post-card.pinned {
  background: #1E3A2A !important;
  border-color: var(--green) !important;
}
html[data-theme="dark"] .odp-card.own {
  background: #1E3A2A !important;
  border-color: var(--green) !important;
}
html[data-theme="dark"] .post-title,
html[data-theme="dark"] .post-h1 { color: #eef2f9 !important; }
html[data-theme="dark"] .post-body,
html[data-theme="dark"] .odp-text { color: #dde4f1 !important; }
html[data-theme="dark"] .post-meta,
html[data-theme="dark"] .post-preview,
html[data-theme="dark"] .post-footer,
html[data-theme="dark"] .odp-meta { color: #76829a !important; }
html[data-theme="dark"] .login-nudge {
  background: #282E38 !important;
  border-color: #36425a !important;
  color: #8A929E !important;
}
html[data-theme="dark"] .ankieta-box {
  background: #282E38 !important;
  border-color: #36425a !important;
}
html[data-theme="dark"] .ankieta-pytanie { color: #eef2f9 !important; }
html[data-theme="dark"] .ankieta-btn {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .ankieta-btn.moj-glos {
  background: #1E3A2A !important;
  border-color: var(--green) !important;
  color: #4ade80 !important;
}
html[data-theme="dark"] .reply-textarea {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #eef2f9 !important;
}
html[data-theme="dark"] .cf-toggle {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .cf-toggle.active {
  background: #1E3A2A !important;
  border-color: var(--green) !important;
  color: #4ade80 !important;
}
html[data-theme="dark"] .upload-zone {
  background: #282E38 !important;
  border-color: #3e4a63 !important;
}
html[data-theme="dark"] .reply-upload-btn {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #8A929E !important;
}

/* ── CV Premium — pastelowe karty ──────────────────────────────────── */
html[data-theme="dark"] [style*="background: #fef2f2"],
html[data-theme="dark"] [style*="background:#fef2f2"],
html[data-theme="dark"] [style*="background: #f0fff4"],
html[data-theme="dark"] [style*="background:#f0fff4"],
html[data-theme="dark"] [style*="background: #f0fdf4"],
html[data-theme="dark"] [style*="background:#f0fdf4"] {
  background-color: #282E38 !important;
}
html[data-theme="dark"] [style*="border: 1.5px solid #fecaca"],
html[data-theme="dark"] [style*="border:1.5px solid #fecaca"] {
  border-color: #3b1d1d !important;
}
html[data-theme="dark"] [style*="color: #991b1b"],
html[data-theme="dark"] [style*="color:#991b1b"] { color: #fca5a5 !important; }

/* ── Dodatkowe pastelowe tła inline ────────────────────────────────── */
html[data-theme="dark"] [style*="background: #fffbeb"],
html[data-theme="dark"] [style*="background:#fffbeb"],
html[data-theme="dark"] [style*="background: #fff7ed"],
html[data-theme="dark"] [style*="background:#fff7ed"],
html[data-theme="dark"] [style*="background: #faf5ff"],
html[data-theme="dark"] [style*="background:#faf5ff"],
html[data-theme="dark"] [style*="background: #f3e8ff"],
html[data-theme="dark"] [style*="background:#f3e8ff"],
html[data-theme="dark"] [style*="background: #ede9fe"],
html[data-theme="dark"] [style*="background:#ede9fe"],
html[data-theme="dark"] [style*="background: #fce7f3"],
html[data-theme="dark"] [style*="background:#fce7f3"] {
  background-color: #282E38 !important;
}
html[data-theme="dark"] [style*="linear-gradient(135deg, #faf5ff"],
html[data-theme="dark"] [style*="linear-gradient(135deg,#faf5ff"] {
  background: linear-gradient(135deg, #20283c 0%, #434B58 100%) !important;
}
html[data-theme="dark"] [style*="color: #92400e"],
html[data-theme="dark"] [style*="color:#92400e"] { color: #fbbf24 !important; }
html[data-theme="dark"] [style*="color: #7c3aed"],
html[data-theme="dark"] [style*="color:#7c3aed"] { color: #a78bfa !important; }
html[data-theme="dark"] [style*="color: #2563eb"],
html[data-theme="dark"] [style*="color:#2563eb"] { color: #93c5fd !important; }
html[data-theme="dark"] [style*="color: #059669"],
html[data-theme="dark"] [style*="color:#059669"] { color: #6ee7b7 !important; }
html[data-theme="dark"] [style*="color: #ea580c"],
html[data-theme="dark"] [style*="color:#ea580c"] { color: #fb923c !important; }
html[data-theme="dark"] [style*="color: #1d4ed8"],
html[data-theme="dark"] [style*="color:#1d4ed8"] { color: #93c5fd !important; }
html[data-theme="dark"] [style*="color: #166534"],
html[data-theme="dark"] [style*="color:#166534"] { color: #4ade80 !important; }
html[data-theme="dark"] [style*="border: 1px solid #fde68a"],
html[data-theme="dark"] [style*="border:1px solid #fde68a"],
html[data-theme="dark"] [style*="border: 2px solid #fde68a"],
html[data-theme="dark"] [style*="border:2px solid #fde68a"] { border-color: #5a4100 !important; }
html[data-theme="dark"] [style*="border: 1px solid #bbf7d0"],
html[data-theme="dark"] [style*="border:1px solid #bbf7d0"] { border-color: #1E3A2A !important; }

/* ── Aktualności ───────────────────────────────────────────────────── */
html[data-theme="dark"] .news-cat {
  background: #1F242C !important;
  border-color: #36425a !important;
  color: #c5cee0 !important;
}
html[data-theme="dark"] .news-cat.active {
  background: var(--green) !important;
  color: white !important;
  border-color: var(--green) !important;
}
html[data-theme="dark"] .news-card {
  background: #1F242C !important;
  border-color: #434B58 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .news-card.pinned {
  background: linear-gradient(135deg, #1F242C, #1a2a1a) !important;
  border-color: #fbbf24 !important;
}
html[data-theme="dark"] .news-aktualnosc { background: #282E38 !important; color: #93c5fd !important; }
html[data-theme="dark"] .news-zapotrzebowanie { background: #1E3A2A !important; color: #4ade80 !important; }
html[data-theme="dark"] .news-oferta_wspolpracy { background: #2d2000 !important; color: #fbbf24 !important; }
html[data-theme="dark"] .news-zamkniete { background: #2d0f0f !important; color: #fca5a5 !important; }
html[data-theme="dark"] .news-wydarzenie { background: #1e1040 !important; color: #c4b5fd !important; }

/* ── Ankiety / Umfragen ────────────────────────────────────────────── */
html[data-theme="dark"] .poll-card {
  background: #1F242C !important;
  border-color: #434B58 !important;
}
html[data-theme="dark"] .poll-q { color: #eef2f9 !important; }
html[data-theme="dark"] .poll-opts button {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .poll-opts button:hover {
  background: #1E3A2A !important;
  border-color: var(--green) !important;
  color: #4ade80 !important;
}
html[data-theme="dark"] .poll-opts button.voted {
  background: #1E3A2A !important;
  border-color: var(--green) !important;
  color: #4ade80 !important;
}
html[data-theme="dark"] .poll-bar { background: #434B58 !important; }

/* ── Kalkulator ─────────────────────────────────────────────────────── */
html[data-theme="dark"] .kc {
  background: #1F242C !important;
  border-color: #434B58 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .kt { color: #eef2f9 !important; }
html[data-theme="dark"] .ki {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #eef2f9 !important;
}
html[data-theme="dark"] .kb {
  background: #1F242C !important;
  border-color: #36425a !important;
  color: #c5cee0 !important;
}
html[data-theme="dark"] .kres {
  background: #282E38 !important;
  color: #eef2f9 !important;
}
html[data-theme="dark"] .kno {
  background: #282E38 !important;
  color: #76829a !important;
}
html[data-theme="dark"] .kr { border-bottom-color: #434B58 !important; }
html[data-theme="dark"] .tp {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #8A929E !important;
}
html[data-theme="dark"] .tp.act {
  background: #1E3A2A !important;
  border-color: var(--green) !important;
  color: #4ade80 !important;
}
html[data-theme="dark"] .stop-row {
  background: #282E38 !important;
  border-color: #36425a !important;
}
html[data-theme="dark"] .tdt {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #eef2f9 !important;
}

/* ── Asystent pism ──────────────────────────────────────────────────── */
html[data-theme="dark"] .doc-lang,
html[data-theme="dark"] .doc-example {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #8A929E !important;
}
html[data-theme="dark"] .doc-lang.active { color: #93c5fd !important; }

/* ── Konto dashboard ────────────────────────────────────────────────── */
html[data-theme="dark"] .konto-card {
  background: #1F242C !important;
  border-color: #434B58 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .konto-card h3 { color: #eef2f9 !important; }
html[data-theme="dark"] .konto-card p { color: #8A929E !important; }
html[data-theme="dark"] .konto-section h2 { color: #eef2f9 !important; }
html[data-theme="dark"] .konto-hello h1 { color: #eef2f9 !important; }
html[data-theme="dark"] .konto-hello p { color: #8A929E !important; }
html[data-theme="dark"] .konto-badge.firma  { background: #282E38 !important; color: #93c5fd !important; }
html[data-theme="dark"] .konto-badge.kandydat { background: #1E3A2A !important; color: #4ade80 !important; }
html[data-theme="dark"] .konto-logout a {
  background: #1F242C !important;
  border-color: #36425a !important;
  color: #8A929E !important;
}
html[data-theme="dark"] .pf-field label { color: #c5cee0 !important; }
html[data-theme="dark"] .pf-success { background: #1E3A2A !important; border-color: var(--green) !important; color: #4ade80 !important; }
html[data-theme="dark"] .pf-error   { background: #2d0f0f !important; border-color: #7f1d1d !important; color: #fca5a5 !important; }

/* ── Welcome / onboarding modal ─────────────────────────────────────── */
html[data-theme="dark"] #welcome-modal > div {
  background: #1d2438 !important;
}
html[data-theme="dark"] #wm-choose button {
  background: #282E38 !important;
  border-color: #36425a !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] #wm-choose button div[style*="color:#20283c"],
html[data-theme="dark"] #wm-choose button div[style*="color: #20283c"] {
  color: #eef2f9 !important;
}
html[data-theme="dark"] #wm-praca a,
html[data-theme="dark"] #wm-firma a {
  background: #1F242C !important;
  border-color: #434B58 !important;
  color: #dde4f1 !important;
}

/* ── Checklista ─────────────────────────────────────────────────────── */
html[data-theme="dark"] .chk {
  background: #1F242C !important;
  border-color: #434B58 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .chk:hover { border-color: var(--green) !important; }
html[data-theme="dark"] .chk-group { color: #eef2f9 !important; }

/* ── Poradnik (guide steps) ─────────────────────────────────────────── */
html[data-theme="dark"] .step {
  background: #1F242C !important;
  border-color: #434B58 !important;
}
html[data-theme="dark"] .step:hover { border-color: var(--green) !important; }
html[data-theme="dark"] .step-body h3 { color: #eef2f9 !important; }
html[data-theme="dark"] .step-body p { color: #c5cee0 !important; }
html[data-theme="dark"] .link-btn {
  background: #1F242C !important;
  border-color: #36425a !important;
  color: #c5cee0 !important;
}
html[data-theme="dark"] .link-btn:hover { border-color: var(--green) !important; color: #4ade80 !important; }

/* ── Regi / Duo widget ──────────────────────────────────────────────── */
html[data-theme="dark"] #duo-help-btn {
  background: #1F242C !important;
  border-color: #36425a !important;
  box-shadow: 0 4px 16px rgba(0,0,0,.4) !important;
}
html[data-theme="dark"] #duo-help-label { color: #8A929E !important; }
html[data-theme="dark"] #duo-chat {
  background: #1d2438 !important;
  border-color: #434B58 !important;
}
html[data-theme="dark"] #duo-chat-messages { background: #1d2438 !important; }
html[data-theme="dark"] .duo-msg.duo {
  background: #1E3A2A !important;
  color: #4ade80 !important;
}
html[data-theme="dark"] #duo-chat-quick button {
  background: #1E3A2A !important;
  border-color: #166534 !important;
  color: #4ade80 !important;
}
html[data-theme="dark"] #duo-chat-quick button:hover { background: #166534 !important; }
html[data-theme="dark"] #duo-chat-input {
  background: #1d2438 !important;
  border-top-color: #434B58 !important;
}
html[data-theme="dark"] #duo-chat-input input {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #eef2f9 !important;
}

/* ── Chat sidebar ───────────────────────────────────────────────────── */
html[data-theme="dark"] #chat-sidebar {
  background: #1d2438 !important;
  border-left-color: #434B58 !important;
}
html[data-theme="dark"] #chat-kanaly {
  background: #1F242C !important;
  border-bottom-color: #434B58 !important;
}
html[data-theme="dark"] .cw-kanal {
  border-color: #36425a !important;
  color: #8A929E !important;
}
html[data-theme="dark"] .cw-kanal:hover,
html[data-theme="dark"] .cw-kanal.active {
  background: #1E3A2A !important;
  border-color: var(--green) !important;
  color: #4ade80 !important;
}
html[data-theme="dark"] .cw-post-card {
  background: #1F242C !important;
  border-color: #434B58 !important;
}
html[data-theme="dark"] .cw-post-card:hover { background: #282E38 !important; }
html[data-theme="dark"] .cw-post-title { color: #eef2f9 !important; }
html[data-theme="dark"] .cw-post-preview,
html[data-theme="dark"] .cw-post-meta { color: #76829a !important; }
html[data-theme="dark"] #chat-quick-post { background: #1F242C !important; border-top-color: #434B58 !important; }
html[data-theme="dark"] .cw-input {
  background: #434B58 !important;
  border-color: #3e4a63 !important;
  color: #eef2f9 !important;
}
html[data-theme="dark"] .nav-user-drop {
  background: #1F242C !important;
  border-color: #434B58 !important;
}
html[data-theme="dark"] .nud-header {
  background: linear-gradient(135deg, #1E3A2A, #0e3a36) !important;
  border-bottom-color: #434B58 !important;
}
html[data-theme="dark"] .nud-name { color: #eef2f9 !important; }
html[data-theme="dark"] .nud-item { color: #dde4f1 !important; }
html[data-theme="dark"] .nud-item:hover { background: #434B58 !important; color: #4ade80 !important; }
html[data-theme="dark"] .nud-sep { background: #434B58 !important; }
html[data-theme="dark"] .nud-logout:hover { background: #2d0f0f !important; }

/* Hero badge: hardcoded rgba(255,255,255,0.8) bg stays white in dark mode
   → text (--gray-500 remapped to light) becomes invisible on white. Fix: */
html[data-theme="dark"] .hero-badge {
    background: rgba(255,255,255,0.06) !important;
    border-color: rgba(255,255,255,0.10) !important;
    color: #8A929E !important;
}

/* ── Strona główna – dark mode ── */

/* Search bar */
html[data-theme="dark"] .search-bar {
    background: #434B58 !important;
    box-shadow: 0 4px 24px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,255,255,0.06) !important;
    border-color: rgba(255,255,255,0.08) !important;
}
html[data-theme="dark"] .search-bar input,
html[data-theme="dark"] .search-bar select {
    background: transparent !important;
    color: #dde4f1 !important;
    border-color: rgba(255,255,255,0.08) !important;
}
html[data-theme="dark"] .search-bar input::placeholder { color: #515e78 !important; }
html[data-theme="dark"] .search-bar:focus-within {
    border-color: #4ade80 !important;
    box-shadow: 0 4px 24px rgba(0,0,0,0.5), 0 0 0 4px rgba(74,222,128,0.12) !important;
}

/* Hero stats (chips under search bar) */
html[data-theme="dark"] .hero-stat {
    background: rgba(255,255,255,0.06) !important;
    border-color: rgba(255,255,255,0.10) !important;
    color: #c5cee0 !important;
}
html[data-theme="dark"] .hero-stat strong { color: #eef2f9 !important; }
html[data-theme="dark"] .hero-stat:hover {
    background: rgba(255,255,255,0.10) !important;
    box-shadow: 0 4px 14px rgba(0,0,0,0.35) !important;
}
html[data-theme="dark"] .hero-stat-warm {
    background: linear-gradient(135deg, rgba(251,146,60,0.18), rgba(249,115,22,0.18)) !important;
    border-color: rgba(249,115,22,0.40) !important;
    color: #fdba74 !important;
}
html[data-theme="dark"] .hero-stat-warm:hover {
    border-color: rgba(249,115,22,0.65) !important;
    box-shadow: 0 4px 14px rgba(249,115,22,0.25) !important;
}
html[data-theme="dark"] .hero-bridge-ok {
    background: linear-gradient(135deg, rgba(34,197,94,0.20), rgba(20,184,166,0.20)) !important;
    border-color: rgba(34,197,94,0.40) !important;
    color: #6ee7b7 !important;
}
html[data-theme="dark"] .hero-bridge-slow {
    background: linear-gradient(135deg, rgba(251,191,36,0.20), rgba(245,158,11,0.20)) !important;
    border-color: rgba(245,158,11,0.45) !important;
    color: #fcd34d !important;
}
html[data-theme="dark"] .hero-bridge-jam {
    background: linear-gradient(135deg, rgba(239,68,68,0.22), rgba(220,38,38,0.22)) !important;
    border-color: rgba(239,68,68,0.45) !important;
    color: #fca5a5 !important;
}
html[data-theme="dark"] .hero-stat-link strong { color: inherit !important; }

/* Seg-cards (Pracownicy / Pracodawcy / Absolwenci) */
html[data-theme="dark"] .seg-card {
    background: #282E38 !important;
    border-color: rgba(255,255,255,0.07) !important;
}
html[data-theme="dark"] .seg-card:hover {
    border-color: #4ade80 !important;
    box-shadow: 0 8px 24px rgba(74,222,128,0.08) !important;
}
html[data-theme="dark"] .seg-title { color: #eef2f9 !important; }
html[data-theme="dark"] .seg-desc  { color: #8A929E !important; }
html[data-theme="dark"] .seg-cta   { color: #4ade80 !important; border-top-color: rgba(255,255,255,0.07) !important; }

/* Pillar cards */
html[data-theme="dark"] .pillar {
    background: #282E38 !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.4) !important;
    border-color: rgba(255,255,255,0.06) !important;
}
html[data-theme="dark"] .pillar:hover {
    box-shadow: 0 8px 32px rgba(0,0,0,0.5) !important;
}
html[data-theme="dark"] .pillar-title { color: #eef2f9 !important; }
html[data-theme="dark"] .pillar-count { color: #eef2f9 !important; }

/* Bento – "Wszystkie funkcje" card (bc-more) */
html[data-theme="dark"] .bc-more {
    background: rgba(255,255,255,0.04) !important;
    border-color: rgba(255,255,255,0.12) !important;
    border-style: dashed !important;
}
html[data-theme="dark"] .bc-more .bc-title { color: #8A929E !important; }
html[data-theme="dark"] .bc-more .bc-desc  { color: #76829a !important; }
html[data-theme="dark"] .bc-more:hover {
    background: rgba(255,255,255,0.07) !important;
    border-color: #4ade80 !important;
}

/* ── Ikony bento / seg-cards – pastelowe tła zastąpione ciemnymi ── */
html[data-theme="dark"] .ic-green  { background: rgba(34,197,94,0.15)  !important; color: #4ade80  !important; }
html[data-theme="dark"] .ic-blue   { background: rgba(59,130,246,0.15)  !important; color: #93c5fd  !important; }
html[data-theme="dark"] .ic-indigo { background: rgba(99,102,241,0.15)  !important; color: #a5b4fc  !important; }
html[data-theme="dark"] .ic-orange { background: rgba(245,158,11,0.15)  !important; color: #fbbf24  !important; }
html[data-theme="dark"] .ic-purple { background: rgba(139,92,246,0.15)  !important; color: #c4b5fd  !important; }
html[data-theme="dark"] .ic-teal   { background: rgba(20,184,166,0.15)  !important; color: #5eead4  !important; }
html[data-theme="dark"] .ic-gray   { background: rgba(100,116,139,0.15) !important; color: #8A929E  !important; }
html[data-theme="dark"] .ic-pink   { background: rgba(236,72,153,0.15)  !important; color: #f9a8d4  !important; }

/* Bento – AI badge */
html[data-theme="dark"] .bc-ai {
    background: rgba(34,197,94,0.12) !important;
    border-color: rgba(74,222,128,0.25) !important;
    color: #4ade80 !important;
}

/* Social-media icon badges (inline hardcoded colors) */
html[data-theme="dark"] [style*="background:#e8f0fe"],
html[data-theme="dark"] [style*="background: #e8f0fe"] {
    background: rgba(24,119,242,0.15) !important;
}
html[data-theme="dark"] [style*="background:#fce4ec"],
html[data-theme="dark"] [style*="background: #fce4ec"] {
    background: rgba(228,64,95,0.15) !important;
}
html[data-theme="dark"] [style*="background:#e1ecf4"],
html[data-theme="dark"] [style*="background: #e1ecf4"] {
    background: rgba(10,102,194,0.15) !important;
}

/* ── CV Matching Results ─────────────────────────────────────────── */
/* Bazowa karta wyników */
html[data-theme="dark"] .cvr-inner {
    background: #1F242C !important;
    border-color: #36425a !important;
}
/* Wysoki wynik (zielony) */
html[data-theme="dark"] .cvr-hi {
    background: linear-gradient(135deg, #1F242C, #0d2416) !important;
    border-color: #166534 !important;
}
html[data-theme="dark"] .cvr-card:hover .cvr-hi {
    box-shadow: 0 12px 32px rgba(34,197,94,0.15) !important;
}
/* Średni wynik (żółty) */
html[data-theme="dark"] .cvr-md {
    background: linear-gradient(135deg, #1F242C, #1c1505) !important;
    border-color: #854d0e !important;
}
html[data-theme="dark"] .cvr-card:hover .cvr-md {
    box-shadow: 0 12px 32px rgba(217,119,6,0.15) !important;
}
/* Niski wynik */
html[data-theme="dark"] .cvr-lo {
    border-color: #36425a !important;
}
/* Tekst tytułu oferty */
html[data-theme="dark"] .cvr-inner [style*="color: var(--gray-900)"],
html[data-theme="dark"] .cvr-inner [style*="color:var(--gray-900)"] {
    color: #eef2f9 !important;
}
/* AI reason box */
html[data-theme="dark"] .cvr-reason {
    background: #282E38 !important;
    border-left-color: #3e4a63 !important;
    color: #8A929E !important;
}
html[data-theme="dark"] .cvr-reason-hi {
    background: rgba(34,197,94,0.12) !important;
    border-left-color: #22c55e !important;
    color: #4ade80 !important;
}
html[data-theme="dark"] .cvr-reason-md {
    background: rgba(245,158,11,0.10) !important;
    border-left-color: #d97706 !important;
    color: #fbbf24 !important;
}
/* Score ring bg */
html[data-theme="dark"] .cvr-ring circle[stroke="var(--gray-100)"] {
    stroke: #434B58 !important;
}
/* Score liczby */
html[data-theme="dark"] .cvr-ring-hi .cvr-score { color: #4ade80 !important; }
html[data-theme="dark"] .cvr-ring-md .cvr-score { color: #fbbf24 !important; }
html[data-theme="dark"] .cvr-ring-lo .cvr-score { color: #76829a !important; }
/* Tagi */
html[data-theme="dark"] .cvr-tag {
    background: #434B58 !important;
    color: #8A929E !important;
}
html[data-theme="dark"] .cvr-tag-sal {
    background: rgba(34,197,94,0.12) !important;
    color: #4ade80 !important;
}
html[data-theme="dark"] .cvr-tag-cta {
    background: rgba(59,130,246,0.15) !important;
    color: #93c5fd !important;
}
/* Flagi krajów */
html[data-theme="dark"] .cvr-flag-pl { background: rgba(239,68,68,0.15) !important; }
html[data-theme="dark"] .cvr-flag-de { background: rgba(59,130,246,0.15) !important; }
/* Przyciski akcji */
html[data-theme="dark"] .cvr-btn {
    background: #1F242C !important;
    border-color: #36425a !important;
    color: #dde4f1 !important;
}
html[data-theme="dark"] .cvr-btn:hover {
    border-color: var(--green) !important;
    color: #4ade80 !important;
}
/* Przycisk zgłoszenia */
html[data-theme="dark"] .cvr-report-btn {
    border-color: #36425a !important;
    color: #76829a !important;
}

/* Event cards */
html[data-theme="dark"] .event-card {
    background: #1F242C !important;
    border-color: #434B58 !important;
}
html[data-theme="dark"] .event-card:hover {
    border-color: #261d44 !important;
    box-shadow: var(--shadow-md) !important;
}
html[data-theme="dark"] .event-title { color: #eef2f9 !important; }
html[data-theme="dark"] .event-meta,
html[data-theme="dark"] .event-tag   { color: #76829a !important; }

/* ── Dni wolne ──────────────────────────────────────────────────── */
html[data-theme="dark"] .hw-tab {
    background: #434B58 !important;
    border-color: #3e4a63 !important;
    color: #8A929E !important;
}
html[data-theme="dark"] .hw-tab:hover {
    border-color: var(--green) !important;
    color: #4ade80 !important;
}
html[data-theme="dark"] .hw-tab.active {
    background: var(--green) !important;
    border-color: var(--green) !important;
    color: white !important;
}
html[data-theme="dark"] .hw-row {
    background: #1F242C !important;
    border-color: #434B58 !important;
}
html[data-theme="dark"] .hw-row.c-today {
    background: rgba(34,197,94,0.10) !important;
    border-color: rgba(74,222,128,0.3) !important;
}
html[data-theme="dark"] .hw-row.c-soon {
    background: rgba(245,158,11,0.10) !important;
    border-color: rgba(251,191,36,0.3) !important;
}
html[data-theme="dark"] .hw-nm   { color: #dde4f1 !important; }
html[data-theme="dark"] .hw-dt   { color: #76829a !important; }
html[data-theme="dark"] .hw-year { color: #515e78 !important; }
html[data-theme="dark"] .hw-b-future { background: #434B58 !important; color: #76829a !important; }
html[data-theme="dark"] .hw-b-past   { background: #1F242C !important; color: #3e4a63 !important; }
html[data-theme="dark"] .hw-note     { color: #515e78 !important; }

/* ===== PATCH 2026-04-28: brakujące kolory pale backgrounds + misc ===== */

/* Pale semantic backgrounds */
html[data-theme="dark"] [style*="background:#f0fdf4"],
html[data-theme="dark"] [style*="background: #f0fdf4"],
html[data-theme="dark"] [style*="background:#ecfdf5"],
html[data-theme="dark"] [style*="background: #ecfdf5"],
html[data-theme="dark"] [style*="background:#dcfce7"],
html[data-theme="dark"] [style*="background: #dcfce7"] {
  background-color: #1E3A2A !important;
}
html[data-theme="dark"] [style*="background:#eff6ff"],
html[data-theme="dark"] [style*="background: #eff6ff"],
html[data-theme="dark"] [style*="background:#dbeafe"],
html[data-theme="dark"] [style*="background: #dbeafe"],
html[data-theme="dark"] [style*="background:#e0f2fe"],
html[data-theme="dark"] [style*="background: #e0f2fe"] {
  background-color: #282E38 !important;
}
html[data-theme="dark"] [style*="background:#fef2f2"],
html[data-theme="dark"] [style*="background: #fef2f2"],
html[data-theme="dark"] [style*="background:#fee2e2"],
html[data-theme="dark"] [style*="background: #fee2e2"],
html[data-theme="dark"] [style*="background:#fff1f2"],
html[data-theme="dark"] [style*="background: #fff1f2"] {
  background-color: #2a0e0e !important;
}
html[data-theme="dark"] [style*="background:#fef3c7"],
html[data-theme="dark"] [style*="background: #fef3c7"],
html[data-theme="dark"] [style*="background:#fffbeb"],
html[data-theme="dark"] [style*="background: #fffbeb"],
html[data-theme="dark"] [style*="background:#fef9c3"],
html[data-theme="dark"] [style*="background: #fef9c3"] {
  background-color: #2a1f06 !important;
}
html[data-theme="dark"] [style*="background:#fff7ed"],
html[data-theme="dark"] [style*="background: #fff7ed"],
html[data-theme="dark"] [style*="background:#ffedd5"],
html[data-theme="dark"] [style*="background: #ffedd5"] {
  background-color: #261508 !important;
}
html[data-theme="dark"] [style*="background:#f5f3ff"],
html[data-theme="dark"] [style*="background: #f5f3ff"],
html[data-theme="dark"] [style*="background:#ede9fe"],
html[data-theme="dark"] [style*="background: #ede9fe"],
html[data-theme="dark"] [style*="background:#fdf4ff"],
html[data-theme="dark"] [style*="background: #fdf4ff"] {
  background-color: #1e1042 !important;
}

/* Pale blue form backgrounds */
html[data-theme="dark"] [style*="background:#f0f7ff"],
html[data-theme="dark"] [style*="background: #f0f7ff"] {
  background-color: #282E38 !important;
}

/* Missing border colours */
html[data-theme="dark"] [style*="border:1.5px solid #e5e7eb"],
html[data-theme="dark"] [style*="border: 1.5px solid #e5e7eb"],
html[data-theme="dark"] [style*="border:1.5px solid #d1d5db"],
html[data-theme="dark"] [style*="border: 1.5px solid #d1d5db"],
html[data-theme="dark"] [style*="border:1.5px solid #dde4f1"],
html[data-theme="dark"] [style*="border: 1.5px solid #dde4f1"],
html[data-theme="dark"] [style*="border:1px solid #d1d5db"],
html[data-theme="dark"] [style*="border: 1px solid #d1d5db"] {
  border-color: #36425a !important;
}

/* colour #515e78 (slate-600) in inline styles — too dark for dark mode */
html[data-theme="dark"] [style*="color:#515e78"],
html[data-theme="dark"] [style*="color: #515e78"] {
  color: #8A929E !important;
}

/* Dark red / dark text in error states */
html[data-theme="dark"] [style*="color:#991b1b"],
html[data-theme="dark"] [style*="color: #991b1b"],
html[data-theme="dark"] [style*="color:#7f1d1d"],
html[data-theme="dark"] [style*="color: #7f1d1d"] {
  color: #fca5a5 !important;
}

/* konto / moja-firma specific sections */
html[data-theme="dark"] .konto-header,
html[data-theme="dark"] .konto-card,
html[data-theme="dark"] .konto-box {
  background: #1F242C !important;
  border-color: #434B58 !important;
  color: #dde4f1 !important;
}
html[data-theme="dark"] .firma-section,
html[data-theme="dark"] .firma-card,
html[data-theme="dark"] .firma-box {
  background: #1F242C !important;
  border-color: #434B58 !important;
}

/* OAuth buttons — keep their brand colors, just fix text contrast */
html[data-theme="dark"] [style*="background:#4285f4"],
html[data-theme="dark"] [style*="background: #4285f4"] {
  /* Google button — keep original color */
  opacity: 0.92;
}

/* Alert/status colors fix in error messages */
html[data-theme="dark"] [style*="color:#b91c1c"],
html[data-theme="dark"] [style*="color: #b91c1c"] {
  color: #fca5a5 !important;
}
html[data-theme="dark"] [style*="color:#166534"],
html[data-theme="dark"] [style*="color: #166534"],
html[data-theme="dark"] [style*="color:#065f46"],
html[data-theme="dark"] [style*="color: #065f46"] {
  color: #4ade80 !important;
}
html[data-theme="dark"] [style*="color:#1e40af"],
html[data-theme="dark"] [style*="color: #1e40af"],
html[data-theme="dark"] [style*="color:#1d4ed8"],
html[data-theme="dark"] [style*="color: #1d4ed8"] {
  color: #93c5fd !important;
}
html[data-theme="dark"] [style*="color:#92400e"],
html[data-theme="dark"] [style*="color: #92400e"],
html[data-theme="dark"] [style*="color:#b45309"],
html[data-theme="dark"] [style*="color: #b45309"],
html[data-theme="dark"] [style*="color:#854d0e"],
html[data-theme="dark"] [style*="color: #854d0e"] {
  color: #fcd34d !important;
}

/* ogl-card, moje-card w dark mode */
html[data-theme="dark"] .ogl-card,
html[data-theme="dark"] .moje-card {
  background: #1F242C !important;
  border-color: #434B58 !important;
}
html[data-theme="dark"] .ogl-title { color: #eef2f9 !important; }
html[data-theme="dark"] .ogl-info-card { background: #282E38 !important; }

/* job-card w dark mode */
html[data-theme="dark"] .job-card {
  background: #1F242C !important;
  border-color: #434B58 !important;
}
html[data-theme="dark"] .job-title { color: #eef2f9 !important; }

/* ═══ Dodaj/Edytuj ofertę — dark mode ═══ */
html[data-theme="dark"] .dr-form-section {
    background: #434B58 !important;
    border-color: rgba(255,255,255,0.08) !important;
}
html[data-theme="dark"] .dr-form-section h3 { color: #eef2f9 !important; }
html[data-theme="dark"] .dr-label { color: #c5cee0 !important; }
html[data-theme="dark"] .dr-hint { color: #8A929E !important; }
html[data-theme="dark"] .dr-input,
html[data-theme="dark"] .dr-select,
html[data-theme="dark"] .dr-textarea {
    background: #20283c !important;
    border-color: rgba(255,255,255,0.10) !important;
    color: #dde4f1 !important;
}
html[data-theme="dark"] .dr-input:focus,
html[data-theme="dark"] .dr-select:focus { border-color: #4ade80 !important; }
html[data-theme="dark"] .dr-chip {
    background: rgba(255,255,255,0.04) !important;
    border-color: rgba(255,255,255,0.10) !important;
    color: #c5cee0 !important;
}
html[data-theme="dark"] .dr-chip:hover {
    background: rgba(34,197,94,0.15) !important;
    border-color: rgba(74,222,128,0.4) !important;
}
html[data-theme="dark"] .dr-chip.active {
    background: #22c55e !important;
    color: white !important;
    border-color: #22c55e !important;
}
html[data-theme="dark"] .dr-chip-remove {
    background: rgba(34,197,94,0.15) !important;
    border-color: rgba(74,222,128,0.3) !important;
    color: #86efac !important;
}
html[data-theme="dark"] .dr-chip-remove button { color: #86efac !important; }
html[data-theme="dark"] .dr-autocomplete-list {
    background: #434B58 !important;
    border-color: rgba(255,255,255,0.08) !important;
}
html[data-theme="dark"] .dr-autocomplete-item {
    color: #dde4f1 !important;
    border-bottom-color: rgba(255,255,255,0.05) !important;
}
html[data-theme="dark"] .dr-autocomplete-item:hover,
html[data-theme="dark"] .dr-autocomplete-item.focused { background: rgba(34,197,94,0.10) !important; }
html[data-theme="dark"] .dr-actions { background: #20283c !important; border-color: rgba(255,255,255,0.08) !important; }
html[data-theme="dark"] .dr-btn-secondary {
    background: #434B58 !important;
    border-color: rgba(255,255,255,0.10) !important;
    color: #c5cee0 !important;
}
html[data-theme="dark"] .dr-btn-secondary:hover { border-color: #4ade80 !important; color: #4ade80 !important; }
html[data-theme="dark"] .dr-modal-card { background: #434B58 !important; color: #dde4f1 !important; }
html[data-theme="dark"] .dr-modal-card h2 { color: #eef2f9 !important; }
html[data-theme="dark"] .dr-modal-card .dr-section-title { color: #eef2f9 !important; }
html[data-theme="dark"] .dr-modal-card .dr-preview-body { color: #c5cee0 !important; }
/* Quill in dark */
html[data-theme="dark"] .ql-toolbar.ql-snow {
    background: #20283c !important;
    border-color: rgba(255,255,255,0.10) !important;
}
html[data-theme="dark"] .ql-toolbar.ql-snow .ql-stroke { stroke: #c5cee0 !important; }
html[data-theme="dark"] .ql-toolbar.ql-snow .ql-fill { fill: #c5cee0 !important; }
html[data-theme="dark"] .ql-toolbar.ql-snow .ql-picker-label { color: #c5cee0 !important; }
html[data-theme="dark"] .ql-container.ql-snow {
    background: #434B58 !important;
    border-color: rgba(255,255,255,0.10) !important;
    color: #dde4f1 !important;
}
html[data-theme="dark"] .ql-editor.ql-blank::before { color: #76829a !important; }

/* ═══ Show oferta — sekcje + benefity ═══ */
html[data-theme="dark"] .dr-offer-body { color: #c5cee0 !important; }
html[data-theme="dark"] .dr-offer-body a { color: #4ade80 !important; }

/* Benefit pills + ikony sekcji (dark) */
html[data-theme="dark"] .dr-pv-benefit {
    background: rgba(255,255,255,0.05) !important;
    border-color: rgba(255,255,255,0.10) !important;
    color: #c5cee0 !important;
}
html[data-theme="dark"] .dr-ico-accent { color: #4ade80 !important; }

/* Edytor: pełny ekran + przyciski (dark) */
html[data-theme="dark"] .dr-editor-wrap.dr-fs-active { background: #20283c !important; }
html[data-theme="dark"] .dr-fs-btn {
    background: rgba(30,41,59,.92) !important; border-color: rgba(255,255,255,.12) !important; color: #c5cee0 !important;
}
html[data-theme="dark"] .dr-fs-btn:hover { background: #434B58 !important; color: #4ade80 !important; border-color: #4ade80 !important; }
html[data-theme="dark"] .dr-fs-hint { color: #76829a !important; }

/* ═══ Strona oferty + boks aplikowania (dark mode) — hardcoded jasne tła ═══ */
/* Quick-apply: białe boksy → ciemne */
html[data-theme="dark"] #qa-no-profile { background:#434B58 !important; border-color:rgba(255,255,255,.08) !important; }
html[data-theme="dark"] #qa-no-profile > div { color:#c5cee0 !important; }
html[data-theme="dark"] #qa-apply-form,
html[data-theme="dark"] #qa-form-wrap { background:#434B58 !important; border-color:rgba(255,255,255,.08) !important; }
html[data-theme="dark"] #qa-apply-form label,
html[data-theme="dark"] #qa-form-wrap label,
html[data-theme="dark"] #qa-apply-form > div:first-child,
html[data-theme="dark"] #qa-form-wrap > div:first-child { color:#dde4f1 !important; }
html[data-theme="dark"] #qa-msg,
html[data-theme="dark"] #qa-cv,
html[data-theme="dark"] #qa-imie,
html[data-theme="dark"] #qa-email,
html[data-theme="dark"] #qa-tel,
html[data-theme="dark"] #apl-cv,
html[data-theme="dark"] #apl-cv2 { background:#20283c !important; border-color:rgba(255,255,255,.10) !important; color:#dde4f1 !important; }
html[data-theme="dark"] #qa-has-profile > div { background:linear-gradient(135deg, rgba(34,197,94,.12), rgba(20,184,166,.12)) !important; border-color:rgba(34,197,94,.40) !important; }
html[data-theme="dark"] #qa-sent { background:rgba(34,197,94,.12) !important; border-color:rgba(34,197,94,.40) !important; }
html[data-theme="dark"] #qa-sent div { color:#86efac !important; }

/* Show: sekcja aplikowania + białe boksy metod aplikacji */
html[data-theme="dark"] #aplikuj-section { background:linear-gradient(135deg, rgba(34,197,94,.10), rgba(20,184,166,.08)) !important; border-color:rgba(34,197,94,.45) !important; }
html[data-theme="dark"] #aplikuj-section [style*="background: white"],
html[data-theme="dark"] #aplikuj-section [style*="background:white"],
html[data-theme="dark"] #dr-form-section { background:#434B58 !important; }
html[data-theme="dark"] #aplikuj-section [style*="background: white"] [style*="color: var(--gray-900)"] { color:#dde4f1 !important; }

/* Owner toolbar (Edytuj/Zakończ/Usuń) — jasne przyciski → ciemne */
html[data-theme="dark"] a[href^="/edytuj-oferte"] { background:rgba(255,255,255,.06) !important; color:#c5cee0 !important; }

/* Banery: wygasła / szkic / zakończona */
html[data-theme="dark"] [style*="background:#fef2f2"],
html[data-theme="dark"] [style*="background: #fef2f2"] { background:rgba(239,68,68,.12) !important; color:#fca5a5 !important; }
html[data-theme="dark"] [style*="background:#fef3c7"],
html[data-theme="dark"] [style*="background: #fef3c7"] { background:rgba(245,158,11,.12) !important; color:#fcd34d !important; }
html[data-theme="dark"] [style*="background:#eef2f9"] { background:rgba(255,255,255,.05) !important; color:#c5cee0 !important; }

/* ===========================================================================
   Poprawki z audytu 17.08.2026 — miejsca, w których tryb ciemny nie sięgał,
   bo jasne tło siedziało w regule klasowej, a nie w atrybucie style=.
   =========================================================================== */

/* Tokeny akcentu nie miały wariantu ciemnego: --green-dark ma 182 użycia jako
   kolor tekstu (kontrast 2,1:1 na ciemnym tle), --blue-dark 25. */
html[data-theme="dark"] {
  --green-dark: #6ee7a3;
  --blue-dark:  #93c5fd;
}
/* Sześć miejsc używa --green-dark jako TŁA przycisku przy najechaniu — tam jasna
   zieleń pod białym napisem byłaby krokiem wstecz, więc zostaje pełny zielony. */
html[data-theme="dark"] .nav-cta:hover,
html[data-theme="dark"] .reply-btn:hover,
html[data-theme="dark"] .news-cta:hover,
html[data-theme="dark"] .contact-reveal-btn:hover { background: #15803d !important; color: #fff !important; }

/* Karty firm na stronie branży: białe tło zostawało białe, nazwa firmy dawała 1,12:1 */
html[data-theme="dark"] .bf-card { background: #1F242C !important; border-color: #434B58 !important; }
html[data-theme="dark"] .bf-card, html[data-theme="dark"] .bf-card * { color: #dde4f1; }
html[data-theme="dark"] .bf-card [style*="color:#111827"],
html[data-theme="dark"] .bf-card [style*="color: #111827"] { color: #f1f5f9 !important; }

/* „Filtruj oferty" — jedyne wejście do filtrów na telefonie, biały napis na białym tle */
html[data-theme="dark"] #filters-toggle {
  background: #2f3a50 !important; color: #dde4f1 !important; border-color: #3e4a63 !important;
}

/* Boks B2B na cenach paliw: tło brało --gray-900, który w trybie ciemnym jest JASNY,
   więc wychodził biały tekst na białym tle (1,03:1). */
html[data-theme="dark"] .cp-b2b { background: #1F242C !important; border-color: #1e293b !important; }
html[data-theme="dark"] .cp-b2b h3, html[data-theme="dark"] .cp-b2b p { color: #e2e8f0 !important; }
html[data-theme="dark"] .cp-b2b-cta { background: #16a34a !important; color: #fff !important; }
