@font-face {
  font-family: 'Courier Prime';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonty/courier-prime-400-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Courier Prime';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonty/courier-prime-400-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: 'Courier Prime';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonty/courier-prime-700-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Courier Prime';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(/assets/fonty/courier-prime-700-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: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/assets/fonty/dm-sans-400-700-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'DM Sans';
  font-style: normal;
  font-weight: 400 700;
  font-display: swap;
  src: url(/assets/fonty/dm-sans-400-700-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: 'Young Serif';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonty/young-serif-400-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-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
  font-family: 'Young Serif';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/assets/fonty/young-serif-400-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;
}
/* Zeszyt Przyrodnika v2 — plansza zielnikowa, taśma, etykieta muzealna, klucz do oznaczania.
   Wg projektu Design G2LDvUsr6Rx366GgWF4YEJ (artboardy *V2*, 29.10.2026). Kopia v1: zaplecze\kopie\glowny-v1.css */
:root{
  --tlo:#E9EDE4; --arkusz:#FFFFFF; --jasny:#F6F7F2; --rycina:#F1F3EC;
  --tusz:#1D2B22; --mech:#2E4A33; --mech-j:#5F7F3C; --szalwia:#C9D8B6;
  --tekst:#1D2B22; --tekst2:#3A4A3E; --szary:#4F5D52; --przerywana:#9AA696;
  --ochra:#6A5A2E; --czerw:#B23A2E; --tasma:rgba(214,196,150,.85);
  --szer:'Young Serif',Georgia,'Times New Roman',serif; --sans:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif; --tw:'Courier Prime','Courier New',monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--tlo);color:var(--tekst);font:400 17px/1.6 var(--sans)}
img{max-width:100%;height:auto;display:block}
a{color:var(--mech)}a:hover{color:var(--czerw)}
:focus-visible{outline:3px solid var(--czerw);outline-offset:2px}
h1,h2,h3,h4{font-family:var(--szer);font-weight:400;color:var(--tusz);line-height:1.15;margin:0}
.tw{font-family:var(--tw)}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
.skip{position:absolute;left:-999px;top:0;background:var(--mech);color:#fff;padding:10px 14px;z-index:9}.skip:focus{left:8px}

/* taśma klejąca na arkuszach */
.arkusz{position:relative;background:var(--arkusz);box-shadow:0 1px 0 #C9CFC2,0 20px 40px -28px rgba(29,43,34,.45)}
.tasma{position:absolute;top:-10px;width:88px;height:24px;background:var(--tasma);pointer-events:none}
.tasma.l{left:36px;transform:rotate(-3deg)}.tasma.p{right:36px;transform:rotate(4deg)}
.tasma.s{left:50%;margin-left:-44px;transform:rotate(-2deg)}.tasma.d{top:auto;bottom:-10px;right:28px;transform:rotate(3deg)}

/* etykieta muzealna (maszynopis w ramce) */
.etykieta{border-collapse:collapse;font:400 13px/1.4 var(--tw);color:var(--tusz)}
.etykieta td,.etykieta th{border:1.5px solid var(--tusz);padding:5px 10px;text-align:left;font-weight:400}
.etykieta th{font-weight:700;letter-spacing:.1em}
.sygn{margin:0;font:700 13px/1.3 var(--tw);letter-spacing:.12em;text-transform:uppercase;color:var(--czerw)}
.sygn.o{color:var(--ochra)}

/* nagłówek */
.gora{background:var(--tusz);color:#E9EDE4}
.gora .wrap{padding-top:12px;padding-bottom:12px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px}
.logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:#F4F6F0}
.logo:hover{color:#fff}
.logo svg{flex:none}
.logo b{display:block;font:400 22px/1.1 var(--szer)}
.logo i{display:block;font:400 12px/1.3 var(--tw);font-style:normal;letter-spacing:.08em;color:var(--szalwia);text-transform:uppercase}
.menu{display:flex;flex-wrap:wrap;gap:2px;font-size:15px;font-weight:500}
.menu a{padding:10px 12px;color:#E9EDE4;text-decoration:none;border-radius:4px}
.menu a:hover{background:#2C3F31;color:#fff}
.menu a.akt{background:#E9EDE4;color:var(--tusz)}
.menu a.slow{background:var(--szalwia);color:var(--tusz)}
.menu-btn{display:none}
@media (max-width:760px){
  .gora .wrap{padding:10px 16px}
  .logo b{font-size:19px}.logo i{font-size:11px}.logo svg{width:30px;height:30px}
  .menu-btn{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border:1.5px solid var(--szalwia);background:transparent;cursor:pointer}
  .js .menu{display:none;width:100%;flex-direction:column;gap:2px;padding-top:6px}
  .js .menu.otw{display:flex}
  .menu a{padding:12px 14px}
}

/* przyciski */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 22px;border-radius:4px;background:var(--mech);color:#fff;text-decoration:none;font-weight:700;font-size:17px;border:2px solid var(--mech)}
.btn:hover{background:var(--tusz);border-color:var(--tusz);color:#fff}
.btn.jasny{background:#fff;color:var(--tusz);border-color:var(--tusz)}
.btn.jasny:hover{background:var(--jasny);color:var(--tusz)}
.btn.sklep{background:var(--czerw);border-color:var(--czerw);color:#fff;font-size:16px;padding:0 16px;min-height:44px}
.btn.sklep:hover{background:#8F2D23;border-color:#8F2D23}
.btn.odw{background:#E9EDE4;color:var(--tusz);border-color:#E9EDE4}
.btn.odw:hover{background:#fff;border-color:#fff;color:var(--tusz)}

/* strona główna: plansza + klucz */
.start{padding-top:56px;display:flex;flex-wrap:wrap;gap:32px;align-items:stretch}
.plansza{flex:1.35 1 560px;min-width:0;padding:48px 48px 40px}
.plansza .sygn{margin-bottom:16px}
.plansza h1{font-size:clamp(32px,4.4vw,54px);line-height:1.1}
.lead{margin:20px 0 0;font-size:19px;line-height:1.6;max-width:620px;color:var(--tekst2)}
.przyciski{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.plansza .etykieta{margin:36px 0 0 auto;min-width:300px}
.klucz{flex:1 1 340px;min-width:0;background:var(--jasny);border:1.5px solid var(--tusz);padding:28px 28px 24px}
.klucz h2{font-size:26px;margin:4px 0 18px}
.klucz ol{list-style:none;margin:0;padding:0;font:400 15px/1.45 var(--tw)}
.klucz li{display:flex;gap:10px;padding:10px 0;border-top:1px dashed var(--przerywana);align-items:baseline}
.klucz li:last-child{border-bottom:1px dashed var(--przerywana)}
.klucz li b{min-width:28px}
.klucz li span{flex:1}
.klucz li a{font-weight:700;white-space:nowrap}
.klucz li em{font-style:normal;color:var(--ochra);white-space:nowrap}
@media (max-width:760px){
  .start{padding-top:28px;gap:24px}
  .plansza{padding:28px 20px 22px}
  .lead{font-size:16px}
  .przyciski{flex-direction:column}.przyciski .btn{width:100%}
  .plansza .etykieta{min-width:0;width:100%;margin-top:22px}
  .klucz{padding:20px 16px}.klucz h2{font-size:22px}
  .klucz li{padding:12px 0;font-size:14px}
}

/* sekcje */
.sekcja{padding-top:56px}
.h2,.sekcja>h2{font-size:clamp(24px,2.8vw,32px);margin:0 0 20px}
.podtytul{margin:-10px 0 22px;font-size:17px;color:var(--szary)}
@media (max-width:760px){.sekcja{padding-top:40px}}

/* gablota klas */
.gablota{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}
.gablota a{display:block;background:#fff;padding:20px 18px;text-decoration:none;color:var(--tusz);border-bottom:4px solid var(--k,var(--mech-j))}
.gablota a:hover{box-shadow:0 14px 26px -18px rgba(29,43,34,.6);color:var(--tusz)}
.gablota .tw{display:block;font-size:13px;color:var(--ochra)}
.gablota b{display:block;font:400 21px/1.2 var(--szer);margin:6px 0 4px}
.gablota span.op{display:block;font-size:14px;color:var(--szary)}
.gablota span.ile{display:block;margin-top:10px;font:700 13px var(--tw);color:var(--mech)}
@media (max-width:760px){.gablota{grid-template-columns:1fr;gap:10px}.gablota a{padding:14px 16px}.gablota b{font-size:19px}.gablota span.op{display:none}}

/* okaz tygodnia (główna) */
.tydzien{padding-top:56px;display:flex;flex-wrap:wrap;gap:32px;align-items:center}
.tydzien .arkusz{flex:1 1 520px;min-width:0;padding:28px;display:flex;flex-wrap:wrap;gap:24px}
.tydzien .ryc{flex:0 0 200px;min-height:230px}
.tydzien .opis{flex:1 1 240px;min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:16px}
.tydzien h3{font-size:30px;margin:6px 0 8px}
.tydzien p{margin:0;color:var(--tekst2)}
.tydzien .kroki{flex:1 1 360px;min-width:0}
.tydzien .kroki h2{font-size:30px;margin-bottom:12px}
.tydzien .kroki ol{margin:0;padding-left:22px;font-size:17px;line-height:1.7}
@media (max-width:760px){.tydzien .arkusz{padding:20px 16px}.tydzien .ryc{flex-basis:100%;min-height:180px}}

/* etykiety (najczęściej oznaczane, tematy) */
.etykiety{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px;font:400 15px var(--tw)}
.etykiety a{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;background:#fff;border:1.5px solid var(--tusz);text-decoration:none;color:var(--tusz)}
.etykiety a:hover{background:var(--tusz);color:#fff}

/* rycina */
.ryc{background:var(--rycina);display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;overflow:hidden}
.ryc img{width:100%;height:100%;object-fit:contain}
.ryc .zast{font:400 14px/1.5 var(--tw);color:var(--ochra)}
.ryc .zast b{display:block;font:400 24px/1.2 var(--szer);color:var(--tusz);margin-bottom:4px}

/* quiz */
.quiz-blok{background:#fff;border:1.5px solid var(--tusz);padding:30px}
.quiz-gl{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 12px}
.quiz-gl h2{font-size:28px;margin:0}
.quiz-stan{font:400 14px var(--tw)}
.quiz-kropki{display:flex;flex-wrap:wrap;gap:6px;margin:16px 0 22px;padding:0;list-style:none;font:400 12px var(--tw)}
.quiz-kropki li{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1.5px solid var(--przerywana)}
.quiz-kropki li.ten{background:var(--tusz);border-color:var(--tusz);color:#fff}
.quiz-kropki li.ok{background:#DDE8C6;border-color:var(--mech)}
.quiz-kropki li.zle{background:#F3D3CC;border-color:var(--czerw)}
.pyt{margin:0;padding:0;border:0;min-width:0}
.pyt legend{font:400 22px/1.35 var(--szer);margin:0 0 16px;padding:0}
.pyt .nrp{display:none}
.odp{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.odp button,.odp .o{min-height:54px;padding:12px 14px;font:500 16px/1.35 var(--sans);text-align:left;background:var(--jasny);color:var(--tusz);border:1.5px solid var(--tusz);cursor:pointer;width:100%;border-radius:0}
.odp button:hover:not([disabled]){background:#EEF2E2}
.odp button[disabled]{cursor:default}
.odp .dobra{background:#DDE8C6;border:2px solid var(--mech)}
.odp .zla{background:#F3D3CC;border:2px solid var(--czerw);color:#5A1610}
.dlaczego{margin-top:16px;display:flex;flex-wrap:wrap;gap:12px 16px;align-items:center;justify-content:space-between}
.dlaczego p{flex:1 1 380px;margin:0;font-size:15px;line-height:1.55;padding:12px 14px;background:#EEF2E2}
.dalej{min-height:48px;padding:0 20px;border:0;background:var(--tusz);color:#fff;font:700 16px var(--sans);cursor:pointer;border-radius:4px}
.dalej:hover{background:var(--mech)}
.wynik{text-align:center;padding:10px 0}
.wynik b{display:block;font:400 56px/1 var(--szer);color:var(--mech)}
.wynik p{margin:12px auto 18px;max-width:520px}
.bezjs .pyt{margin-bottom:26px}
.bezjs .pyt legend{font-size:19px}
.bezjs .pyt .nrp{display:inline}
.bezjs details{margin-top:10px;font-size:16px}
.bezjs summary{cursor:pointer;color:var(--mech);font-weight:700}
@media (max-width:760px){
  .quiz-blok{padding:20px 16px}
  .quiz-gl h2{font-size:23px}
  .pyt legend{font-size:19px}
  .odp{grid-template-columns:1fr}
  .odp button,.odp .o{min-height:52px}
  .dalej{width:100%}
}
/* mini-quiz na głównej */
.minuta{margin-top:56px;background:var(--tusz);color:#E9EDE4}
.minuta .wrap{padding-top:52px;padding-bottom:52px;display:flex;flex-wrap:wrap;gap:36px;align-items:center}
.minuta .t{flex:1 1 400px;min-width:0}
.minuta .t .sygn{color:var(--szalwia)}
.minuta .t h2{color:#fff;font-size:clamp(24px,3vw,34px);margin:8px 0 12px}
.minuta .t p{margin:0;color:var(--szalwia)}
.minuta .t a{color:#fff}
.minuta .q{flex:1 1 420px;min-width:0}
.minuta .quiz-blok{border:0}
.minuta .pyt legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.minuta .bezjs .pyt legend{position:static;width:auto;height:auto;clip:auto;font-size:18px}
legend:focus{outline:none}

/* stopka */
.dol{margin-top:64px;background:var(--tusz);color:var(--szalwia)}
.dol .wrap{padding-top:28px;padding-bottom:28px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:14px 20px;font-size:15px}
.dol nav{display:flex;flex-wrap:wrap;gap:8px 20px}
.dol a{color:#E9EDE4}.dol a:hover{color:#fff}
.dol .tw{text-transform:uppercase;letter-spacing:.06em;font-size:13px}

/* strona działu */
.okruszki{font:400 13px var(--tw);color:var(--szary);display:flex;flex-wrap:wrap;gap:6px 8px;margin:0;padding:0;list-style:none}
.okruszki li+li::before{content:"›";margin-right:8px}
.naglowek{padding-top:28px}
.naglowek .arkusz{margin-top:22px;padding:40px 44px;display:flex;flex-wrap:wrap;gap:24px 28px;align-items:flex-end;justify-content:space-between}
.naglowek .tekst{flex:1 1 560px;min-width:0}
.naglowek .sygn{margin-bottom:12px}
.naglowek h1{font-size:clamp(28px,3.6vw,46px);line-height:1.12}
.naglowek .lead{font-size:18px;margin-top:14px}
.naglowek .etykieta{min-width:250px}
.spis{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;font:400 14px var(--tw)}
.spis a{display:inline-block;padding:8px 12px;border:1.5px solid var(--tusz);text-decoration:none;background:#fff;color:var(--tusz)}
.spis a:hover{background:var(--tusz);color:#fff}
@media (max-width:760px){
  .naglowek{padding-top:16px}
  .naglowek .arkusz{padding:28px 18px 22px;margin-top:16px}
  .naglowek .lead{font-size:16px}
  .naglowek .etykieta{width:100%;min-width:0}
  .spis{flex-wrap:nowrap;overflow-x:auto;margin:16px -16px 0;padding:0 16px 4px}
  .spis li{flex:none}
}
.uklad{display:flex;flex-wrap:wrap;gap:40px;align-items:flex-start;padding-top:40px}
.uklad .kol{flex:999 1 640px;min-width:0;display:flex;flex-direction:column;gap:48px}
.uklad aside{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:18px}
.uklad section h2{font-size:clamp(24px,2.8vw,30px);margin:0 0 16px}
@media (max-width:760px){.uklad{padding-top:28px;gap:36px}.uklad .kol{gap:36px}}

.zakres{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;font:400 15px/1.45 var(--tw);counter-reset:z}
.zakres li{padding:10px 0;border-bottom:1px dashed var(--przerywana);counter-increment:z}
.zakres li::before{content:counter(z,decimal-leading-zero) " · ";font-weight:700}
@media (max-width:760px){.zakres{grid-template-columns:1fr}}

.okaz{padding:28px;display:flex;flex-wrap:wrap;gap:28px}
.okaz .ryc{flex:1 1 240px;min-width:0;min-height:300px}
.okaz .opis{flex:1.3 1 300px;min-width:0}
.okaz h3{font-size:32px}
.okaz .lac{margin:4px 0 16px;font:400 14px var(--tw);color:var(--szary)}
.okaz ul{margin:0 0 16px;padding-left:20px;font-size:16px}
.okaz .po,.okaz .pulapka{margin:0 0 10px;font-size:15px;line-height:1.5}
.okaz .pulapka{color:#8A2A20;margin-bottom:18px}
@media (max-width:760px){.okaz{padding:20px 16px;gap:18px}.okaz .ryc{min-height:200px}.okaz h3{font-size:27px}}

.grupa-a{display:flex;flex-wrap:wrap;gap:16px 20px;align-items:center;background:var(--tusz);color:#E9EDE4;padding:26px 28px}
.grupa-a .t{flex:1 1 320px;min-width:0}
.grupa-a .sygn{color:var(--szalwia)}
.grupa-a h2{color:#fff;font-size:26px!important;margin:4px 0 6px!important}
.grupa-a p{margin:0;font-size:15px;color:var(--szalwia)}
@media (max-width:760px){.grupa-a{padding:22px 16px}.grupa-a .btn{width:100%}}

.produkty{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:16px}
.prod{background:#fff;display:flex;flex-direction:column}
.prod .okl{background:var(--rycina);aspect-ratio:4/5;overflow:hidden;display:block}
.prod .okl img{width:100%;height:100%;object-fit:cover}
.prod .w{padding:16px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}
.prod .etyk{font:700 12px var(--tw);letter-spacing:.08em;text-transform:uppercase;color:var(--ochra)}
.prod h3{font-size:19px;line-height:1.3}
.prod p{margin:0;font-size:14px;color:var(--szary)}
.prod .cena-r{margin-top:auto;padding-top:10px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.cena{font:400 22px/1 var(--szer);color:var(--tusz)}
.cena s{font:400 15px var(--sans);color:var(--szary);margin-left:6px}
.prod .a-link{font-size:14px;font-weight:600}
@media (max-width:760px){
  .produkty{grid-template-columns:1fr;gap:12px}
  .prod{flex-direction:row}
  .prod .okl{flex:0 0 96px;aspect-ratio:auto;align-self:flex-start;margin:14px 0 14px 14px}
  .prod .w{padding:14px}.prod h3{font-size:17px}.cena{font-size:19px}
}

.slownik{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px;font-size:16px;line-height:1.5}
.slownik div{padding:12px 0;border-bottom:1px dashed var(--przerywana)}
.slownik dt{font:700 15px var(--tw);color:var(--tusz)}
.slownik dd{margin:2px 0 0}
@media (max-width:760px){.slownik{grid-template-columns:1fr;font-size:15px}}

.nauczyciel{background:var(--jasny);border:1.5px solid var(--tusz);padding:26px 28px}
.nauczyciel h2{font-size:26px!important;margin-bottom:10px!important}
.nauczyciel p{margin:0 0 10px;font-size:16px;line-height:1.65;color:var(--tekst2)}
.nauczyciel p:last-child{margin:0}
@media (max-width:760px){.nauczyciel{padding:20px 16px}}

.faq details{border-bottom:1px dashed var(--przerywana);padding:16px 0}
.faq summary{cursor:pointer;font-weight:700;font-size:17px;min-height:28px}
.faq p{margin:10px 0 0;font-size:16px}

.sasiedzi{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.sasiedzi a{display:block;padding:16px 18px;background:#fff;border:1.5px solid var(--tusz);text-decoration:none}
.sasiedzi a:hover{background:var(--jasny)}
.sasiedzi span{font:400 13px var(--tw);color:var(--szary)}
.sasiedzi b{display:block;font:400 20px/1.3 var(--szer);color:var(--tusz)}
.sasiedzi .nast{text-align:right;grid-column:2}
@media (max-width:760px){.sasiedzi{grid-template-columns:1fr;gap:10px}.sasiedzi .nast{grid-column:auto;text-align:left}}

.boks{background:var(--jasny);border:1.5px solid var(--tusz);padding:16px 18px}
.boks h3{font:700 13px/1.4 var(--tw);letter-spacing:.1em;text-transform:uppercase;margin:0 0 10px}
.boks ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:15px}
.podpis{margin:0;font:400 14px/1.5 var(--tw);color:var(--ochra)}

/* hub klasy */
.lista-dz{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px}
.lista-dz a{display:flex;gap:16px;align-items:flex-start;height:100%;padding:18px 20px;background:#fff;text-decoration:none;color:var(--tekst)}
.lista-dz a:hover{box-shadow:0 14px 26px -18px rgba(29,43,34,.6);color:var(--tekst)}
.lista-dz .n{flex:none;font:700 15px/1.6 var(--tw);color:var(--czerw);min-width:28px}
.lista-dz b{display:block;font:400 21px/1.25 var(--szer);color:var(--tusz)}
.lista-dz span{display:block;font-size:15px;color:var(--szary);margin-top:4px}
.lista-dz em{display:block;font:400 13px var(--tw);color:var(--mech);margin-top:8px;font-style:normal}

/* kalkulator Punnetta */
.punnett{background:#fff;border:1.5px solid var(--tusz);padding:28px}
.punnett h2{margin:0 0 8px}
.punnett>p{margin:0 0 18px;color:var(--tekst2)}
.pn-wybor{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:22px;font-weight:600}
.pn-wybor>span{font:400 26px var(--szer);color:var(--ochra)}
.pn-wybor select{margin-left:8px;min-height:44px;padding:8px 12px;border:1.5px solid var(--tusz);background:var(--jasny);font:700 18px var(--tw);color:var(--tusz)}
.pn-tab{border-collapse:separate;border-spacing:6px;font:700 22px var(--tw);color:var(--tusz)}
.pn-tab caption{caption-side:bottom;text-align:left;font:400 14px var(--sans);color:var(--szary);padding-top:6px}
.pn-tab th{width:72px;height:44px;font:700 20px var(--tw);color:var(--ochra)}
.pn-tab td{width:72px;height:72px;text-align:center;background:#EEF2E2;border:1.5px solid var(--mech)}
.pn-tab td.rec{background:#F7E4DF;border-color:var(--czerw);color:#6E1F17}
.pn-wynik{margin:18px 0 0;font-size:17px}
@media (max-width:760px){.punnett{padding:20px 16px}.pn-tab td{width:60px;height:60px}}

/* treść prostych stron */
.tresc{max-width:780px}
.tresc h2{font-size:28px;margin:40px 0 14px}
.tresc p,.tresc li{font-size:17px}
.tresc ul,.tresc ol{padding-left:22px}

/* belka zgody */
.zgoda{position:fixed;left:16px;right:16px;bottom:16px;z-index:50;max-width:720px;margin:0 auto;background:#fff;border:1.5px solid var(--tusz);box-shadow:0 18px 40px -16px rgba(0,0,0,.35);padding:16px 18px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:15px}
.zgoda p{margin:0;flex:1 1 320px}
.zgoda button{min-height:44px;padding:0 16px;font:700 15px var(--sans);cursor:pointer;border:2px solid var(--mech);background:var(--mech);color:#fff;border-radius:4px}
.zgoda button.nie{background:transparent;color:var(--mech)}
@media print{.gora,.dol,.zgoda,.quiz-blok,.spis,.punnett{display:none}}
.odp .lit{font:700 16px var(--tw);margin-right:10px}
