/* REDFORD V6 · btnfx.css (P4, 18.10): efekt hover guzików wg wzoru Rafała.
 * Koło rośnie od miejsca wjazdu kursora, pod kołem napis i ikona w odwróconym kolorze.
 * btnfx.js wstrzykuje raz do guzika nakładkę .bf-o (aria-hidden, klon treści) przyciętą clip-path: circle(R at X Y).
 * Kolory koła (--bf-fill) i napisu (--bf-text) liczy JS przy każdym najechaniu; nadpisanie: data-bf-fill, data-bf-text.
 * Ten plik wyłącza też dotychczasowe hovery guzików (przewijane napisy, wypełnienia :hover), żeby nie nakładały się dwa efekty.
 * Nie zmienia rozmiarów, tekstów ani działania guzików. */

/* host: izolacja warstw; position:relative tylko gdy guzik był static (JS dodaje .bf--rel) */
.bf{isolation:isolate}
.bf--rel{position:relative}

/* nakładka: pokrywa pole wewnątrz obwódki i powtarza układ treści guzika */
.bf-o{position:absolute;inset:0;z-index:1;box-sizing:border-box;display:inherit;flex-direction:inherit;flex-wrap:inherit;
  align-items:inherit;justify-content:inherit;place-items:inherit;gap:inherit;padding:inherit;border-radius:inherit;
  font:inherit;letter-spacing:inherit;text-transform:inherit;white-space:inherit;line-height:inherit;text-align:inherit;
  margin:0;border:0;background:var(--bf-fill,#0E0E0E);color:var(--bf-text,#F3F3EF);pointer-events:none;
  -webkit-user-select:none;user-select:none;clip-path:circle(0px at 50% 50%);visibility:hidden;transition:none!important}
.bf-o.is-on{visibility:visible}
/* obwódka rysowana box-shadow inset zostaje widoczna także pod kołem */
.pill--out>.bf-o,.bp--dk>.bf-o,.fq_cta>.bf-o{box-shadow:inherit}
/* elementy klonu, które mają kolor na sztywno: dostosuj do koloru napisu pod kołem */
.bf-o .hv-tri{border-left-color:var(--bf-text,#F3F3EF)}
.mn-x>.bf-o i{background:var(--bf-text,#0E0E0E)}
.nv-menu>.bf-o .nv-dots i{background:var(--bf-text,#F3F3EF)}
/* wideo: anchor przezroczysty, powierzchnią jest .hv-play-in; koło w kształcie pigułki */
.hv-play>.bf-o{border-radius:999px}
.bf-o .hv-play-in,html .hv-play:hover>.bf-o .hv-play-in{background:transparent}
/* c-button (cookies): kształt i obrys rysuje .c-button_inner::before */
.c-button>.bf-o{border-radius:var(--button-radius,999px)}
.bf-o .c-button_inner::before{background-color:transparent}

/* ---- wyłączenie dotychczasowych hoverów (zostają małe przesunięcia strzałek) ---- */
/* przewijane napisy: stoją w miejscu, efekt robi koło */
html .pill--out:hover .pill-roll>span:first-child,html .of-b:is(:hover,:focus-visible,:active) .of-b-r>span:first-child,
html .nv-cta:hover .nv-roll>span:first-child{transform:none}
html .pill--out:hover .pill-roll>span+span,html .of-b:is(:hover,:focus-visible,:active) .of-b-r>span+span,
html .nv-cta:hover .nv-roll>span+span{transform:translateY(110%)}
/* wypełnienia :hover: wracają do koloru spoczynkowego */
html .pill:hover{background:var(--red)}
html .pill.pill--out:hover{background:none;color:var(--ink)}
html .bp:hover{background:var(--red)}
html .bp.bp--dk:hover{background:transparent;color:var(--paper)}
html .bp.fq_cta:hover{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px rgba(14,14,14,.28)}
html .nv-cta:hover .nv-ic{background:var(--red)}
html .nv-menu:hover .nv-dots i{transform:none}
html .of-b.of-b--w:is(:hover,:focus-visible,:active){background:#fff;border-color:#fff;color:var(--ink)}
html .of-b.of-b--o:is(:hover,:focus-visible,:active){background:transparent;border-color:rgba(255,255,255,.55);color:#fff}
html .hv-play:hover{--h:1}
html .hv-play:hover .hv-play-in{background:#fff}
html .hv-close:hover{background:var(--paper)}
html .rf-car_btn:is(:hover,:focus-visible){background:transparent;border-color:var(--rf-ink);color:var(--rf-ink)}
html .mn-x:hover{background:rgba(255,255,255,.15)}
html .ck-yes:hover{background:none}
html .ck-set:hover{background:rgba(255,255,255,.15)}

/* ---- R4-B (19.10): ruch elementów towarzyszących skalowany do tempa koła (wjazd 900 ms, wyjazd 650 ms) ----
 * Strzałki, ikona CTA i obroty ikon przyspieszały przed kołem (0,3 do 0,45 s). Ten sam zegar co dotąd, przeliczony
 * proporcjonalnie: wjazd x1,8 (500 do 900 ms), wyjazd x1,625 (400 do 650 ms). Reguła spoczynkowa = czas wyjazdu,
 * reguła :hover = czas wjazdu. Kolor napisu zmienia się wyłącznie pod kołem (klon w nakładce), więc nie wyprzedza koła.
 * Reduced motion: base.css skraca wszystkie przejścia do 0,01 ms (!important). Selektory bez .bf (klasa dochodzi
 * dopiero przy pierwszym najechaniu, a przejście startuje w tej samej klatce). */
html .pill .arr,html .bp .bp_arr,html .nv-cta .nv-ic svg{transition:transform .73s var(--e-out)}
html .pill:hover .arr,html .bp:hover .bp_arr,html .nv-cta:hover .nv-ic svg{transition-duration:.81s}
html .mn-x{transition:background-color .49s var(--e-out),transform .73s var(--e-out)}
html .mn-x:hover{transition-duration:.54s,.81s}
html .ck-set{transition:background-color .49s var(--e-out),transform .98s var(--e-out)}
html .ck-set:hover{transition-duration:.54s,1.08s}

/* dotyk (brak hover): bez koła z najechania; fokus z klawiatury nadal działa (JS) */
@media (hover:none){.bf-o:not(.is-kb){visibility:hidden}}
