/* FABC · grain (2026-10-24, globalny): JEDNA animowana warstwa szumu nad całą stroną, na wszystkich podstronach —
   nad tłami, kartami, filmem, menu i briefem. Nie przechwytuje kliknięć. Szum przeskakuje (ok. 10 klatek/s), nie pływa.
   Tła sekcji mają dodatkowo stałą fakturę (white-layout.css), dzięki czemu białe karty nadal odcinają się od tła.
   Strojenie: --grain (siła szumu). */
:root { --grain: .085; }
html::after {
  content: '' !important; position: fixed; inset: -256px; z-index: 2147483000; pointer-events: none;
  background: url("grain.png") repeat; background-size: 180px 180px;
  opacity: var(--grain);
  animation: fabcNoise .6s step-end infinite; will-change: transform;
}
body::before { content: none !important; }
@keyframes fabcNoise {
  0% { transform: translate(0,0); } 16.67% { transform: translate(-73px,41px); } 33.33% { transform: translate(58px,-97px); }
  50% { transform: translate(-121px,-38px); } 66.67% { transform: translate(92px,113px); } 83.33% { transform: translate(-34px,66px); }
}
@media (prefers-reduced-motion: reduce) { html::after { animation: none; } }
@media print { html::after { display: none !important; } }
