/*
Theme Name: FHZ Woodmart Child
Theme URI: https://fieldhockeyzone.com/
Description: Child theme Woodmart dla Field Hockey Zone (R13). Kolory marki: zielony #45B75B, granat #081F3F.
Author: idea4me
Template: woodmart
Version: 1.0.0
*/

:root {
    --fhz-green: #45B75B;
    --fhz-navy: #081F3F;
}

/* Poprawka 4 (21.08): stopka 4-kolumnowa — kolory FAKTYCZNEGO brandu frontu
   (#081F3F/#45B75B z logo i custom_css, nie stare #18233E/#49AE4C z ery Storefront) */
.footer-container {
    background-color: var(--fhz-navy) !important;
    color: #cfd8e3 !important;
}
.footer-container .widget-title,
.footer-container .footer-widget .widget-title {
    color: #fff !important;
}
.fhz-footer-menu {
    list-style: none;
    margin: 0;
    padding: 0;
}
.fhz-footer-menu li {
    margin-bottom: 8px;
}
.footer-container a,
.fhz-footer-menu a,
.fhz-footer-dane a {
    color: #cfd8e3 !important;
}
.footer-container a:hover,
.fhz-footer-menu a:hover,
.fhz-footer-dane a:hover {
    color: var(--fhz-green) !important;
}
.fhz-footer-dane {
    line-height: 1.7;
}
.copyrights-wrapper {
    border-top: 1px solid rgba(255, 255, 255, .12);
}

/* P15 (24.08): siatka kafelków „Kategorie produktów" na home ([product_categories] w grupie
   .fhz-kat-grid). Woodmart wymusza 3 kolumny z opcji motywu i chowa nazwę+licznik w hover-maskę
   na zdjęciu (cat-design-default) — tu: 4/3/2 kolumny, nazwa i liczba produktów POD zdjęciem,
   hover jak w Polecanych (delikatny zoom + cień). */
/* Kolumny: Woodmart wpisuje --wd-col-lg:3 INLINE na .wd-products (inline bije arkusz),
   a style częściowe motywu ładują się w body PO tym pliku — stąd grid-template z !important
   i selektory o wyższej specyficzności niż .cat-design-default .wd-cat-content. */
.fhz-kat-grid .wd-products.wd-grid-g {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}
@media (max-width: 1024px) {
    .fhz-kat-grid .wd-products.wd-grid-g {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 768.98px) {
    .fhz-kat-grid .wd-products.wd-grid-g {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}
.fhz-kat-grid .wd-cat .wd-cat-thumb {
    overflow: hidden;
}
.fhz-kat-grid .wd-cat .wd-cat-thumb img {
    transition: transform .35s ease;
}
.fhz-kat-grid .wd-cat:hover .wd-cat-thumb img {
    transform: scale(1.06);
}
.fhz-kat-grid .wd-cat .wd-cat-inner {
    transition: box-shadow .3s ease;
}
.fhz-kat-grid .wd-cat:hover .wd-cat-inner {
    box-shadow: 0 8px 24px rgba(8, 31, 63, .16);
}
.fhz-kat-grid .wd-cat .wd-cat-content {
    position: static !important;
    transform: none !important;
    inset-inline: auto;
    text-align: center;
    padding: 14px 8px 16px !important;
    background: #fff;
}
.fhz-kat-grid .wd-cat .wd-entities-title,
.fhz-kat-grid .wd-cat .wd-entities-title a {
    /* maska cat-design-default koloruje tytuł na biało i pozycjonuje absolutnie —
       bez static tytuł wyrywa się z kafelka (rect x=lewa krawędź sekcji) */
    position: static !important;
    transform: none !important;
    font-size: 16px;
    color: var(--fhz-navy) !important;
}
.fhz-kat-grid .wd-cat .wd-cat-count {
    opacity: 1 !important;
    transform: none !important;
    font-size: 13px;
    color: #7a8699;
}
.fhz-kat-grid .wd-cat .wd-cat-count a {
    color: inherit;
}

/* P21a (25.08): wariant „Brak w magazynie" — Woo dodaje przyciskowi klasy
   disabled/wc-variation-is-unavailable, ale Woodmart zostawia go zielonym jak aktywny.
   Wyszarzenie obejmuje też stan „nie wybrano opcji" (ta sama klasa .disabled) — spójnie. */
/* podwojona klasa (0,3,0): custom_css motywu (spuścizna Alexa, drukowany inline PO childzie)
   ma `.single_add_to_cart_button { background: #45B75B !important }` — przy remisie !important
   decyduje specyficzność */
.single_add_to_cart_button.disabled.disabled,
.single_add_to_cart_button.wc-variation-is-unavailable.wc-variation-is-unavailable {
    background: #b8c0cc !important;
    border-color: #b8c0cc !important;
    color: #4a5568 !important;
    cursor: not-allowed;
    opacity: .7;
}
.single_add_to_cart_button.disabled.disabled:hover,
.single_add_to_cart_button.wc-variation-is-unavailable.wc-variation-is-unavailable:hover {
    background: #b8c0cc !important;
}

/* P20b (25.08, pomysł Marka): floater porównywarki — stały dostęp do /porownanie/ z licznikiem.
   Prawy dół NAD pływającym przełącznikiem języka TRP; widoczny tylko gdy licznik > 0. */
.fhz-compare-floater {
    position: fixed;
    right: 16px;
    bottom: 84px;
    z-index: 9997;
    width: 44px;
    height: 44px;
    display: none;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--fhz-navy);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, .25);
    box-shadow: 0 2px 10px rgba(0, 0, 0, .25);
}
.fhz-compare-floater.fhz-widoczny {
    display: flex;
}
.fhz-compare-floater:hover {
    color: var(--fhz-green);
    border-color: var(--fhz-green);
}
.fhz-compare-floater svg {
    width: 22px;
    height: 22px;
    flex: 0 0 auto;
}
.fhz-compare-floater .fhz-compare-licznik {
    position: absolute;
    top: -6px;
    right: -6px;
    min-width: 20px;
    height: 20px;
    padding: 0 5px;
    border-radius: 10px;
    background: var(--fhz-green);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 20px;
    text-align: center;
}

/* P19 (24.08): czarny pas tytułu strony (Woodmart page-title) — odstępy ZMNIEJSZONE O POŁOWĘ.
   Padding jedzie na zmiennej --wd-title-sp (mobile 15px; >=1025px: small 20 / default 60 / large 100).
   Selektory .wd-page-title.page-title (0,2,0) biją warianty motywu (0,1,0) niezależnie od
   kolejności ładowania części CSS w body. */
.wd-page-title.page-title {
    --wd-title-sp: 8px; /* mobile: 15 -> 8 */
}
@media (min-width: 1025px) {
    .wd-page-title.title-size-small {
        --wd-title-sp: 10px; /* 20 -> 10 */
    }
    .wd-page-title.title-size-default {
        --wd-title-sp: 30px; /* 60 -> 30 */
    }
    .wd-page-title.title-size-large {
        --wd-title-sp: 50px; /* 100 -> 50 */
    }
}

/* === P16 (Kuba 24.08): banery rabatowe home (decyzja Kasi: n5 pod hero, n4 przed Polecanymi) === */
.fhz-baner{position:relative;overflow:hidden;min-height:200px;display:flex;align-items:center;border-radius:8px;margin:26px auto;max-width:1222px;}
.fhz-baner .fhz-b-zaw{position:absolute;right:0;top:0;height:100%;width:36%;object-fit:cover;object-position:right center;clip-path:polygon(19% 0,100% 0,100% 100%,0 100%);}
.fhz-baner::after{content:"";position:absolute;right:29.2%;top:-10%;height:120%;width:14px;background:#49AE4C;transform:rotate(9deg);z-index:2;}
.fhz-baner .fhz-b-tekst{position:relative;z-index:2;padding:22px 30px;display:flex;align-items:center;gap:26px;max-width:66%;}
.fhz-baner .fhz-b-tytul{font-size:24px;line-height:1.1;font-weight:800;text-transform:uppercase;letter-spacing:.5px;}
.fhz-baner .fhz-b-tytul span{color:#49AE4C;}
.fhz-baner .fhz-b-info{font-size:13px;margin-top:6px;}
.fhz-baner .fhz-b-kupon{position:relative;border-radius:10px;padding:12px 22px 12px 30px;display:flex;flex-direction:column;align-items:center;}
.fhz-baner .fhz-b-kupon::before{content:"";position:absolute;left:14px;top:6px;bottom:6px;border-left:2px dashed;}
.fhz-baner .fhz-b-proc{font-size:24px;font-weight:800;color:#49AE4C;}
.fhz-baner .fhz-b-kod{font-size:18px;font-weight:800;letter-spacing:2px;font-family:Consolas,monospace;}
.fhz-baner .fhz-b-waz{font-size:11px;margin-top:2px;}
/* wariant granatowy (n4) */
.fhz-baner--granat{background:#18233E;}
.fhz-baner--granat .fhz-b-tytul{color:#fff;}
.fhz-baner--granat .fhz-b-info{color:#c3cad6;}.fhz-baner--granat .fhz-b-info strong{color:#fff;}
.fhz-baner--granat .fhz-b-kupon{background:#fff;}
.fhz-baner--granat .fhz-b-kupon::before{border-color:#b8c0cc;}
.fhz-baner--granat .fhz-b-kod{color:#18233E;}
.fhz-baner--granat .fhz-b-waz{color:#4a5568;}
/* wariant bialy (n5) */
.fhz-baner--bialy{background:#fff;border:1px solid #e3e7ea;}
.fhz-baner--bialy::before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(73,174,76,.12) 0 6%,transparent 6%);}
.fhz-baner--bialy .fhz-b-tytul{color:#18233E;}
.fhz-baner--bialy .fhz-b-info{color:#4a5568;}.fhz-baner--bialy .fhz-b-info strong{color:#18233E;}
.fhz-baner--bialy .fhz-b-kupon{background:#18233E;}
.fhz-baner--bialy .fhz-b-kupon::before{border-color:rgba(255,255,255,.45);}
.fhz-baner--bialy .fhz-b-kod{color:#fff;}
.fhz-baner--bialy .fhz-b-waz{color:#c3cad6;}
@media (max-width:1024px){.fhz-baner .fhz-b-zaw{opacity:.3;} .fhz-baner .fhz-b-tekst{max-width:100%;flex-wrap:wrap;gap:14px;}}
