@font-face{font-family:"Newsreader";font-style:normal;font-weight:200 800;font-display:swap;src:local("Newsreader"), url("fonts/newsreader-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Newsreader";font-style:normal;font-weight:200 800;font-display:swap;src:local("Newsreader"), url("fonts/newsreader-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:200 800;font-display:swap;src:local("Plus Jakarta Sans"), url("fonts/jakarta-latin.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Plus Jakarta Sans";font-style:normal;font-weight:200 800;font-display:swap;src:local("Plus Jakarta Sans"), url("fonts/jakarta-latin-ext.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Newsreader Fallback";src:local("Georgia");size-adjust:82.4%;ascent-override:89.2%;descent-override:32.2%;line-gap-override:0%}
@font-face{font-family:"Plus Jakarta Sans Fallback";src:local("Arial");size-adjust:91.9%;ascent-override:112.9%;descent-override:24.2%;line-gap-override:0%}
/* Spokojnie – design tokens. Every colour, font size, spacing step and radius used below comes from this block
   (rule enforced by tests/test_design_tokens.py; rationale in DESIGN.md). Light values on :root, dark values in the
   prefers-color-scheme block. Semantic level colours (norm/worry/doc/sor) are separate from the brand: norm = pine. */
:root{
--paper:#F7F8F4;--surface:#FFFFFF;--ink:#17231D;--ink-2:#4C5852;--line:#DDE3DC;--line-strong:#7D8981;
--pine:#1F5A47;--pine-strong:#174536;--pine-tint:#E3EEE8;--sun:#E3B341;--on-pine:#FFFFFF;--focus:#B57A00;
--norm-fg:#1F5A47;--norm-bg:#E3EEE8;--worry-fg:#6B4A00;--worry-bg:#FBF0D2;
--doc-fg:#8A3B0C;--doc-bg:#FCE9DA;--sor-fg:#9B1C1C;--sor-bg:#FBE4E2;--sor-solid:#B42318;--mark:#FBF0D2;
--font-display:"Newsreader","Newsreader Fallback",Georgia,"Times New Roman",serif;
--font-text:"Plus Jakarta Sans","Plus Jakarta Sans Fallback",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
--fs-xs:.8125rem;--fs-sm:.9375rem;--fs-base:1.0625rem;--fs-lg:1.25rem;--fs-xl:clamp(1.375rem,1.2rem + .8vw,1.625rem);
--fs-2xl:clamp(1.75rem,1.4rem + 1.6vw,2.375rem);--fs-hero:clamp(1.5rem,1.1rem + 1.9vw,2.125rem);
--lh-tight:1.15;--lh-snug:1.35;--lh-body:1.6;
--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4rem;
--r-sm:.375rem;--r-md:.75rem;--r-lg:1.25rem;--r-pill:999px;
--measure:68ch;--page:60rem;--tap:44px;
--shadow-field:0 1px 2px rgba(23,35,29,.06);--shadow-panel:0 1px 2px rgba(23,35,29,.05),0 8px 24px rgba(23,35,29,.06);
}
@media (prefers-color-scheme:dark){:root{
--paper:#111714;--surface:#18201C;--ink:#E6ECE8;--ink-2:#A6B2AC;--line:#2B3530;--line-strong:#66736C;
--pine:#86C8AC;--pine-strong:#A6DBC3;--pine-tint:#1C3129;--sun:#E9C163;--on-pine:#0E1A15;--focus:#F0B429;
--norm-fg:#9AD9BD;--norm-bg:#17302A;--worry-fg:#F2CF7A;--worry-bg:#33290F;
--doc-fg:#F7B58A;--doc-bg:#3A2213;--sor-fg:#FFB1AA;--sor-bg:#3D1716;--sor-solid:#FF8A80;--mark:#4A3C12;
--shadow-field:none;--shadow-panel:none;color-scheme:dark}}

/* base */
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-padding-top:var(--tap)}
body{margin:0;background:var(--paper);color:var(--ink);font:400 var(--fs-base)/var(--lh-body) var(--font-text);
  font-feature-settings:"ss01" 0;text-rendering:optimizeLegibility}
a{color:var(--pine);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:var(--r-sm)}
.wrap{max-width:var(--page);margin:0 auto;padding-inline:var(--sp-4)}
@media(min-width:760px){.wrap{padding-inline:var(--sp-6)}}
main,article{min-width:0}
.ic{flex:none}
h1,h2,h3{font-family:var(--font-display);font-weight:500;letter-spacing:-.01em;text-wrap:balance;color:var(--ink)}
h1{font-size:var(--fs-2xl);line-height:var(--lh-tight);margin:var(--sp-3) 0 var(--sp-4);overflow-wrap:anywhere}
h2{font-size:var(--fs-xl);line-height:var(--lh-snug);margin:0 0 var(--sp-3)}
h3{font-size:var(--fs-lg);line-height:var(--lh-snug);margin:var(--sp-5) 0 var(--sp-2)}
/* small uppercase label: a presentation class, so h3 keeps one semantic role (a sub-heading) */
.eyebrow{font-family:var(--font-text);font-size:var(--fs-xs);font-weight:700;line-height:var(--lh-body);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);margin:var(--sp-5) 0 var(--sp-2)}
p{margin:0 0 var(--sp-3)}
.gap{margin-top:var(--sp-7)}
.prose{max-width:var(--measure)}
.note{font-size:var(--fs-sm);color:var(--ink-2);max-width:var(--measure)}
.vh{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}

/* header */
.top{background:var(--paper);border-bottom:1px solid var(--line)}
.top .wrap{display:flex;flex-wrap:wrap;gap:var(--sp-3) var(--sp-4);align-items:center;padding-block:var(--sp-3)}
/* language link (both editions) and the note that heads every page of the English edition */
.langsw{min-width:var(--tap);padding:0 var(--sp-3)}
.edition{background:var(--pine-tint);color:var(--ink);border-bottom:1px solid var(--line)}
.edition p{margin:0;padding-block:var(--sp-2);font-size:var(--fs-sm);line-height:var(--lh-snug);max-width:none}
.logo{display:inline-flex;align-items:center;gap:var(--sp-2);flex:1 1 auto;color:var(--ink);text-decoration:none;min-height:var(--tap)}
.logo .mark{flex:none}
.logo .wm{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:500;line-height:1;letter-spacing:-.01em}
.logo small{display:block;font-family:var(--font-text);font-size:var(--fs-xs);color:var(--ink-2);font-weight:500;letter-spacing:0;margin-top:var(--sp-1)}
@media(max-width:479px){.logo small{display:none}}
/* three styles of anything clickable (DESIGN.md): .btn-1 main (filled pine, one per screen), .btn-2 secondary (outlined pill:
   actions and object navigation), and the text style = every plain link and .lnk (pine, underlined, size of its surroundings) */
.btn-1,.btn-2{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:var(--tap);padding:0 var(--sp-4);
  font:inherit;font-weight:600;line-height:var(--lh-snug);border-radius:var(--r-pill);text-decoration:none;white-space:nowrap;cursor:pointer}
.btn-1{padding:0 var(--sp-5);border:1px solid var(--pine);background:var(--pine);color:var(--on-pine)}
.btn-1:hover{background:var(--pine-strong);border-color:var(--pine-strong)}
.btn-2{font-size:var(--fs-sm);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink)}
.btn-2:hover{border-color:var(--ink-2)}
.btn-2 .ic{color:var(--ink-2)}
.btn-1[hidden],.btn-2[hidden],.lnk[hidden]{display:none}
.lnk{font:inherit;font-weight:inherit;color:var(--pine);background:none;border:0;padding:0;min-height:var(--tap);text-decoration:underline;
  text-decoration-thickness:1px;text-underline-offset:.18em;cursor:pointer}
.searchbox{position:relative;flex:1 1 100%;order:3;display:flex;gap:var(--sp-2);min-width:0}
.searchbox label{position:absolute;left:-9999px}
.searchbox input{flex:1;min-width:0;min-height:var(--tap);font:inherit;padding:var(--sp-2) var(--sp-4) var(--sp-2) var(--sp-7);
  border:1px solid var(--line-strong);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-field)}
.searchbox input::placeholder{color:var(--ink-2)}
.searchbox .ic{position:absolute;left:var(--sp-4);top:50%;translate:0 -50%;color:var(--ink-2)}
@media(max-width:480px){.searchbox .btn-1{padding:0 var(--sp-4)}}
.disc{font-size:var(--fs-xs);line-height:var(--lh-snug);color:var(--ink-2);margin:var(--sp-2) 0 0;max-width:var(--measure)}
.disc a{color:var(--sor-fg);font-weight:700}

/* breadcrumbs, meta, small labels */
.crumb{font-size:var(--fs-sm);color:var(--ink-2);margin:var(--sp-5) 0 0}
/* trust line under the answer: one grey line, segments joined by "·" (decorative, not read out), the two links in the text style;
   the date and the report link never break in the middle, the source list may wrap */
.meta{font-size:var(--fs-sm);color:var(--ink-2);display:flex;flex-wrap:wrap;align-items:baseline;gap:0 var(--sp-2);margin:var(--sp-4) 0 var(--sp-6)}
.meta>span{white-space:nowrap}.meta>.srcline{white-space:normal}
.meta>span:not(:last-child)::after{content:"·";content:"·" / "";margin-left:var(--sp-2)}
.badge{display:inline-block;font-size:var(--fs-xs);font-weight:500;color:var(--ink-2);margin-right:var(--sp-2)}
.flag{background:var(--worry-bg);color:var(--worry-fg);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-sm);margin:var(--sp-3) 0}

/* question page: answer first */
.answer{margin:0}
.answer .lab{font-size:var(--fs-xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--pine);margin:0 0 var(--sp-2)}
.answer>p:not(.lab){font-size:var(--fs-base);font-weight:500;line-height:var(--lh-body);max-width:var(--measure);margin:0}
@media(min-width:760px){.answer>p:not(.lab){font-size:var(--fs-lg);font-weight:400}}
/* age band of the answer (always) and the note for a stored age outside it (only then): neutral, never a status colour */
.scope{font-size:var(--fs-sm);color:var(--ink-2);margin:0 0 var(--sp-4)}
.scope strong{color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}
.agenote{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-4);margin:0 0 var(--sp-4);padding:var(--sp-3) var(--sp-4);
  background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-md);font-size:var(--fs-sm);color:var(--ink-2)}
.agenote[hidden]{display:none}
.agenote .ic{margin-top:var(--sp-1);align-self:flex-start}
.agenote p{flex:1 1 14rem;margin:0;max-width:var(--measure)}
.agenote strong{color:var(--ink);font-weight:700}
.agenote .btn-2{flex:none}
@media(max-width:479px){.agenote .btn-2{flex:1 1 100%}.agenote p{flex-basis:calc(100% - var(--sp-7))}}
/* level map, written once: --lv = level colour, --lv-bg = panel tint (chips .k-*, sections .t-*, jump bar and the "Nie rób" box read it) */
.k-norm,.t-norm{--lv:var(--norm-fg)}.k-worry,.t-worry{--lv:var(--worry-fg)}
.k-lekarz,.t-lekarz{--lv:var(--doc-fg);--lv-bg:var(--doc-bg)}.k-sor,.t-sor,.k-donot,.donot{--lv:var(--sor-fg);--lv-bg:var(--sor-bg)}
.k-myth,.t-myth{--lv:var(--pine)}
/* in-page nav (all widths): sticky text links, level colour only as a dot; scrollspy sets aria-current (app.js) */
.k-src{--lv:var(--ink-2)}
.qnav{position:sticky;top:0;z-index:5;background:var(--paper);border-bottom:1px solid var(--line);margin:0 calc(var(--sp-4) * -1) var(--sp-5);padding:0 var(--sp-4)}
.qnav-in{position:relative;display:flex;gap:var(--sp-5);overflow-x:auto;overscroll-behavior-x:contain;touch-action:pan-x pan-y;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.qnav-in::-webkit-scrollbar{display:none}
.qnav a{position:relative;flex:none;display:inline-flex;align-items:center;gap:var(--sp-2);min-height:var(--tap);font-size:var(--fs-sm);
  font-weight:600;color:var(--ink-2);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px}
.qnav i{width:.5rem;height:.5rem;border-radius:var(--r-pill);border:1.5px solid var(--lv,var(--ink-2));flex:none}
.qnav a:hover{color:var(--ink)}
.qnav a[aria-current]{color:var(--ink);border-bottom-color:var(--lv,var(--ink))}
.qnav a[aria-current] i{background:var(--lv,var(--ink))}
.qnav a:focus-visible{outline-offset:-2px;border-radius:var(--r-sm)}
@media(max-width:759px){.qnav-in{gap:var(--sp-4)}}
.qnav.more-r .qnav-in{-webkit-mask-image:linear-gradient(to right,var(--paper) calc(100% - var(--sp-6)),transparent);mask-image:linear-gradient(to right,var(--paper) calc(100% - var(--sp-6)),transparent)}
.qnav.more-l .qnav-in{-webkit-mask-image:linear-gradient(to left,var(--paper) calc(100% - var(--sp-6)),transparent);mask-image:linear-gradient(to left,var(--paper) calc(100% - var(--sp-6)),transparent)}
.qnav.more-l.more-r .qnav-in{-webkit-mask-image:linear-gradient(to right,transparent,var(--paper) var(--sp-6),var(--paper) calc(100% - var(--sp-6)),transparent);mask-image:linear-gradient(to right,transparent,var(--paper) var(--sp-6),var(--paper) calc(100% - var(--sp-6)),transparent)}
@media(min-width:760px){.qnav{margin-inline:0;padding-inline:0}}

/* level sections: plain for norm/worry/myths, tinted panel when action is needed (doctor, SOR) */
.tier{margin:var(--sp-6) 0;scroll-margin-top:var(--sp-4)}
.tier>:last-child{margin-bottom:0}
.tier :is(h2,h3){display:flex;align-items:center;gap:var(--sp-2);font-family:var(--font-display);font-size:var(--fs-xl);font-weight:500;
  letter-spacing:-.01em;margin:0 0 var(--sp-2)}
.tier :is(h2,h3){color:var(--lv)}
.t-lekarz,.t-sor{border-radius:var(--r-lg);padding:var(--sp-5);background:var(--lv-bg)}
.claims{list-style:none;margin:0 0 var(--sp-3);padding:0;max-width:var(--measure)}
.claims li{position:relative;padding:var(--sp-1) 0 var(--sp-1) var(--sp-5);overflow-wrap:anywhere}
.claims li::before{content:"";position:absolute;left:var(--sp-2);top:.8em;width:.375rem;height:.375rem;border-radius:var(--r-pill);background:currentColor;opacity:.45}
.lead-in{font-weight:700;margin:var(--sp-4) 0 var(--sp-1);max-width:var(--measure)}
.tier .tier-intl+.lead-in,.tier :is(h2,h3)+.lead-in{margin-top:var(--sp-2)}
.t-lekarz .lead-in,.t-sor .lead-in{color:inherit}
.claims+.claims{border-top:1px solid color-mix(in srgb,currentColor 14%,transparent);padding-top:var(--sp-3)}
.tier-intl{margin:0 0 var(--sp-2)}
.tier-intl .badge,.legend .badge{background:none;color:var(--ink-2);font-weight:500;padding:0;margin:0}
.infobtn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;margin:0 0 0 var(--sp-1);padding:0;
  vertical-align:middle;border:1px solid var(--line-strong);border-radius:var(--r-pill);background:none;color:var(--ink);cursor:pointer}
.infobtn::after{content:"";position:absolute;left:50%;top:50%;width:var(--tap);height:var(--tap);transform:translate(-50%,-50%)}
.infobtn:hover{color:var(--ink);border-color:var(--ink-2)}
.infobtn[hidden]{display:none}
.infomodal p{margin:0;max-width:var(--measure)}
.infomodal h2{margin-bottom:var(--sp-3)}
.intl-mark{white-space:nowrap}.lead-in .intl-mark{display:block;font-size:var(--fs-xs);font-weight:500;color:var(--ink-2)}

/* source of one sentence: a quiet text link (grey, dashed underline); opened, the literal quote ("Pokaż oryginał"), link, licence number */
.fn{display:inline}
.fn summary{display:inline;position:relative;cursor:pointer;list-style:none;white-space:nowrap;font-size:var(--fs-xs);font-weight:600;
  color:var(--ink-2);text-decoration:underline dashed;text-decoration-thickness:1px;text-underline-offset:.2em;margin-left:var(--sp-1)}
.fn summary::after{content:"";position:absolute;inset:-.8rem -.25rem}
.fn summary::-webkit-details-marker{display:none}
.fn:not([open]):has(+.fn-after)::details-content{display:none}   /* closed: no block in the line, so the "i" button after it stays inline */
.fn-after{font-size:var(--fs-xs);white-space:nowrap}   /* same alignment box as inside the summary */
.fn summary:hover,.fn[open] summary{color:var(--ink)}
.fn-body{display:block;margin:var(--sp-2) 0 var(--sp-2);padding:var(--sp-3) var(--sp-4);background:var(--surface);color:var(--ink);
  border:1px solid var(--line);border-radius:var(--r-md);font-size:var(--fs-sm)}
.fn-body p{margin:var(--sp-1) 0}.fn-body blockquote{margin:var(--sp-2) 0;font-family:var(--font-display);font-size:var(--fs-lg);overflow-wrap:anywhere}
.fn-body a{overflow-wrap:anywhere}
.more{margin-top:var(--sp-1)}
.more summary{display:inline-flex;align-items:center;gap:var(--sp-2);cursor:pointer;min-height:var(--tap);padding:var(--sp-1) var(--sp-3);
  border-radius:var(--r-pill);color:var(--pine);font-weight:600;font-size:var(--fs-sm);list-style:none}
.more summary:hover{background:var(--pine-tint)}
@media(pointer:fine){.more summary{min-height:2rem}}
.more summary::-webkit-details-marker{display:none}
.more summary::before{content:"▸";content:"▸" / "";display:inline-block}
.more[open] summary::before{content:"▾";content:"▾" / ""}

/* myths: label = icon + text (never colour alone) */
.vlabel{display:inline-flex;align-items:center;gap:var(--sp-1);font-size:var(--fs-xs);font-weight:700;border-radius:var(--r-pill);padding:0 var(--sp-2) 0 var(--sp-1);white-space:nowrap}
.v-falsz .vlabel,.vlabel.v-falsz{color:var(--pine);background:var(--pine-tint)}
.v-nieudowodnione .vlabel,.vlabel.v-nieudowodnione{color:var(--worry-fg);background:var(--worry-bg)}
.v-niebezpieczne .vlabel,.vlabel.v-niebezpieczne{color:var(--sor-fg);background:var(--surface)}
.myths{list-style:none;margin:0;padding:0;max-width:var(--measure)}
.myths li{padding:var(--sp-4) 0;border-top:1px solid var(--line);overflow-wrap:anywhere;scroll-margin-top:var(--sp-4)}.myths li:first-child{border-top:0}
.myths li:target{outline:2px solid var(--pine);outline-offset:var(--sp-1)}
.myth-claim{margin:0 0 var(--sp-2);font-weight:600}.myth-k{font-weight:700}
.myth-p{margin:var(--sp-2) 0}.myths .fn-body{font-weight:400}
.donot{background:var(--lv-bg);color:var(--ink);border-radius:var(--r-lg);padding:var(--sp-5);margin:var(--sp-5) 0;scroll-margin-top:var(--sp-4)}
.donot :is(h2,h3){display:flex;align-items:center;gap:var(--sp-2);font-family:var(--font-display);font-size:var(--fs-xl);font-weight:500;
  letter-spacing:-.01em;margin:0 0 var(--sp-2);color:var(--lv)}
.donot .myths li{border-top-color:color-mix(in srgb,var(--sor-fg) 20%,transparent)}

/* data report (article): kicker + title + dek + meta, a larger lead, numbered sections, figures in a frame, highlighted takeaways,
   evidence tables folded under the text. One column at the reading measure. */
.report{max-width:var(--measure)}
.report-head{margin:var(--sp-5) 0 var(--sp-6);padding-bottom:var(--sp-5);border-bottom:1px solid var(--line)}
.report-head .eyebrow{color:var(--pine);margin:0}
.report-head h1{margin:var(--sp-2) 0 var(--sp-3)}
.dek{font-family:var(--font-display);font-size:var(--fs-lg);line-height:var(--lh-snug);color:var(--ink-2);margin:0 0 var(--sp-4)}
.report-meta{font-size:var(--fs-sm);color:var(--ink-2);margin:0}
.report-meta::before{content:"";display:inline-block;width:.5em;height:.5em;border-radius:50%;background:var(--pine);
  margin-right:var(--sp-2);vertical-align:.1em}
.report-lead p{font-size:var(--fs-lg);line-height:var(--lh-body);margin:0 0 var(--sp-4)}
.report-body{counter-reset:rsec}
.rsec{margin-top:var(--sp-7)}
.rsec.numbered{counter-increment:rsec;border-top:1px solid var(--line);padding-top:var(--sp-5)}
.rsec.numbered h2::before{content:counter(rsec,decimal-leading-zero);display:block;font-family:var(--font-text);font-size:var(--fs-sm);
  font-weight:700;letter-spacing:.08em;color:var(--pine);margin-bottom:var(--sp-2)}
.stat{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--sp-2) var(--sp-4);margin:var(--sp-5) 0;padding:var(--sp-4) 0;
  border-block:1px solid var(--line-strong)}
.stat-n{flex:none;font-family:var(--font-display);font-size:var(--fs-2xl);line-height:var(--lh-tight);color:var(--pine);
  font-variant-numeric:tabular-nums}
.stat-t{flex:1 1 14em;font-size:var(--fs-sm);line-height:var(--lh-snug);color:var(--ink-2)}
.takeaway{background:var(--pine-tint);border-radius:var(--r-md);padding:var(--sp-4) var(--sp-5);margin:var(--sp-5) 0}
.takeaway .eyebrow{color:var(--pine);margin:0 0 var(--sp-1)}
.takeaway p:last-child{margin:0}
.evidence{margin:var(--sp-5) 0}
.evidence-head{display:flex;align-items:center;gap:var(--sp-2);margin:0;font-size:var(--fs-sm);font-weight:600;color:var(--ink-2)}
.evidence-head .eyebrow{margin:0;color:var(--pine)}
.dtable-wrap{overflow-x:auto;margin:var(--sp-2) 0}.dtable{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}
.dtable th,.dtable td{text-align:left;padding:var(--sp-2) var(--sp-3);border-top:1px solid var(--line);font-weight:400}.dtable thead th{font-weight:700}
.dtable .n{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}
.bar{display:inline-block;width:3em;height:.375em;vertical-align:middle;margin-right:var(--sp-2)}
.bar-bg{fill:var(--line)}.bar-fg{fill:var(--pine)}
@media(max-width:420px){.bar{display:none}}
.theses{margin:0 0 var(--sp-4);font-size:var(--fs-base)}
.theses li{margin-bottom:var(--sp-2)}
.bottomline{border-top:2px solid var(--pine);padding-top:var(--sp-5)}
.bottomline h2{color:var(--pine)}
.bottomline .points{padding-left:1.25em;margin:var(--sp-4) 0}
.bottomline .points li{margin-bottom:var(--sp-3);font-size:var(--fs-lg);line-height:var(--lh-snug)}
.bottomline .key{font-family:var(--font-display);font-size:var(--fs-xl);line-height:var(--lh-snug);background:var(--pine-tint);
  border-radius:var(--r-md);padding:var(--sp-4) var(--sp-5);margin:var(--sp-5) 0 0}
.method{margin-top:var(--sp-7);padding:var(--sp-4) var(--sp-5);border:1px solid var(--line);border-radius:var(--r-md);
  font-size:var(--fs-xs);line-height:var(--lh-snug);color:var(--ink-2)}
.method h2{font-family:var(--font-text);font-size:var(--fs-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:0 0 var(--sp-2);color:var(--ink-2)}
.method ul{margin:0;padding-left:1.1em}.method li{margin-bottom:var(--sp-1)}
.report-close{margin-top:var(--sp-7);font-size:var(--fs-sm);color:var(--ink-2)}

/* "Źródła" */
.srccard{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--sp-5);margin:var(--sp-5) 0;scroll-margin-top:var(--sp-4)}
.srccard h2{margin:0 0 var(--sp-1)}
.kv{margin:var(--sp-3) 0 0}.kv dt{font-weight:700;font-size:var(--fs-sm);color:var(--ink-2);margin-top:var(--sp-4)}.kv dd{margin:var(--sp-1) 0 0;overflow-wrap:anywhere}
.crit{list-style:none;margin:0;padding:0}.crit li{display:flex;gap:var(--sp-3);align-items:baseline;padding:var(--sp-1) 0;font-size:var(--fs-sm)}
.crit .cs{display:inline-flex;align-items:center;gap:var(--sp-1);font-weight:700;font-size:var(--fs-xs);min-width:7.4em;flex:none;white-space:nowrap}
.crit .met .cs{color:var(--norm-fg)}.crit .unmet .cs{color:var(--sor-fg)}
.plain{margin:0;padding-left:var(--sp-5)}.plain li{padding:var(--sp-1) 0}
#zrodla{margin-top:var(--sp-7);padding-top:var(--sp-5);border-top:1px solid var(--line)}
#zrodla h2{font-size:var(--fs-lg)}
.sources{padding-left:var(--sp-5);max-width:var(--measure)}.sources>li{margin:var(--sp-4) 0;font-size:var(--fs-sm)}
.srcurls{list-style:none;margin:var(--sp-1) 0;padding:0}
.sources a,.sources li{overflow-wrap:anywhere}.lic{font-size:var(--fs-xs);color:var(--ink-2)}
.srcitem:target{outline:2px solid var(--pine);outline-offset:var(--sp-1)}
section.variant{margin-top:var(--sp-7);border-top:1px solid var(--line-strong);padding-top:var(--sp-5)}
section.variant:target{outline:2px solid var(--pine);outline-offset:var(--sp-1)}

/* home */
.hero{padding:var(--sp-6) 0 var(--sp-3)}
.hero h1{margin-bottom:var(--sp-3)}
.hero .note{font-size:var(--fs-base)}
.hero-search{margin:var(--sp-5) 0 var(--sp-2);max-width:40rem}
/* home: claim, search panel with the age picker, sources */
.home-top{display:flex;flex-direction:column}
.intro{padding:var(--sp-5) 0 var(--sp-5)}
@media(min-width:760px){.intro{padding:var(--sp-7) 0 var(--sp-5)}}
.home-top .pillars{margin-top:var(--sp-6)}
.intro h1{font-size:var(--fs-hero);margin-bottom:var(--sp-3);text-wrap:balance}
.lead{font-size:var(--fs-sm);line-height:var(--lh-snug);color:var(--ink-2);margin:0}
.pillars{list-style:none;margin:0;padding:0;display:grid;gap:var(--sp-4);grid-template-columns:minmax(0,1fr)}
@media(min-width:760px){.pillars{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-5)}}
.pillars li{display:flex;align-items:flex-start;gap:var(--sp-3);font-size:var(--fs-sm);line-height:var(--lh-snug);color:var(--ink-2)}
.pillars .ic{flex:none;color:var(--pine)}
.pillars b{display:block;color:var(--ink);font-weight:700;margin-bottom:var(--sp-1)}
.finder{background:var(--pine-tint);border-radius:var(--r-lg);padding:var(--sp-5) var(--sp-4);box-shadow:var(--shadow-panel)}
@media(min-width:760px){.finder{padding:var(--sp-6)}}
.finder h2{margin-bottom:var(--sp-4)}
.finder .hero-search{margin:0;max-width:none}
.finder .searchbox input{min-height:3.5rem}
.finder .searchbox .btn-1{min-height:3.5rem}
.finder-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--sp-2) var(--sp-4);
  margin-top:var(--sp-4);padding-top:var(--sp-3);border-top:1px solid var(--line)}
.chev{width:.45em;height:.45em;border-right:2px solid;border-bottom:2px solid;rotate:45deg;translate:0 -.15em}
.btn-2[aria-expanded="true"] .chev{rotate:225deg;translate:0 .1em}
.finder-bar .ages{flex:1 1 100%;margin:0}
.finder-bar .ages[hidden]{display:none}
.finder-bar .ages .eyebrow:first-child{margin-top:var(--sp-2)}
.agepick-fields{display:flex;flex-wrap:wrap;gap:var(--sp-3)}
.agepick-fields label{display:flex;flex-direction:column;gap:var(--sp-1);font-size:var(--fs-xs);font-weight:600;color:var(--ink-2);flex:1 1 9rem}
.sel{position:relative;display:block}
.sel::after{content:"";position:absolute;right:var(--sp-4);top:50%;width:.5em;height:.5em;border-right:2px solid var(--ink-2);border-bottom:2px solid var(--ink-2);
  rotate:45deg;translate:0 -70%;pointer-events:none}
.sel select{appearance:none;-webkit-appearance:none;width:100%;font:inherit;font-size:var(--fs-base);font-weight:500;min-height:var(--tap);
  padding:0 var(--sp-6) 0 var(--sp-4);border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink);
  box-shadow:var(--shadow-field);cursor:pointer}
.agepick-out{font-size:var(--fs-sm);line-height:var(--lh-snug);color:var(--ink-2);margin:var(--sp-3) 0 0;max-width:var(--measure)}
.agepick-out:empty{display:none}
.agepick-out.is-set{color:var(--ink)}
.agepick-out.is-off{color:var(--worry-fg)}
.agepick-out a{font-weight:600}
.agemodal{width:min(28rem,calc(100% - var(--sp-5)));max-height:calc(100% - var(--sp-5));padding:var(--sp-5);border:0;border-radius:var(--r-lg);
  background:var(--paper);color:var(--ink);box-shadow:var(--shadow-panel)}
.agemodal::backdrop{background:var(--ink);opacity:.45}
.agemodal h2{margin-bottom:var(--sp-4)}
.agem-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);margin-top:var(--sp-5)}
.agem-actions .btn-1{margin-left:auto}
.srcgroups{display:grid;gap:var(--sp-5);grid-template-columns:minmax(0,1fr);margin:var(--sp-4) 0}
@media(min-width:760px){.srcgroups{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-6)}}
.srclist{list-style:none;margin:0;padding:0}
.srclist li{padding:var(--sp-3) 0;border-top:1px solid var(--line)}
.srclist a{font-weight:600}
.srclist span{display:block;font-size:var(--fs-sm);line-height:var(--lh-snug);color:var(--ink-2);margin-top:var(--sp-1)}
.ages{margin-top:var(--sp-5)}
.chips{display:flex;flex-wrap:wrap;gap:var(--sp-2)}
.chips a{min-width:var(--tap);min-height:var(--tap);padding:0 var(--sp-3);display:inline-flex;align-items:center;justify-content:center;
  background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-pill);text-decoration:none;color:var(--ink);font-weight:600;font-variant-numeric:tabular-nums}
.chips a:hover{border-color:var(--ink-2)}
.chips a[aria-current]{background:var(--pine);color:var(--on-pine);border-color:var(--pine)}
.grid{display:grid;gap:var(--sp-2);grid-template-columns:minmax(0,1fr)}
@media(min-width:640px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:960px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.grid a{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-2);min-height:3.5rem;background:var(--surface);border:1px solid var(--line);
  border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);text-decoration:none;color:var(--ink);font-weight:600}
.grid a:hover{border-color:var(--pine)}
.grid a span{color:var(--ink-2);font-weight:500;font-size:var(--fs-sm);font-variant-numeric:tabular-nums}
.grid a b{flex:1;font-weight:inherit}
.tico{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:var(--r-md);
  background:var(--pine-tint);color:var(--pine)}
.grid a.is-urgent .tico{background:var(--sor-bg);color:var(--sor-fg)}

/* listings */
.fold{border-bottom:1px solid var(--line)}
.fold summary{cursor:pointer;padding:var(--sp-3) var(--sp-1);font-weight:600;display:flex;justify-content:space-between;min-height:var(--tap);align-items:center}
.fold summary span{color:var(--ink-2);font-weight:500}.fold .rows{margin-bottom:var(--sp-3)}
.pager{display:flex;justify-content:space-between;gap:var(--sp-2);margin:var(--sp-2) 0}.pager a{font-weight:600;display:inline-flex;align-items:center;min-height:var(--tap)}
.lst{margin:var(--sp-6) 0}
.lst h2{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-3);padding-bottom:var(--sp-2);border-bottom:1px solid var(--line-strong);font-size:var(--fs-lg)}
.lst h2 span{color:var(--ink-2);font-family:var(--font-text);font-weight:500;font-size:var(--fs-sm)}
.rows{list-style:none;margin:0;padding:0}
.row{display:flex;gap:var(--sp-3);align-items:flex-start;padding:var(--sp-3) 0;border-bottom:1px solid var(--line)}
.row a{flex:1;min-width:0;text-decoration:none;color:var(--ink)}
.row a:hover .rt{color:var(--pine);text-decoration:underline}
.row .rt{font-weight:600;display:block}
.row .rg{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;color:var(--ink-2);font-size:var(--fs-sm)}
.row .rw{font-size:var(--fs-xs);color:var(--ink-2);white-space:nowrap;margin-top:var(--sp-1);font-variant-numeric:tabular-nums}
.empty{background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--r-md);padding:var(--sp-4);margin:var(--sp-5) 0}

/* search */
.results{margin:var(--sp-4) 0}
.res{display:block;padding:var(--sp-3) var(--sp-1);text-decoration:none;color:var(--ink);border-top:1px solid var(--line)}
a.res:hover .res-t,a.res:focus .res-t{text-decoration:underline;color:var(--pine)}
.res-t{display:block;font-weight:600}.res-m{display:block;font-size:var(--fs-xs);color:var(--ink-2)}
.res-x{display:block;font-size:var(--fs-sm);color:var(--ink-2)}.res-x mark{background:var(--mark);color:var(--ink);border-radius:var(--r-sm)}
.res-live{margin:var(--sp-2) 0;color:var(--ink-2)}
.res-empty{background:var(--surface);border:1px dashed var(--line-strong);border-radius:var(--r-md);padding:var(--sp-4);margin:var(--sp-4) 0}
.res-empty .res-live{color:var(--ink);font-size:var(--fs-lg);margin-top:0}
.res-empty p:last-child{margin-bottom:0}
.res-em{background:var(--sor-bg);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);margin-bottom:var(--sp-2);border-top:0}
.res-em .res-t{color:var(--sor-fg)}
.sugg{position:absolute;z-index:20;left:0;right:0;top:100%;margin:var(--sp-1) 0 0;padding:var(--sp-1);list-style:none;background:var(--surface);
  border:1px solid var(--line-strong);border-radius:var(--r-md);box-shadow:var(--shadow-panel)}
.sugg[hidden]{display:none}
.sugg a{display:block;padding:var(--sp-2) var(--sp-3);min-height:var(--tap);color:var(--ink);text-decoration:none;border-radius:var(--r-sm);font-size:var(--fs-sm);line-height:var(--lh-snug)}
.sugg li[aria-selected="true"] a,.sugg a:hover{background:var(--pine-tint);color:var(--pine)}

/* footer */
.foot{border-top:1px solid var(--line);margin-top:var(--sp-8);padding:var(--sp-5) 0 var(--sp-6);font-size:var(--fs-sm);color:var(--ink-2)}
.foot p{max-width:var(--measure)}
.foot .brandline{display:flex;align-items:center;gap:var(--sp-2);font-family:var(--font-display);font-size:var(--fs-lg);color:var(--ink);margin-bottom:var(--sp-3)}

@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* styleguide (local build only): layout of the demo page, tokens only */
.sg-sec{margin:var(--sp-7) 0}
.sg-row{display:flex;flex-wrap:wrap;gap:var(--sp-5);align-items:flex-end;margin:var(--sp-3) 0}
.sg-cell{display:flex;flex-direction:column;align-items:center;gap:var(--sp-1);color:var(--pine)}
.sg-cell code,.sg-sw code,.sg-type code,.sg-space code,.sg-demo figcaption,.sg-cell small,.sg-sw small,.sg-type small,.sg-space small{font-size:var(--fs-xs);color:var(--ink-2)}
.sg-swatches{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:var(--sp-3)}
.sg-sw{display:flex;flex-direction:column;gap:var(--sp-1)}
.sg-chip{display:block;height:var(--sp-7);border:1px solid var(--line-strong);border-radius:var(--r-md)}
.sg-type{padding:var(--sp-2) 0;border-bottom:1px solid var(--line)}
.sg-type p{margin:var(--sp-1) 0 0;line-height:var(--lh-snug)}
.sg-space{display:flex;align-items:center;gap:var(--sp-3);padding:var(--sp-1) 0}
.sg-space code{min-width:5rem}
.sg-bar{display:block;height:var(--sp-3);background:var(--pine);border-radius:var(--r-sm)}
.sg-box{display:block;width:var(--sp-8);height:var(--sp-8);background:var(--pine-tint);border:2px solid var(--pine)}
.sg-demo{margin:var(--sp-5) 0;padding:0}
.sg-stage{padding:var(--sp-4);border:1px dashed var(--line-strong);border-radius:var(--r-md)}
.sg-demo figcaption{margin-top:var(--sp-2)}

/* "Suggest a topic" form (podpowiedz-temat.html): same field look as the search box and the age dialog */
.suggest{display:flex;flex-direction:column;gap:var(--sp-4);max-width:var(--measure);margin:var(--sp-5) 0}
.suggest[hidden]{display:none}
.suggest label{display:flex;flex-direction:column;gap:var(--sp-1);font-size:var(--fs-sm);font-weight:600}
.suggest .hint{font-size:var(--fs-xs);font-weight:400;color:var(--ink-2)}
.suggest textarea,.suggest input[type="email"]{width:100%;font:inherit;font-size:var(--fs-base);font-weight:400;padding:var(--sp-3) var(--sp-4);
  border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-field)}
.suggest textarea{min-height:6rem;resize:vertical}
.suggest .btn-1{align-self:flex-start}
.suggest .hp{position:absolute;left:-9999px}
.suggest-status{font-size:var(--fs-sm);margin:0}
.suggest-status.is-off{color:var(--sor-fg)}
