/* ==================================================================
   tv-fluid.css — warstwa FLUID dla tv.php (W3, 2026-07-21)
   Ładowana PO tv-mode.css. Skaluje cały ekran 1920×1080 proporcjonalnie
   do viewportu (transform: scale) — telefon / tablet / TV z JEDNEGO layoutu.

   Na 1920×1080 skala = 1, translacja = 0 → render PIKSEL-W-PIKSEL identyczny
   z dotychczasowym (kioski nie zauważają zmiany). Na mniejszych ekranach kanwa
   jest jednolicie pomniejszona i wyśrodkowana (letterbox = tło-foto z body).

   --tv-scale / --tv-x / --tv-y liczy inline-skrypt w tv.php:
     s = min(innerWidth/1920, innerHeight/1080);  x,y = wyśrodkowanie.
   Blok „TABLET" w tv-mode.css został WYŁĄCZONY (zastąpiony tym jednolitym
   skalowaniem — inaczej podwójnie zmniejszałby czcionki).

   Rollback: przywróć tv.php.bak_tv_fluid + tv-mode.css.bak_tv_fluid
   (viewport=1920, brak tego <link>). #TAG: TV_MODE FLUID W3
   ================================================================== */

/* Tło (foto instalacji z body) wypełnia cały viewport; wyśrodkowana kanwa
   1920×1080 jest skalowana na wierzchu. overflow:hidden ucina letterbox. */
html, body { overflow: hidden; }

/* Stała kanwa 1920×1080 (identyczna z projektem) — skalowana jednolicie.
   transform-origin: top left + translacja z JS = pełna kontrola wyśrodkowania,
   niezależnie od proporcji ekranu. Przy braku JS: skala 1, przesunięcie 0
   (kanwa w lewym-górnym rogu, przycięta) — bezpieczny fallback. */
.tv-stage {
    position: fixed;
    top: 0;
    left: 0;
    width: 1920px;
    height: 1080px;
    transform-origin: top left;
    transform: translate(var(--tv-x, 0px), var(--tv-y, 0px)) scale(var(--tv-scale, 1));
}
