/* Trening łowiecki — arkusz stylów (1.4.0: odświeżony interfejs).
   Tokeny: kolory, skala odstępów (4 px), skala pisma, promienie, cienie. Logika w app.js/lokalnie.js nie zależy od stylów. */
:root{
  --bg:#f3f5f0;--karta:#ffffff;--karta-2:#f7f9f4;--fg:#1a1f1b;--fg-2:#3c443d;--mut:#66706a;--linia:#dde3da;--linia-2:#eef1ea;
  --akcent:#1f5a32;--akcent-2:#2a7a44;--akcent-fg:#ffffff;--akcent-bg:#e4f2e8;
  --ok:#1b7a3a;--ok-bg:#e1f3e6;--zle:#b3261e;--zle-bg:#fbe8e6;--uwaga:#8a5a00;--uwaga-bg:#fff2d2;--zolty:#d9b945;
  --fokus:#2a7a44;
  --cien-1:0 1px 2px rgba(20,30,20,.06),0 1px 1px rgba(20,30,20,.04);
  --cien-2:0 6px 20px rgba(20,30,20,.10),0 2px 6px rgba(20,30,20,.06);
  --r-s:8px;--r:14px;--r-l:20px;
  --s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;
  --t-xs:12px;--t-s:13.5px;--t-m:16px;--t-l:17.5px;--t-xl:20px;--t-2xl:26px;--t-3xl:32px;
  --nav-h:64px;
  --przejscie:160ms cubic-bezier(.2,.7,.2,1);
  color-scheme:light dark;
}
@media (prefers-color-scheme:dark){:root{
  --bg:#111411;--karta:#1a1e1a;--karta-2:#20251f;--fg:#e9ece5;--fg-2:#c7cdc2;--mut:#98a094;--linia:#2b312a;--linia-2:#232823;
  --akcent:#6cc986;--akcent-2:#86d99c;--akcent-fg:#0d1a11;--akcent-bg:#1a3322;
  --ok:#74d393;--ok-bg:#17301f;--zle:#ff8f85;--zle-bg:#3a1f1d;--uwaga:#ffd27a;--uwaga-bg:#3a2e12;--zolty:#d9b945;
  --fokus:#86d99c;
  --cien-1:0 1px 2px rgba(0,0,0,.35);
  --cien-2:0 8px 24px rgba(0,0,0,.5);
}}

/* --- baza */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
html,body{margin:0;background:var(--bg);color:var(--fg);
  font:var(--t-m)/1.5 system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",sans-serif;font-feature-settings:"tnum" 0}
body{min-height:100dvh;padding-bottom:calc(var(--nav-h) + var(--s-4) + env(safe-area-inset-bottom))}
#app{max-width:720px;margin:0 auto;padding:0 var(--s-4)}
a{color:var(--akcent);text-underline-offset:2px}
b,strong{font-weight:650}
p{margin:var(--s-2) 0;overflow-wrap:anywhere}
h1,h2,h3{overflow-wrap:anywhere;text-wrap:balance}
mark{background:transparent;color:inherit}
img,svg{max-width:100%}

/* dostępność */
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip{position:absolute;left:var(--s-3);top:-100px;z-index:50;background:var(--akcent);color:var(--akcent-fg);padding:var(--s-2) var(--s-4);border-radius:var(--r-s);font-weight:600}
.skip:focus{top:var(--s-3);outline:none;box-shadow:0 0 0 3px var(--karta),0 0 0 5px var(--fokus)}
:focus{outline:none}
:focus-visible{outline:2px solid var(--fokus);outline-offset:2px;border-radius:var(--r-s)}
button:focus-visible,.przycisk:focus-visible,.odp:focus-visible{outline:none;box-shadow:0 0 0 2px var(--karta),0 0 0 4px var(--fokus)}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none;border-color:var(--akcent);box-shadow:0 0 0 3px color-mix(in srgb,var(--akcent) 22%,transparent)}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* --- nagłówek */
header.gora{position:sticky;top:0;z-index:6;display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);
  margin:0 calc(-1 * var(--s-4));padding:calc(var(--s-3) + env(safe-area-inset-top)) var(--s-4) var(--s-3);
  background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(14px) saturate(1.3);-webkit-backdrop-filter:blur(14px) saturate(1.3);
  border-bottom:1px solid transparent}
header.gora.cien{border-bottom-color:var(--linia)}
header.gora h1{font-size:var(--t-xl);margin:0;font-weight:750;letter-spacing:-.01em;display:flex;align-items:center;gap:var(--s-2)}
header.gora h1 .logo-mini{width:26px;height:26px;border-radius:7px;flex:none}
header.gora .kto{color:var(--mut);font-size:var(--t-s);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  background:var(--karta);border:1px solid var(--linia);border-radius:999px;padding:3px 10px}
main{display:block;padding-top:var(--s-2)}

/* --- nawigacja dolna */
nav.dol{position:fixed;left:0;right:0;bottom:0;z-index:5;background:color-mix(in srgb,var(--karta) 92%,transparent);
  backdrop-filter:blur(16px) saturate(1.3);-webkit-backdrop-filter:blur(16px) saturate(1.3);border-top:1px solid var(--linia);
  padding:var(--s-1) var(--s-2) calc(var(--s-1) + env(safe-area-inset-bottom))}
nav.dol ul{list-style:none;margin:0 auto;padding:0;display:flex;max-width:720px}
nav.dol li{flex:1;min-width:0}
nav.dol a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;padding:var(--s-1) 0;
  text-decoration:none;color:var(--mut);font-size:var(--t-xs);font-weight:500;border-radius:var(--r);transition:color var(--przejscie)}
nav.dol a .ik{display:flex;align-items:center;justify-content:center;width:52px;height:30px;border-radius:999px;font-size:20px;line-height:1;
  transition:background var(--przejscie),transform var(--przejscie)}
nav.dol a[aria-current=page]{color:var(--akcent);font-weight:650}
nav.dol a[aria-current=page] .ik{background:var(--akcent-bg)}
nav.dol a:active .ik{transform:scale(.94)}
nav.dol a:focus-visible{outline:none;box-shadow:inset 0 0 0 2px var(--fokus)}

/* --- karty */
.karta{background:var(--karta);border:1px solid var(--linia);border-radius:var(--r);padding:var(--s-4);margin:var(--s-3) 0;box-shadow:var(--cien-1)}
.karta>:first-child{margin-top:0}
.karta>:last-child{margin-bottom:0}
.karta h2{margin:0 0 var(--s-2);font-size:var(--t-l);font-weight:700;letter-spacing:-.005em;line-height:1.3}
.karta h3{font-size:var(--t-m);margin:var(--s-4) 0 var(--s-1);font-weight:650;line-height:1.35}
.karta .wiersz+h3,.karta h2+h3{margin-top:var(--s-2)}
.karta p{margin:var(--s-2) 0}
.karta .wiersz{margin-top:var(--s-3)}
.karta .wiersz:first-child{margin-top:0}
.karta.akcentowa{border-color:color-mix(in srgb,var(--akcent) 35%,var(--linia));background:linear-gradient(180deg,color-mix(in srgb,var(--akcent-bg) 55%,var(--karta)),var(--karta) 60%)}
.sekcja-tytul{font-size:var(--t-xs);font-weight:650;text-transform:uppercase;letter-spacing:.08em;color:var(--mut);margin:var(--s-5) var(--s-1) var(--s-1)}
.mut{color:var(--mut);font-size:var(--t-s)}
.male{font-size:var(--t-s);line-height:1.5}
.male.mut,.mut.male{font-size:var(--t-s)}
.srodek{text-align:center}
.prawo{justify-content:flex-end}
.wiersz{display:flex;gap:var(--s-2);flex-wrap:wrap;align-items:center;margin:var(--s-2) 0 0}
.rozciagnij{flex:1;min-width:0}
.duze{font-size:var(--t-xl);font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap}
.statystyka{display:flex;gap:var(--s-3);flex-wrap:wrap;margin-top:var(--s-2)}
.statystyka>div{flex:1 1 120px;background:var(--karta-2);border:1px solid var(--linia-2);border-radius:var(--r-s);padding:var(--s-2) var(--s-3)}
.statystyka .w{font-size:var(--t-xl);font-weight:750;font-variant-numeric:tabular-nums}
.statystyka .o{font-size:var(--t-xs);color:var(--mut)}

/* --- przyciski */
button,.przycisk{font:inherit;font-weight:550;border:1px solid var(--linia);background:var(--karta);color:var(--fg);border-radius:var(--r-s);
  padding:10px 16px;cursor:pointer;min-height:44px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:var(--s-2);
  line-height:1.25;text-align:center;-webkit-tap-highlight-color:transparent;touch-action:manipulation;
  transition:background var(--przejscie),border-color var(--przejscie),transform var(--przejscie),box-shadow var(--przejscie)}
button:hover,.przycisk:hover{background:var(--karta-2);border-color:color-mix(in srgb,var(--linia) 60%,var(--mut))}
button:active,.przycisk:active{transform:translateY(1px) scale(.99)}
button.glowny{background:var(--akcent);color:var(--akcent-fg);border-color:var(--akcent);font-weight:650;box-shadow:var(--cien-1)}
button.glowny:hover{background:var(--akcent-2);border-color:var(--akcent-2)}
button.maly{min-height:36px;padding:6px 12px;font-size:var(--t-s);border-radius:999px}
button.akt{background:var(--akcent-bg);border-color:color-mix(in srgb,var(--akcent) 45%,var(--linia));color:var(--akcent);font-weight:650}
button.niebezpieczny{color:var(--zle);border-color:color-mix(in srgb,var(--zle) 45%,var(--linia))}
button.niebezpieczny:hover{background:var(--zle-bg)}
button.cichy{border-color:transparent;background:transparent;color:var(--akcent)}
button.cichy:hover{background:var(--akcent-bg)}
button:disabled,button[aria-disabled=true]{opacity:.5;cursor:default;transform:none;box-shadow:none}
button:disabled:hover{background:var(--karta);border-color:var(--linia)}
button.glowny:disabled:hover{background:var(--akcent);border-color:var(--akcent)}

/* --- formularze */
input,select,textarea{font:inherit;width:100%;padding:11px 14px;border:1px solid var(--linia);border-radius:var(--r-s);background:var(--karta-2);color:var(--fg);
  min-height:46px;transition:border-color var(--przejscie),box-shadow var(--przejscie)}
input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--linia) 50%,var(--mut))}
input[type=checkbox]{width:22px;height:22px;min-height:0;margin:0;accent-color:var(--akcent);flex:none;padding:0}
input[type=file]{padding:6px}
input[type=search]{-webkit-appearance:none;appearance:none}
input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none;height:16px;width:16px;background:var(--mut);
  -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M3 3l10 10M13 3L3 13" stroke="black" stroke-width="2" stroke-linecap="round"/></svg>') center/contain no-repeat;cursor:pointer}
select{appearance:none;-webkit-appearance:none;padding-right:38px;
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="none" stroke="%2366706a" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 8l4 4 4-4"/></svg>');
  background-repeat:no-repeat;background-position:right 12px center;background-size:18px}
textarea{min-height:96px;resize:vertical;line-height:1.45}
label{display:block;font-size:var(--t-s);color:var(--fg-2);font-weight:550;margin:var(--s-4) 0 var(--s-1)}
label .pod{display:block;font-weight:400;color:var(--mut);margin-top:1px}
label.inline{display:flex;align-items:center;font-size:15px;color:var(--fg)}
label.odznacz{display:flex;align-items:center;gap:var(--s-3);font-weight:450;color:var(--fg);padding:var(--s-2) 0;cursor:pointer;line-height:1.4}
label.odznacz input{width:22px;height:22px;margin:0;flex:none}
.pole-siatka{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0 var(--s-4)}
fieldset{border:0;margin:0;padding:0;min-width:0}
fieldset+fieldset{margin-top:var(--s-4);padding-top:var(--s-3);border-top:1px solid var(--linia-2)}
legend{padding:0;font-size:var(--t-m);font-weight:650;margin:0 0 var(--s-1)}
.blad{color:var(--zle);font-size:14px;margin-top:var(--s-2);min-height:1em}
.ok-tekst{color:var(--ok);font-weight:650}
.zle-tekst{color:var(--zle);font-weight:650}

/* --- odznaki i meta */
.odznaka{display:inline-flex;align-items:center;gap:4px;font-size:var(--t-xs);font-weight:600;padding:3px 10px;border-radius:999px;background:var(--karta-2);
  border:1px solid var(--linia);color:var(--mut);white-space:nowrap;line-height:1.3}
.odznaka.B{color:var(--uwaga);background:var(--uwaga-bg);border-color:transparent}
.odznaka.O{color:var(--akcent);background:var(--akcent-bg);border-color:transparent}
.odznaka.zle{color:var(--zle);background:var(--zle-bg);border-color:transparent}
.tag{font-size:var(--t-xs);color:var(--mut);font-variant-numeric:tabular-nums}
.u{display:flex;flex-wrap:wrap;gap:var(--s-1) var(--s-3);align-items:baseline}
summary .u{display:inline-flex}
.u .nazwa{font-weight:650}

/* --- pytanie i odpowiedzi */
.pyt{font-size:var(--t-l);font-weight:600;margin:var(--s-3) 0;line-height:1.45;letter-spacing:-.003em}
.chronione{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.obraz{width:100%;max-width:480px;aspect-ratio:3/2;background:#fff center/contain no-repeat;border-radius:var(--r-s);border:1px solid var(--linia);margin:var(--s-2) 0 var(--s-3)}
.odpowiedzi{display:flex;flex-direction:column;gap:var(--s-2);margin-top:var(--s-3)}
.odp{display:flex;gap:var(--s-3);width:100%;text-align:left;justify-content:flex-start;margin:0;padding:12px 14px;border-radius:var(--r);border:1px solid var(--linia);
  background:var(--karta);min-height:52px;align-items:center;line-height:1.4;font-weight:450;position:relative}
.odp:hover{background:var(--karta-2)}
.odp>span:last-child{flex:1;min-width:0}
.odp .lit{flex:none;width:30px;height:30px;border-radius:50%;background:var(--karta-2);border:1px solid var(--linia);display:flex;align-items:center;justify-content:center;
  font-size:var(--t-s);font-weight:700;color:var(--mut);text-transform:uppercase;transition:background var(--przejscie),color var(--przejscie)}
.odp.wybrana{border-color:var(--akcent);box-shadow:inset 0 0 0 1px var(--akcent);background:color-mix(in srgb,var(--akcent-bg) 45%,var(--karta))}
.odp.wybrana .lit{background:var(--akcent);color:var(--akcent-fg);border-color:var(--akcent)}
.odp.dobra{background:var(--ok-bg);border-color:var(--ok);box-shadow:inset 0 0 0 1px var(--ok)}
.odp.dobra .lit{background:var(--ok);color:#fff;border-color:var(--ok)}
.odp.zla{background:var(--zle-bg);border-color:var(--zle)}
.odp.zla .lit{background:var(--zle);color:#fff;border-color:var(--zle)}
.odp.dobra::after,.odp.zla::after{content:"";flex:none;width:20px;height:20px;border-radius:50%;
  -webkit-mask:center/contain no-repeat;mask:center/contain no-repeat}
.odp.dobra::after{background:var(--ok);-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M4 10.5l4 4 8-9" fill="none" stroke="black" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M4 10.5l4 4 8-9" fill="none" stroke="black" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round"/></svg>')}
.odp.zla::after{background:var(--zle);-webkit-mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M5 5l10 10M15 5L5 15" fill="none" stroke="black" stroke-width="2.4" stroke-linecap="round"/></svg>');mask-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M5 5l10 10M15 5L5 15" fill="none" stroke="black" stroke-width="2.4" stroke-linecap="round"/></svg>')}
.odp:disabled{opacity:1;cursor:default;transform:none}
.odp:disabled:hover{background:var(--karta)}
.odp.dobra:disabled:hover{background:var(--ok-bg)}
.odp.zla:disabled:hover{background:var(--zle-bg)}
.stopka-odp{margin-top:var(--s-4);padding-top:var(--s-3);border-top:1px solid var(--linia-2)}
.stopka-odp .info{display:flex;align-items:baseline;gap:var(--s-2);flex-wrap:wrap;flex:1;min-width:0}
.stopka-odp .info>span:first-child{font-size:var(--t-m)}

/* --- paski postępu */
.pasek{height:10px;background:var(--linia-2);border:1px solid var(--linia);border-radius:999px;overflow:hidden;display:flex;margin:var(--s-2) 0;gap:2px}
.pasek span{display:block;height:100%;border-radius:999px;transition:width 400ms cubic-bezier(.2,.7,.2,1)}
.pasek .op{background:var(--ok)}
.pasek .wt{background:var(--zolty)}
.pasek .tr{background:var(--zle)}
.legenda{display:flex;gap:var(--s-3);flex-wrap:wrap;font-size:var(--t-xs);color:var(--mut);padding:0 var(--s-1)}
.legenda i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:middle}
.kropki{display:inline-flex;gap:3px;vertical-align:middle}
.kropki i{width:8px;height:8px;border-radius:50%;background:var(--linia)}
.kropki i.p{background:var(--ok)}

/* --- egzamin */
.nawigacja-pyt{display:grid;grid-template-columns:1fr 1fr;grid-template-areas:"niep niep" "poprz nast";gap:var(--s-2);margin-top:var(--s-4);padding-top:var(--s-3);border-top:1px solid var(--linia-2)}
.nawigacja-pyt .poprz{grid-area:poprz}
.nawigacja-pyt .nast{grid-area:nast}
.nawigacja-pyt .maly{grid-area:niep;justify-self:center}
@media (min-width:480px){.nawigacja-pyt{grid-template-columns:auto 1fr auto;grid-template-areas:"poprz niep nast"}.nawigacja-pyt .nast{min-width:160px}}
.siatka{display:grid;grid-template-columns:repeat(10,1fr);gap:5px;margin:var(--s-3) 0}
.siatka button{min-height:36px;padding:0;font-size:var(--t-xs);border-radius:var(--r-s);font-variant-numeric:tabular-nums}
.siatka button.udz{background:var(--ok-bg);border-color:color-mix(in srgb,var(--ok) 55%,var(--linia));color:var(--fg)}
.siatka button.biez{outline:2px solid var(--akcent);outline-offset:1px}
.pasek-egz{display:flex;align-items:center;gap:var(--s-2) var(--s-3);flex-wrap:wrap}
.pasek-egz .zegary{display:flex;align-items:baseline;gap:var(--s-3);flex-wrap:wrap}
.pasek-egz .akcje{display:flex;gap:var(--s-2);flex-wrap:wrap;margin-left:auto}
.zegar{font-variant-numeric:tabular-nums;font-weight:750;font-size:var(--t-2xl);letter-spacing:-.01em;line-height:1}
.zegar.malo{color:var(--zle)}
.werdykt{font-size:var(--t-3xl);font-weight:800;margin:var(--s-1) 0;letter-spacing:-.02em;line-height:1.1}
.werdykt.ok{color:var(--ok)}
.werdykt.zle{color:var(--zle)}

/* --- powiadomienia */
#powiadomienia{position:fixed;top:calc(var(--s-3) + env(safe-area-inset-top));left:50%;transform:translateX(-50%);z-index:30;display:flex;flex-direction:column;gap:var(--s-2);
  width:min(92vw,480px);pointer-events:none}
.toast{background:var(--fg);color:var(--bg);padding:12px 16px;border-radius:var(--r);font-size:14px;font-weight:500;box-shadow:var(--cien-2);pointer-events:auto;
  animation:toast-in 220ms cubic-bezier(.2,.7,.2,1)}
.toast.zle{background:var(--zle);color:#fff}
@keyframes toast-in{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}

/* --- listy */
.lista{list-style:none;margin:0;padding:0}
.lista li{padding:var(--s-3) 0;border-bottom:1px solid var(--linia-2)}
.lista li:last-child{border-bottom:0;padding-bottom:0}
.lista li:first-child{padding-top:0}
.lista li.klik{cursor:pointer}
.lista .wpis{display:flex;text-align:left;background:none;border:0;padding:var(--s-2) var(--s-2);margin:0 calc(-1 * var(--s-2));width:calc(100% + 2 * var(--s-2));
  border-radius:var(--r-s);min-height:0;font-weight:400;color:inherit;line-height:1.45;align-items:stretch;flex-direction:column;gap:2px}
.lista .wpis:hover{background:var(--karta-2);border-color:transparent}

/* --- wykres słupkowy */
.slupki{display:flex;gap:6px;align-items:flex-end;height:72px;margin-top:var(--s-3);padding:0 2px}
.slupki div{flex:1;background:var(--ok);border-radius:4px 4px 0 0;min-height:3px;transition:height 400ms cubic-bezier(.2,.7,.2,1)}
.slupki div.zero{background:var(--linia)}
.podpisy{display:flex;gap:6px;font-size:11px;color:var(--mut);margin-top:var(--s-1);padding:0 2px}
.podpisy span{flex:1;text-align:center}

/* --- różne */
.ekran-logowania{max-width:400px;margin:6vh auto 0}
.logo{width:72px;height:72px;border-radius:18px;display:block;margin:0 auto 10px}
.tytul{text-align:center;margin:0;font-size:24px}
details{border-top:1px solid var(--linia-2);margin-top:var(--s-3);padding-top:var(--s-1)}
details summary{cursor:pointer;font-weight:600;padding:var(--s-2) 0;list-style:none;display:flex;align-items:center;gap:var(--s-2);border-radius:var(--r-s);
  -webkit-tap-highlight-color:transparent}
details summary::-webkit-details-marker{display:none}
details summary::before{content:"";flex:none;width:16px;height:16px;background:var(--mut);transition:transform var(--przejscie);
  -webkit-mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M6 3l5 5-5 5" fill="none" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>') center/contain no-repeat;
  mask:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M6 3l5 5-5 5" fill="none" stroke="black" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>') center/contain no-repeat}
details[open] summary::before{transform:rotate(90deg)}
summary.lekki{font-weight:500;color:var(--mut);font-size:var(--t-s)}
details>*:not(summary){padding-left:calc(16px + var(--s-2))}
code.kod{font-family:ui-monospace,Consolas,monospace;font-size:16px;letter-spacing:1px;background:var(--karta-2);padding:3px 7px;border-radius:6px;border:1px solid var(--linia)}
.modal-tlo{position:fixed;inset:0;background:rgba(10,14,10,.5);display:flex;align-items:center;justify-content:center;z-index:40;padding:var(--s-4);
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:tlo-in 160ms ease-out}
.modal{max-width:420px;width:100%;margin:0;box-shadow:var(--cien-2);border-radius:var(--r-l);padding:var(--s-5);animation:modal-in 200ms cubic-bezier(.2,.7,.2,1)}
.modal p{font-size:var(--t-m);line-height:1.5}
.modal .wiersz{margin-top:var(--s-5)}
@keyframes tlo-in{from{opacity:0}to{opacity:1}}
@keyframes modal-in{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
.ladowanie{padding:var(--s-8);text-align:center}
.wynik-pyt{padding:var(--s-3) 0;border-bottom:1px solid var(--linia-2)}
.wynik-pyt:last-child{border-bottom:0;padding-bottom:0}
.wynik-pyt .pyt{font-size:15.5px;margin:var(--s-1) 0 var(--s-2)}
pre.log{font-size:12px;white-space:pre-wrap;word-break:break-word;max-height:300px;overflow:auto;background:var(--karta-2);padding:var(--s-2);border-radius:var(--r-s);margin:0}
@media (min-width:600px){.karta{padding:var(--s-5)}.pyt{font-size:18.5px}#app{padding:0 var(--s-5)}header.gora{margin:0 calc(-1 * var(--s-5));padding-left:var(--s-5);padding-right:var(--s-5)}}
@media print{body{display:none}}

/* --- baza: przeglądanie */
.filtry{display:flex;gap:var(--s-2);flex-wrap:wrap;margin-top:var(--s-3)}
.filtry button{min-height:36px}
.filtry button.akt,.filtry button[aria-pressed=true]{background:var(--akcent);color:var(--akcent-fg);border-color:var(--akcent)}
.baza-pyt{padding:var(--s-3) 0;border-bottom:1px solid var(--linia-2)}
.baza-pyt:last-child{border-bottom:0;padding-bottom:0}
.baza-pyt:first-child{padding-top:0}
.baza-pyt .pyt{font-size:15.5px;margin:var(--s-1) 0 var(--s-2)}
.baza-odp{margin:4px 0;padding-left:30px;font-size:var(--t-s);color:var(--mut);position:relative;line-height:1.4}
.baza-odp .lit{position:absolute;left:4px;top:0;font-weight:700}
.baza-odp.dobra{color:var(--ok);font-weight:600}
.zaznacz{color:var(--akcent);background:var(--akcent-bg);border-radius:3px;padding:0 2px}
h3{font-size:var(--t-m);margin:var(--s-3) 0 var(--s-1);font-weight:650}

/* ---- konto, logowanie, dzierżawa (od 1.5.0) ---- */
.ekran-konta{max-width:480px;margin:0 auto}
.formularz h2{margin-bottom:var(--s-1)}
.formularz label:first-of-type{margin-top:var(--s-3)}
progress.pobieranie{width:100%;height:10px;margin:var(--s-2) 0;accent-color:var(--akcent)}
#znak{position:fixed;left:8px;bottom:calc(70px + env(safe-area-inset-bottom));font-size:11px;color:var(--mut);opacity:.8;pointer-events:none;
  z-index:4;background:var(--karta);padding:2px 7px;border-radius:6px;border:1px solid var(--linia)}
@media (min-width:720px){#znak{bottom:calc(74px + env(safe-area-inset-bottom))}}
/* 1.7.0: modal z kilkoma opcjami (przyciski jeden pod drugim), linia „Dziś” na karcie planu */
.wiersz.pionowo{flex-direction:column;align-items:stretch}
.wiersz.pionowo button{width:100%;text-align:left}
.dzis{font-size:var(--t-l,1.15rem);margin:var(--s-2) 0 0;line-height:1.4}
