/* Shared visual finish: warm foundation, clear paper surfaces, restrained light.
   Photography, chart canvases and calculator controls retain their original layout. */
:root {
  --portal-edge: #b8a78d;
  --portal-edge-active: #637f90;
  --portal-focus: #326282;
  --portal-link-ink: #864319;
  --portal-paper: #fffaf0;
  --portal-paper-end: #f4eddf;
  --portal-reflection: rgba(218,230,233,.42);
  --portal-inner: rgba(255,255,255,.86);
  --portal-shadow: rgba(58,47,32,.19);
  --portal-wash: rgba(255,251,242,.60);
  --portal-ease: cubic-bezier(.16,1,.3,1);
}
html.kz-theme-light {
  --portal-edge: #aebec7;
  --portal-edge-active: #52798e;
  --portal-paper: #ffffff;
  --portal-paper-end: #f2f6f7;
  --portal-reflection: rgba(203,223,235,.42);
  --portal-inner: #ffffff;
  --portal-shadow: rgba(40,64,78,.17);
  --portal-wash: rgba(219,231,237,.37);
}
/* A full, fine edge + inner highlight, not a heavy coloured side stripe. */
html body :is(.kz-when__card, .kz-home__card, .kz-faq__item,
 .location-card, .report-evidence-card, .release > article, .evidence-record,
 .access-record, .epi-snapshot, .epi-chart-card, .prak-expert-card,
 .prak-child-grid-card, .rlrl-authorship__card, .therapy-track,
 .information-notice, .information-form, .article-toc,
 .treatment-block, .report-version-note, .report-method, .report-conclusions > article, .archive-section) {
  outline: 1px solid var(--portal-edge);
  outline-offset: -1px;
  border-color: var(--portal-edge) !important;
  box-shadow: inset 0 1px 0 var(--portal-inner),
    0 12px 30px -23px var(--portal-shadow) !important;
  transition: outline-color 240ms var(--portal-ease), border-color 240ms var(--portal-ease);
}
/* Only known reading/card surfaces: never an image, hero, chart or form result. */
html body :is(.kz-when__card, .kz-home__card:not(.kz-home__card--dark),
 .evidence-record, .report-evidence-card, .report-method, .release--previous > article,
 .information-notice, .information-form, .article-toc, .archive-section,
 .epi-snapshot:not(.epi-snapshot--question), .prak-expert-card--text) {
  background: linear-gradient(125deg, var(--portal-paper), var(--portal-paper) 18%,
    var(--portal-paper-end) 75%, var(--portal-reflection) 140%) !important;
}
html body .report-evidence-card--lead {
  outline-color: var(--portal-edge-active);
  border-color: var(--portal-edge-active) !important;
  background: linear-gradient(120deg, #fbfaf5, #e6edf0) !important;
}
html body :is(.kz-symptom, .mp-eye-card) {
  border-color: var(--portal-edge-active);
  box-shadow: inset 0 1px 0 var(--portal-inner);
}
html body :is(.mp-form-card, .mp-stage) {
  outline: 1px solid var(--portal-edge);
  outline-offset: -1px;
}
/* Preserve intentional dark information panels; remove isolated warm corner blobs. */
html body :is(.archive-hero, .access-hero, .evidence-instrument__body,
 .therapy-map, .combination-matrix) {
  background-image: linear-gradient(125deg, #142535, #203b4a 75%, #263f4b) !important;
}
html body :is(.release--current > article, .rlrl-authorship__card--author,
 .kz-home__card--dark, .therapy-track) {
  --portal-inner: rgba(207,230,241,.22);
  --portal-edge: #6c8390;
}
/* Long neutral illumination, with transparent edges. JS excludes photographic sections. */
.portal-tonal-section { position: relative; isolation: isolate; }
html body .portal-section-light {
  position: absolute;
  inset: -100px 0;
  z-index: -1;
  max-width: none;
  margin: 0;
  padding: 0;
  border: 0;
  pointer-events: none;
  background: radial-gradient(ellipse 78% 44% at 50% 50%, var(--portal-wash), transparent 100%);
}
html body :is(main, .kz-page, .information-page) :is(a, button, input, select, textarea, summary):focus-visible {
  outline: 2px solid var(--portal-focus);
  outline-offset: 4px;
}
html body :is(.information-article, .evidence-article, .portal-methodology) a {
  text-underline-offset: .22em;
}
html body :is(.report-evidence-card, .access-record, .mp-result-card) { font-variant-numeric: tabular-nums; }
html body ::selection { color: #182f40; background: #cfdfe7; }
/* Calculator: restore the original compact callout; sources and full note stay below the panel. */
html body .mp-page .mp-evidence {
  position: relative; z-index: 1; min-width: 0;
  margin-top: 18px; padding: 19px;
  border: 1px solid rgba(244,235,215,.18); border-radius: 18px;
  background: linear-gradient(135deg, rgba(227,182,111,.07), rgba(8,7,5,.22));
}
html body .mp-page .mp-evidence__top {
  display: grid; grid-template-columns: 34px minmax(0,1fr);
  gap: 11px; align-items: center;
}
html body .mp-page .mp-evidence__mark {
  display: grid; place-items: center; width: 34px; height: 34px;
  border: 1px solid rgba(139,209,143,.4); border-radius: 11px;
  background: rgba(106,177,110,.14); color: #a2e2a5 !important;
  font-size: 17px; font-weight: 800; line-height: 1;
}
html body .mp-page .mp-evidence .mp-eyebrow {
  margin: 0 0 4px; color: #e3b66f !important; font-size: 11px; line-height: 1.4;
}
html body .mp-page .mp-evidence h3 {
  margin: 0; color: #f4ebd7 !important; font-size: clamp(16px,1.8vw,20px);
  font-weight: 650; line-height: 1.3;
}
html body .mp-page .mp-evidence > p {
  margin: 13px 0 0; max-width: none; color: #d5c8ae !important;
  font-size: 12px; line-height: 1.65;
}
html body .mp-page .mp-evidence__links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
html body .mp-page .mp-evidence__links a {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 36px; padding: 7px 12px; max-width: 100%; box-sizing: border-box;
  border: 1px solid #779582; border-radius: 999px;
  background: rgba(232,244,224,.08); color: #e4efdc !important;
  font-size: 12px; font-weight: 700; line-height: 1.4; text-decoration: none;
  transition: background .16s ease, border-color .16s ease;
}
html body .mp-page .mp-evidence__links a:hover { background: rgba(232,244,224,.16); border-color: #adc3a6; }
html body .mp-page .mp-evidence__links a:focus-visible { outline: 2px solid #326282; outline-offset: 3px; }
html body .mp-source-note {
  position: relative;
  margin: 28px 0 16px;
  padding: 22px clamp(20px,3vw,32px);
  border: 1px solid #557665;
  border-radius: 18px;
  background: linear-gradient(120deg, #173d34, #294b3e);
  color: #e3eee5;
}
html body .mp-source-note h2 { margin: 0; font-size: 20px; line-height: 1.3; color: #f1f5e9; }
html body .mp-source-note p { margin: 16px 0 0; width: auto; max-width: none; font-size: 14px; line-height: 1.7; color: #e3eee5; }
html body .mp-source-note strong { color: #f1f5e9; }
html body .mp-source-note a { gap: 8px; text-underline-offset: 4px; }
html.kz-theme-light body .mp-page .mp-source-note { background: linear-gradient(120deg,#e5eddf,#d7e5d8) !important; border-color: #8aa18a !important; }
html.kz-theme-light body .mp-page .mp-source-note :is(h2,p,strong,a) { color: #254636 !important; }
html.kz-theme-light body .mp-page .mp-source-note .mp-evidence__mark { color: #2e653a !important; border-color: #88a88a; background: #d0e1ca; }
html.kz-theme-light body .mp-page .mp-source-note .mp-evidence__links a { background: rgba(255,255,245,.45); border-color: #80967e; }
html.kz-theme-light body .mp-page .mp-source-note .mp-evidence__links a:hover { background: #f1f5e9; }
@media (max-width: 620px) {
  html body .mp-page .mp-evidence { padding: 16px; }
  html body .mp-page .mp-evidence__links a { min-height: 44px; }
}
html body .mp-safety { margin-top: 16px; border: 1px solid #c2b293; border-radius: 18px; padding: 22px clamp(20px,3vw,32px); }
html:not(.kz-theme-light) body .mp-page { --kz-graphite-3: #706351; }
html body .mp-page .mp-submit { background: #a85424; color: #fff; }
html body .mp-page .mp-submit:hover { background: #91451e; }
html.kz-theme-light body .mp-page .mp-submit { background: #a85424 !important; color: #fff !important; }
html.kz-theme-light body .mp-page .mp-submit:hover { background: #91451e !important; }
/* Methodology follows the existing evidence page's title/text columns. */
html body .portal-methodology__content { font-size: 16px; line-height: 1.75; }
html body .portal-methodology__content > p { margin: 0 0 18px; max-width: 75ch; }
html body .portal-methodology__content h3 { margin: 30px 0 10px; font-size: 21px; line-height: 1.3; }
html body .portal-methodology__content a { overflow-wrap: anywhere; }
html body .portal-methodology__parameters {
  margin: 24px 0; padding: 6px 22px;
  border: 1px solid var(--portal-edge); border-radius: 14px;
  background: linear-gradient(120deg, var(--portal-paper), var(--portal-paper-end));
}
html body .portal-methodology__parameters summary {
  padding: 14px 0; min-height: 44px; cursor: pointer; font-weight: 700;
}
html body .portal-methodology__parameters p { margin: 8px 0 18px; }
html body .portal-methodology__return { display: inline-flex; align-items: center; min-height: 44px; font-weight: 700; }
/* Retain the previously verified light-mode contrast repairs. */
html.kz-theme-light body .article-meta { background: #d5dee0; border-color: #b4c3c9; }
html.kz-theme-light body .article-meta p { background: #f7faf9 !important; color: #263b48 !important; }
html.kz-theme-light body .article-meta :is(a, strong) { color: #284e63 !important; }
html.kz-theme-light body .access-hero .access-dial span { color: #fff8ec !important; }
html.kz-theme-light body .access-hero__dial :is(b, p) { color: #e0e9ef !important; }
html.kz-theme-light body .mp-mini-chart__label { color: #425d6d !important; }
html body .information-article h2 { border-top-color: var(--portal-edge); }
@media (forced-colors: active) {
  html body .portal-section-light { display: none; }
  html body :is(.portal-pointer-host, .mp-form-card, .mp-stage) { outline-color: CanvasText; }
}
/* Final audit: readable text on warm paper, without changing dark-panel accents. */
html:not(.kz-theme-light) body :is(.kz-section__eyebrow, .article-update a,
 .epi-section__heading .epi-kicker, .epi-prose sup a,
 .locations-introduction__index, .location-jump a > span,
 .mp-form-card .mp-section-heading__number, .mp-form-card .mp-eyebrow,
 .mp-label-row output, .prak-monitoring > article > span, .prak-page sup a,
 .report-section__head .report-kicker, .report-references > .report-kicker,
 .report-conclusions > article > span, .report-toc > p,
 .report-method__meta > b, .report-more-link > a, .report-downloads a > span,
 .report-version-note a) { color: var(--portal-link-ink); }
html:not(.kz-theme-light) body :is(.report-breadcrumbs ol, .report-breadcrumbs a) { color: #665747; }
html:not(.kz-theme-light) body .prak-therapy-media figcaption,
html:not(.kz-theme-light) body .prak-therapy-media figcaption a { color: #425b53; }
html:not(.kz-theme-light) body .prak-page .prak-citation a { color: var(--portal-link-ink) !important; }
html body .portal-methodology__content a { color: #285c78 !important; }
html body .mp-submit__pulse { display: none; animation: none; }
html body .kz-modal[aria-hidden="true"] { display: none !important; }
html body :is(.epi-chart-card, .therapy-map__table):focus-visible {
  outline: 2px solid var(--portal-focus); outline-offset: 4px;
}

/* SOFT GRAPHITE CLINICAL — selected variant, isolated from the light theme.
   Existing typography, photography and light reading islands are intentional. */
:root {
  --surface-dark: #17232a;
  --surface-dark-elevated: #243741;
  --surface-light: #f7f2e8;
  --surface-light-end: #ecece3;
  --edge-soft: #69808a;
  --edge-hover: #b4ced3;
  --glow-cool: rgba(186,227,235,.16);
  --glow-warm: rgba(218,157,91,.07);
  --text-primary-dark: #f3f0e8;
  --text-secondary-dark: #c0ccce;
  --accent-copper: #d99051;
  --accent-clinical: #b8e2e8;
  --graphite-field: linear-gradient(125deg,#17232a,#223640 64%,#2a3d43);
  --graphite-edge: inset 0 1px 0 rgba(228,242,239,.28),0 22px 54px -36px rgba(18,37,45,.52);
}
html:not(.kz-theme-light) body { background: #c8d0ce; }
html:not(.kz-theme-light) body .kz-page {
  background: linear-gradient(180deg,#c8d0ce 0,#d8dcd5 640px,#eae7db 1300px,#f0eadf 2200px,#e5e8e1 100%);
  --portal-edge: #9ba9a6; --portal-edge-active: #657f8c;
  --portal-paper: #fcf8ef; --portal-paper-end: #eef0e8;
  --portal-inner: rgba(255,255,246,.84);
  --portal-reflection: rgba(206,226,231,.38);
}
/* Shared navigation: one continuous graphite surface, including open submenus. */
html:not(.kz-theme-light) body .kz-header__inner.kz-wrap {
  background: var(--graphite-field); border-color: var(--edge-soft);
  box-shadow: var(--graphite-edge); backdrop-filter: none;
}
html:not(.kz-theme-light) body .kz-header :is(.kz-nav a,.kz-nav__trigger,.kz-brand,.kz-brand__name,.kz-brand__title,.kz-logo-text,.kz-logo-wordmark) { color: var(--text-primary-dark); }
html:not(.kz-theme-light) body .kz-header .kz-logo.kz-brand__wordmark { color: var(--text-primary-dark); }
html:not(.kz-theme-light) body .kz-header :is(.kz-nav__submenu,.kz-nav__submenu a) { background: var(--surface-dark-elevated); color: var(--text-primary-dark); }
html:not(.kz-theme-light) body .kz-header .kz-nav__submenu span { color: var(--text-secondary-dark); }
html:not(.kz-theme-light) body .kz-header :is(.kz-a11y-launch,.kz-mobile-menu-toggle) { color: var(--text-primary-dark); border-color: var(--edge-soft); background: var(--surface-dark-elevated); }
html:not(.kz-theme-light) body .kz-mobile-menu-toggle span { background: var(--text-primary-dark); }
html:not(.kz-theme-light) body .kz-header .kz-hash { color: #f4e7d1; background: rgba(211,140,75,.14); border-color: #bd8d5a; }
@media(max-width:1100px) {
 html:not(.kz-theme-light) body .kz-header.is-mobile-menu-open .kz-nav { background: var(--surface-dark); border-color: var(--edge-soft); }
}
/* Home: graphite surrounds the existing photograph; the child is never filtered. */
html:not(.kz-theme-light) body.homepage .kz-hero__image { background: var(--graphite-field); box-shadow: var(--graphite-edge); border: 1px solid var(--edge-soft); }
html:not(.kz-theme-light) body.homepage .kz-hero__image::before { background: linear-gradient(90deg,#192830 0%,rgba(25,40,48,.96) 22%,rgba(25,40,48,.82) 39%,rgba(25,40,48,.32) 54%,rgba(25,40,48,0) 73%); }
html:not(.kz-theme-light) body.homepage .kz-hero__image::after { background: none; filter: none; }
html:not(.kz-theme-light) body.homepage .kz-hero__content :is(h1,.kz-hero__lead) { color: var(--text-primary-dark); }
html:not(.kz-theme-light) body.homepage .kz-hero__content h1 span { color: var(--accent-clinical); }
html:not(.kz-theme-light) body.homepage .kz-hero__description { color: #e0e5de; }
html:not(.kz-theme-light) body.homepage .kz-hero__start { color: #231e16; background: linear-gradient(120deg,#edbe87,#d7975f); border-color: #f6cf9e; }
html:not(.kz-theme-light) body.homepage .kz-hero__campaign { color: #f3efe4; }
html:not(.kz-theme-light) body.homepage .kz-test { background: linear-gradient(125deg,#fffaf0,#f2f0e5); border-color: #81969b; box-shadow: var(--graphite-edge); }
html:not(.kz-theme-light) body.homepage :is(.home-evidence__inner,.kz-final,.kz-home__card--dark) { background: var(--graphite-field) !important; border-color: var(--edge-soft); color: var(--text-primary-dark); box-shadow: var(--graphite-edge) !important; }
html:not(.kz-theme-light) body.homepage :is(.home-evidence__inner,.kz-final,.kz-home__card--dark) :is(h2,h3,p) { color: var(--text-primary-dark); }
html:not(.kz-theme-light) body.homepage .home-evidence__inner a { color: #efbf88; }
@media(max-width:820px) {
 html:not(.kz-theme-light) body.homepage .kz-hero__content { background: linear-gradient(155deg,#192830,#2a3d43); }
 html:not(.kz-theme-light) body.homepage .kz-hero__media::before { background: linear-gradient(180deg,#293c43,rgba(41,60,67,0) 40%); }
}
/* Calculator: ivory input / graphite analysis. No shared paint behind the rounded cards. */
html body .mp-calculator { background: transparent; }
html:not(.kz-theme-light) body .mp-page :is(.mp-hero__panel,.mp-stage,.mp-source-note) { background: var(--graphite-field) !important; border: 1px solid var(--edge-soft); box-shadow: var(--graphite-edge); color: var(--text-primary-dark); }
html:not(.kz-theme-light) body .mp-page .mp-hero__panel :is(h1,p,.mp-mini-chart__label) { color: var(--text-primary-dark); }
html:not(.kz-theme-light) body .mp-page .mp-hero__panel .mp-eyebrow { color: var(--accent-copper); }
html:not(.kz-theme-light) body .mp-page .mp-form-card { background: linear-gradient(135deg,#fffaf0,#f3efe3); outline-color: #82969b; box-shadow: var(--graphite-edge); }
html:not(.kz-theme-light) body .mp-page .mp-evidence { border-color: #5c7780; background: linear-gradient(125deg,rgba(190,225,226,.035),rgba(10,24,32,.32)); }
html:not(.kz-theme-light) body .mp-page .mp-source-note :is(h2,p,strong) { color: var(--text-primary-dark); }
html:not(.kz-theme-light) body .mp-page .mp-source-note .mp-evidence__links a { background: rgba(213,237,239,.06); border-color: #78979f; color: #e3e9dc !important; }
/* Data/editorial panels share depth without turning reading pages into dashboards. */
html:not(.kz-theme-light) body :is(.article-header:not(.about-hero),.epi-hero,.epi-snapshot--question,.epi-dark-panel,
 .archive-hero,.access-hero,.evidence-instrument__body,.therapy-map,.combination-matrix,
 .rlrl-hero,.information-hero,.release--current>article,.rlrl-authorship__card--author) {
  background: var(--graphite-field) !important; border-color: var(--edge-soft) !important;
  box-shadow: var(--graphite-edge) !important;
}
html:not(.kz-theme-light) body .article-header:not(.about-hero) :is(h1,.article-subtitle) { color: var(--text-primary-dark); }
html:not(.kz-theme-light) body .information-hero :is(h1,p) { color: var(--text-primary-dark); }
html:not(.kz-theme-light) body .report-page { background: transparent; }
html:not(.kz-theme-light) body .report-evidence-card--lead { background: linear-gradient(120deg,#f9f8f0,#dce8e9) !important; outline-color: #5e7d89; }
html:not(.kz-theme-light) body .report-hero { border: 1px solid #718893; box-shadow: var(--graphite-edge); }
html:not(.kz-theme-light) body .therapy-track { background: var(--graphite-field) !important; }
html:not(.kz-theme-light) body .therapy-track:nth-child(even) { background: linear-gradient(120deg,#eff1e8,#dbe6e6) !important; color: #293a3e; }
html:not(.kz-theme-light) body .therapy-track:nth-child(even) :is(h2,h3,p,span,strong,a) { color: #293a3e; }
html:not(.kz-theme-light) body .therapy-track:nth-child(even) > span:nth-child(3) { background: rgba(41,58,62,.08); }
.information-placeholder h2 { overflow-wrap: anywhere; }
html:not(.kz-theme-light) body .evidence-record { background: linear-gradient(125deg,#253842,#1b2a33) !important; color: var(--text-primary-dark); --portal-inner: rgba(228,242,239,.2); --portal-edge: #718995; }
html:not(.kz-theme-light) body .evidence-record :is(h3,p,dt,dd,summary,em) { color: var(--text-primary-dark); }
html:not(.kz-theme-light) body .evidence-record a { color: #ecc08c; }
html:not(.kz-theme-light) body .evidence-record:nth-child(even) { background: linear-gradient(125deg,#30434a,#263940) !important; }

/* Rozwijane treści zawsze nazywają akcję; trójkąt nie jest jedynym sygnałem. */
html body summary[data-kz-disclosure-label] {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
}
html body .kz-disclosure-action {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  min-height: 32px;
  padding: 6px 10px;
  border: 1px solid currentColor;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.15;
  white-space: nowrap;
  text-decoration: none;
}
html:not(.kz-theme-light) body .kz-disclosure-action {
  color: #f3cd9c !important;
  background: rgba(243, 205, 156, 0.08);
}
html.kz-theme-light body .kz-disclosure-action {
  color: #7b341f !important;
  background: rgba(184, 68, 37, 0.08);
}
@media (max-width: 560px) {
  html body summary[data-kz-disclosure-label] {
    align-items: flex-start;
    flex-direction: column;
    gap: 8px;
  }
  html body .kz-disclosure-action {
    align-self: flex-start;
  }
}
html:not(.kz-theme-light) body .location-card:nth-of-type(odd) { background: linear-gradient(125deg,#e4eae4,#d6e2e3) !important; }
html:not(.kz-theme-light) body .location-card--featured { border-color: #63818b !important; }
html:not(.kz-theme-light) body .access-record { background: linear-gradient(125deg,#faf7ee,#e5edeb); }
html:not(.kz-theme-light) body .access-dial span { color: #fff9ed; }
/* The editorial medical note is text, not a bordered input. Preserve Nowak and Anna's paper. */
html body .epi-page .medical-note { outline: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
html:not(.kz-theme-light) body .prak-expert-card--text { background: linear-gradient(125deg,#fff7eb,#edf0e4) !important; }
html.kz-theme-light body .access-page .access-hero .access-hero__dial p { color: #e0e9ef !important; }
/* Photorealistic closing assets; image and live text stay independently responsive. */
.mp-horizon { position: relative; margin: 0 auto 36px; width: min(calc(100% - 48px),1580px); border-radius: 28px; overflow: clip; }
.mp-horizon img { display: block; width: 100%; height: clamp(300px,32vw,480px); object-fit: cover; object-position: center 55%; }
html body .mp-horizon__motto { position: absolute; top: 8%; right: 6%; margin: 0; max-width: 18ch; color: #172a32; font-family: Georgia,serif; font-size: clamp(26px,3vw,46px); line-height: 1.15; letter-spacing: -.025em; font-style: italic; text-shadow: 0 1px 12px rgba(255,247,226,.65); }
.homepage .kz-final { position: relative; isolation: isolate; overflow: clip; }
html body.homepage .kz-final::before { content: none !important; }
html body.homepage .kz-final { background: #071620 !important; min-height: clamp(390px,35vw,520px); }
.homepage .kz-final__earth { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.homepage .kz-final::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(180deg,rgba(4,15,24,.9),rgba(4,15,24,.6) 40%,transparent 80%); }
.homepage .kz-final__inner { position: relative; z-index: 1; margin-left: 0; align-items: start; }
html body.homepage .kz-final :is(h2,p) { color: #f3f0e8 !important; }
@media(max-width:900px) {
 html body.homepage .kz-final { min-height: 440px; }
 .homepage .kz-final__earth { object-position: 55% center; }
 .homepage .kz-final__inner { margin-left: 0; }
}
@media(max-width:600px) {
 .mp-horizon img { height: 340px; object-position: 55% center; }
 html body .mp-horizon__motto { top: 24px; right: 22px; font-size: 28px; }
}
html:not(.kz-theme-light) body .site-footer-v2 { background: linear-gradient(115deg,#172730,#273943 75%,#283b40); border-top-color: #c68d58; box-shadow: inset 0 1px 0 rgba(238,226,199,.34); }
/* Cursor-following light: a single decorative layer; never intercepts controls. */
html body .portal-pointer-host { position: relative; }
html body .portal-pointer-light {
  position: absolute; inset: 0; z-index: 3; border-radius: inherit; pointer-events: none;
  opacity: 0; transition: opacity .25s ease; margin: 0; border: 0; padding: 0;
  background: radial-gradient(430px circle at var(--pointer-x,50%) var(--pointer-y,50%),rgba(195,230,235,.16),transparent 65%) !important;
}
html body .portal-pointer-light::after {
  content: ""; position: absolute; inset: 0; padding: 1px; border-radius: inherit;
  background: radial-gradient(250px circle at var(--pointer-x,50%) var(--pointer-y,50%),#e6f4ed,rgba(192,227,235,.35) 48%,transparent 80%);
  -webkit-mask: linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); -webkit-mask-composite: xor;
  mask: linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0); mask-composite: exclude;
}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 html body .portal-pointer-host[data-pointer-active]>.portal-pointer-light { opacity: 1; }
 html body .portal-pointer-host:hover { outline-color: var(--edge-hover); }
}
@media(hover:none),(pointer:coarse),(prefers-reduced-motion:reduce) {
 html body .portal-pointer-light { display: none; }
}
@media(forced-colors:active) { html body .portal-pointer-light,.homepage .kz-final::before { display:none; } }
/* Audit corrections: readable small labels and transparent photo wrappers. */
html:not(.kz-theme-light) body .references-list>li:not(.evidence-record)>a { color: #874219; }
html:not(.kz-theme-light) body .epi-data-label { color: #874219; }
html:not(.kz-theme-light) body .mp-hero .kz-btn { background: #a65323; color: #fffaf0; }
html:not(.kz-theme-light) body .mp-stage :is(.mp-stage__status,.mp-chart-empty p) { color: #c1cbca; }
html:not(.kz-theme-light) body .prak-page { --prak-muted: #53625d; --prak-accent: #96492e; }
html.kz-theme-light body .epi-hero__media { background: transparent !important; border-color: transparent !important; box-shadow: none !important; }

/* Modrzejewska: the same clinical graphite as navigation, without brown photo veils. */
html:not(.kz-theme-light) .about-site {
  --about-ink: #20343e;
  --about-muted: #526870;
  --about-paper: #f3f5f0;
  --about-paper-2: #e8efee;
  --about-line: rgba(67,104,120,.18);
}
html:not(.kz-theme-light) body .about-hero {
  background: linear-gradient(115deg,#192b34 0%,#233c47 62%,#294752 100%) !important;
  border-color: #69808a;
}
html:not(.kz-theme-light) body .about-hero::before { background: rgba(23,43,54,.65); border-color: rgba(184,226,232,.3); color: #d5e6e8; }
html:not(.kz-theme-light) body .about-hero::after { border-color: rgba(159,205,220,.24); box-shadow: 0 0 0 32px rgba(159,205,220,.035),0 0 0 78px rgba(159,205,220,.02); }
html:not(.kz-theme-light) body .about-hero__portrait-art::before {
  background: linear-gradient(90deg,#1c303a 0%,rgba(28,48,58,.96) 15%,rgba(31,54,65,.88) 33%,rgba(35,60,71,.65) 52%,rgba(35,60,71,.15) 76%,transparent 100%);
}
html:not(.kz-theme-light) body .about-hero__portrait-art img { opacity: .94; filter: saturate(.94) contrast(1.01); }
html:not(.kz-theme-light) body .about-hero > .article-subtitle { color: #bee2eb; }
html:not(.kz-theme-light) body .about-statement p { color: #d9e4e5; }
html:not(.kz-theme-light) body .about-author { background: rgba(171,211,225,.08); border-color: rgba(171,211,225,.3); }
html:not(.kz-theme-light) body .about-author small { color: #c0d7df; }
html:not(.kz-theme-light) body .about-author > span { background: #9dbfcd; }
html:not(.kz-theme-light) body .about-author:hover { background: rgba(171,211,225,.13); border-color: #aacdd9; }
@media(max-width:760px) {
 html:not(.kz-theme-light) body .about-hero__portrait-art::before { background: linear-gradient(180deg,rgba(34,59,70,.28),transparent 25%,transparent 80%,rgba(38,65,76,.14)); }
}
