/*
 * KRÓTKOWZROCZNOŚĆ.PL — pełny motyw jasny
 * Warstwa jest aktywna wyłącznie po wyborze „Jasna strona”.
 * Ciemny motyw i treść dokumentów pozostają bez zmian.
 */

html.kz-theme-light {
  color-scheme: light;
  --light-canvas: #eef1f4;
  --light-canvas-warm: #f5f1e9;
  --light-paper: #ffffff;
  --light-paper-warm: #fffaf2;
  --light-paper-cool: #f7f9fb;
  --light-ink: #0c1117;
  --light-ink-soft: #182129;
  --light-muted: #3f4b56;
  --light-muted-2: #596570;
  --light-line: rgba(12, 17, 23, 0.13);
  --light-line-strong: rgba(12, 17, 23, 0.22);
  --light-coral: #e9663d;
  --light-coral-dark: #b84425;
  --light-gold: #bd7c28;
  --light-green: #0d5b4b;
  --light-green-deep: #073b32;
  --light-navy: #10283a;
  --light-red: #ad2f2d;
  --light-shadow-sm: 0 14px 34px -24px rgba(14, 25, 35, 0.38);
  --light-shadow: 0 28px 70px -42px rgba(14, 25, 35, 0.42);
  --light-shadow-strong: 0 34px 86px -46px rgba(14, 25, 35, 0.58);
  --light-radius: 28px;
  --light-radius-sm: 18px;
}

html.kz-theme-light body,
html.kz-theme-light body.kz-page,
html.kz-theme-light :is(
  .kz-page,
  .knowledge-page,
  .about-page,
  .epi-page,
  .prak-page,
  .methods-page,
  .locations-page,
  .report-page,
  .access-page,
  .archive-page,
  .information-page,
  .mp-page
) {
  color: var(--light-ink) !important;
  background:
    radial-gradient(circle at 7% 0%, rgba(208, 223, 229, 0.62), transparent 34rem),
    radial-gradient(circle at 96% 22%, rgba(245, 218, 183, 0.4), transparent 31rem),
    linear-gradient(180deg, #f9fafb 0%, var(--light-canvas) 58%, #e9edf1 100%) fixed !important;
}

html.kz-theme-light body {
  --kz-cream: var(--light-canvas);
  --kz-cream-2: #e7ebef;
  --kz-card: var(--light-paper);
  --kz-card-soft: var(--light-paper-cool);
  --kz-card-warm: #fff0df;
  --kz-graphite: var(--light-ink);
  --kz-graphite-2: var(--light-ink-soft);
  --kz-graphite-3: var(--light-muted);
  --kz-espresso: var(--light-ink);
  --prak-ink: var(--light-ink);
  --prak-muted: var(--light-muted);
  --prak-paper: var(--light-paper);
  --prak-soft: #edf2f4;
  --epi-ink: var(--light-ink);
  --epi-muted: var(--light-muted);
  --epi-paper: var(--light-paper);
  --epi-paper-soft: #edf2f4;
}

html.kz-theme-light :where(h1, h2, h3, h4, h5, h6) {
  color: var(--light-ink);
  text-shadow: none;
}

html.kz-theme-light :where(p, li, dd, figcaption) {
  color: var(--light-ink-soft);
}

html.kz-theme-light :where(img, picture, video, canvas) {
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

html.kz-theme-light :where(a) {
  color: var(--light-coral-dark);
}

html.kz-theme-light :where(input, select, textarea, button) {
  color: var(--light-ink);
}

html.kz-theme-light :where(input, select, textarea) {
  border-color: var(--light-line-strong);
  background: #ffffff;
}

html.kz-theme-light :where(input, select, textarea):focus {
  border-color: var(--light-coral);
  outline: 3px solid rgba(233, 102, 61, 0.18);
  outline-offset: 1px;
}

/* Header: jasna porcelana, czarne etykiety, bez rozmywania logo. */
html.kz-theme-light :is(.kz-header, .site-header) {
  border-color: rgba(12, 17, 23, 0.1) !important;
  background: rgba(255, 252, 247, 0.96) !important;
  box-shadow: 0 22px 54px -38px rgba(19, 28, 36, 0.42) !important;
  backdrop-filter: blur(18px);
}

html.kz-theme-light :is(.kz-header, .site-header) :is(a, button, span, strong) {
  color: var(--light-ink) !important;
}

html.kz-theme-light .kz-brand__mark {
  color: #46515d !important;
}

html.kz-theme-light :is(.kz-header, .site-header) .kz-hash,
html.kz-theme-light :is(.kz-header, .site-header) .kz-hash :is(span, strong) {
  color: #ffffff !important;
  background: #201811 !important;
}

html.kz-theme-light .kz-nav__submenu {
  border-color: var(--light-line) !important;
  background: #ffffff !important;
  box-shadow: var(--light-shadow-strong) !important;
}

html.kz-theme-light .kz-nav__submenu a:hover,
html.kz-theme-light .kz-nav__submenu a:focus-visible,
html.kz-theme-light .kz-nav__submenu a[aria-current="page"] {
  color: #ffffff !important;
  background: var(--light-green) !important;
}

html.kz-theme-light .kz-nav__submenu a:hover *,
html.kz-theme-light .kz-nav__submenu a:focus-visible *,
html.kz-theme-light .kz-nav__submenu a[aria-current="page"] * {
  color: #ffffff !important;
}

/* Wspólny język jasnych powierzchni. */
html.kz-theme-light :is(
  .kz-test,
  .kz-explain,
  .kz-faq__item,
  .kz-when__card,
  .kz-meter,
  .kz-home__card,
  .article-toc,
  .article-update,
  .evidence-summary,
  .medical-disclaimer,
  .clinical-note,
  .safety-box,
  .contraindication-box,
  .faq-item,
  .location-card,
  .locations-information,
  .report-disclaimer,
  .report-evidence-card,
  .report-method,
  .report-aotmit,
  .report-version-note,
  .access-record,
  .access-boundary,
  .access-protocol,
  .access-ethics,
  .archive-current,
  .archive-section,
  .information-form,
  .information-notice,
  .mp-form-card,
  .mp-chart-wrap,
  .mp-current-result,
  .mp-result-card,
  .mp-therapy-picker,
  .mp-centile-panel,
  .mp-next-step__panel
) {
  color: var(--light-ink) !important;
  border-color: var(--light-line) !important;
  background: var(--light-paper) !important;
  box-shadow: var(--light-shadow) !important;
}

html.kz-theme-light :is(
  .kz-test,
  .kz-explain,
  .kz-faq__item,
  .kz-when__card,
  .kz-meter,
  .kz-home__card,
  .article-toc,
  .article-update,
  .evidence-summary,
  .medical-disclaimer,
  .clinical-note,
  .safety-box,
  .contraindication-box,
  .faq-item,
  .location-card,
  .locations-information,
  .report-disclaimer,
  .report-evidence-card,
  .report-method,
  .report-aotmit,
  .report-version-note,
  .access-record,
  .access-boundary,
  .access-protocol,
  .access-ethics,
  .archive-current,
  .archive-section,
  .information-form,
  .information-notice,
  .mp-form-card,
  .mp-chart-wrap,
  .mp-current-result,
  .mp-result-card,
  .mp-therapy-picker,
  .mp-centile-panel,
  .mp-next-step__panel
) :is(h1, h2, h3, h4, h5, h6, strong, label) {
  color: var(--light-ink) !important;
}

html.kz-theme-light :is(
  .kz-test,
  .kz-explain,
  .kz-faq__item,
  .kz-when__card,
  .kz-meter,
  .kz-home__card,
  .article-toc,
  .article-update,
  .evidence-summary,
  .medical-disclaimer,
  .clinical-note,
  .safety-box,
  .contraindication-box,
  .faq-item,
  .location-card,
  .locations-information,
  .report-disclaimer,
  .report-evidence-card,
  .report-method,
  .report-aotmit,
  .report-version-note,
  .access-record,
  .access-boundary,
  .access-protocol,
  .access-ethics,
  .archive-current,
  .archive-section,
  .information-form,
  .information-notice,
  .mp-form-card,
  .mp-chart-wrap,
  .mp-current-result,
  .mp-result-card,
  .mp-therapy-picker,
  .mp-centile-panel,
  .mp-next-step__panel
) :is(p, li, span, small, figcaption, td, th) {
  color: var(--light-muted) !important;
}

/* Przyciski i interakcje. */
html.kz-theme-light :is(
  .kz-btn,
  .epi-button,
  .prak-button,
  .methods-button,
  .button-link,
  .location-button,
  .report-button,
  .mp-submit,
  .mp-hero__button,
  .mp-document-button,
  .mp-device-link
) {
  border-color: transparent !important;
  background: linear-gradient(135deg, #f0784d 0%, var(--light-coral) 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 17px 34px -20px rgba(184, 68, 37, 0.74) !important;
}

html.kz-theme-light :is(
  .kz-btn,
  .epi-button,
  .prak-button,
  .methods-button,
  .button-link,
  .location-button,
  .report-button,
  .mp-submit,
  .mp-hero__button,
  .mp-document-button,
  .mp-device-link
) :is(span, strong, svg) {
  color: #ffffff !important;
}

html.kz-theme-light :is(
  .kz-btn,
  .epi-button,
  .prak-button,
  .methods-button,
  .button-link,
  .location-button,
  .report-button,
  .mp-submit,
  .mp-hero__button,
  .mp-document-button,
  .mp-device-link
):hover {
  background: linear-gradient(135deg, #c95231 0%, #a93b21 100%) !important;
  transform: translateY(-2px);
}

html.kz-theme-light :is(
  .kz-btn--ghost,
  .kz-btn--soft,
  .epi-button--outline,
  .prak-button--secondary,
  .report-button--light,
  .location-button--map
) {
  border-color: var(--light-line-strong) !important;
  background: #ffffff !important;
  color: var(--light-ink) !important;
  box-shadow: var(--light-shadow-sm) !important;
}

html.kz-theme-light :is(
  .kz-btn--ghost,
  .kz-btn--soft,
  .epi-button--outline,
  .prak-button--secondary,
  .report-button--light,
  .location-button--map
) * {
  color: var(--light-ink) !important;
}

html.kz-theme-light :is(
  .kz-btn--ghost,
  .kz-btn--soft,
  .epi-button--outline,
  .prak-button--secondary,
  .report-button--light,
  .location-button--map
):hover {
  border-color: var(--light-green) !important;
  background: var(--light-green) !important;
  color: #ffffff !important;
}

html.kz-theme-light :is(
  .kz-btn--ghost,
  .kz-btn--soft,
  .epi-button--outline,
  .prak-button--secondary,
  .report-button--light,
  .location-button--map
):hover * {
  color: #ffffff !important;
}

/* Strona główna: zachowane zdjęcie, nowy kontrast i rytm. */
html.kz-theme-light .kz-hero {
  border-color: rgba(131, 83, 40, 0.14) !important;
  background: linear-gradient(120deg, #fff8ec 0%, #f6e5cd 42%, #e8caa5 100%) !important;
  box-shadow: var(--light-shadow-strong) !important;
}

html.kz-theme-light .kz-hero :is(h1, h2, strong) {
  color: #51260e !important;
}

html.kz-theme-light .kz-hero :is(p, span) {
  color: #4f3625 !important;
}

html.kz-theme-light .kz-hero__media,
html.kz-theme-light .kz-hero__image {
  background-color: transparent !important;
}

html.kz-theme-light .kz-test-section,
html.kz-theme-light .kz-faq-section,
html.kz-theme-light .kz-final-section,
html.kz-theme-light .kz-section {
  color: var(--light-ink) !important;
  background: transparent !important;
}

html.kz-theme-light .kz-test {
  border-top: 6px solid var(--light-green) !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(255, 224, 186, 0.36), transparent 24rem),
    #ffffff !important;
}

html.kz-theme-light .kz-symptom {
  border: 1px solid var(--light-line) !important;
  background: #fbfcfd !important;
  color: var(--light-ink) !important;
}

html.kz-theme-light .kz-symptom:hover,
html.kz-theme-light .kz-symptom:has(input:checked) {
  border-color: rgba(13, 91, 75, 0.48) !important;
  background: #edf8f4 !important;
  box-shadow: 0 12px 28px -22px rgba(13, 91, 75, 0.58) !important;
}

html.kz-theme-light .kz-symptom__icon {
  background: #ffe6c8 !important;
  color: #5c432d !important;
}

html.kz-theme-light .kz-symptom__check {
  border-color: rgba(12, 17, 23, 0.25) !important;
  background: #ffffff !important;
}

html.kz-theme-light .kz-symptom:has(input:checked) .kz-symptom__check {
  border-color: var(--light-green) !important;
  background: var(--light-green) !important;
}

html.kz-theme-light .kz-meter {
  gap: clamp(24px, 3vw, 44px);
  padding: clamp(28px, 3.2vw, 46px);
  border: 1px solid rgba(119, 198, 169, 0.28) !important;
  border-radius: clamp(24px, 2.5vw, 34px) !important;
  background:
    radial-gradient(circle at 92% 8%, rgba(100, 196, 160, 0.22), transparent 25rem),
    linear-gradient(135deg, #083f36 0%, #0b5c4d 100%) !important;
  box-shadow: 0 30px 66px -42px rgba(4, 48, 40, 0.72) !important;
}

html.kz-theme-light .kz-meter :is(h2, h3, strong, p, span) {
  color: #ffffff !important;
}

html.kz-theme-light .kz-meter__scale,
html.kz-theme-light .kz-meter__ticks {
  color: rgba(255, 255, 255, 0.86) !important;
}

html.kz-theme-light .kz-explain {
  border-left: 6px solid var(--light-coral) !important;
  background:
    linear-gradient(115deg, #ffffff 0%, #fff8ef 70%, #ffead3 100%) !important;
}

html.kz-theme-light .kz-when__card {
  overflow: hidden;
  padding: 24px 22px 28px !important;
  border-top: 4px solid var(--light-gold) !important;
}

html.kz-theme-light .kz-when__card .kz-when__num {
  display: block;
  width: 100%;
  margin: 0 0 4px;
  padding: 9px 14px;
  border-radius: 10px;
  color: #ffffff !important;
  background:
    linear-gradient(90deg, #0b5a4b 0%, #0f725e 78%, #16806a 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18);
}

html.kz-theme-light .kz-home__card--accent {
  color: var(--light-ink) !important;
  background: linear-gradient(145deg, #fff0dc, #f7d8af) !important;
}

html.kz-theme-light .kz-home__card--dark,
html.kz-theme-light .kz-home__big {
  color: #ffffff !important;
  background:
    radial-gradient(circle at 88% 10%, rgba(233, 102, 61, 0.26), transparent 20rem),
    linear-gradient(145deg, #0e302b, #10283a) !important;
}

html.kz-theme-light :is(.kz-home__card--dark, .kz-home__big) :is(h2, h3, strong, p, span) {
  color: #ffffff !important;
}

html.kz-theme-light .kz-faq {
  padding: clamp(22px, 4vw, 54px);
  border: 1px solid rgba(113, 198, 166, 0.3);
  border-radius: clamp(24px, 3vw, 42px);
  background:
    radial-gradient(circle at 10% 0%, rgba(67, 153, 130, 0.34), transparent 26rem),
    radial-gradient(circle at 100% 100%, rgba(230, 132, 81, 0.17), transparent 22rem),
    linear-gradient(145deg, #073d35 0%, #0a594b 100%);
  box-shadow: 0 34px 74px -46px rgba(4, 48, 40, 0.76);
}

html.kz-theme-light .kz-faq__item {
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-left: 5px solid rgba(239, 112, 71, 0.62) !important;
  background: #fffdf8 !important;
  box-shadow: 0 13px 30px -25px rgba(2, 33, 28, 0.72) !important;
}

html.kz-theme-light .kz-faq__item:hover,
html.kz-theme-light .kz-faq__item.is-open {
  border-left-color: #f17a4e !important;
  background: #ffffff !important;
  box-shadow: var(--light-shadow-strong) !important;
}

html.kz-theme-light .kz-faq__btn {
  color: var(--light-ink) !important;
  background: #ffffff !important;
}

html.kz-theme-light .kz-faq__chev {
  color: #ffffff !important;
  background: var(--light-green) !important;
}

html.kz-theme-light .kz-faq__panel-inner {
  color: var(--light-muted) !important;
  border-top-color: var(--light-line) !important;
  background: #f8fafb !important;
}

html.kz-theme-light .faq-section .faq-list {
  display: grid;
  gap: 16px;
}

html.kz-theme-light .faq-section .faq-list > section {
  position: relative;
  padding: clamp(22px, 3vw, 34px) !important;
  overflow: hidden;
  border: 1px solid var(--light-line) !important;
  border-left: 5px solid var(--light-green) !important;
  border-radius: 20px !important;
  background:
    linear-gradient(120deg, #ffffff 0%, #ffffff 72%, #f0f6f4 100%) !important;
  box-shadow: var(--light-shadow-sm) !important;
}

html.kz-theme-light .faq-section .faq-list > section:nth-child(even) {
  border-left-color: var(--light-coral) !important;
  background:
    linear-gradient(120deg, #ffffff 0%, #ffffff 72%, #fff3e7 100%) !important;
}

html.kz-theme-light .faq-section .faq-list > section h3 {
  margin-top: 0;
  color: var(--light-ink) !important;
}

html.kz-theme-light .faq-section .faq-list > section p {
  color: var(--light-ink-soft) !important;
}

html.kz-theme-light .kz-final__inner {
  color: #ffffff !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html.kz-theme-light .kz-final__inner :is(h2, h3, p, span, strong) {
  color: #ffffff !important;
}

html.kz-theme-light .kz-final {
  padding: clamp(28px, 5vw, 64px) !important;
  border: 1px solid rgba(255, 255, 255, 0.11) !important;
  background:
    radial-gradient(circle at 88% 0%, rgba(240, 120, 77, 0.34), transparent 24rem),
    radial-gradient(circle at 12% 100%, rgba(52, 142, 120, 0.26), transparent 24rem),
    linear-gradient(135deg, #10283a 0%, #0b4339 100%) !important;
  box-shadow: var(--light-shadow-strong) !important;
}

html.kz-theme-light .kz-final::before {
  width: 420px;
  height: 420px;
  right: -160px;
  top: -220px;
  background: radial-gradient(circle, rgba(255, 203, 144, 0.2), transparent 68%) !important;
}

html.kz-theme-light .kz-final .kz-btn--coral {
  color: #ffffff !important;
  border-color: transparent !important;
  background: linear-gradient(135deg, #ef7047, #d6502d) !important;
  box-shadow: 0 20px 38px -24px rgba(182, 64, 34, 0.9) !important;
}

/* Nagłówki artykułów i raportów. */
html.kz-theme-light :is(
  .about-hero,
  .epi-hero,
  .prak-hero,
  .methods-hero,
  .locations-hero,
  .article-header,
  .report-hero,
  .access-hero,
  .archive-hero,
  .mp-hero__panel
) {
  color: var(--light-ink) !important;
  border: 1px solid var(--light-line) !important;
  background:
    radial-gradient(circle at 88% 5%, rgba(244, 201, 146, 0.36), transparent 25rem),
    radial-gradient(circle at 4% 100%, rgba(190, 217, 225, 0.48), transparent 28rem),
    linear-gradient(135deg, #ffffff 0%, #f8f9fa 62%, #eef2f4 100%) !important;
  box-shadow: var(--light-shadow-strong) !important;
}

html.kz-theme-light :is(
  .about-hero,
  .epi-hero,
  .prak-hero,
  .methods-hero,
  .locations-hero,
  .article-header,
  .report-hero,
  .access-hero,
  .archive-hero,
  .mp-hero__panel
) :is(h1, h2, h3, h4, strong) {
  color: var(--light-ink) !important;
}

html.kz-theme-light :is(
  .about-hero,
  .epi-hero,
  .prak-hero,
  .methods-hero,
  .locations-hero,
  .article-header,
  .report-hero,
  .access-hero,
  .archive-hero,
  .mp-hero__panel
) :is(p, li, small, em, span:not(.kz-btn__icon)) {
  color: var(--light-muted) !important;
}

html.kz-theme-light :is(
  .epi-author,
  .prak-author,
  .about-author,
  .article-author,
  .report-author
) {
  border-color: rgba(13, 91, 75, 0.2) !important;
  background: #ffffff !important;
  box-shadow: var(--light-shadow-sm) !important;
}

html.kz-theme-light :is(
  .epi-author,
  .prak-author,
  .about-author,
  .article-author,
  .report-author
) :is(strong, span, small) {
  color: var(--light-ink) !important;
}

/* Epidemiologia: jasna publikacja, mocne dane, grafika pozostaje nasycona. */
html.kz-theme-light .epi-article,
html.kz-theme-light .prak-article,
html.kz-theme-light .evidence-article,
html.kz-theme-light .report-article,
html.kz-theme-light .access-article,
html.kz-theme-light .archive-article {
  color: var(--light-ink) !important;
  background: transparent !important;
}

html.kz-theme-light :is(.epi-section, .prak-section, .article-section, .report-section, .access-section, .archive-section) {
  color: var(--light-ink) !important;
  border-color: var(--light-line) !important;
}

html.kz-theme-light :is(
  .epi-section--ink,
  .epi-section--profile,
  .epi-section--soft,
  .epi-section--eye,
  .epi-section--manifesto,
  .epi-section--next,
  .prak-section--ink,
  .prak-section--quote,
  .prak-section--workbench,
  .prak-section--soft,
  .prak-section--collaboration,
  .prak-section--next,
  .prak-parent-voices,
  .article-section--manifest,
  .article-section--rlrl,
  .article-section--atropine,
  .report-section--evidence,
  .report-section--gaps,
  .report-section--method,
  .access-section--registry,
  .access-section--methodology,
  .access-section--next,
  .archive-section--empty
) {
  color: var(--light-ink) !important;
  border: 1px solid var(--light-line) !important;
  background:
    radial-gradient(circle at 94% 0%, rgba(240, 207, 163, 0.25), transparent 25rem),
    linear-gradient(145deg, #ffffff 0%, #f6f8f9 100%) !important;
  box-shadow: var(--light-shadow) !important;
}

html.kz-theme-light :is(
  .epi-section--ink,
  .epi-section--profile,
  .epi-section--soft,
  .epi-section--eye,
  .epi-section--manifesto,
  .epi-section--next,
  .prak-section--ink,
  .prak-section--quote,
  .prak-section--workbench,
  .prak-section--soft,
  .prak-section--collaboration,
  .prak-section--next,
  .prak-parent-voices,
  .article-section--manifest,
  .article-section--rlrl,
  .article-section--atropine,
  .report-section--evidence,
  .report-section--gaps,
  .report-section--method,
  .access-section--registry,
  .access-section--methodology,
  .access-section--next,
  .archive-section--empty
) :is(h1, h2, h3, h4, h5, strong, blockquote) {
  color: var(--light-ink) !important;
}

html.kz-theme-light :is(
  .epi-section--ink,
  .epi-section--profile,
  .epi-section--soft,
  .epi-section--eye,
  .epi-section--manifesto,
  .epi-section--next,
  .prak-section--ink,
  .prak-section--quote,
  .prak-section--workbench,
  .prak-section--soft,
  .prak-section--collaboration,
  .prak-section--next,
  .prak-parent-voices,
  .article-section--manifest,
  .article-section--rlrl,
  .article-section--atropine,
  .report-section--evidence,
  .report-section--gaps,
  .report-section--method,
  .access-section--registry,
  .access-section--methodology,
  .access-section--next,
  .archive-section--empty
) :is(p, li, td, th, figcaption, footer, small, span) {
  color: var(--light-muted) !important;
}

html.kz-theme-light :is(
  .epi-data-lab,
  .epi-chart-card,
  .epi-risk-chart,
  .epi-eye-lab,
  .epi-eye-lab__panel,
  .epi-snapshot,
  .epi-number-panel,
  .epi-profile-intro,
  .epi-profile-stats article,
  .epi-timeline article,
  .epi-manifesto,
  .epi-action-grid article,
  .prak-pathway,
  .prak-professions,
  .prak-fit-lab,
  .prak-truth-box,
  .prak-collaboration-note,
  .prak-child-grid-card,
  .prak-expert-card,
  .prak-monitoring article,
  .prak-letter,
  .prak-quote-layout blockquote,
  .prak-documentary-frame,
  .prak-media-frame,
  .prak-social-photo
) {
  color: var(--light-ink) !important;
  border-color: var(--light-line) !important;
  background: #ffffff !important;
  box-shadow: var(--light-shadow) !important;
}

html.kz-theme-light :is(
  .epi-data-lab,
  .epi-chart-card,
  .epi-risk-chart,
  .epi-eye-lab,
  .epi-eye-lab__panel,
  .epi-snapshot,
  .epi-number-panel,
  .epi-profile-intro,
  .epi-profile-stats article,
  .epi-timeline article,
  .epi-manifesto,
  .epi-action-grid article,
  .prak-pathway,
  .prak-professions,
  .prak-fit-lab,
  .prak-truth-box,
  .prak-collaboration-note,
  .prak-child-grid-card,
  .prak-expert-card,
  .prak-monitoring article,
  .prak-letter,
  .prak-quote-layout blockquote,
  .prak-documentary-frame,
  .prak-media-frame,
  .prak-social-photo
) :is(h1, h2, h3, h4, strong, blockquote) {
  color: var(--light-ink) !important;
}

html.kz-theme-light :is(
  .epi-data-lab,
  .epi-chart-card,
  .epi-risk-chart,
  .epi-eye-lab,
  .epi-eye-lab__panel,
  .epi-snapshot,
  .epi-number-panel,
  .epi-profile-intro,
  .epi-profile-stats article,
  .epi-timeline article,
  .epi-manifesto,
  .epi-action-grid article,
  .prak-pathway,
  .prak-professions,
  .prak-fit-lab,
  .prak-truth-box,
  .prak-collaboration-note,
  .prak-child-grid-card,
  .prak-expert-card,
  .prak-monitoring article,
  .prak-letter,
  .prak-quote-layout blockquote
) :is(p, li, span, footer, figcaption) {
  color: var(--light-muted) !important;
}

html.kz-theme-light .epi-hero__media,
html.kz-theme-light .prak-hero__image-frame,
html.kz-theme-light .prak-hero__visual,
html.kz-theme-light .epi-eye-stage,
html.kz-theme-light .epi-eye-stage__frame {
  border-color: rgba(12, 17, 23, 0.16) !important;
  background-color: #f6eee3 !important;
  box-shadow: var(--light-shadow-strong) !important;
}

html.kz-theme-light .epi-hero__stats {
  border-color: var(--light-line) !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--light-shadow) !important;
}

html.kz-theme-light .epi-hero__stats strong {
  color: #8f4f16 !important;
}

html.kz-theme-light .epi-chart-grid,
html.kz-theme-light .epi-line-chart,
html.kz-theme-light .epi-data-table,
html.kz-theme-light .combination-table,
html.kz-theme-light .therapy-map__table,
html.kz-theme-light .report-method-flow {
  border-color: var(--light-line) !important;
  background: #ffffff !important;
}

html.kz-theme-light :is(.epi-chart-grid, .epi-data-table, .combination-table, .therapy-map__table) :is(text, td, th, span) {
  color: var(--light-ink-soft) !important;
}

html.kz-theme-light .epi-snapshot--question {
  color: #ffffff !important;
  background: var(--light-navy) !important;
}

html.kz-theme-light .epi-snapshot--question :is(h3, p, span, strong) {
  color: #ffffff !important;
}

html.kz-theme-light .epi-timeline {
  border-color: var(--light-line) !important;
  background: #ffffff !important;
}

html.kz-theme-light .epi-timeline article + article,
html.kz-theme-light .epi-profile-stats article + article {
  border-color: var(--light-line) !important;
}

/* Praktyka: kroki i role mają czytelne stany aktywne i nieaktywne. */
html.kz-theme-light .prak-pathway__steps button {
  color: var(--light-ink) !important;
  border: 1px solid var(--light-line-strong) !important;
  background: #ffffff !important;
}

html.kz-theme-light .prak-pathway__steps button * {
  color: var(--light-ink) !important;
}

html.kz-theme-light .prak-pathway__steps button[aria-selected="true"] {
  color: #ffffff !important;
  border-color: var(--light-green) !important;
  background: var(--light-green) !important;
  box-shadow: 0 16px 30px -22px rgba(13, 91, 75, 0.72) !important;
}

html.kz-theme-light .prak-pathway__steps button[aria-selected="true"] * {
  color: #ffffff !important;
}

html.kz-theme-light .prak-pathway__panels,
html.kz-theme-light .prak-professions__panels {
  color: var(--light-ink) !important;
  background: #ffffff !important;
}

html.kz-theme-light .prak-professions__tabs {
  border: 1px solid var(--light-line) !important;
  background: #e8edf1 !important;
}

html.kz-theme-light .prak-professions__tabs button {
  color: #394550 !important;
  background: transparent !important;
}

html.kz-theme-light .prak-professions__tabs button[aria-selected="true"] {
  color: #ffffff !important;
  background: var(--light-green-deep) !important;
}

html.kz-theme-light .prak-profession-grid {
  background: #ffffff !important;
}

html.kz-theme-light .prak-quote-layout blockquote {
  border-left: 5px solid var(--light-coral) !important;
  background: linear-gradient(145deg, #ffffff, #fff5ea) !important;
}

html.kz-theme-light .prak-quote-layout blockquote footer {
  color: var(--light-muted) !important;
}

html.kz-theme-light .prak-prose--light,
html.kz-theme-light .prak-prose--light :is(p, li, ul, ol, strong, em),
html.kz-theme-light .prak-compare :is(ul, ol, li),
html.kz-theme-light .prak-switch {
  color: var(--light-ink-soft) !important;
}

/* Metody terapii i dowody naukowe. */
html.kz-theme-light :is(.therapy-map, .combination-matrix) {
  color: var(--light-ink) !important;
  border: 1px solid var(--light-line) !important;
  background:
    linear-gradient(145deg, #ffffff 0%, #f3f7f8 100%) !important;
  box-shadow: var(--light-shadow) !important;
}

html.kz-theme-light :is(.therapy-map, .combination-matrix) :is(h2, h3, h4, strong, th) {
  color: var(--light-ink) !important;
}

html.kz-theme-light :is(.therapy-map, .combination-matrix) :is(p, li, td, span) {
  color: var(--light-muted) !important;
}

html.kz-theme-light :is(.therapy-track, .combo-row) {
  border-color: var(--light-line) !important;
  background: #ffffff !important;
  box-shadow: var(--light-shadow-sm) !important;
}

html.kz-theme-light .therapy-track span {
  color: var(--light-ink-soft) !important;
  background: #eaf0f2 !important;
}

html.kz-theme-light .combo-row--supported {
  border-left: 5px solid var(--light-green) !important;
}

html.kz-theme-light .combo-row--qualified {
  border-left: 5px solid var(--light-gold) !important;
}

html.kz-theme-light .combo-row--blocked {
  border-left: 5px solid var(--light-red) !important;
  background: #fff4f2 !important;
}

html.kz-theme-light .treatment-cta,
html.kz-theme-light .article-section--manifest {
  color: #ffffff !important;
  background:
    radial-gradient(circle at 90% 10%, rgba(233, 102, 61, 0.3), transparent 20rem),
    linear-gradient(135deg, #10283a, #0b4339) !important;
}

html.kz-theme-light :is(.treatment-cta, .article-section--manifest) :is(h2, h3, p, span, strong, li) {
  color: #ffffff !important;
}

html.kz-theme-light .faq-list .faq-item {
  border-left: 5px solid var(--light-green) !important;
  background: #ffffff !important;
}

html.kz-theme-light .faq-list .faq-item :is(summary, h3, h4, strong) {
  color: var(--light-ink) !important;
}

html.kz-theme-light .faq-list .faq-item :is(p, li, span) {
  color: var(--light-muted) !important;
}

html.kz-theme-light :is(
  .evidence-instrument,
  .combination-summary,
  .conclusions-list,
  .references-section,
  .article-footer
) {
  color: var(--light-ink) !important;
  border-color: var(--light-line) !important;
  background: #ffffff !important;
  box-shadow: var(--light-shadow) !important;
}

html.kz-theme-light .evidence-instrument__head {
  color: #ffffff !important;
  background: var(--light-navy) !important;
}

html.kz-theme-light .evidence-instrument__head * {
  color: #ffffff !important;
}

/* Placówki. */
html.kz-theme-light .locations-introduction {
  color: var(--light-ink) !important;
  background: #ffffff !important;
  box-shadow: var(--light-shadow) !important;
}

html.kz-theme-light .location-card {
  overflow: hidden;
  border-top: 5px solid var(--light-green) !important;
}

html.kz-theme-light .location-card__header {
  border-color: var(--light-line) !important;
  background: linear-gradient(135deg, #f1f6f5, #ffffff) !important;
}

html.kz-theme-light .location-card__badge,
html.kz-theme-light .location-card__number {
  color: #ffffff !important;
  background: var(--light-green) !important;
}

html.kz-theme-light .location-card__map,
html.kz-theme-light .location-map-fallback {
  border-color: var(--light-line) !important;
  background: #e7edf0 !important;
}

/* Raport, barometr i archiwum. */
html.kz-theme-light .report-hero__ledger,
html.kz-theme-light .access-hero__dial,
html.kz-theme-light .archive-current__status {
  color: #ffffff !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  background: linear-gradient(145deg, #10283a, #0b4339) !important;
  box-shadow: var(--light-shadow-strong) !important;
}

html.kz-theme-light :is(.report-hero__ledger, .access-hero__dial, .archive-current__status) * {
  color: #ffffff !important;
}

html.kz-theme-light .report-evidence-card--emerging {
  border-top: 5px solid var(--light-gold) !important;
}

html.kz-theme-light .report-method--combination {
  border-left: 5px solid var(--light-green) !important;
}

html.kz-theme-light .report-method--emerging {
  border-left: 5px solid var(--light-gold) !important;
}

html.kz-theme-light .access-record--alert,
html.kz-theme-light .access-status--alert {
  border-color: rgba(173, 47, 45, 0.32) !important;
  background: #fff1ef !important;
  color: #8d2422 !important;
}

html.kz-theme-light .access-record--partial,
html.kz-theme-light .access-status--partial {
  border-color: rgba(189, 124, 40, 0.36) !important;
  background: #fff7e8 !important;
  color: #755019 !important;
}

html.kz-theme-light .access-status--verified {
  border-color: rgba(13, 91, 75, 0.3) !important;
  background: #edf8f4 !important;
  color: var(--light-green-deep) !important;
}

html.kz-theme-light .access-record__top,
html.kz-theme-light .archive-section__head,
html.kz-theme-light .report-section__head {
  border-color: var(--light-line) !important;
}

/* Kalkulator: jasne powierzchnie, ciemne dane, mocne stany. */
html.kz-theme-light .mp-calculator-section,
html.kz-theme-light .mp-next-step,
html.kz-theme-light .mp-evidence,
html.kz-theme-light .mp-safety {
  color: var(--light-ink) !important;
  background: transparent !important;
}

html.kz-theme-light .mp-calculator {
  border-color: var(--light-line) !important;
  background: #ffffff !important;
  box-shadow: var(--light-shadow-strong) !important;
}

html.kz-theme-light :is(
  .mp-eye-card,
  .mp-prescription-row,
  .mp-advanced,
  .mp-summary,
  .mp-summary-note,
  .mp-model-details,
  .mp-therapy-option,
  .mp-centile-card,
  .mp-centile-source,
  .mp-centile-unavailable,
  .mp-risk-alert,
  .mp-ai-prompt
) {
  color: var(--light-ink) !important;
  border-color: var(--light-line) !important;
  background: #ffffff !important;
  box-shadow: var(--light-shadow-sm) !important;
}

html.kz-theme-light :is(
  .mp-eye-card,
  .mp-prescription-row,
  .mp-advanced,
  .mp-summary,
  .mp-summary-note,
  .mp-model-details,
  .mp-therapy-option,
  .mp-centile-card,
  .mp-centile-source,
  .mp-centile-unavailable,
  .mp-risk-alert,
  .mp-ai-prompt
) :is(h2, h3, h4, strong, label) {
  color: var(--light-ink) !important;
}

html.kz-theme-light :is(
  .mp-eye-card,
  .mp-prescription-row,
  .mp-advanced,
  .mp-summary,
  .mp-summary-note,
  .mp-model-details,
  .mp-therapy-option,
  .mp-centile-card,
  .mp-centile-source,
  .mp-centile-unavailable,
  .mp-risk-alert,
  .mp-ai-prompt
) :is(p, li, span, small) {
  color: var(--light-muted) !important;
}

html.kz-theme-light .mp-chart-result,
html.kz-theme-light .mp-stage {
  color: #ffffff !important;
  border-color: rgba(255, 255, 255, 0.12) !important;
  background:
    radial-gradient(circle at 84% 10%, rgba(233, 102, 61, 0.22), transparent 24rem),
    linear-gradient(145deg, #122b3d, #0b3f36) !important;
}

html.kz-theme-light :is(.mp-chart-result, .mp-stage) :is(h2, h3, h4, p, li, span, strong, small) {
  color: #ffffff !important;
}

html.kz-theme-light .mp-segmented,
html.kz-theme-light .mp-family-options {
  border-color: var(--light-line) !important;
  background: #e9eef1 !important;
}

html.kz-theme-light :is(.mp-segmented, .mp-family-options) button {
  color: var(--light-ink-soft) !important;
}

html.kz-theme-light :is(.mp-segmented, .mp-family-options) button[aria-pressed="true"],
html.kz-theme-light :is(.mp-segmented, .mp-family-options) button.is-active {
  color: #ffffff !important;
  background: var(--light-green) !important;
}

html.kz-theme-light .mp-therapy-option__check {
  border-color: var(--light-line-strong) !important;
  background: #ffffff !important;
}

html.kz-theme-light .mp-therapy-option:has(input:checked) {
  border-color: rgba(13, 91, 75, 0.5) !important;
  background: #edf8f4 !important;
}

html.kz-theme-light .mp-therapy-warning,
html.kz-theme-light .mp-critical-alert,
html.kz-theme-light .mp-therapy-conflict {
  color: #7f211f !important;
  border-color: rgba(173, 47, 45, 0.32) !important;
  background: #fff0ee !important;
}

html.kz-theme-light :is(.mp-therapy-warning, .mp-critical-alert, .mp-therapy-conflict) * {
  color: #7f211f !important;
}

html.kz-theme-light .mp-centile-card.mp-centile-status--ok {
  border-left: 5px solid #2f8a5e !important;
  background: #f1f9f5 !important;
}

html.kz-theme-light .mp-centile-card.mp-centile-status--warning {
  border-left: 5px solid #e08a18 !important;
  background: #fff8ec !important;
}

html.kz-theme-light .mp-centile-card.mp-centile-status--outside {
  border-left: 5px solid #bd332f !important;
  background: #fff1ef !important;
}

html.kz-theme-light .mp-next-step__panel {
  border-top: 5px solid var(--light-coral) !important;
}

/* O krótkowzroczności: wykres i tekst bez utraty grafiki. */
html.kz-theme-light .about-hero__portrait-art {
  opacity: 1 !important;
  filter: none !important;
}

html.kz-theme-light :is(
  .about-statement,
  .medical-note,
  .bibliography-note,
  .treatment-block,
  .source-callout,
  .refraction-chart,
  .references,
  .article-body,
  .article-footer
) {
  color: var(--light-ink) !important;
  border-color: var(--light-line) !important;
  background: #ffffff !important;
  box-shadow: var(--light-shadow) !important;
}

html.kz-theme-light :is(
  .about-statement,
  .medical-note,
  .bibliography-note,
  .treatment-block,
  .source-callout,
  .refraction-chart,
  .references,
  .article-body,
  .article-footer
) :is(h1, h2, h3, h4, strong) {
  color: var(--light-ink) !important;
}

html.kz-theme-light :is(
  .about-statement,
  .medical-note,
  .bibliography-note,
  .treatment-block,
  .source-callout,
  .refraction-chart,
  .references,
  .article-body,
  .article-footer
) :is(p, li, span, figcaption) {
  color: var(--light-muted) !important;
}

html.kz-theme-light .chart-shell {
  border-color: var(--light-line) !important;
  background: linear-gradient(180deg, #ffffff, #f5f7f8) !important;
}

html.kz-theme-light .chart-grid {
  stroke: rgba(12, 17, 23, 0.14) !important;
}

html.kz-theme-light :is(.chart-category, .chart-value, .chart-y-axis, .chart-legend) {
  color: var(--light-ink-soft) !important;
}

/* Strony informacyjne: obraz w hero pozostaje pełny i nasycony. */
html.kz-theme-light .information-page {
  --info-ink: var(--light-ink);
  --info-muted: var(--light-muted);
  --info-line: var(--light-line);
  --info-paper: #ffffff;
}

html.kz-theme-light .information-hero {
  border-color: rgba(13, 91, 75, 0.22) !important;
  background: #071511 !important;
  box-shadow: var(--light-shadow-strong) !important;
}

html.kz-theme-light .information-hero::before {
  opacity: 1 !important;
  filter: saturate(0.98) contrast(1.06) !important;
}

html.kz-theme-light .information-hero::after {
  background:
    linear-gradient(90deg, rgba(4, 20, 16, 0.98) 0%, rgba(4, 20, 16, 0.88) 38%, rgba(4, 20, 16, 0.38) 68%, rgba(4, 20, 16, 0.12) 100%),
    radial-gradient(circle at 83% 25%, rgba(233, 166, 80, 0.18), transparent 34%) !important;
}

html.kz-theme-light .information-hero__inner {
  color: #ffffff !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

html.kz-theme-light .information-hero__copy {
  color: #ffffff !important;
}

html.kz-theme-light .information-hero :is(h1, h2, h3, strong) {
  color: #ffffff !important;
}

html.kz-theme-light .information-hero :is(p, li, span) {
  color: rgba(255, 255, 255, 0.82) !important;
}

html.kz-theme-light .information-hero__eyebrow {
  color: #ff9a72 !important;
}

html.kz-theme-light .information-hero__lead {
  border-color: rgba(255, 255, 255, 0.22) !important;
  color: rgba(255, 255, 255, 0.84) !important;
}

html.kz-theme-light .information-content {
  color: var(--light-ink) !important;
}

html.kz-theme-light .information-content__rail {
  border-left: 3px solid var(--light-coral);
  padding-left: 22px;
}

html.kz-theme-light .information-article {
  padding: clamp(24px, 4vw, 58px);
  border: 1px solid var(--light-line);
  border-radius: var(--light-radius);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--light-shadow);
}

html.kz-theme-light .information-article :is(h1, h2, h3, h4, strong, label) {
  color: var(--light-ink) !important;
}

html.kz-theme-light .information-article :is(p, li, span) {
  color: var(--light-muted) !important;
}

html.kz-theme-light .information-placeholder {
  color: #69450e !important;
  border-color: rgba(189, 124, 40, 0.3) !important;
  border-left-color: var(--light-gold) !important;
  background: #fff6e6 !important;
}

html.kz-theme-light .information-form {
  border-top: 5px solid var(--light-green) !important;
}

html.kz-theme-light .information-form :is(input, textarea, select) {
  color: var(--light-ink) !important;
  border-color: var(--light-line-strong) !important;
  background: #f9fafb !important;
}

/* Stopka zostaje świadomie ciemna — to zamknięcie jasnej strony, nie wybielenie. */
html.kz-theme-light .site-footer-v2.kz-footer,
html.kz-theme-light .kz-footer.site-footer-v2 {
  color: #ffffff !important;
  border-color: rgba(233, 102, 61, 0.58) !important;
  background:
    radial-gradient(circle at 88% 10%, rgba(233, 102, 61, 0.18), transparent 34%),
    linear-gradient(145deg, #10283a 0%, #0b2e29 54%, #081d23 100%) !important;
  box-shadow: 0 -24px 60px -42px rgba(14, 25, 35, 0.7) !important;
}

html.kz-theme-light .site-footer-v2 :is(
  .site-footer-v2__wordmark,
  .site-footer-v2__links a,
  .site-footer-v2__icon,
  .site-footer-v2__rights,
  h2,
  h3,
  strong
) {
  color: #ffffff !important;
}

html.kz-theme-light .site-footer-v2 :is(
  .site-footer-v2__brand-note,
  .site-footer-v2__legal p
) {
  color: rgba(255, 255, 255, 0.76) !important;
}

html.kz-theme-light .site-footer-v2 .site-footer-v2__legal a,
html.kz-theme-light .site-footer-v2 .site-footer-v2__campaign {
  color: #ffd39e !important;
}

html.kz-theme-light .site-footer-v2 .site-footer-v2__icon {
  border-color: rgba(255, 255, 255, 0.2) !important;
  background: rgba(255, 255, 255, 0.08) !important;
}

html.kz-theme-light .site-footer-v2 .kz-cookie-settings {
  color: #ffffff !important;
  text-decoration-color: rgba(255, 255, 255, 0.44) !important;
}

/* Pływające narzędzia. */
html.kz-theme-light .kz-a11y-launch--floating,
html.kz-theme-light .evidence-back-to-top {
  color: var(--light-ink) !important;
  border: 1px solid var(--light-line) !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--light-shadow-strong) !important;
}

html.kz-theme-light .kz-a11y-dialog {
  color: var(--light-ink) !important;
  border-color: var(--light-line) !important;
  background: #ffffff !important;
}

html.kz-theme-light .kz-a11y-dialog :is(h2, h3, strong, label) {
  color: var(--light-ink) !important;
}

html.kz-theme-light .kz-a11y-theme-options button,
html.kz-theme-light .kz-a11y-font-options button,
html.kz-theme-light .kz-a11y-reset {
  color: var(--light-ink) !important;
  border-color: var(--light-line-strong) !important;
  background: #ffffff !important;
}

html.kz-theme-light .kz-a11y-theme-options button[aria-pressed="true"],
html.kz-theme-light .kz-a11y-font-options button[aria-pressed="true"] {
  color: #ffffff !important;
  border-color: var(--light-green-deep) !important;
  background: linear-gradient(135deg, var(--light-green-deep), var(--light-green)) !important;
  box-shadow: 0 14px 28px -20px rgba(5, 70, 58, 0.82) !important;
}

html.kz-theme-light .kz-a11y-theme-options button[aria-pressed="true"] span {
  color: #ffffff !important;
}

html.kz-theme-light .kz-a11y-reset {
  background: #f5ead8 !important;
}

/*
 * Ekran wejściowy jest jednym, niezależnym doświadczeniem wizualnym.
 * Nie przejmuje palety jasnego motywu strony widocznej pod spodem.
 */
html.kz-theme-light .kz-consent-gate {
  color-scheme: dark;
  color: var(--kz-consent-ink) !important;
  background:
    radial-gradient(circle at 50% 38%, rgba(255, 188, 92, 0.14), transparent 34rem),
    rgba(17, 13, 11, 0.76) !important;
}

html.kz-theme-light .kz-consent-gate__stage {
  background: rgba(255, 250, 241, 0) !important;
  box-shadow: 0 38px 110px rgba(23, 16, 12, 0) !important;
}

html.kz-theme-light .kz-consent-gate__title {
  color: var(--kz-consent-ink) !important;
}

html.kz-theme-light .kz-consent-gate__copy {
  color: var(--kz-consent-muted) !important;
}

html.kz-theme-light .kz-consent-gate__button--accept {
  color: #ffffff !important;
  background: linear-gradient(135deg, var(--kz-consent-coral), #f39255) !important;
}

/* Responsywność jasnego motywu. */
@media (max-width: 980px) {
  html.kz-theme-light .information-content {
    grid-template-columns: 1fr;
  }

  html.kz-theme-light .information-content__rail {
    position: static;
  }

  html.kz-theme-light :is(
    .kz-faq,
    .information-article,
    .epi-section,
    .prak-section,
    .article-section,
    .report-section,
    .access-section,
    .archive-section
  ) {
    border-radius: 24px;
  }
}

@media (max-width: 720px) {
  html.kz-theme-light body,
  html.kz-theme-light body.kz-page,
  html.kz-theme-light :is(
    .kz-page,
    .knowledge-page,
    .about-page,
    .epi-page,
    .prak-page,
    .methods-page,
    .locations-page,
    .report-page,
    .access-page,
    .archive-page,
    .information-page,
    .mp-page
  ) {
    background:
      radial-gradient(circle at 12% 0%, rgba(208, 223, 229, 0.56), transparent 23rem),
      linear-gradient(180deg, #f9fafb, #edf1f4) fixed !important;
  }

  html.kz-theme-light :is(
    .about-hero,
    .epi-hero,
    .prak-hero,
    .methods-hero,
    .locations-hero,
    .article-header,
    .report-hero,
    .access-hero,
    .archive-hero,
    .mp-hero__panel
  ) {
    border-radius: 28px !important;
  }

  html.kz-theme-light .information-hero {
    min-height: 560px;
    border-radius: 28px !important;
  }

  html.kz-theme-light .information-hero::before {
    background-position: 66% center !important;
  }

  html.kz-theme-light .information-hero::after {
    background:
      linear-gradient(180deg, rgba(4, 20, 16, 0.45) 0%, rgba(4, 20, 16, 0.78) 42%, rgba(4, 20, 16, 0.98) 100%),
      linear-gradient(90deg, rgba(4, 20, 16, 0.48), rgba(4, 20, 16, 0.12)) !important;
  }

  html.kz-theme-light .information-hero__inner {
    align-items: flex-end;
    padding: 38px 26px !important;
  }

  html.kz-theme-light .information-hero__copy {
    max-width: 100%;
  }

  html.kz-theme-light .information-article {
    padding: 24px 18px;
    border-radius: 22px;
  }

  html.kz-theme-light .kz-faq {
    padding: 18px 12px;
  }

  html.kz-theme-light .kz-faq__btn {
    gap: 14px;
    padding: 20px 18px;
  }

  html.kz-theme-light .kz-final {
    padding: 30px 24px !important;
  }

  html.kz-theme-light .kz-final__inner {
    gap: 24px;
  }

  html.kz-theme-light .kz-final .kz-btn {
    width: 100%;
  }

  html.kz-theme-light :is(
    .kz-btn,
    .epi-button,
    .prak-button,
    .methods-button,
    .button-link,
    .location-button,
    .report-button,
    .mp-submit,
    .mp-hero__button,
    .mp-document-button
  ) {
    max-width: 100%;
    min-height: 52px;
    padding: 13px 18px !important;
    white-space: normal;
    text-align: center;
    line-height: 1.25;
    overflow-wrap: anywhere;
  }

  html.kz-theme-light .prak-pathway__steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html.kz-theme-light .prak-pathway__steps button {
    min-width: 0;
  }

  html.kz-theme-light .prak-professions__tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  html.kz-theme-light .site-footer-v2 .site-footer-v2__wordmark {
    color: #ffffff !important;
  }

  html.kz-theme-light .site-footer-v2 .site-footer-v2__links a {
    min-height: 34px;
    display: inline-flex;
    align-items: center;
  }
}

@media (max-width: 430px) {
  html.kz-theme-light .prak-pathway__steps,
  html.kz-theme-light .prak-professions__tabs {
    grid-template-columns: 1fr;
  }

  html.kz-theme-light .kz-symptoms {
    grid-template-columns: 1fr;
  }
}

/* ================================================================
   FINALNA WARSTWA KONTRASTU
   Te reguły domykają komponenty, które w oryginalnych arkuszach
   korzystają z kolorów dziedziczonych z ciemnego motywu.
   ================================================================ */

html.kz-theme-light .kz-meter__hint {
  color: var(--light-ink) !important;
  border: 1px solid #e4d7c4 !important;
  background: linear-gradient(135deg, #fff7e8, #f6ead2) !important;
}

html.kz-theme-light .kz-meter__hint span:not(.kz-meter__hint-icon) {
  color: #303944 !important;
}

html.kz-theme-light .kz-meter__hint-icon {
  color: var(--light-coral) !important;
  border: 1px solid #ead9c1 !important;
  background: #ffffff !important;
}

html.kz-theme-light .kz-when__num {
  color: #ffffff !important;
  background: var(--light-green) !important;
}

html.kz-theme-light .epi-manifesto footer a {
  color: #9b351f !important;
  text-decoration-color: rgba(155, 53, 31, 0.45) !important;
}

html.kz-theme-light .epi-number-panel small {
  color: #47535d !important;
}

html.kz-theme-light .epi-timeline article time {
  color: #9b351f !important;
}

html.kz-theme-light .kz-skip-link {
  color: #ffffff !important;
  background: var(--light-green-deep) !important;
}

html.kz-theme-light .prak-hero__visual figcaption {
  color: #ffffff !important;
}

html.kz-theme-light .prak-pathway__steps button span {
  color: #ffffff !important;
}

html.kz-theme-light .prak-section--ink .prak-pathway .prak-pathway__steps button[aria-selected="true"] span {
  color: #ffffff !important;
}

html.kz-theme-light .prak-section--ink a[href^="#ref-"] {
  color: #96351f !important;
}

html.kz-theme-light .prak-citation,
html.kz-theme-light .prak-citation a {
  color: #96351f !important;
}

html.kz-theme-light .prak-fit-lab output {
  color: #8f341f !important;
}

html.kz-theme-light .prak-media-frame button,
html.kz-theme-light .prak-media-frame button span,
html.kz-theme-light .prak-video button,
html.kz-theme-light .prak-video button span,
html.kz-theme-light .prak-video-link .prak-play-badge {
  color: #ffffff !important;
}

/* Kalkulator: panel terapii jest porcelanową kartą, nie częścią ciemnej sceny. */
html.kz-theme-light .mp-summary--stage .mp-therapy-picker,
html.kz-theme-light .mp-therapy-picker {
  color: var(--light-ink) !important;
  border: 1px solid var(--light-line-strong) !important;
  background:
    radial-gradient(circle at 92% 0%, rgba(244, 201, 146, 0.26), transparent 22rem),
    linear-gradient(145deg, #ffffff, #f7faf9) !important;
  box-shadow: var(--light-shadow-strong) !important;
}

html.kz-theme-light .mp-summary--stage .mp-therapy-picker :is(
  h2, h3, h4, h5, h6, strong, label
),
html.kz-theme-light .mp-therapy-picker :is(
  h2, h3, h4, h5, h6, strong, label
) {
  color: var(--light-ink) !important;
}

html.kz-theme-light .mp-summary--stage .mp-therapy-picker :is(
  p, li, span, small
),
html.kz-theme-light .mp-therapy-picker :is(
  p, li, span, small
) {
  color: var(--light-muted) !important;
}

html.kz-theme-light .mp-therapy-picker .mp-eyebrow {
  color: #a63b24 !important;
}

html.kz-theme-light .mp-therapy-picker__number {
  color: #ffffff !important;
  background: var(--light-coral) !important;
}

html.kz-theme-light .mp-therapy-combo__brace {
  border-color: #8db7a9 !important;
}

html.kz-theme-light .mp-therapy-combo__brace span {
  color: #0f563f !important;
  border: 1px solid #b8d5ca !important;
  background: #edf8f3 !important;
}

html.kz-theme-light .mp-therapy-option {
  color: var(--light-ink) !important;
  border-color: var(--light-line) !important;
  background: #ffffff !important;
  box-shadow: 0 10px 28px rgba(17, 39, 47, 0.08) !important;
}

html.kz-theme-light .mp-therapy-option :is(
  h3, h4, strong, label
) {
  color: var(--light-ink) !important;
}

html.kz-theme-light .mp-therapy-option :is(
  p, span, small
) {
  color: var(--light-muted) !important;
}

html.kz-theme-light .mp-therapy-option input:checked + span,
html.kz-theme-light .mp-therapy-option.is-active {
  border-color: var(--light-green) !important;
}

html.kz-theme-light .mp-skip-link {
  color: #ffffff !important;
  background: var(--light-green-deep) !important;
}

html.kz-theme-light .mp-label-row output {
  color: #8f341f !important;
}

html.kz-theme-light .mp-next-step__action .mp-next-step__number {
  color: #ffffff !important;
}

/* Dowody naukowe: instrument zachowuje charakter konsoli danych. */
html.kz-theme-light .evidence-instrument__body {
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  border-radius: 0 0 28px 28px !important;
  padding: clamp(26px, 4vw, 48px) !important;
  background:
    radial-gradient(circle at 92% 10%, rgba(234, 129, 88, 0.20), transparent 22rem),
    linear-gradient(145deg, #102d30, #142b39) !important;
}

html.kz-theme-light .evidence-instrument__body .instrument-readout {
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  background: rgba(255, 255, 255, 0.075) !important;
  box-shadow: 0 14px 34px rgba(4, 18, 23, 0.22) !important;
}

html.kz-theme-light .evidence-instrument__body .instrument-readout :is(
  h3, h4, strong, b
) {
  color: #ffffff !important;
}

html.kz-theme-light .evidence-instrument__body .instrument-readout :is(
  p, li, span, small
) {
  color: #dce8e8 !important;
}

html.kz-theme-light .evidence-instrument__body .instrument-readout strong {
  color: #ffc38f !important;
}

html.kz-theme-light .evidence-instrument__body details,
html.kz-theme-light .evidence-instrument__body summary {
  color: #ffffff !important;
}

html.kz-theme-light .evidence-instrument__body table,
html.kz-theme-light .evidence-instrument__body :is(thead, tbody, tr, th, td) {
  color: #edf6f5 !important;
  border-color: rgba(255, 255, 255, 0.17) !important;
  background: transparent !important;
}

html.kz-theme-light .evidence-instrument__body th {
  color: #ffc38f !important;
}

html.kz-theme-light .evidence-instrument .instrument-data {
  color: #edf6f5 !important;
  border-color: rgba(255, 255, 255, 0.16) !important;
  background: linear-gradient(145deg, #102d30, #142b39) !important;
}

html.kz-theme-light .evidence-instrument .instrument-data summary {
  color: #ffffff !important;
  background: rgba(255, 255, 255, 0.06) !important;
}

html.kz-theme-light .evidence-instrument .instrument-data table,
html.kz-theme-light .evidence-instrument .instrument-data :is(thead, tbody, tr, th, td) {
  color: #edf6f5 !important;
  border-color: rgba(255, 255, 255, 0.17) !important;
  background: transparent !important;
}

html.kz-theme-light .evidence-instrument .instrument-data th {
  color: #ffc38f !important;
}

html.kz-theme-light .methods-page table caption,
html.kz-theme-light .methods-page .methods-table caption {
  color: var(--light-ink) !important;
}

/* Placówki: znaczniki pozostają jednoznaczne na zielonym tle. */
html.kz-theme-light .location-card .location-card__badge,
html.kz-theme-light .location-card .location-card__badge *,
html.kz-theme-light .location-card .location-card__number,
html.kz-theme-light .location-card .location-card__number * {
  color: #ffffff !important;
}

html.kz-theme-light .locations-page .location-jump a span {
  color: #96351f !important;
}

/* Raport, barometr i archiwum: świadomie ciemne wyspy danych. */
html.kz-theme-light .report-safety-layout > div,
html.kz-theme-light .report-safety-layout > div :is(
  h2, h3, h4, p, li, span, strong, small
) {
  color: #ffffff !important;
}

html.kz-theme-light .report-safety-layout > div ul {
  color: #dbe7ea !important;
}

html.kz-theme-light .report-alert__icon,
html.kz-theme-light .report-alert__icon * {
  color: #ffffff !important;
}

html.kz-theme-light .report-page :is(
  .report-rank,
  .report-evidence-grid,
  .report-methods,
  .report-downloads
) b {
  color: #96351f !important;
}

html.kz-theme-light .report-page .report-downloads a > span {
  color: #96351f !important;
}

html.kz-theme-light .access-controls button {
  color: #ffffff !important;
  border-color: var(--light-green-deep) !important;
  background: var(--light-green-deep) !important;
}

html.kz-theme-light .access-controls button:hover {
  color: #ffffff !important;
  background: #0a3f35 !important;
}

html.kz-theme-light .access-page time {
  color: #4a5660 !important;
}

html.kz-theme-light .access-page :is(
  .access-record,
  .access-section,
  .access-registry
) b {
  color: #96351f !important;
}

html.kz-theme-light .archive-hero > aside,
html.kz-theme-light .archive-hero > aside :is(
  h2, h3, h4, p, span, small
) {
  color: #ffffff !important;
}

html.kz-theme-light .archive-hero > aside strong {
  color: #ffc78f !important;
}

html.kz-theme-light .archive-current .archive-current__status > span {
  color: #ffffff !important;
}

/* Formularze informacyjne: akcja musi być czytelna bez względu na arkusz strony. */
html.kz-theme-light .information-form button,
html.kz-theme-light .information-form button :is(span, strong) {
  color: #ffffff !important;
  border-color: var(--light-coral) !important;
  background: linear-gradient(135deg, #d94f32, #b83f28) !important;
}

html.kz-theme-light .information-form button:hover {
  background: linear-gradient(135deg, #be4229, #92301f) !important;
}

/* Stopka jest pełnoprawnym kontrastowym zakończeniem strony. */
html.kz-theme-light .site-footer-v2,
html.kz-theme-light .site-footer-v2__inner {
  color: #ffffff !important;
}

html.kz-theme-light .site-footer-v2 :is(
  p, span, small, strong, b
) {
  color: #dce7e8 !important;
}

html.kz-theme-light .site-footer-v2 a {
  color: #ffffff !important;
}

html.kz-theme-light .site-footer-v2 a:hover {
  color: #ffc18d !important;
}
