/*
  EKRAN I KLAWIATURA - JEDNO MIEJSCE NA CALY PORTAL (S4, 06.11).

  Tokeny (wszystko ponizej czyta TYLKO je, nie `env()` ani `100vh` wprost):
    --bezp-gora, --bezp-dol, --bezp-lewo, --bezp-prawo
                   bezpieczne strefy: wyciecie, zegar, pasek "domu". Jedyne miejsce
                   z `env(safe-area-inset-*)` (храповик `EkranHrapovikTest`).
                   Aplikacja Android od 3.71 stawia WebView MIEDZY paskami
                   (`Polosy`, tryb "obok") - tam env() = 0 i tak ma byc.
                   Z otwarta klawiatura `--bezp-dol` = 0: pasek "domu" lezy pod nia.
    --ekran-h      widoczna wysokosc (visualViewport.height); zanim `ekran.js`
                   policzy - 100dvh.
    --ekran-gora   o ile Safari przesunelo widok w dol (visualViewport.offsetTop).
    --kl           wysokosc klawiatury NAD dolem okna strony. 0 w Chrome
                   (resizes-content zmniejsza okno), 0 w aplikacji (Polosy podnosi
                   WebView), >0 tylko w Safari / ekranie poczatkowym iPhone'a.
    --dol-stos     dol wszystkiego, co stoi przy dole: zamknieta klawiatura -
                   menu (`--tb-nad`, na telefonie) + `--bezp-dol`; otwarta - `--kl`.
  Klasa `kl-otwarta` na <html>: pole ma fokus I widok skurczyl sie o > 120 px.
  Zewnetrzna klawiatura (planszet, laptop z dotykiem) widoku nie zmniejsza -
  klasy nie ma, `--kl` = 0.
*/
:root{
  --bezp-gora:env(safe-area-inset-top,0px);
  --bezp-dol:env(safe-area-inset-bottom,0px);
  --bezp-lewo:env(safe-area-inset-left,0px);
  --bezp-prawo:env(safe-area-inset-right,0px);
  --ekran-h:100dvh;
  --ekran-gora:0px;
  --kl:0px;
}
html.kl-otwarta{--bezp-dol:0px}
body{--dol-menu:0px;--dol-stos:calc(var(--dol-menu) + var(--bezp-dol))}
@media (max-width:1023px){
  body:has(>nav.tabbar){--dol-menu:var(--tb-nad,82px)}
}
html.kl-otwarta body{--dol-stos:var(--kl)}

/* Chowanie dolnego menu przy klawiaturze stoi NA KONCU `tabbar.css` (wygrywa
   kolejnoscia z trybami menu) - czyta klase `kl-otwarta` stad. */
