/**
 * oazatech-custom.css
 * -------------------------------------------------------
 * Plik nadpisań kolorystycznych dla motywu rwd/default.
 *
 * INSTALACJA:
 *   Opcja A (zalecana): dodaj @import lub <link> w local.xml / head.phtml
 *     PRZED zamknięciem </head>, po styles.css
 *   Opcja B: wklej całą zawartość na końcu:
 *     skin/frontend/rwd/default/css/styles.css
 *
 * Paleta:
 *   Niebieski główny  : #18569f
 *   Niebieski ciemny  : #0f3d74   (hover/aktywny)
 *   Niebieski jasny   : #2268b5   (focus/light hover)
 *   Zielony główny    : #00804a   (CTA, akcenty)
 *   Zielony ciemny    : #005c34   (hover zielony)
 *   Zielony jasny     : #009958   (hover light)
 *
 * Wszystkie #0472ad  → #18569f
 * Wszystkie #2e8ab8  → #2268b5  (hover niebieski)
 * Wszystkie #297aa3  → #0f3d74  (active niebieski)
 * Wszystkie #246b8f  → #0f3d74
 * -------------------------------------------------------
 */

/* ============================================ *
 * TOPBAR — pasek języka i powitania
 * ============================================ */
.header-language-background {
    background-color: #0f3d74;
}
.header-language-background,
.header-language-background a {
    color: #ccddf5;
}
.header-language-background a:hover {
    color: #ffffff;
}

/* ============================================ *
 * NAWIGACJA GŁÓWNA (desktop dropdown)
 * ============================================ */

/* Tło paska nav */
@media only screen and (min-width: 771px) {
    #header-nav {
        background-color: #18569f;
        border-bottom: 3px solid #00804a;
    }

    .nav-primary a {
        color: rgba(255, 255, 255, 0.88);
        font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    }

    .nav-primary a:hover,
    .nav-primary li:hover > a,
    .nav-primary li.active > a {
        color: #ffffff;
        background-color: rgba(255, 255, 255, 0.1);
    }

    /* Aktywna pozycja — podkreślenie zielone */
    .nav-primary li.level0.active > a,
    .nav-primary li.menu-active > a {
        color: #ffffff;
        background-color: rgba(255, 255, 255, 0.1);
        border-bottom: 3px solid #00804a;
    }

    /* Dropdown tło */
    .nav-primary li.level0 ul {
        background: #0f3d74;
        border: 1px solid rgba(255, 255, 255, 0.15);
    }

    .nav-primary li.level1 a {
        color: rgba(255, 255, 255, 0.82);
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }

    .nav-primary li.level1 a:hover {
        color: #ffffff;
        background-color: rgba(255, 255, 255, 0.08);
    }
}

/* Mobile nav — stany aktywne */
@media only screen and (max-width: 770px) {
    .nav-primary li.menu-active > a,
    .nav-primary li.sub-menu-active > a {
        color: #18569f;
    }
}

/* ============================================ *
 * PRZYCISKI GŁÓWNE (.button)
 * ============================================ */
.button,
.cart-table .product-cart-actions .button,
#co-shipping-method-form .buttons-set .button,
.footer .button {
    background: #00804a;
    color: #FFFFFF;
    border-radius: 6px;
    font-weight: 700;
    letter-spacing: 0.5px;
    transition: background 0.15s;
}

.button:hover,
.cart-table .product-cart-actions .button:hover,
#co-shipping-method-form .buttons-set .button:hover,
.footer .button:hover {
    background: #009958;
    cursor: pointer;
}

.button:active,
.cart-table .product-cart-actions .button:active,
#co-shipping-method-form .buttons-set .button:active {
    background: #005c34;
    color: #FFFFFF;
}

.button:focus,
.cart-table .product-cart-actions .button:focus,
#co-shipping-method-form .buttons-set .button:focus,
.footer .button:focus {
    background-color: #005c34;
    outline: none;
    color: #FFFFFF;
}

/* Przyciski drugorzędne (cart, sidebar) */
.cart .buttons-set .button,
.cart-table .button,
.sidebar .actions .button,
.button.button-secondary {
    background: #18569f;
    color: #FFFFFF;
}

.cart .buttons-set .button:hover,
.cart-table .button:hover,
.sidebar .actions .button:hover,
.button.button-secondary:hover {
    background: #2268b5;
}

.cart .buttons-set .button:active,
.cart-table .button:active,
.sidebar .actions .button:active,
.button.button-secondary:active {
    background: #0f3d74;
}

/* ============================================ *
 * LINKI — kolor akcentu
 * ============================================ */
a {
    color: #18569f;
}

a:hover {
    color: #0f3d74;
}

/* ============================================ *
 * NAGŁÓWKI SEKCJI / SUBTITLES
 * ============================================ */
.block-title strong,
.block-subtitle,
h2.subtitle,
.cms-index-index h2.subtitle {
    color: #18569f;
    border-color: #18569f;
}

/* ============================================ *
 * BLOKI BOCZNE — tytuły i akcenty
 * ============================================ */
.block .block-title {
    border-bottom: 1px solid #18569f;
}

.block .block-title strong {
    color: #18569f;
}

/* Lewa krawędź aktywna w blokach */
.block-content li.current a,
.block-content li.active a {
    border-left: 4px solid #18569f;
    color: #18569f;
}

/* ============================================ *
 * TOOLBAR — sortowanie, widoki
 * ============================================ */
.toolbar .view-mode a.active,
.pager-no-toolbar .view-mode a.active {
    color: #18569f;
}

.toolbar .limiter select:focus,
.toolbar .sort-by select:focus {
    border-color: #18569f;
}

/* Paginacja */
.pages li a:hover,
.pages li.current a {
    background-color: #18569f;
    border-color: #18569f;
    color: #FFFFFF;
}

/* ============================================ *
 * PRODUKTY — ceny, linki
 * ============================================ */
.price-box .price,
.price-box .special-price .price {
    color: #18569f;
}

.product-name a {
    color: #18569f;
}

.product-name a:hover {
    color: #0f3d74;
}

/* Gwiazdki ocen */
.ratings .rating-box .rating {
    background-color: #18569f;
}

/* ============================================ *
 * FORMULARZE — focus
 * ============================================ */
input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
textarea:focus,
select:focus {
    border-color: #18569f;
    outline: none;
}

/* Przycisk szukania */
#search_mini_form .search-button {
    background-color: #18569f;
    color: #FFFFFF;
}

#search_mini_form .search-button:hover {
    background-color: #0f3d74;
}

/* ============================================ *
 * KOMUNIKATY / FLASH MESSAGES
 * ============================================ */
.success-msg,
.note-msg {
    border-left: 4px solid #00804a;
    color: #005c34;
}

.error-msg {
    border-left: 4px solid #df280a;
}

/* ============================================ *
 * NAWIGACJA BREADCRUMBS
 * ============================================ */
.breadcrumbs li a {
    color: #18569f;
}

.breadcrumbs li a:hover {
    color: #0f3d74;
}

/* ============================================ *
 * FILTROWANIE WARSTWOWE (Layered Navigation)
 * ============================================ */
@media only screen and (max-width: 770px) {
    .block-layered-nav .block-subtitle--filter {
        background-color: #18569f;
    }

    .block-layered-nav .block-subtitle--filter:hover {
        background-color: #2268b5;
    }
}

.block-layered-nav dt {
    border-left: 4px solid #18569f;
}

.block-layered-nav .currently li .btn-remove:after {
    color: #18569f;
}

.block-layered-nav .currently li .btn-remove:hover,
.block-layered-nav .currently li .btn-previous:hover {
    background-color: #18569f;
    border-color: #18569f;
}

/* ============================================ *
 * CHECKOUT — kroki OPC
 * ============================================ */
.opc .section.allow.active .step-title .number,
.no-touch .opc .section.allow:hover .step-title .number {
    background-color: #18569f;
}

.opc .section.allow .step-title .number {
    background-color: #99c4e8; /* jasnoniebieski zamiast #99cce5 */
}

.opc .section.allow.active .step-title h2,
.opc .section.allow:hover .step-title h2 {
    color: #18569f;
}

/* ============================================ *
 * AUTOCOMPLETE WYSZUKIWARKI
 * ============================================ */
.search-autocomplete ul li:hover {
    color: #18569f;
}

.search-autocomplete ul li.selected {
    background-color: #18569f;
    color: #FFFFFF;
}

/* ============================================ *
 * STOPKA
 * ============================================ */
.footer-container {
    background-color: #0d1b2a;
    color: rgba(255, 255, 255, 0.65);
}

.footer-container a {
    color: rgba(255, 255, 255, 0.65);
}

.footer-container a:hover {
    color: #ffffff;
}

.footer-container .block-title strong {
    color: rgba(255, 255, 255, 0.45);
    border-bottom-color: rgba(255, 255, 255, 0.15);
}

/* ============================================ *
 * SLIDER / SLIDESHOW — pager dots
 * ============================================ */
.slideshow-pager span:hover:before {
    background-color: #18569f;
}

.slideshow-pager span.cycle-pager-active:before {
    background-color: #00804a;
}

/* ============================================ *
 * MADISONISLAND.CSS — nadpisania
 * ============================================ */

/* Subtitle na stronie głównej */
.cms-index-index h2.subtitle {
    color: #18569f;
    border-bottom-color: #18569f;
    border-top-color: #18569f;
}

/* Category landing - blue-big-text */
.catalog-category-view div.categoryland-caption span.blue-big-text,
.cms-home #homepage-main-slides div.slides_control div div.slideshow-caption span.blue-big-text {
    color: #18569f;
}

/* Hover na catblocks */
.catblocks li:hover {
    border-color: #18569f;
}

/* ============================================ *
 * LOGO NAZWA — kolor "tech"
 * ============================================ */
.logo-text em,
.logo .logo-text span {
    color: #00804a;
}

/* ============================================ *
 * MISC — inne #0472ad w styles.css
 * ============================================ */

/* Kolor linków w kolumnie left/right */
.col-left .block-content li a:hover,
.col-right .block-content li a:hover {
    color: #18569f;
}

/* Border aktywny w listach kont */
.col-left .block-content li.current,
.col-right .block-content li.current {
    border-left-color: #18569f;
}

/* Tabs aktywne */
.product-tabs .tabs-panels,
.product-tabs li.active a,
.product-tabs a:hover {
    color: #18569f;
    border-color: #18569f;
}

/* Porównywarka produktów */
.compare-table th {
    background-color: #18569f;
    color: #FFFFFF;
}

/* Add to cart mini button w liście produktów */
.products-grid .actions .btn-cart,
.products-list .actions .btn-cart {
    background-color: #00804a;
    border-color: #005c34;
    color: #FFFFFF;
}

.products-grid .actions .btn-cart:hover,
.products-list .actions .btn-cart:hover {
    background-color: #009958;
    border-color: #00804a;
}

/* Wishlist i compare linki pod produktem */
.products-grid .actions a,
.products-list .actions a {
    color: #18569f;
}

.products-grid .actions a:hover,
.products-list .actions a:hover {
    color: #0f3d74;
}

/* Promo banner hover (madisonisland) */
.promos a:hover {
    opacity: 0.85;
}

/* ============================================ *
 * RESPONSYWNE DODATKOWE
 * ============================================ */
@media only screen and (max-width: 770px) {
    /* Mobile nav aktywny */
    #header-account li a,
    .nav-primary a.level0 {
        color: #18569f;
    }

    .no-touch #header-account a:hover,
    .no-touch .nav-primary a:hover {
        background-color: #e8f1fb;
    }
}

/* ============================================ *
 * TOPBAR — pasek "Witamy..." / Kontakt / Pomoc / Status
 * Wg screenshotu: ciemnoniebieski, tekst po lewej, linki po prawej
 * ============================================ */

/* Ukryj stary pasek RWD (zastąpiony przez oz-topbar) */
.header-language-background {
    display: none !important;
}

.oz-topbar {
    background-color: #0f3d74;
    font-size: 11px;
    padding: 6px 0;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.oz-topbar-inner {
    max-width: 1260px;
    margin: 0 auto;
    padding: 0 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* "Witamy w sklepie Oazatech!" */
.oz-topbar-welcome,
.oz-topbar-welcome p,
.oz-topbar-welcome span {
    color: rgba(255, 255, 255, 0.75);
    margin: 0;
    font-size: 11px;
}

/* Linki po prawej: Kontakt / Pomoc / Status serwerów */
.oz-topbar-links {
    display: flex;
    align-items: center;
    gap: 0;
}

.oz-topbar-link {
    color: rgba(255, 255, 255, 0.75);
    text-decoration: none;
    font-size: 11px;
    padding: 0 12px;
    border-left: 1px solid rgba(255, 255, 255, 0.15);
    line-height: 1;
}

.oz-topbar-link:first-child {
    border-left: none;
}

.oz-topbar-link:hover {
    color: #ffffff;
    text-decoration: none;
}

@media only screen and (max-width: 770px) {
    .oz-topbar {
        display: none;
    }
}

/* ============================================ *
 * HEADER GŁÓWNY — logo | wyszukiwarka | konto | koszyk
 * Wg screenshotu: białe tło, logo z lewej, search centralny,
 * konto + koszyk z prawej
 * ============================================ */
.oz-header {
    background: #ffffff;
    padding: 0;
    border-bottom: none;
}

/* Nadpisujemy domyślne .page-header-container które ma position:relative */
.page-header-container.oz-header-inner {
    max-width: 1260px;
    margin: 0 auto;
    padding: 12px 30px;
    display: flex;
    align-items: center;
    gap: 20px;
    position: relative;
    /* Resetujemy float-based layout RWD */
    overflow: visible;
}

/* --- Logo --- */
/* Nadpisujemy domyślne .logo (float:left, width:65%) */
.oz-header .logo.oz-logo {
    float: none;
    width: auto;
    min-height: auto;
    min-width: auto;
    text-align: left;
    padding: 0;
    flex-shrink: 0;
    display: block;
}

.oz-header .logo.oz-logo img {
    max-height: 60px;
    width: auto;
    display: block;
}

.oz-header .logo.oz-logo .large {
    display: block;
}

.oz-header .logo.oz-logo .small {
    display: none;
}

/* --- Wyszukiwarka (desktop, inline w headerze) --- */
.oz-search-wrap {
    flex: 1;
    max-width: 500px;
    margin: 0 auto;
}

/* Formularz wyszukiwarki */
.oz-search-wrap #search_mini_form {
    position: relative;
    margin: 0;
}

.oz-search-wrap #search {
    width: 100%;
    border: 1.5px solid #dce6f0;
    border-radius: 4px;
    padding: 10px 48px 10px 16px;
    font-size: 13px;
    color: #1a1a2e;
    background: #f5f8fc;
    transition: border-color 0.15s, background 0.15s;
    box-shadow: none;
}

.oz-search-wrap #search:focus {
    border-color: #18569f;
    background: #ffffff;
    outline: none;
}

.oz-search-wrap .search-button {
    position: absolute;
    right: 0;
    top: 0;
    height: 100%;
    width: 44px;
    background-color: #00804a;
    border: none;
    border-radius: 0 4px 4px 0;
    cursor: pointer;
}

.oz-search-wrap .search-button:hover {
    background-color: #005c34;
}

/* Ikona lupy w przycisku search (sprite z RWD) */
.oz-search-wrap .search-button:before {
    /* zachowujemy domyślną ikonę z styles.css */
}

/* --- Konto + Koszyk --- */
/* Nadpisujemy domyślne .account-cart-wrapper (position:absolute, top:0, right:0) */
.oz-header-right {
    position: static !important;
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
    margin-left: auto;
}

/* Przycisk "Moje konto" */
.oz-account-btn {
    /* Resetujemy domyślne .skip-link (float:left, width:20%, height:44px) */
    float: none !important;
    width: auto !important;
    height: auto !important;
    background: transparent !important;
    line-height: normal !important;
    position: static !important;
    text-align: left !important;
    border-right: none !important;

    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    border-radius: 4px;
    text-decoration: none;
    color: #1a1a2e;
    font-size: 12px;
}

.oz-account-btn:hover {
    background: #e8f1fb !important;
    color: #18569f;
    opacity: 1;
    text-decoration: none;
}

/* Ikona konta (SVG jako bg) */
.oz-icon-account {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background-color: #e8f1fb;
    border-radius: 50%;
    flex-shrink: 0;
    /* Ikona z domyślnego sprite — nadpiszemy bg-image */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Ccircle cx='8' cy='5.5' r='3' stroke='%2318569f' stroke-width='1.5'/%3E%3Cpath d='M2 15c0-3.3 2.7-6 6-6s6 2.7 6 6' stroke='%2318569f' stroke-width='1.5' stroke-linecap='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 16px;
}

/* Etykieta konta (dwie linie: "Moje konto" + "Zaloguj się") */
.oz-account-label {
    display: flex;
    flex-direction: column;
    line-height: 1.3;
}

.oz-account-title {
    font-weight: 700;
    font-size: 12px;
    color: #1a1a2e;
}

.oz-account-sub {
    font-size: 10px;
    color: #5a6a7a;
    font-weight: 400;
}

/* --- Minikoszyk / skip-cart ---
 * Wg screenshotu: ikona koszyka + "Koszyk" + kwota
 *
 * WAŻNE: nie zmieniamy href ani data-target-element na .skip-cart —
 * app.js RWD toggluje #header-cart na podstawie klasy .skip-cart
 * i atrybutu data-target-element="#header-cart".
 * Wrapper .oz-minicart-wrap musi mieć position:relative
 * żeby dropdown #header-cart pozycjonował się pod przyciskiem.
 */
.oz-minicart-wrap {
    position: relative;
}

.oz-minicart-wrap .skip-cart {
    /* Reset domyślnego .skip-link */
    float: none !important;
    width: auto !important;
    height: auto !important;
    line-height: normal !important;
    position: static !important;
    text-align: left !important;
    border-right: none !important;
    background: transparent !important;

    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 8px;
    border-radius: 4px;
    color: #1a1a2e;
    font-size: 12px;
    text-decoration: none;
}

.oz-minicart-wrap .skip-cart:hover {
    background: #e8f1fb !important;
    color: #18569f;
    opacity: 1;
    text-decoration: none;
}

/* Ikona koszyka */
.oz-minicart-wrap .skip-cart .icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background-color: #e8f1fb;
    border-radius: 50%;
    flex-shrink: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M2 2h1.5l2.5 8h7l1.5-5H5.5' stroke='%2318569f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='7' cy='13.5' r='1.2' fill='%2318569f'/%3E%3Ccircle cx='12' cy='13.5' r='1.2' fill='%2318569f'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 16px;
}

/* Etykieta koszyka (dwie linie: "Koszyk" + kwota) */
.oz-minicart-wrap .skip-cart .label {
    display: flex;
    flex-direction: column;
    line-height: 1.3;
}

/* Dropdown #header-cart — pozycjonowanie pod przyciskiem */
.oz-minicart-wrap #header-cart.skip-content {
    display: none;
    position: absolute;
    right: 0;
    top: 100%;
    width: 300px;
    z-index: 9999;
    background: #ffffff;
    border: 1px solid #dce6f0;
    border-top: 2px solid #18569f;
    box-shadow: 0 4px 16px rgba(0,0,0,0.12);
    border-radius: 0 0 6px 6px;
    padding: 0;
}

/* Gdy aktywny — pokaż dropdown */
.oz-minicart-wrap #header-cart.skip-content.skip-active {
    display: block !important;
}

/* Licznik sztuk (badge) na ikonie koszyka */
.oz-minicart-wrap .skip-cart .count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 4px;
    background: #00804a;
    color: #ffffff;
    border-radius: 9px;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    margin-left: 2px;
}

.oz-minicart-wrap .skip-cart .count.no-count {
    display: none;
}

/* ============================================ *
 * .skip-links — przepisujemy na flex row
 * MUSI zawierać .skip-cart żeby app.js działał
 * ============================================ */

/* Resetujemy domyślny .skip-links (clear:both, border) */
.oz-skip-links {
    clear: none !important;
    overflow: visible !important;
    border: none !important;
    display: flex !important;
    align-items: center;
    gap: 4px;
    margin-left: auto;
    flex-shrink: 0;
}

/* Ukrywamy skip-nav i skip-search na desktop */
@media only screen and (min-width: 771px) {
    .oz-skip-links .oz-skip-nav,
    .oz-skip-links .oz-skip-search {
        display: none !important;
    }

    /* Wyszukiwarka skip-content niewidoczna na desktop */
    #header-search.oz-search-mobile {
        display: none !important;
    }
}

@media only screen and (max-width: 770px) {
    /* Na mobile chowamy inline search wrap */
    .oz-search-wrap {
        display: none;
    }

    /* Flex layout mobile */
    .page-header-container.oz-header-inner {
        flex-wrap: wrap;
        padding: 8px 15px 0;
        gap: 8px;
    }

    .oz-header .logo.oz-logo {
        flex: 1;
    }

    /* Na mobile chowamy etykiety tekstowe konta i koszyka */
    .oz-account-label,
    .oz-minicart-wrap .skip-cart .label {
        display: none !important;
    }

    /* Skip links na mobile — pełna szerokość, poziome */
    .oz-skip-links {
        width: 100%;
        order: 10;
        border-top: 1px solid #EDEDED !important;
        justify-content: space-around;
        margin-left: 0;
    }
}

/* ============================================ *
 * PASEK NAWIGACJI — oz-nav-bar
 * Wg screenshotu: osobny pasek pod headerem, pełna szerokość,
 * tło #18569f, linki białe, aktywny z podkreśleniem
 * ============================================ */
.oz-nav-bar {
    background-color: #18569f;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.oz-nav-inner {
    max-width: 1260px;
    margin: 0 auto;
    padding: 0 30px;
}

/* Na desktop nav zawsze widoczna (override skip-content) */
@media only screen and (min-width: 771px) {
    .oz-nav-bar .oz-nav-content {
        display: block !important;
        background: transparent;
    }

    /* Resetujemy margin-top z domyślnego .nav-primary */
    .oz-nav-bar .nav-primary {
        margin-top: 0;
        display: flex;
        align-items: stretch;
    }

    /* Linki poziomu 0 */
    .oz-nav-bar .nav-primary a.level0 {
        color: rgba(255, 255, 255, 0.9);
        padding: 12px 20px;
        line-height: 1.4;
        font-size: 13px;
        font-weight: 600;
        letter-spacing: 0.3px;
        border-bottom: 3px solid transparent;
        display: inline-flex;
        align-items: center;
        gap: 5px;
        text-transform: uppercase;
    }

    .oz-nav-bar .nav-primary a.level0:hover,
    .oz-nav-bar .nav-primary li.level0:hover > a.level0,
    .oz-nav-bar .nav-primary li.level0.active > a.level0,
    .oz-nav-bar .nav-primary li.menu-active > a.level0 {
        color: #ffffff;
        background-color: rgba(255, 255, 255, 0.1);
        border-bottom-color: #00804a;
    }

    /* Dropdown */
    .oz-nav-bar .nav-primary li.level0 ul {
        background: #0f3d74;
        border: 1px solid rgba(255, 255, 255, 0.15);
        border-top: 2px solid #00804a;
        top: 100%;
    }

    .oz-nav-bar .nav-primary li.level1 a {
        color: rgba(255, 255, 255, 0.82);
        border-bottom-color: rgba(255, 255, 255, 0.1);
    }

    .oz-nav-bar .nav-primary li.level1 a:hover {
        color: #ffffff;
        background-color: rgba(255, 255, 255, 0.08);
    }

    /* Strzałki dropdown (trójkąty) — zmiana koloru */
    .oz-nav-bar .nav-primary li.level0.parent > a.level0:after {
        border-top-color: rgba(255, 255, 255, 0.6);
    }
}

@media only screen and (max-width: 770px) {
    .oz-nav-bar {
        display: none; /* Na mobile nav jest w skip-content wewnątrz header */
    }
    .oz-nav-bar.skip-active {
        display: block;
    }
    .skip-content.skip-active {
        background-color: transparent;
    }
}

/* ============================================ *
 * POPRAWKA IKON KONTA I KOSZYKA (zgłoszona)
 * ============================================ */
.skip-account .icon {
    background-position: 4px -44px;
    background-size: unset;
    background-color: transparent;
    width: 30px;
    height: 30px;
}
.skip-cart:not(.skip-active):hover .icon {
    background-position: 8px 8px;
}

/* ============================================ *
 * HOMEPAGE — HERO
 * ============================================ */
.oz-hero {
    background-color: #0a1f5c;
    background-image: url('../images/hero_bg.webp');
    background-repeat: no-repeat;
    background-position: center right;
    background-size: cover;
    padding: 0;
    overflow: hidden;
    position: relative;
}

.oz-hero-inner {
    max-width: 1260px;
    margin: 0 auto;
    padding: 50px 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 30px;
    position: relative;
    z-index: 1;
}

/* Lekka ciemna nakładka dla czytelności tekstu po lewej */
.oz-hero::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(5,15,50,.55) 0%, rgba(5,15,50,.3) 50%, transparent 75%);
    z-index: 0;
}

.oz-hero-text {
    flex: 1;
    max-width: 520px;
}

.oz-hero-eyebrow {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    color: rgba(255,255,255,.5);
    margin: 0 0 14px;
}

.oz-hero-eyebrow span {
    color: #6ecf9e;
}

.oz-hero h1 {
    color: #ffffff;
    font-size: 28px;
    font-weight: 800;
    line-height: 1.25;
    margin: 0 0 12px;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

.oz-hero-desc {
    color: rgba(255,255,255,.68);
    font-size: 14px;
    line-height: 1.65;
    margin: 0 0 22px;
}

.oz-hero-btns {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.oz-btn-primary {
    display: inline-block;
    background: #00804a;
    color: #ffffff !important;
    text-decoration: none;
    font-size: 13px;
    font-weight: 700;
    padding: 11px 24px;
    border-radius: 4px;
    letter-spacing: .5px;
    text-transform: uppercase;
    transition: background .15s;
}

.oz-btn-primary:hover {
    background: #005c34;
    text-decoration: none;
}

.oz-btn-outline {
    display: inline-block;
    background: transparent;
    color: rgba(255,255,255,.85) !important;
    border: 1.5px solid rgba(255,255,255,.3);
    text-decoration: none;
    font-size: 13px;
    font-weight: 600;
    padding: 10px 24px;
    border-radius: 4px;
    letter-spacing: .5px;
    text-transform: uppercase;
    transition: border-color .15s, background .15s;
}

.oz-btn-outline:hover {
    border-color: rgba(255,255,255,.6);
    background: rgba(255,255,255,.08);
    text-decoration: none;
}

.oz-hero-illustration {
    display: none; /* grafika jest teraz w tle CSS */
}

@media only screen and (max-width: 1200px) {
    .skip-account .icon { background-size: 100px 1000px; }
}

@media only screen and (max-width: 960px) {
    /* Na tabletach grafika przycinana bardziej z prawej */
    .oz-hero {
        background-position: 70% center;
    }
    .oz-hero::before {
        background: linear-gradient(90deg, rgba(5,15,50,.65) 0%, rgba(5,15,50,.4) 60%, transparent 85%);
    }
}

@media only screen and (max-width: 770px) {
    /* Mobile: grafika jako dekoracja w tle, ciemniejsza nakładka */
    .oz-hero {
        background-position: 80% center;
        background-size: 200%;
    }
    .oz-hero::before {
        background: rgba(5,15,50,.70);
    }
    .oz-hero h1 { font-size: 22px; }
    .oz-hero-inner { padding: 32px 16px; }
    .oz-hero-text { max-width: 100%; }
}

@media only screen and (max-width: 480px) {
    .oz-hero {
        background-size: 280%;
        background-position: 75% center;
    }
    .oz-hero::before {
        background: rgba(5,15,50,.75);
    }
}

/* ============================================ *
 * HOMEPAGE — 4 KAFELKI KATEGORII
 * ============================================ */
.oz-cats {
    background: #ffffff;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    box-shadow: 0 4px 12px rgba(0,0,0,.07);
    position: relative;
    z-index: 2;
    margin: 0;
}

.oz-cat {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 22px 20px;
    text-decoration: none;
    border-right: 1px solid #e8eef5;
    border-top: 3px solid transparent;
    transition: border-top-color .15s, background .15s;
}

.oz-cat:last-child { border-right: none; }

.oz-cat:hover {
    background: #f8fbff;
    border-top-color: #18569f;
    text-decoration: none;
}

.oz-cat:nth-child(2):hover,
.oz-cat:nth-child(4):hover {
    border-top-color: #00804a;
}

/* Ikona — duży kwadrat jak na screenie (~60px) */
.oz-cat-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 62px;
    height: 62px;
    border-radius: 12px;
    flex-shrink: 0;
}

.oz-cat-icon--blue { background: #e8f1fb; }
.oz-cat-icon--green { background: #e6f4ee; }

.oz-cat-icon svg {
    display: block;
}

.oz-cat-body {
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding-top: 2px;
}

.oz-cat-title {
    display: block;
    font-size: 15px;
    font-weight: 700;
    color: #18569f;
    line-height: 1.25;
}

.oz-cat:nth-child(4) .oz-cat-title {
    color: #00804a;
}

.oz-cat-desc {
    display: block;
    font-size: 12px;
    color: #5a6a7a;
    line-height: 1.55;
}

.oz-cat-link {
    display: inline-block;
    font-size: 12px;
    font-weight: 600;
    color: #00804a;
    margin-top: 4px;
    text-decoration: none;
}

.oz-cat:hover .oz-cat-link {
    text-decoration: underline;
}

@media only screen and (max-width: 770px) {
    .oz-cats {
        grid-template-columns: repeat(2, 1fr);
    }
    .oz-cat {
        border-bottom: 1px solid #e8eef5;
    }
    .oz-cat:nth-child(even) { border-right: none; }
}

@media only screen and (max-width: 479px) {
    .oz-cats { grid-template-columns: 1fr; }
    .oz-cat { border-right: none; }
}

/* ============================================ *
 * HOMEPAGE — SEKCJE (nagłówki)
 * ============================================ */
.oz-section {
    padding: 28px 30px;
}

.oz-section--white { background: #ffffff; }
.oz-section--gray  { background: #f4f7fb; }

.oz-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 18px;
}

.oz-section-title {
    font-size: 16px;
    font-weight: 800;
    color: #0d1b2a;
    margin: 0;
    padding: 0;
    border: none;
    display: flex;
    align-items: center;
    gap: 10px;
}

.oz-section-title::before {
    content: '';
    display: inline-block;
    width: 4px;
    height: 18px;
    background: #00804a;
    border-radius: 2px;
    flex-shrink: 0;
}

.oz-section-link {
    font-size: 12px;
    font-weight: 600;
    color: #00804a;
    text-decoration: none;
}

.oz-section-link:hover {
    color: #005c34;
    text-decoration: underline;
}

@media only screen and (max-width: 770px) {
    .oz-section { padding: 20px 16px; }
}

/* ============================================ *
 * HOMEPAGE — SERWERY (przepisane)
 * ikona po prawej, przycisk pod treścią
 * ============================================ */
.oz-servers {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.oz-server {
    background: #ffffff;
    border: 1px solid #dce6f0;
    border-radius: 8px;
    padding: 18px 20px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 12px;
    position: relative;
}

.oz-server--featured {
    border-color: #00804a;
    border-width: 2px;
}

.oz-server--featured::before {
    content: 'Najpopularniejszy';
    position: absolute;
    top: -1px;
    right: 16px;
    background: #00804a;
    color: #fff;
    font-size: 9px;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 0 0 5px 5px;
    letter-spacing: .5px;
    text-transform: uppercase;
}

/* Lewa kolumna — ~55% */
.oz-server-content {
    flex: 0 0 55%;
    min-width: 0;
}

/* Prawa kolumna — ~45%, ikona + przycisk */
.oz-server-aside {
    flex: 0 0 calc(45% - 12px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
}

/* Ikona — bez tła, duża, zapełnia kolumnę */
.oz-server-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 1;
    background: none !important;
    border-radius: 0;
    flex-shrink: 0;
}

.oz-server-icon svg {
    display: block;
    width: 100%;
    height: auto;
}

.oz-server-icon--green {
    background: none !important;
}

.oz-server-type {
    font-size: 10px;
    font-weight: 700;
    color: #18569f;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin: 0 0 3px;
}

.oz-server-name {
    font-size: 14px;
    font-weight: 700;
    color: #18569f;
    margin: 0 0 8px;
}

.oz-server-desc {
    font-size: 12px;
    color: #5a6a7a;
    line-height: 1.55;
    margin: 0 0 8px;
}

.oz-server-price {
    font-size: 12px;
    color: #5a6a7a;
    margin: 0;
}

.oz-server-price strong {
    font-size: 14px;
    font-weight: 700;
    color: #18569f;
}

.oz-btn-check,
a.oz-btn-check {
    display: inline-block;
    background: #18569f;
    color: #ffffff !important;
    text-decoration: none;
    font-size: 11px;
    font-weight: 700;
    padding: 8px 18px;
    border-radius: 4px;
    letter-spacing: .4px;
    text-transform: uppercase;
    transition: background .15s;
    cursor: pointer;
    border: none;
    white-space: nowrap;
}

.oz-btn-check:hover {
    background: #0f3d74 !important;
    text-decoration: none;
}

.oz-btn-check--green { background: #00804a !important; }
.oz-btn-check--green:hover { background: #005c34 !important; }

@media only screen and (max-width: 770px) {
    .oz-servers { grid-template-columns: 1fr; }
    .oz-server--featured::before { font-size: 8px; }
}

/* ============================================ *
 * HOMEPAGE — NEWSLETTER (wg screenshotu)
 * ============================================ */

/* Wrapper z marginesem — newsletter jako "karta" z zaokrąglonymi rogami */
.oz-newsletter-wrap {
    background: transparent;
    padding: 20px 30px;
}

.oz-newsletter {
    background: #0f3d74;
    border-radius: 10px;
    padding: 22px 28px;
    display: flex;
    align-items: center;
    gap: 20px;
    max-width: 1260px;
    margin: 0 auto;
}

/* Ikona koperty w kółku */
.oz-newsletter-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,.25);
    background: rgba(255,255,255,.08);
    flex-shrink: 0;
}

.oz-newsletter-icon svg {
    width: 34px;
    height: 34px;
}

/* Tekst po lewej — 50% pozostałej przestrzeni po ikonie */
.oz-newsletter-text {
    flex: 1;
    min-width: 0;
}

.oz-newsletter-title {
    font-size: 15px;
    font-weight: 700;
    color: #ffffff;
    margin: 0 0 6px;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    text-transform: uppercase;
    letter-spacing: .3px;
    border-left: 3px solid #00804a;
    padding-left: 8px;
}

.oz-newsletter-desc {
    font-size: 12px;
    color: rgba(255,255,255,.65);
    margin: 0;
    line-height: 1.55;
}

/* Formularz — ta sama szerokość co tekst */
.oz-newsletter-form {
    flex: 1;
    min-width: 0;
}

/* Pole + przycisk — ta sama wysokość, wyznacza przycisk */
.oz-newsletter-fields {
    display: flex;
    gap: 0;
    margin-bottom: 10px;
}

.oz-newsletter-input {
    flex: 1;
    background: #ffffff !important;
    border: none !important;
    border-radius: 4px 0 0 4px !important;
    padding: 0 16px !important;
    font-size: 13px !important;
    color: #1a1a2e !important;
    outline: none;
    box-sizing: border-box;
    /* wysokość wyznaczana przez align-items stretch */
    height: auto !important;
    align-self: stretch;
}

.oz-newsletter-input::placeholder {
    color: #9aabb8;
}

.oz-newsletter-btn {
    background: #00804a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 0 4px 4px 0 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    padding: 11px 24px !important;
    cursor: pointer;
    white-space: nowrap;
    transition: background .15s;
    flex-shrink: 0;
    letter-spacing: .3px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.oz-newsletter-btn span,
.oz-newsletter-btn span span {
    color: #ffffff !important;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1;
}

.oz-newsletter-fields {
    display: flex;
    gap: 0;
    margin-bottom: 10px;
}

.oz-newsletter-input {
    flex: 1;
    background: #ffffff !important;
    border: none !important;
    border-radius: 4px 0 0 4px !important;
    padding: 11px 16px !important;
    font-size: 13px !important;
    color: #1a1a2e !important;
    outline: none;
}

.oz-newsletter-input::placeholder {
    color: #9aabb8;
}

.oz-newsletter-input:focus {
    outline: none;
    box-shadow: none;
}

.oz-newsletter-btn {
    background: #00804a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 0 4px 4px 0 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    padding: 11px 24px !important;
    cursor: pointer;
    white-space: nowrap;
    transition: background .15s;
    flex-shrink: 0;
    letter-spacing: .3px;
}

.oz-newsletter-btn:hover {
    background: #005c34 !important;
}

.oz-newsletter-btn span span {
    color: #ffffff !important;
}

/* Checkbox RODO */
.oz-newsletter-rodo {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    cursor: pointer;
}

.oz-newsletter-check {
    margin-top: 2px;
    flex-shrink: 0;
    width: 14px;
    height: 14px;
    accent-color: #00804a;
    cursor: pointer;
}

.oz-newsletter-rodo span {
    font-size: 11px;
    color: rgba(255,255,255,.55);
    line-height: 1.5;
}

.oz-newsletter-rodo a {
    color: rgba(255,255,255,.75) !important;
    text-decoration: underline;
}

.oz-newsletter-rodo a:hover {
    color: #ffffff !important;
}

@media only screen and (max-width: 770px) {
    .oz-newsletter-wrap {
        padding: 16px;
    }
    .oz-newsletter {
        flex-wrap: wrap;
        padding: 20px;
        gap: 16px;
        flex-direction: column;
    }
    .oz-newsletter-icon {
        display: none;
    }
    .oz-newsletter-text {
        min-width: auto;
        max-width: 100%;
    }
    .oz-newsletter-form {
        width: 100%;
    }
}

/* ============================================ *
 * PRODUKTY — lista/grid (homepage widget)
 * ============================================ */
.oz-section .products-grid li {
    border: 1px solid #dce6f0;
    border-radius: 8px;
    overflow: hidden;
    transition: box-shadow .15s;
}

.oz-section .products-grid li:hover {
    box-shadow: 0 4px 16px rgba(24,86,159,.1);
}

.oz-section .products-grid .product-name a {
    color: #0d1b2a;
    font-weight: 600;
    font-size: 13px;
}

.oz-section .products-grid .price {
    color: #18569f;
    font-weight: 700;
}

.oz-section .products-grid .btn-cart {
    background: #00804a;
    border-color: #005c34;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .3px;
}

.oz-section .products-grid .btn-cart:hover {
    background: #005c34;
}

/* Wyśrodkowanie sekcji CMS na stronie głównej */
body.cms-home .main-container {
    padding-top: 0;
}

body.cms-home .col-main {
    float: none;
    width: 100%;
    padding: 0;
}

/* ============================================ *
 * POPRAWKA padding strony głównej (zgłoszona)
 * ============================================ */
body.cms-home .main-container {
    padding: 0 0 30px;
    max-width: 1200px;
}

/* ============================================ *
 * SEKCJA "POPULARNE LICENCJE" — karty produktów
 * Używamy natywnego mechanizmu RWD (position:absolute bottom:0)
 * zamiast walczyć z flexem
 * ============================================ */

/* Nadpisanie madisonisland.css który chowa .actions na homepage */
.cms-index-index .oz-products-grid .actions,
.cms-index-noroute .oz-products-grid .actions {
    display: block !important;
}

/* Grid produktów — 5 kolumn równej szerokości, nadpisujemy float RWD */
.oz-products-grid {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 12px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
}

.oz-products-grid::after {
    display: none !important;
}

/* Karta — position:relative potrzebne dla absolute .actions */
.oz-product-card {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #ffffff;
    border: 1px solid #dce6f0 !important;
    border-radius: 8px !important;
    overflow: hidden;
    position: relative !important;
    text-align: center !important;
    transition: box-shadow .15s;
    display: block !important;
}

.oz-product-card:hover {
    box-shadow: 0 4px 16px rgba(24,86,159,.1);
    border-color: #b8cfea !important;
}

/* Zdjęcie — pełna szerokość jak w RWD */
.oz-product-card .product-image,
.oz-product-image {
    width: 100% !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    background: #f4f7fb;
    display: block;
}

.oz-product-card .product-image img {
    width: 100% !important;
    height: auto;
    display: block;
}

/* product-info — MUSI mieć padding-bottom na przycisk+cenę
 * Używamy wysokiej specyficzności żeby pokonać .std li .product-info override */
.std .oz-products-grid li.oz-product-card .product-info.oz-product-info,
.oz-products-grid li.oz-product-card .product-info.oz-product-info,
.oz-product-info {
    padding: 10px 12px 90px !important;
    min-height: 80px !important;
    position: relative !important;
}

/* Nazwa produktu — stała wysokość 2 linii, wyśrodkowana */
.oz-product-name {
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    height: calc(12px * 1.4 * 2) !important; /* dokładnie 2 linie */
    overflow: hidden;
    margin: 0 !important;
    text-align: center !important;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.oz-product-name a {
    color: #0d1b2a !important;
    text-decoration: none;
}

.oz-product-name a:hover {
    color: #18569f !important;
}

/* Spacer ukryty — nie potrzebny przy absolute positioning */
.oz-product-spacer {
    display: none;
}

/* Cena — inline nad przyciskiem */
.oz-product-price {
    margin: 0 0 7px;
    text-align: center;
}

.oz-product-price .price-box {
    margin: 0 !important;
    font-size: 13px;
}

.oz-product-price .regular-price .price,
.oz-product-price .special-price .price,
.oz-product-price .price {
    font-size: 16px !important;
    font-weight: 800 !important;
    color: #18569f !important;
}

/* .actions — absolute bottom, wyśrodkowane */
.oz-product-actions {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    padding: 8px 12px 10px !important;
    background: #fff;
    border-top: 1px solid #f0f4f9;
    text-align: center;
}

/* Przycisk KUP LICENCJĘ */
.oz-btn-buy {
    width: 100% !important;
    background: #00804a !important;
    border: none !important;
    border-radius: 4px !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 9px 8px !important;
    text-transform: uppercase;
    letter-spacing: .4px;
    cursor: pointer;
    white-space: nowrap;
    display: block !important;
    text-align: center;
    line-height: normal !important;
}

.oz-btn-buy:hover {
    background: #005c34 !important;
    cursor: pointer;
}

.oz-btn-buy span,
.oz-btn-buy span span {
    display: block !important;
    color: #ffffff !important;
    line-height: normal !important;
    white-space: normal;
}

/* Linki wishlist/compare */
.oz-product-actions .add-to-links {
    display: flex !important;
    gap: 4px;
    justify-content: center;
    margin: 5px 0 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.oz-product-actions .add-to-links li {
    margin: 0 !important;
}

.oz-product-actions .add-to-links a {
    color: #5a6a7a !important;
    font-size: 10px;
}

.oz-product-actions .add-to-links a:hover {
    color: #18569f !important;
}

/* Responsive */
@media only screen and (max-width: 770px) {
    .oz-products-grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

@media only screen and (max-width: 479px) {
    .oz-products-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* ============================================ *
 * POPULARNE LICENCJE — drobne poprawki
 * ============================================ */

/* Ukryj linki "Dodaj do schowka" i "Porównaj" */
.oz-product-actions .add-to-links {
    display: none !important;
}

/* Obrazek — wyśrodkowany, nie rozciągnięty */
.oz-product-image {
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: #f4f7fb;
    min-height: 160px;
}

.oz-product-image img {
    width: auto !important;
    max-width: 100% !important;
    max-height: 180px;
    display: block;
    object-fit: contain;
}

/* ============================================ *
 * STOPKA — oz-footer (full-width niebieskie tło)
 * ============================================ */

/* Usuwamy domyślny wrapper stopki RWD */
.footer-container {
    background: none !important;
    padding: 0 !important;
    max-width: none !important;
    margin: 0 !important;
}

.footer-container .footer {
    background: none !important;
    padding: 0 !important;
}

/* Ukrywamy newsletter ze stopki */
.footer-container .block-subscribe {
    display: none !important;
}

/* Główna część stopki */
.oz-footer {
    background: #0f3d74;
    margin: 0;
    padding: 0;
}

.oz-footer-main {
    background: #0f3d74;
    padding: 36px 0 28px;
    border-bottom: 1px solid rgba(255,255,255,.1);
}

.oz-footer-inner {
    max-width: 1260px;
    margin: 0 auto;
    padding: 0 30px;
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr 1.4fr;
    gap: 32px;
}

/* Nagłówki kolumn */
.oz-footer-heading {
    font-size: 11px;
    font-weight: 700;
    color: rgba(255,255,255,.45);
    letter-spacing: 1px;
    text-transform: uppercase;
    margin: 0 0 14px;
    padding: 0;
    border: none;
}

/* Listy linków */
.oz-footer-links {
    list-style: none;
    margin: 0;
    padding: 0;
}

.oz-footer-links li {
    margin: 0 0 7px;
    list-style: none;
}

.oz-footer-links a,
.oz-footer-col a {
    color: rgba(255,255,255,.6) !important;
    font-size: 12px;
    text-decoration: none;
    line-height: 1.5;
}

.oz-footer-links a:hover,
.oz-footer-col a:hover {
    color: #ffffff !important;
    text-decoration: none;
}

/* Nadpisanie domyślnych styli linków w stopce */
.oz-footer .block-title,
.oz-footer .links .block-title {
    display: none;
}

.oz-footer .links ul,
.oz-footer .tlabs-cmsmenu-footer-links {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.oz-footer .links ul li,
.oz-footer .tlabs-cmsmenu-footer-links li {
    margin: 0 0 7px !important;
    list-style: none !important;
}

/* Kolumna brand */
.oz-footer-col--brand {
    padding-right: 16px;
}

.oz-footer-logo {
    display: inline-block;
    margin-bottom: 12px;
}

.oz-footer-logo-img {
    max-height: 40px;
    width: auto;
    filter: brightness(0) invert(1);
    opacity: .9;
}

.oz-footer-brand-desc {
    font-size: 12px;
    color: rgba(255,255,255,.45);
    line-height: 1.7;
    margin: 0;
}

/* Kontakt */
.oz-footer-contact {
    margin-top: 10px;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.oz-footer-contact-item {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 12px;
    color: rgba(255,255,255,.6);
}

.oz-footer-contact-item svg {
    flex-shrink: 0;
    color: rgba(255,255,255,.45);
}

/* Pasek dolny */
.oz-footer-bottom {
    background: #0a2d5a;
    padding: 12px 0;
}

.oz-footer-bottom-inner {
    max-width: 1260px;
    margin: 0 auto;
    padding: 0 30px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.oz-footer-copy {
    font-size: 11px;
    color: rgba(255,255,255,.35);
    font-style: normal;
}

.oz-footer-payments {
    display: flex;
    gap: 6px;
    align-items: center;
}

.oz-pay-badge {
    background: rgba(255,255,255,.1);
    border-radius: 3px;
    padding: 3px 8px;
    font-size: 10px;
    font-weight: 600;
    color: rgba(255,255,255,.5);
    letter-spacing: .3px;
}

/* Ukrywamy niechciane bloki ze stopki RWD */
.footer-container .tlabs-cmsmenu-footer,
.footer-container .links:not(.oz-footer .links),
.footer-container .links.social-media,
.footer-container address.copyright {
    display: none !important;
}

@media only screen and (max-width: 770px) {
    .oz-footer-inner {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
    }
    .oz-footer-col--brand {
        grid-column: 1 / -1;
        padding-right: 0;
    }
    .oz-footer-bottom-inner {
        flex-direction: column;
        text-align: center;
        gap: 8px;
    }
}

@media only screen and (max-width: 479px) {
    .oz-footer-inner {
        grid-template-columns: 1fr;
    }
}

/* ============================================ *
 * NAWIGACJA full-width — poprawka
 * oz-nav-bar jest teraz POZA <header> więc
 * nie dziedziczy max-width headera
 * ============================================ */
.oz-header {
    /* Usuwamy overflow:hidden jeśli był */
    overflow: visible;
}

/* oz-nav-bar na poziomie .page — pełna szerokość */
.oz-nav-bar {
    background-color: #18569f;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    width: 100%;
}

@media only screen and (max-width: 770px) {
    .oz-nav-bar {
        background-color: transparent;
    }
}

/* Social linki w stopce (blok CMS) */
.oz-footer-social {
    display: flex;
    gap: 8px;
    margin-top: 16px;
}

.oz-footer-social-link {
    width: 30px;
    height: 30px;
    background: rgba(255,255,255,.1);
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
    transition: background .15s;
}

.oz-footer-social-link:hover {
    background: rgba(255,255,255,.2) !important;
}

.oz-footer-social-link svg {
    display: block;
}

/* ============================================ *
 * STRONA KATEGORII — przepisane z HTML source
 * ============================================ */

/* Nagłówek kategorii */
.catalog-category-view .page-title.category-title {
    border-bottom: 2px solid #18569f;
    margin-bottom: 16px;
    padding-bottom: 10px;
}

.catalog-category-view .page-title.category-title h1 {
    font-size: 24px;
    font-weight: 800;
    color: #18569f;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    margin: 0;
    padding-left: 14px;
    border-left: 4px solid #00804a;
}

/* Opis kategorii */
.catalog-category-view .category-description {
    font-size: 13px;
    color: #5a6a7a;
    line-height: 1.65;
    margin-bottom: 16px;
}

.catalog-category-view .category-description strong {
    color: #18569f;
}

/* ============================================ *
 * SIDEBAR — block-layered-nav
 * Selektory z HTML: .col-left .block-layered-nav
 * ============================================ */
.col-left .block-layered-nav {
    border: 1px solid #dce6f0;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 14px;
}

.col-left .block-layered-nav .block-title {
    background: #18569f;
    padding: 10px 14px;
    margin: 0;
    border-bottom: none;
}

.col-left .block-layered-nav .block-title strong {
    color: #ffffff !important;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.col-left .block-layered-nav .block-title strong span {
    color: #ffffff !important;
}

/* Filtr subtitle (mobile toggle) */
.col-left .block-layered-nav .block-subtitle--filter {
    background: #f4f7fb;
    color: #5a6a7a;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .8px;
    text-transform: uppercase;
    padding: 8px 14px;
    margin: 0;
}

/* dt — nagłówki sekcji filtrów (Cena, Manufacturer) */
.col-left .block-layered-nav #narrow-by-list dt {
    background: #f4f7fb;
    color: #5a6a7a;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .8px;
    text-transform: uppercase;
    padding: 8px 14px;
    margin: 0;
    border-top: 1px solid #dce6f0;
    border-left: none !important;
    border-right: none !important;
}

.col-left .block-layered-nav #narrow-by-list dt:first-child {
    border-top: none;
}

/* dd — zawartość filtrów */
.col-left .block-layered-nav #narrow-by-list dd {
    margin: 0;
    padding: 4px 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 0;
}

.col-left .block-layered-nav #narrow-by-list dd ol {
    margin: 0;
    padding: 0;
    list-style: none;
}

.col-left .block-layered-nav #narrow-by-list dd ol li {
    padding: 0;
    margin: 0;
}

.col-left .block-layered-nav #narrow-by-list dd ol li a {
    display: block;
    padding: 5px 14px;
    font-size: 12px;
    color: #18569f !important;
    text-decoration: none;
    line-height: 1.5;
}

.col-left .block-layered-nav #narrow-by-list dd ol li a:hover {
    background: #f0f6ff;
    color: #0f3d74 !important;
}

.col-left .block-layered-nav #narrow-by-list dd ol li .count {
    color: #9aabb8;
    font-size: 11px;
}

/* Currently active filters */
.col-left .block-layered-nav .currently {
    padding: 8px 14px;
    border-top: 1px solid #dce6f0;
}

.col-left .block-layered-nav .currently .block-subtitle {
    font-size: 11px;
    font-weight: 700;
    color: #5a6a7a;
    text-transform: uppercase;
    letter-spacing: .8px;
    margin-bottom: 6px;
}

.col-left .block-layered-nav .currently ol {
    list-style: none;
    padding: 0;
    margin: 0;
}

.col-left .block-layered-nav .currently ol li {
    font-size: 12px;
    color: #5a6a7a;
    padding: 2px 0;
}

.col-left .block-layered-nav .currently .btn-remove:after {
    color: #18569f;
}

/* ============================================ *
 * TOOLBAR — nowy layout wg projektu
 * oz-toolbar--top: ikony | licznik | [prawa: sort | limit]
 * oz-toolbar--bottom: tylko pager
 * ============================================ */

.oz-toolbar {
    background: #f4f7fb;
    border: 1px solid #dce6f0;
    border-radius: 6px;
    padding: 8px 14px;
    margin-bottom: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: nowrap;
}

/* Lewa strona: ikony + licznik */
.oz-toolbar-left {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
}

/* Prawa strona: sort + limit */
.oz-toolbar-right {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-left: auto;
    flex-shrink: 0;
}

/* Ikony widoku — zachowujemy .sorter > .view-mode strukturę dla sprite */
.oz-sorter-view {
    float: none !important;
    display: flex;
    align-items: center;
}

/* Ukryj etykietę "Zobacz jako" */
.oz-sorter-view .view-mode label {
    display: none !important;
}

/* view-mode jako flex */
.oz-sorter-view .view-mode {
    display: flex;
    align-items: center;
    gap: 4px;
    margin: 0;
}

/* Ikony widoku — sprite RWD, nie nadpisujemy background */
.oz-view-mode {
    display: flex;
    align-items: center;
    gap: 4px;
}

/* Ikony widoku — zachowujemy sprite, tylko border-radius */
.oz-view-mode .grid,
.oz-view-mode .list {
    border-radius: 4px;
    display: block;
    /* width/height/background-position z styles.css */
}

/* Licznik wyników */
.oz-amount {
    font-size: 12px;
    color: #5a6a7a;
    margin: 0;
    white-space: nowrap;
}

/* Sortowanie */
.oz-sort-by {
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.oz-sort-by label {
    font-size: 12px;
    color: #5a6a7a;
    white-space: nowrap;
}

.oz-sort-by select {
    border: 1px solid #dce6f0;
    border-radius: 4px;
    font-size: 12px;
    padding: 4px 6px;
    color: #1a1a2e;
    height: 28px;
    background: #fff;
}

.oz-sort-by select:focus {
    border-color: #18569f;
    outline: none;
}

/* Strzałka kierunku sortowania — sprite RWD, nie nadpisujemy */
.oz-sort-by .sort-by-switcher {
    border-radius: 4px;
    vertical-align: middle;
    /* width/height/background-position z styles.css */
}

/* Pokaż (limiter) */
.oz-limiter {
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.oz-limiter label {
    font-size: 12px;
    color: #5a6a7a;
}

.oz-limiter select {
    border: 1px solid #dce6f0;
    border-radius: 4px;
    font-size: 12px;
    padding: 4px 6px;
    color: #1a1a2e;
    height: 28px;
    background: #fff;
}

.oz-limiter select:focus {
    border-color: #18569f;
    outline: none;
}

/* Pager ukryty tylko w górnym toolbarze (bezpośredni child .category-products) */
.category-products > .toolbar .oz-pager-wrap {
    display: none !important;
}

/* ============================================ *
 * DOLNY TOOLBAR — tylko pager wyśrodkowany
 * ============================================ */
.toolbar-bottom .oz-toolbar {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 12px 0 0 !important;
    margin: 0 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center;
}

.toolbar-bottom .oz-toolbar-left,
.toolbar-bottom .oz-toolbar-right {
    display: none !important;
}

.toolbar-bottom .oz-pager-wrap {
    display: flex !important;
    justify-content: center;
    flex: 0 0 auto;
}

.toolbar-bottom .oz-pager-wrap .pages {
    display: block;
}

.toolbar-bottom .oz-pager-wrap .pages ol {
    display: flex;
    align-items: center;
    gap: 4px;
    list-style: none;
    margin: 0;
    padding: 0;
    float: none;
}

.toolbar-bottom .oz-pager-wrap .pages ol li {
    margin: 0;
    float: none;
}

.toolbar-bottom .oz-pager-wrap .pages strong {
    display: none;
}

.toolbar-bottom .oz-pager-wrap .pages ol li a,
.toolbar-bottom .oz-pager-wrap .pages ol li.current {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 8px;
    border: 1px solid #dce6f0;
    border-radius: 4px;
    font-size: 13px;
    color: #18569f;
    background: #fff;
    text-decoration: none;
    font-weight: 600;
    line-height: 1;
}

.toolbar-bottom .oz-pager-wrap .pages ol li a:hover {
    background: #18569f;
    border-color: #18569f;
    color: #fff;
}

.toolbar-bottom .oz-pager-wrap .pages ol li.current {
    background: #18569f;
    border-color: #18569f;
    color: #fff;
}

.toolbar-bottom .oz-pager-wrap .pages ol li a.next,
.toolbar-bottom .oz-pager-wrap .pages ol li a.previous,
.toolbar-bottom .oz-pager-wrap .pages ol li a.i-next,
.toolbar-bottom .oz-pager-wrap .pages ol li a.i-previous {
    font-size: 12px !important;
    font: normal 12px/36px "Raleway", sans-serif !important;
    text-shadow: none !important;
    color: #18569f !important;
    padding: 0 14px !important;
    min-width: 0 !important;
    width: auto !important;
    white-space: nowrap !important;
    display: inline-flex !important;
    align-items: center;
    position: relative;
}

/* Usuń strzałki CSS z RWD */
.toolbar-bottom .oz-pager-wrap .pages ol li a.next::before,
.toolbar-bottom .oz-pager-wrap .pages ol li a.previous::before,
.toolbar-bottom .oz-pager-wrap .pages ol li a.i-next::before,
.toolbar-bottom .oz-pager-wrap .pages ol li a.i-previous::before {
    display: none !important;
    content: none !important;
}

.toolbar-bottom .oz-pager-wrap .pages ol li a.next:hover,
.toolbar-bottom .oz-pager-wrap .pages ol li a.previous:hover {
    background: #18569f !important;
    border-color: #18569f !important;
    color: #fff !important;
}

.toolbar-bottom .oz-pager-wrap .pages ol li a.next:hover::before,
.toolbar-bottom .oz-pager-wrap .pages ol li a.previous:hover::before {
    display: none !important;
    content: none !important;
}

.oz-pager-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Pager — strony */
.oz-pager-wrap .pages ol,
.oz-toolbar--bottom .pages ol {
    display: flex;
    align-items: center;
    gap: 3px;
    list-style: none;
    margin: 0;
    padding: 0;
    float: none;
}

.oz-pager-wrap .pages ol li,
.oz-toolbar--bottom .pages ol li {
    margin: 0;
    float: none;
}

.oz-pager-wrap .pages strong,
.oz-toolbar--bottom .pages strong {
    font-size: 0;
}

.oz-pager-wrap .pages ol li a,
.oz-pager-wrap .pages ol li.current,
.oz-toolbar--bottom .pages ol li a,
.oz-toolbar--bottom .pages ol li.current {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    height: 32px;
    padding: 0 8px;
    border: 1px solid #dce6f0;
    border-radius: 4px;
    font-size: 13px;
    color: #18569f;
    background: #fff;
    text-decoration: none;
    font-weight: 600;
    line-height: 1;
}

.oz-pager-wrap .pages ol li a:hover,
.oz-toolbar--bottom .pages ol li a:hover {
    background: #18569f;
    border-color: #18569f;
    color: #fff;
}

.oz-pager-wrap .pages ol li.current,
.oz-toolbar--bottom .pages ol li.current {
    background: #18569f;
    border-color: #18569f;
    color: #fff;
}

.oz-pager-wrap .pages ol li a.next,
.oz-pager-wrap .pages ol li a.previous,
.oz-toolbar--bottom .pages ol li a.next,
.oz-toolbar--bottom .pages ol li a.previous {
    font-size: 12px;
    font-weight: 600;
    padding: 0 12px;
}

/* Responsive */
@media only screen and (max-width: 770px) {
    .oz-toolbar {
        flex-wrap: wrap;
    }
    .oz-toolbar-right {
        flex-wrap: wrap;
        gap: 8px;
    }
}


/* ============================================ *
 * GRID PRODUKTÓW
 * Klasa z HTML: ul.products-grid.products-grid--max-4-col
 * ============================================ */

/* Resetujemy RWD float-based grid całkowicie */
.catalog-category-view .category-products .products-grid,
.category-products ul.products-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 16px !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    width: auto !important;
}

.catalog-category-view .category-products .products-grid::after,
.category-products ul.products-grid::after {
    display: none !important;
    content: none !important;
}

/* Karta — li.item */
.catalog-category-view .category-products .products-grid li.item,
.category-products ul.products-grid li.item {
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #fff;
    border: 1px solid #e8eef5 !important;
    border-radius: 8px;
    overflow: hidden;
    position: relative;
    transition: box-shadow .15s, border-color .15s;
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
    text-align: center;
    display: block !important;
}

.catalog-category-view .category-products .products-grid li.item:hover,
.category-products ul.products-grid li.item:hover {
    box-shadow: 0 6px 20px rgba(24,86,159,.12);
    border-color: #c8dcf5 !important;
}

/* Zdjęcie produktu — a.product-image */
.catalog-category-view .category-products .products-grid li.item a.product-image,
.category-products ul.products-grid li.item a.product-image {
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: #fff;
    min-height: 160px;
    padding: 16px;
    border-bottom: 1px solid #f0f4f9;
    margin: 0 !important;
    float: none !important;
}

.catalog-category-view .category-products .products-grid li.item a.product-image img,
.category-products ul.products-grid li.item a.product-image img {
    width: auto !important;
    max-width: 100% !important;
    max-height: 150px !important;
    object-fit: contain;
    display: block;
    margin: 0 auto;
}

/* product-info */
.catalog-category-view .category-products .products-grid li.item .product-info,
.category-products ul.products-grid li.item .product-info {
    padding: 10px 14px 90px !important;
    min-height: 80px !important;
    position: relative !important;
    text-align: center;
}

/* Nazwa produktu */
.catalog-category-view .category-products .products-grid li.item .product-name,
.category-products ul.products-grid li.item .product-name {
    font-size: 13px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    margin: 0 0 4px !important;
    min-height: calc(13px * 1.4 * 2);
    max-height: calc(13px * 1.4 * 2);
    overflow: hidden;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    text-align: center;
}

.catalog-category-view .category-products .products-grid li.item .product-name a,
.category-products ul.products-grid li.item .product-name a {
    color: #18569f !important;
    text-decoration: none;
}

.catalog-category-view .category-products .products-grid li.item .product-name a:hover,
.category-products ul.products-grid li.item .product-name a:hover {
    color: #0f3d74 !important;
    text-decoration: underline;
}

/* Cena */
.catalog-category-view .category-products .products-grid li.item .price-box,
.category-products ul.products-grid li.item .price-box {
    margin: 6px 0 0 !important;
    text-align: center;
}

.catalog-category-view .category-products .products-grid li.item .price-box .price,
.category-products ul.products-grid li.item .price-box .price {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #18569f !important;
}

/* Akcje — absolute bottom */
.catalog-category-view .category-products .products-grid li.item .actions,
.category-products ul.products-grid li.item .actions {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    padding: 10px 14px 12px !important;
    background: #fff;
    border-top: 1px solid #f0f4f9;
    display: block !important;
}

/* Przycisk Dodaj do koszyka */
.catalog-category-view .category-products .products-grid li.item .btn-cart,
.category-products ul.products-grid li.item .btn-cart {
    width: 100% !important;
    background: #00804a !important;
    border: none !important;
    border-radius: 6px !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 10px 8px !important;
    text-transform: uppercase;
    letter-spacing: .5px;
    cursor: pointer;
    display: block !important;
    text-align: center;
    line-height: 1.3;
    transition: background .15s;
}

.catalog-category-view .category-products .products-grid li.item .btn-cart:hover,
.category-products ul.products-grid li.item .btn-cart:hover {
    background: #005c34 !important;
}

.catalog-category-view .category-products .products-grid li.item .btn-cart span,
.catalog-category-view .category-products .products-grid li.item .btn-cart span span,
.category-products ul.products-grid li.item .btn-cart span,
.category-products ul.products-grid li.item .btn-cart span span {
    color: #fff !important;
    display: block;
}

/* View Details button */
.catalog-category-view .category-products .products-grid li.item .actions .button,
.category-products ul.products-grid li.item .actions .button {
    width: 100% !important;
    background: #18569f !important;
    border: none !important;
    border-radius: 6px !important;
    color: #fff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 10px 8px !important;
    text-transform: uppercase;
    display: block !important;
    text-align: center;
}

/* Ukryj wishlist/compare */
.catalog-category-view .category-products .products-grid li.item .add-to-links,
.category-products ul.products-grid li.item .add-to-links {
    display: none !important;
}

/* ============================================ *
 * WIDOK LISTOWY — products-list
 * ============================================ */
.catalog-category-view .category-products .products-list,
.category-products ol.products-list {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.catalog-category-view .category-products .products-list li.item,
.category-products ol.products-list li.item {
    display: flex !important;
    gap: 20px;
    align-items: flex-start;
    background: #fff;
    border: 1px solid #e8eef5 !important;
    border-radius: 8px;
    padding: 16px !important;
    margin: 0 0 12px !important;
    transition: box-shadow .15s;
    box-shadow: 0 2px 8px rgba(0,0,0,.06);
    float: none !important;
    width: auto !important;
    overflow: visible !important;
}

.catalog-category-view .category-products .products-list li.item:hover,
.category-products ol.products-list li.item:hover {
    box-shadow: 0 6px 20px rgba(24,86,159,.12);
    border-color: #c8dcf5 !important;
}

.catalog-category-view .category-products .products-list li.item a.product-image,
.category-products ol.products-list li.item a.product-image {
    flex-shrink: 0;
    width: 160px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    background: #f4f7fb;
    border-radius: 6px;
    min-height: 130px;
    float: none !important;
    margin: 0 !important;
    padding: 10px;
    overflow: hidden;
}

.catalog-category-view .category-products .products-list li.item a.product-image img,
.category-products ol.products-list li.item a.product-image img {
    width: auto !important;
    max-width: 140px !important;
    max-height: 130px !important;
    object-fit: contain;
    display: block;
}

.catalog-category-view .category-products .products-list li.item .product-shop,
.category-products ol.products-list li.item .product-shop {
    flex: 1;
    min-width: 0;
    margin: 0 !important;
    float: none !important;
    width: auto !important;
}

@media only screen and (min-width: 771px) {
    .catalog-category-view .category-products .products-list .product-shop .product-primary,
    .catalog-category-view .category-products .products-list .product-shop .desc.std {
        width: 60%;
    }

    .catalog-category-view .category-products .products-list .product-shop .product-secondary {
        width: 40%;
    }
}

.catalog-category-view .category-products .products-list li.item .product-name a,
.category-products ol.products-list li.item .product-name a {
    color: #18569f !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    text-decoration: none;
    line-height: 1.35;
}

.catalog-category-view .category-products .products-list li.item .product-name a:hover,
.category-products ol.products-list li.item .product-name a:hover {
    color: #0f3d74 !important;
    text-decoration: underline;
}

.catalog-category-view .category-products .products-list li.item .price-box .price,
.category-products ol.products-list li.item .price-box .price {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #18569f !important;
}

.catalog-category-view .category-products .products-list li.item .btn-cart,
.category-products ol.products-list li.item .btn-cart {
    background: #00804a !important;
    border: none !important;
    border-radius: 4px !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 9px 20px !important;
    text-transform: uppercase;
    cursor: pointer;
    display: inline-block !important;
    transition: background .15s;
}

.catalog-category-view .category-products .products-list li.item .btn-cart:hover,
.category-products ol.products-list li.item .btn-cart:hover {
    background: #005c34 !important;
}

.catalog-category-view .category-products .products-list li.item .btn-cart span,
.catalog-category-view .category-products .products-list li.item .btn-cart span span,
.category-products ol.products-list li.item .btn-cart span,
.category-products ol.products-list li.item .btn-cart span span {
    color: #fff !important;
}

.catalog-category-view .category-products .products-list li.item .add-to-links,
.category-products ol.products-list li.item .add-to-links {
    display: inline-flex !important;
    gap: 8px;
    margin-top: 6px;
    list-style: none;
    padding: 0;
}

.catalog-category-view .category-products .products-list li.item .add-to-links a,
.category-products ol.products-list li.item .add-to-links a {
    font-size: 11px;
    color: #5a6a7a !important;
    padding: 0;
}

.catalog-category-view .category-products .products-list li.item .add-to-links a:hover,
.category-products ol.products-list li.item .add-to-links a:hover {
    color: #18569f !important;
}

.catalog-category-view .category-products .products-list li.item .desc,
.category-products ol.products-list li.item .desc {
    font-size: 12px;
    color: #5a6a7a;
    line-height: 1.6;
    margin: 6px 0 10px;
}

/* ============================================ *
 * RESPONSIVE
 * ============================================ */
@media only screen and (max-width: 960px) {
    .catalog-category-view .category-products .products-grid,
    .category-products ul.products-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media only screen and (max-width: 770px) {
    .catalog-category-view .category-products .products-grid,
    .category-products ul.products-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .catalog-category-view .category-products .products-list li.item,
    .category-products ol.products-list li.item {
        flex-wrap: wrap;
    }
    .catalog-category-view .category-products .products-list li.item a.product-image,
    .category-products ol.products-list li.item a.product-image {
        width: 100%;
    }
    .category-products .toolbar .pager {
        float: none;
        margin-top: 8px;
    }
}

@media only screen and (max-width: 479px) {
    .catalog-category-view .category-products .products-grid,
    .category-products ul.products-grid {
        grid-template-columns: 1fr !important;
    }
}

/* ============================================ *

/* ============================================ *

/* ============================================ *
 * KOSZYK — oz-cart (dwukolumnowy layout)
 * ============================================ */

.checkout-cart-index .breadcrumbs {
    display: block !important;
}

/* Layout dwukolumnowy */
.oz-cart-layout {
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

.oz-cart-main {
    flex: 1;
    min-width: 0;
}

.oz-cart-sidebar {
    flex: 0 0 320px;
    width: 320px;
}

/* ---- NAGŁÓWEK KOSZYKA ---- */
.oz-cart-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
    padding-bottom: 12px;
    border-bottom: 2px solid #18569f;
}

.oz-cart-title-wrap {}

.oz-cart-title {
    font-size: 24px;
    font-weight: 800;
    color: #18569f;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    margin: 0 0 2px;
    border-left: 4px solid #00804a;
    padding-left: 12px;
}

.oz-cart-count {
    font-size: 12px;
    color: #5a6a7a;
    padding-left: 16px;
}

.oz-cart-continue {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 13px;
    color: #18569f !important;
    text-decoration: none;
    font-weight: 600;
}

.oz-cart-continue:hover {
    color: #0f3d74 !important;
}

/* ---- TABELA PRODUKTÓW ---- */
.oz-cart-table-wrap {
    border: 1px solid #e8eef5;
    border-radius: 8px;
    overflow: hidden;
    margin-bottom: 16px;
}

.oz-cart-table {
    width: 100%;
    border-collapse: collapse;
}

.oz-cart-table thead tr th {
    background: #f4f7fb;
    color: #5a6a7a;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .5px;
    padding: 10px 12px;
    border-bottom: 1px solid #e8eef5;
    white-space: nowrap;
    text-align: left;
}

.oz-col-price,
.oz-col-qty,
.oz-col-total { text-align: center; }
.oz-col-remove { width: 40px; }

.oz-cart-row {
    border-bottom: 1px solid #f0f4f9;
    background: #fff;
    transition: background .12s;
}

.oz-cart-row:last-child {
    border-bottom: none;
}

.oz-cart-row:hover {
    background: #fafcff;
}

.oz-cart-cell {
    padding: 14px 12px;
    vertical-align: middle;
}

/* Zdjęcie */
.oz-cart-cell--img {
    width: 90px;
}

.oz-cart-img {
    width: 70px;
    height: auto;
    border-radius: 6px;
    object-fit: contain;
    display: block;
    background: #f4f7fb;
}

/* Info o produkcie */
.oz-cart-product-name {
    font-size: 13px;
    font-weight: 600;
    margin-bottom: 4px;
}

.oz-cart-product-name a {
    color: #18569f !important;
    text-decoration: none;
}

.oz-cart-product-name a:hover {
    text-decoration: underline;
    color: #0f3d74 !important;
}

.oz-cart-options {
    margin: 4px 0;
}

.oz-cart-option {
    font-size: 11px;
    color: #5a6a7a;
    line-height: 1.5;
}

.oz-cart-option-label {
    font-weight: 600;
}

.oz-cart-availability {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-top: 6px;
}

.oz-cart-instock {
    font-size: 11px;
    color: #00804a;
    font-weight: 500;
}

.oz-cart-outstock {
    font-size: 11px;
    color: #dc2626;
}

/* Cena */
.oz-cart-cell--price {
    text-align: center;
    white-space: nowrap;
}

.oz-cart-price {
    font-size: 14px;
    font-weight: 700;
    color: #18569f;
}

/* Suma wiersza */
.oz-cart-cell--total {
    text-align: center;
    white-space: nowrap;
}

.oz-cart-total-price {
    font-size: 15px;
    font-weight: 800;
    color: #18569f;
}

/* Ilość z +/- */
.oz-cart-cell--qty {
    text-align: center;
}

.oz-qty-wrap {
    display: inline-flex;
    align-items: center;
    border: 1px solid #dce6f0;
    border-radius: 6px;
    overflow: hidden;
    background: #fff;
}

.oz-qty-btn {
    width: 32px;
    height: 36px;
    background: #f4f7fb;
    border: none;
    font-size: 16px;
    font-weight: 600;
    color: #18569f;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background .12s;
    line-height: 1;
}

.oz-qty-btn:hover {
    background: #e8f1fb;
    color: #0f3d74;
}

.oz-qty-input {
    width: 44px !important;
    height: 36px !important;
    text-align: center !important;
    border: none !important;
    border-left: 1px solid #dce6f0 !important;
    border-right: 1px solid #dce6f0 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #1a1a2e !important;
    background: #fff !important;
    outline: none;
}

/* Przycisk aktualizuj — mały, pod kontrolką qty */
.oz-qty-update-btn {
    display: block !important;
    margin: 4px auto 0 !important;
    background: #e8f1fb !important;
    color: #18569f !important;
    border: 1px solid #b8cfea !important;
    border-radius: 4px !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    padding: 3px 8px !important;
    cursor: pointer;
    line-height: 1.4;
}

.oz-qty-update-btn span,
.oz-qty-update-btn span span {
    color: inherit !important;
}

.oz-qty-update-btn:hover {
    background: #18569f !important;
    color: #fff !important;
}

/* ---- KUPON + BEZPIECZNE ZAKUPY — jedna linia ---- */
.oz-cart-coupon-wrap {
    margin-top: 12px;
    display: flex;
    align-items: stretch;
    gap: 12px;
}

.oz-cart-coupon-block {
    flex: 0 0 calc(50% - 6px);
    height: 90px;
    box-sizing: border-box;
}

.oz-cart-coupon-wrap .discount {
    background: #f4f7fb;
    border: 1px solid #dce6f0;
    border-radius: 8px;
    padding: 14px 16px;
    margin-bottom: 0;
    height: 100%;
    box-sizing: border-box;
}

.oz-cart-coupon-wrap .discount h2 {
    display: none !important;
}

/* Label widoczna */
.oz-cart-coupon-wrap .discount label[for="coupon_code"] {
    display: block !important;
    font-size: 12px;
    font-weight: 700;
    color: #5a6a7a;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin-bottom: 8px;
}

/* field-wrapper jako flex — input i button obok siebie */
#discount-coupon-form .field-wrapper {
    display: flex !important;
    align-items: stretch;
}

/* Nadpisanie margin z styles.css (margin: 4px 10px 0 0) */
#discount-coupon-form .input-text {
    margin: 0 !important;
    height: 34px !important;
    border: 1px solid #dce6f0 !important;
    border-right: none !important;
    border-radius: 4px 0 0 4px !important;
    padding: 0 12px !important;
    font-size: 13px !important;
    width: 200px !important;
    background: #fff !important;
    outline: none;
    flex: 1;
}

#discount-coupon-form .input-text:focus {
    border-color: #18569f !important;
}

/* button-wrapper jako flex */
#discount-coupon-form .button-wrapper {
    display: flex !important;
    align-items: stretch;
}

#discount-coupon-form .button-wrapper > button {
    float: none !important;
    background: #00804a !important;
    border: none !important;
    border-radius: 0 4px 4px 0 !important;
    color: #fff !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 0 16px !important;
    height: 34px !important;
    cursor: pointer;
    white-space: nowrap;
    text-transform: uppercase;
    letter-spacing: .3px;
    margin: 0 !important;
    line-height: 34px !important;
}

#discount-coupon-form .button-wrapper > button span,
#discount-coupon-form .button-wrapper > button span span {
    color: #fff !important;
}

#discount-coupon-form .button-wrapper > button:hover {
    background: #005c34 !important;
}

#discount-coupon-form .button-wrapper .button2 span {
    text-decoration: none;
}

/* ---- BEZPIECZNE ZAKUPY — osobny blok z tłem ---- */
.oz-cart-trust {
    flex: 0 0 calc(50% - 6px);
    height: 90px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 12px;
    background: #f4f7fb;
    border: 1px solid #dce6f0;
    border-radius: 8px;
    padding: 14px 16px;
}

.oz-cart-trust svg {
    flex-shrink: 0;
    margin-top: 2px;
}

.oz-cart-trust-text strong {
    display: block;
    font-size: 13px;
    font-weight: 700;
    color: #18569f;
    margin-bottom: 2px;
}

.oz-cart-trust-text span {
    display: block;
    font-size: 12px;
    color: #5a6a7a;
}

/* ---- USUŃ — sprite zachowany, wrapper dodaje tło ---- */
.oz-cart-cell--remove {
    text-align: center;
    width: 44px;
}

/* Wrapper nadaje czerwone tło, sprite siedzi wewnątrz */
.oz-cart-remove.btn-remove2 {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 34px !important;
    height: 34px !important;
    /* sprite background-position zostaje z styles.css */
    border-radius: 6px !important;
    border: none !important;
    vertical-align: middle;
    opacity: 1 !important;
    transition: background-color .15s;
    /* text-indent z styles.css ukrywa tekst "Usuń produkt" */
}

.oz-cart-remove.btn-remove2:hover {
    filter: invert(21%) sepia(100%) saturate(7414%) hue-rotate(359deg) brightness(94%) contrast(117%);
    opacity: 1 !important;
}

/* Przy hover sprite staje się biały — nie da się bez filtra CSS,
   więc na hover pokazujemy własny krzyżyk przez ::before */
.oz-cart-remove.btn-remove2::before {
    display: none;
}

.oz-cart-remove.btn-remove2::after {
    display: none !important;
}
.oz-cart-summary {
    background: #fff;
    border: 1px solid #e8eef5;
    border-radius: 8px;
    padding: 20px;
    position: sticky;
    top: 16px;
}

.oz-cart-summary-title {
    font-size: 16px;
    font-weight: 700;
    color: #1a1a2e;
    margin: 0 0 16px;
    padding-bottom: 12px;
    border-bottom: 1px solid #e8eef5;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

/* Totals */
.oz-cart-totals #shopping-cart-totals-table {
    width: 100%;
    border: none;
    margin-bottom: 16px;
}

.oz-cart-totals #shopping-cart-totals-table td {
    padding: 6px 0;
    font-size: 13px;
    color: #1a1a2e;
    border: none !important;
    background: none !important;
    text-align: right;
}

.oz-cart-totals #shopping-cart-totals-table td:first-child {
    text-align: left;
    color: #5a6a7a;
}

.oz-cart-totals #shopping-cart-totals-table tfoot tr td {
    padding-top: 12px;
    border-top: 2px solid #e8eef5 !important;
    font-size: 15px;
    font-weight: 800;
    color: #1a1a2e;
}

.oz-cart-totals #shopping-cart-totals-table tfoot tr td .price {
    font-size: 22px;
    font-weight: 800;
    color: #18569f;
}

/* Przycisk PRZEJDŹ DO KASY */
.oz-cart-checkout-btn .btn-proceed-checkout,
.oz-cart-checkout-btn .btn-checkout {
    display: block !important;
    width: 100% !important;
    background: #00804a !important;
    color: #fff !important;
    border: none !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    padding: 14px !important;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .5px;
    cursor: pointer;
    transition: background .15s;
    box-sizing: border-box;
}

.oz-cart-checkout-btn .btn-proceed-checkout:hover,
.oz-cart-checkout-btn .btn-checkout:hover {
    background: #005c34 !important;
}

.oz-cart-checkout-btn .btn-proceed-checkout span,
.oz-cart-checkout-btn .btn-proceed-checkout span span,
.oz-cart-checkout-btn .btn-checkout span,
.oz-cart-checkout-btn .btn-checkout span span {
    color: #fff !important;
}

/* Ukryj górny przycisk kasy (.checkout-types.top) */
.checkout-cart-index .page-title .checkout-types.top {
    display: none !important;
}

/* Ukryj kalkulator wysyłki */
.checkout-cart-index .shipping {
    display: none !important;
}

/* Ukryj btn-remove w product-cart-info (stary layout) */
.checkout-cart-index .product-cart-info > .btn-remove {
    display: none !important;
}

/* Ukryj SKU */
.checkout-cart-index .product-cart-sku {
    display: none !important;
}

/* Responsive */
@media only screen and (max-width: 960px) {
    .oz-cart-layout {
        flex-direction: column;
    }
    .oz-cart-sidebar {
        width: 100%;
        flex: none;
    }
}

@media only screen and (max-width: 600px) {
    .oz-cart-table thead {
        display: none;
    }
    .oz-cart-cell {
        display: block;
        padding: 6px 12px;
    }
    .oz-cart-cell::before {
        content: attr(data-rwd-label) ': ';
        font-weight: 700;
        color: #5a6a7a;
        font-size: 11px;
    }
    .oz-cart-cell--img::before { display: none; }
    .oz-cart-cell--remove::before { display: none; }
}

/* ============================================ *
 * ZAKŁADKI PRODUKTU (product-collateral tabs)
 * Styl wzorowany na screenie: poziomy pasek,
 * aktywna zakładka z zielonym podkreśleniem,
 * zawartość bez ramki bocznej.
 * ============================================ */

/* === DESKTOP (min-width: 771px) === */
@media only screen and (min-width: 771px) {

    /* Kontener zakładek - biały, border-bottom zamiast obramowania */
    .product-collateral .toggle-tabs {
        background-color: #ffffff;
        border: none;
        border-bottom: 2px solid #e0e0e0;
    }

    /* Pojedyncza zakładka */
    .product-collateral .toggle-tabs li {
        border-right: none;
        border-left: none;
    }

    /* Tekst zakładki */
    .product-collateral .toggle-tabs li > span {
        height: 44px;
        line-height: 44px;
        padding: 0 20px;
        font-size: 13px;
        font-weight: 600;
        text-transform: none;
        color: #555555;
        border-bottom: 3px solid transparent;
        bottom: -2px; /* wyrównanie z border-bottom kontenera */
        transition: color 0.15s, border-color 0.15s;
    }

    /* Hover na nieaktywnej zakładce */
    .product-collateral .toggle-tabs li:hover > span {
        color: #18569f;
        border-bottom-color: #b8cfea;
    }

    /* Aktywna zakładka */
    .product-collateral .toggle-tabs li.current {
        border-right: none;
        border-left: none;
    }

    .product-collateral .toggle-tabs li.current > span,
    .product-collateral .toggle-tabs li.current span {
        background-color: #ffffff;
        color: #1a1a2e;
        border-bottom: 3px solid #00804a;
        font-weight: 700;
    }

    /* Hover aktywnej zakładki - zachowaj zielone podkreślenie */
    .product-collateral .toggle-tabs li.current:hover > span {
        color: #1a1a2e;
        border-bottom-color: #00804a;
    }

    /* Panel zawartości - usuń ramkę boczną, zostaw dolny odstęp */
    .product-collateral > dl > dd {
        border: none;
        padding: 20px 4px;
        font-size: 14px;
        line-height: 1.7;
        color: #333333;
    }
}

/* === MOBILE (max-width: 770px) - styl akordeonu === */
@media only screen and (max-width: 770px) {

    /* Nagłówek sekcji - accordion */
    .product-collateral > dl > dt {
        background-color: #f4f8fc;
        border-color: #dce6f0;
        color: #18569f;
        font-weight: 600;
        font-size: 13px;
    }

    .product-collateral > dl > dt:hover {
        background-color: #e8f1fb;
        color: #0f3d74;
    }

    .product-collateral > dl > dt:after {
        /*border-top-color: #18569f;*/
    }

    .product-collateral > dl > dt:hover:after {
        /*border-top-color: #0f3d74;*/
    }

    /* Aktywny accordion */
    .product-collateral.accordion-open > dl > dt.current {
        background-color: #e8f1fb;
        border-color: #18569f;
        color: #0f3d74;
    }

    .product-collateral.accordion-open > dl > dt.current:after {
        border-top-color: #0f3d74;
    }

    .product-collateral > dl > dd {
        border-color: #dce6f0;
        padding: 14px 12px;
        font-size: 14px;
        line-height: 1.7;
        color: #333333;
    }
}


/* ============================================ *
 * STRONA RECENZJI — SYMULACJA col1-layout
 * Na stronie review-product-list ukrywamy pustą
 * prawą kolumnę i rozszerzamy col-main do 100%.
 * ============================================ */

body.review-product-list .col-right.sidebar {
    display: none !important;
}

body.review-product-list .col-main {
    float: none !important;
    width: 100% !important;
    padding: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

/* ============================================ *
 * FORMULARZ RECENZJI PRODUKTU
 * Layout: dwukolumnowy (formularz + widget trust)
 * Wrapper: .oz-review-form-wrap (dodany w list.phtml)
 * ============================================ */

/* Wrapper flex: formularz po lewej, trust po prawej */
.oz-review-form-wrap {
    display: flex;
    flex-direction: row;
    gap: 40px;
    align-items: flex-start;
    margin-top: 24px;
}

/* Reset szerokości fieldset z styles.css */
#customer-reviews .fieldset,
#customer-reviews .fieldset .form-list,
#customer-reviews .buttons-set {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
}

/* ---- Tytuł główny h2 "Napisz własną recenzję" ---- */
/* "Oceń ten produkt jako pierwszy" — duży ciemny nagłówek */
#customer-reviews .no-rating {
    margin: 0 0 20px;
}

#customer-reviews .no-rating a {
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    font-size: 26px;
    font-weight: 800;
    color: #1a1a2e;
    text-decoration: none;
    line-height: 1.2;
}

#customer-reviews .no-rating a:hover {
    color: #18569f;
}

/* "Napisz własną recenzję" — pogrubiony niebieski uppercase podtytuł */
.form-add h2 {
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    font-size: 12px;
    font-weight: 800;
    color: #18569f;
    margin: 0 0 10px;
    text-transform: uppercase;
    letter-spacing: 0.9px;
    line-height: 1.4;
}

/* ---- h3: "NAPISZ OPINIĘ O PRODUKCIE: NAZWA PRODUKTU" ---- */
#customer-reviews h3 {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.7px;
    text-transform: uppercase;
    color: #333333;
    border-bottom: none;
    border-left: 3px solid #18569f;
    margin: 0 0 24px;
    padding: 2px 0 2px 10px;
    line-height: 1.5;
}

/* Nazwa produktu inline — niebieski */
#customer-reviews h3 span {
    display: inline;
    color: #18569f;
    font-weight: 700;
}

/* ---- Fieldset — usuń domyślny padding z styles.css ---- */
#customer-reviews .fieldset {
    border-left: none;
    padding-left: 0;
    padding-top: 0;
    margin-bottom: 0;
}

/* ---- Labele pól formularza ---- */
#customer-reviews .fieldset .form-list label {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.6px;
    text-transform: uppercase;
    color: #555555;
    display: block;
    margin-bottom: 6px;
}

/* Gwiazdka wymagane — przed tekstem w HTML, daj kolor czerwony */
#customer-reviews .fieldset .form-list label em {
    color: #e03030;
    font-style: normal;
    margin-right: 2px;
}

/* ---- Textarea ---- */
#customer-reviews .fieldset .form-list textarea {
    width: 100%;
    max-width: 100%;
    min-height: 110px;
    border: 1px solid #d0dae6;
    border-radius: 6px;
    padding: 12px 14px;
    font-size: 14px;
    color: #333333;
    background: #ffffff;
    box-sizing: border-box;
    transition: border-color 0.15s;
    resize: vertical;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

#customer-reviews .fieldset .form-list textarea:focus {
    border-color: #18569f;
    outline: none;
}

/* ---- Input text ---- */
#customer-reviews .fieldset .form-list input[type="text"] {
    width: 100%;
    max-width: 100%;
    height: 44px;
    border: 1px solid #d0dae6;
    border-radius: 6px;
    padding: 0 14px;
    font-size: 14px;
    color: #333333;
    background: #ffffff;
    box-sizing: border-box;
    transition: border-color 0.15s;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

#customer-reviews .fieldset .form-list input[type="text"]:focus {
    border-color: #18569f;
    outline: none;
}

/* ---- Odstępy między polami ---- */
#customer-reviews .fieldset .form-list li {
    margin-bottom: 16px;
    list-style: none;
}

/* ---- Przycisk DODAJ RECENZJĘ ---- */
#customer-reviews .buttons-set .button {
    background: #00804a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 13px 28px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    cursor: pointer;
    transition: background 0.15s;
    height: auto !important;
    line-height: 1.4 !important;
}

#customer-reviews .buttons-set .button:hover {
    background: #005c34 !important;
}

#customer-reviews .buttons-set .button span,
#customer-reviews .buttons-set .button span span {
    color: #ffffff !important;
}

/* ---- Widget trust — prawa kolumna ---- */
.oz-review-trust {
    flex: 0 0 280px;
    width: 280px;
    background: #ffffff;
    border: 1px solid #e0e8f0;
    border-radius: 10px;
    padding: 32px 28px;
    box-sizing: border-box;
    align-self: flex-start;
}

.oz-review-trust__icon {
    margin-bottom: 20px;
}

.oz-review-trust__icon svg {
    width: 44px;
    height: 44px;
}

.oz-review-trust__title {
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    font-size: 15px;
    font-weight: 800;
    color: #18569f;
    margin: 0 0 12px;
    line-height: 1.4;
}

.oz-review-trust__text {
    font-size: 13px;
    color: #555555;
    line-height: 1.7;
    margin: 0;
}

/* ---- Kolejność elementów w flex (desktop: form lewa, trust prawa) ---- */
.oz-review-form-wrap .form-add {
    flex: 1 1 auto;
    min-width: 0;
    order: 1;
}

.oz-review-trust {
    order: 2;
}

/* ---- Responsywność ---- */
@media only screen and (max-width: 770px) {
    body.review-product-list .col-main {
        width: auto !important;
    }

    .oz-review-form-wrap {
        flex-direction: column;
        gap: 24px;
    }

    /* Na mobile: trust PRZED formularzem */
    .oz-review-trust {
        order: 1;
        width: 100%;
        flex: none;
    }

    .oz-review-form-wrap .form-add {
        order: 2;
    }

    #customer-reviews .fieldset,
    #customer-reviews .fieldset .form-list,
    #customer-reviews .buttons-set {
        width: 100% !important;
        max-width: 100% !important;
    }
}


/* ============================================ *
 * PANEL KLIENTA — nawigacja boczna
 * ============================================ */

.oz-account-nav {
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    overflow: hidden;
    background: #ffffff;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

/* --- Nagłówek "PANEL KLIENTA" --- */
.oz-account-nav__header {
    display: flex !important;
    align-items: center;
    gap: 10px;
    background: #18569f;
    padding: 16px 18px !important;
    border: none !important;
    border-radius: 0 !important;
    cursor: default;
}

.oz-account-nav__header-icon {
    display: flex;
    align-items: center;
    flex-shrink: 0;
}

.oz-account-nav__header-icon svg {
    width: 20px;
    height: 20px;
    color: #ffffff;
}

.oz-account-nav__header strong,
.oz-account-nav__header strong span {
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #ffffff !important;
    line-height: 1;
}

/* Usuń domyślną strzałkę accordion z sidebar */
.oz-account-nav__header strong:after,
.oz-account-nav .block-title strong:after {
    display: none !important;
}

/* --- Lista linków --- */
.oz-account-nav__body {
    padding: 8px 0 !important;
}

.oz-account-nav__list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.oz-account-nav__item {
    margin: 0 !important;
    text-transform: none !important;
}

.oz-account-nav__item a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 18px;
    color: #444444 !important;
    text-decoration: none;
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1.3;
    transition: background 0.12s, color 0.12s;
    border-left: 3px solid transparent;
}

.oz-account-nav__item a:hover {
    background: #f0f5fb;
    color: #18569f !important;
    border-left-color: #b8cfea;
}

/* --- Aktywna pozycja --- */
.oz-account-nav__item.current a {
    color: #00804a !important;
    font-weight: 700;
    background: #f0faf5;
    border-left-color: #00804a;
}

.oz-account-nav__item.current a:hover {
    background: #e6f7f0;
}

/* --- Ikona --- */
.oz-account-nav__icon {
    display: flex;
    align-items: center;
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    color: #7a9bbf;
    transition: color 0.12s;
}

.oz-account-nav__icon svg {
    width: 18px;
    height: 18px;
}

.oz-account-nav__item a:hover .oz-account-nav__icon {
    color: #18569f;
}

.oz-account-nav__item.current .oz-account-nav__icon {
    color: #00804a;
}

/* --- Tekst linku --- */
.oz-account-nav__label {
    flex: 1;
}

/* --- Separator przed "Wyloguj się" --- */
.oz-account-nav__item--logout {
    border-top: 1px solid #e8eef5;
    margin-top: 6px !important;
    padding-top: 6px;
}

.oz-account-nav__item--logout a {
    color: #666666 !important;
}

.oz-account-nav__item--logout a:hover {
    color: #c0392b !important;
    background: #fdf5f5;
    border-left-color: #e8b4b0;
}

.oz-account-nav__item--logout .oz-account-nav__icon {
    color: #aaaaaa;
}

.oz-account-nav__item--logout a:hover .oz-account-nav__icon {
    color: #c0392b;
}

/* --- Nadpisanie domyślnych stylów block-account z styles.css --- */
.oz-account-nav .block-content li {
    text-transform: none !important;
}

.oz-account-nav .block-content li strong {
    font-weight: 700 !important;
    color: inherit !important;
}

.oz-account-nav .block-content li a {
    color: inherit !important;
}

/* --- Mobile: accordion domyślnie rozwinięty --- */
@media only screen and (max-width: 770px) {
    .oz-account-nav__header {
        pointer-events: none;
    }

    .oz-account-nav__body {
        display: block !important;
    }
}


/* ============================================ *
 * PANEL KLIENTA — Widget "Potrzebujesz pomocy?"
 * ============================================ */

.oz-account-help {
    display: flex;
    gap: 14px;
    align-items: flex-start;
    background: #f0f5fb;
    border: 1px solid #d0e0f0;
    border-radius: 10px;
    padding: 18px 16px;
    margin-top: 12px;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

.oz-account-help__icon {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
}

.oz-account-help__icon svg {
    width: 40px;
    height: 40px;
}

.oz-account-help__content {
    flex: 1;
    min-width: 0;
}

.oz-account-help__title {
    font-size: 13px;
    font-weight: 800;
    color: #1a1a2e;
    margin: 0 0 5px;
    line-height: 1.3;
}

.oz-account-help__text {
    font-size: 12px;
    color: #555555;
    line-height: 1.6;
    margin: 0 0 12px;
}

.oz-account-help__btn {
    display: inline-block;
    padding: 7px 16px;
    border: 1.5px solid #18569f;
    border-radius: 5px;
    font-size: 11px;
    font-weight: 700;
    color: #18569f !important;
    text-decoration: none;
    letter-spacing: 0.3px;
    transition: background 0.15s, color 0.15s;
    white-space: nowrap;
}

.oz-account-help__btn:hover {
    background: #18569f;
    color: #ffffff !important;
}

/* ============================================ *
 * PANEL KLIENTA — Tabele dashboardu
 * Styl: zaokrąglone karty, nagłówek z linkiem
 * "Zobacz wszystkie" po prawej, statusy z chipem
 * ============================================ */

/* Ogólny wrapper sekcji dashboardu */
.dashboard .box-account,
.dashboard .box-info {
    background: #ffffff;
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    padding: 0 !important;
    margin-bottom: 24px !important;
    overflow: hidden;
}

/* Nagłówek sekcji (box-head) */
.dashboard .box-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px !important;
    margin-top: 0 !important;
    border-bottom: 1px solid #e8eef5 !important;
    background: #ffffff;
}

.dashboard .box-head h2 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a2e;
    margin: 0 !important;
}

/* Link "Zobacz wszystkie" po prawej */
.dashboard .box-head a,
.dashboard .box-title a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-transform: none !important;
    text-decoration: none;
    white-space: nowrap;
}

.dashboard .box-head a:hover,
.dashboard .box-title a:hover {
    text-decoration: underline;
}

/* Zawartość sekcji */
.dashboard .box-account .box-content,
.dashboard .box-info .box-content,
.dashboard .box-account > p,
.dashboard .box-account > address {
    padding: 16px 20px;
}

/* ---- Tabela zamówień / data-table ---- */
body.customer-account .dashboard .data-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

body.customer-account .dashboard .data-table thead th {
    background: #f8fafc;
    color: #888888;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    padding: 10px 20px;
    border-bottom: 1px solid #e8eef5;
    text-align: left;
}

body.customer-account .dashboard .data-table tbody td {
    padding: 12px 20px;
    font-size: 13px;
    color: #333333;
    border-bottom: 1px solid #f0f4f8;
    vertical-align: middle;
}

body.customer-account .dashboard .data-table tbody tr:last-child td {
    border-bottom: none;
}

body.customer-account .dashboard .data-table tbody tr:hover td {
    background: #fafcff;
}

/* Numer zamówienia — monospace link */
body.customer-account .dashboard .data-table td a {
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-transform: none !important;
    text-decoration: none;
}

body.customer-account .dashboard .data-table td a:hover {
    text-decoration: underline;
}

/* Kolumna akcji — linki "Zobacz zamówienie" i "Zamów ponownie" */
body.customer-account .dashboard .data-table td.view a,
body.customer-account .dashboard .data-table td.actions a {
    display: block;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #18569f !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    letter-spacing: 0.4px;
    line-height: 1.8;
    white-space: nowrap;
}

body.customer-account .dashboard .data-table td.view a:hover,
body.customer-account .dashboard .data-table td.actions a:hover {
    color: #0f3d74 !important;
    text-decoration: underline !important;
}

/* Numer zamówienia — podlinkowany */
body.customer-account .dashboard .data-table td.order-number a,
body.customer-account .dashboard .data-table td.id a {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
    text-transform: none !important;
}

body.customer-account .dashboard .data-table td.order-number a:hover,
body.customer-account .dashboard .data-table td.id a:hover {
    text-decoration: underline !important;
}

/* Chip statusu zamówienia */
body.customer-account .dashboard .data-table td .order-status,
body.customer-account .dashboard .data-table td span.status {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.3px;
    background: #e8f5ee;
    color: #1a7a45;
    white-space: nowrap;
}

/* Różne statusy */
body.customer-account .dashboard .data-table td .order-status.status-pending,
body.customer-account .dashboard .data-table td span.status-pending {
    background: #fff3e0;
    color: #c07000;
}

body.customer-account .dashboard .data-table td .order-status.status-processing,
body.customer-account .dashboard .data-table td span.status-processing {
    background: #e3f0ff;
    color: #1a5fb4;
}

body.customer-account .dashboard .data-table td .order-status.status-canceled,
body.customer-account .dashboard .data-table td span.status-canceled {
    background: #fde8e8;
    color: #b0281a;
}

/* Responsywność tabel na mobile */
@media only screen and (max-width: 770px) {
    body.customer-account .dashboard .data-table thead {
        display: none;
    }

    body.customer-account .dashboard .data-table tbody td {
        display: block;
        padding: 8px 16px;
        border-bottom: none;
    }

    body.customer-account .dashboard .data-table tbody td:first-child {
        padding-top: 14px;
    }

    body.customer-account .dashboard .data-table tbody td:last-child {
        padding-bottom: 14px;
        border-bottom: 1px solid #f0f4f8;
    }

    body.customer-account .dashboard .data-table tbody td:before {
        content: attr(data-th) ": ";
        font-weight: 700;
        color: #888888;
        font-size: 11px;
        text-transform: uppercase;
    }
}


/* ============================================ *
 * PANEL KLIENTA — Dane konta / Książka adresowa
 * Paddingi treści w kartach col2-set
 * ============================================ */

/* Padding całego col2-set wewnątrz karty */
.dashboard .box-account .col2-set,
.dashboard .box-info .col2-set {
    padding: 0 20px 20px !important;
}

/* Padding kolumn — usuń nadmiarowy prawy margin, dodaj top */
.dashboard .col2-set .col-1,
.dashboard .col2-set .col-2 {
    padding-right: 20px !important;
    padding-top: 20px !important;
    padding-bottom: 0 !important;
}

/* box-title (INFORMACJE KONTAKTOWE / NEWSLETTERY itp.) */
.dashboard .col2-set .col-1 .box-title,
.dashboard .col2-set .col-2 .box-title {
    padding-bottom: 6px !important;
    border-left: 0px solid #18569f;
    padding-left: 10px;
    margin-bottom: 12px;
}

.dashboard .col2-set .col-1 .box-title h2,
.dashboard .col2-set .col-1 .box-title h3,
.dashboard .col2-set .col-2 .box-title h2,
.dashboard .col2-set .col-2 .box-title h3 {
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.7px !important;
    color: #333333 !important;
    margin-bottom: 4px !important;
}

/* Link "Edytuj" pod tytułem */
.dashboard .col2-set .col-1 .box-title a,
.dashboard .col2-set .col-2 .box-title a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-transform: none !important;
    text-decoration: none !important;
    line-height: 1.6 !important;
    display: block;
}

.dashboard .col2-set .col-1 .box-title a:hover,
.dashboard .col2-set .col-2 .box-title a:hover {
    text-decoration: underline !important;
}

/* Treść kolumny — imię, adres, tekst italic */
.dashboard .box-account p,
.dashboard .box-account address {
    font-size: 13px !important;
    line-height: 1.7 !important;
    color: #444444 !important;
    padding-left: 0 !important;
}

/* Link "Zmień hasło" */
.dashboard .box-account a {
    color: #18569f !important;
    font-size: 13px;
    text-decoration: none;
}

.dashboard .box-account a:hover {
    text-decoration: underline !important;
}

/* */
.dashboard .box-reviews li h3 {
    border: 0;
}

.dashboard .box-reviews li.item {
    padding-left: 5px;
}

/* Separator między kolumnami na desktop */
@media only screen and (min-width: 771px) {
    .dashboard .col2-set .col-1 {
        border-right: 1px solid #f0f4f8;
    }
}

/* Mobile: kolumny pełna szerokość */
@media only screen and (max-width: 770px) {
    .dashboard .box-account .col2-set,
    .dashboard .box-info .col2-set {
        padding: 0 16px 16px !important;
    }

    .dashboard .col2-set .col-1,
    .dashboard .col2-set .col-2 {
        padding-right: 0 !important;
        padding-top: 16px !important;
    }
}


/* ============================================ *
 * OSTATNIE ZAMÓWIENIA — ikony i linki akcji
 * ============================================ */

/* Numer zamówienia z ikoną */
body.customer-account .dashboard .data-table td.number a.oz-order-number-link {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
    text-transform: none !important;
}

body.customer-account .dashboard .data-table td.number a.oz-order-number-link:hover {
    text-decoration: underline !important;
}

.oz-order-icon {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    color: #7a9bbf;
}

/* Kolumna akcji */
body.customer-account .dashboard .data-table td.oz-order-actions {
    white-space: nowrap;
    text-align: right;
}

/* Linki akcji z ikoną */
body.customer-account .dashboard .data-table td .oz-action-link {
    display: inline-flex !important;
    align-items: center;
    gap: 5px;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #18569f !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    letter-spacing: 0.4px;
    line-height: 1.8;
    white-space: nowrap;
}

body.customer-account .dashboard .data-table td .oz-action-link:hover {
    color: #0f3d74 !important;
    text-decoration: underline !important;
}

body.customer-account .dashboard .data-table td .oz-action-link svg {
    width: 13px;
    height: 13px;
    flex-shrink: 0;
}

/* "Zamów ponownie" — oddzielona od "Zobacz zamówienie" */
body.customer-account .dashboard .data-table td .oz-action-link.link-reorder {
    display: block !important;
}


/* ============================================ *
 * PANEL KLIENTA — Blok "Moje zamówienia"
 * (block-reorder — ogólne, szczegóły w sekcji RIGHT SIDEBAR)
 * ============================================ */

.block-reorder {
    background: #ffffff;
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    overflow: hidden;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    margin-bottom: 16px;
}

.block-reorder .block-title strong:after {
    display: none !important;
}

@media only screen and (max-width: 770px) {
    .block-reorder .block-content {
        display: block !important;
    }
}


/* ============================================ *
 * MOJE ZAMÓWIENIA — podstrona i dashboard
 * Tabela #my-orders-table / .box-recent
 * ============================================ */

/* Karta-wrapper */
.box-account.box-recent {
    background: none;
    border: none;
    border-radius: 0;
    overflow: visible;
    margin-bottom: 24px;
    padding: 0 !important;
}

/* Nagłówek karty */
.box-recent .box-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 20px !important;
    margin-top: 0 !important;
    border-bottom: 1px solid #e8eef5 !important;
}

.box-recent .box-head h2 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    margin: 0 !important;
    text-transform: none !important;
}

.box-recent .box-head a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-transform: none !important;
    text-decoration: none !important;
    white-space: nowrap;
}

.box-recent .box-head a:hover {
    text-decoration: underline !important;
}

/* Tabela zamówień */
.box-recent .data-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

/* Nagłówki kolumn */
.box-recent .data-table thead th {
    background: #f8fafc !important;
    color: #888888 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding: 10px 20px !important;
    border-bottom: 1px solid #e8eef5 !important;
    border-top: none !important;
    text-align: left !important;
}

/* Komórki */
.box-recent .data-table tbody td {
    padding: 13px 20px !important;
    font-size: 13px !important;
    color: #333333 !important;
    border-bottom: 1px solid #f0f4f8 !important;
    vertical-align: middle !important;
    background: transparent !important;
}

.box-recent .data-table tbody tr:last-child td {
    border-bottom: none !important;
}

.box-recent .data-table tbody tr:hover td {
    background: #fafcff !important;
}

/* Usuń zebra-striping z decorateTable */
.box-recent .data-table tbody tr.odd td,
.box-recent .data-table tbody tr.even td {
    background: transparent !important;
}

.box-recent .data-table tbody tr.odd:hover td,
.box-recent .data-table tbody tr.even:hover td {
    background: #fafcff !important;
}

/* Numer zamówienia z ikoną oka */
.box-recent .data-table td.number a.oz-order-number-link {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
    text-transform: none !important;
}

.box-recent .data-table td.number a.oz-order-number-link:hover {
    text-decoration: underline !important;
}

.box-recent .data-table td.number .oz-order-icon {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
    color: #7a9bbf;
}

/* Status — chip kolorowy */
.box-recent .data-table td.status em {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0.3px;
    background: #e8f5ee;
    color: #1a7a45;
    white-space: nowrap;
}

/* Statusy — różne kolory */
.box-recent .data-table td.status em.status-pending,
.box-recent .data-table tr.status-pending td.status em {
    background: #fff3e0;
    color: #c07000;
}

.box-recent .data-table td.status em.status-processing,
.box-recent .data-table tr.status-processing td.status em {
    background: #e3f0ff;
    color: #1a5fb4;
}

.box-recent .data-table td.status em.status-canceled,
.box-recent .data-table tr.status-canceled td.status em {
    background: #fde8e8;
    color: #b0281a;
}

/* Kolumna akcji */
.box-recent .data-table td.oz-order-actions {
    white-space: nowrap;
    text-align: right !important;
}

.box-recent .data-table td .oz-action-link {
    display: inline-flex !important;
    align-items: center;
    gap: 5px;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #18569f !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    letter-spacing: 0.4px;
    line-height: 1.8;
    white-space: nowrap;
}

.box-recent .data-table td .oz-action-link:hover {
    color: #0f3d74 !important;
    text-decoration: underline !important;
}

.box-recent .data-table td .oz-action-link svg {
    width: 13px;
    height: 13px;
    flex-shrink: 0;
}

.box-recent .data-table td .oz-action-link.link-reorder {
    display: flex !important;
}

/* Brak zamówień */
.box-recent > p {
    padding: 20px !important;
    color: #888888;
    font-size: 13px;
}

/* Mobile */
@media only screen and (max-width: 770px) {
    .box-recent .data-table thead {
        display: none;
    }

    .box-recent .data-table tbody td {
        display: block !important;
        padding: 6px 16px !important;
        border-bottom: none !important;
        font-size: 13px !important;
    }

    .box-recent .data-table tbody td:first-child {
        padding-top: 14px !important;
    }

    .box-recent .data-table tbody td:last-child {
        padding-bottom: 14px !important;
        border-bottom: 1px solid #f0f4f8 !important;
    }

    .box-recent .data-table td.oz-order-actions {
        text-align: left !important;
    }
}


/* ============================================ *
 * MOJE ZAMÓWIENIA — toolbar pod tabelą
 * Pager + limiter "Pokaż:" identyczne z listingiem
 * ============================================ */

/* Wrapper toolbara pod tabelą zamówień */
.box-recent .toolbar,
.box-recent .oz-toolbar {
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 14px 20px 4px !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    border-top: 1px solid #e8eef5;
    gap: 12px;
    flex-wrap: wrap;
}

/* Ukryj lewą część toolbara (widok lista/siatka) */
.box-recent .oz-toolbar-left {
    display: none !important;
}

/* Prawa część: "Pokaż:" */
.box-recent .oz-toolbar-right {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-left: auto;
}

.box-recent .oz-limiter {
    display: flex;
    align-items: center;
    gap: 6px;
    white-space: nowrap;
}

.box-recent .oz-limiter label {
    font-size: 12px;
    color: #5a6a7a;
}

.box-recent .oz-limiter select {
    border: 1px solid #dce6f0;
    border-radius: 4px;
    font-size: 12px;
    padding: 4px 6px;
    color: #1a1a2e;
    height: 28px;
    background: #fff;
}

.box-recent .oz-limiter select:focus {
    border-color: #18569f;
    outline: none;
}

/* Pager wyśrodkowany */
.box-recent .oz-pager-wrap,
.box-recent .pages {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 8px 0 4px;
}

.box-recent .pages strong {
    display: none;
}

.box-recent .pages ol {
    display: flex;
    align-items: center;
    gap: 4px;
    list-style: none;
    margin: 0;
    padding: 0;
    float: none;
    flex-wrap: wrap;
}

.box-recent .pages ol li {
    margin: 0;
    float: none;
}

/* Przyciski stron — cyfry */
.box-recent .pages ol li a,
.box-recent .pages ol li.current {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 8px;
    border: 1px solid #dce6f0;
    border-radius: 4px;
    font-size: 13px;
    font-weight: 600;
    color: #18569f;
    background: #ffffff;
    text-decoration: none;
    line-height: 1;
    box-sizing: border-box;
    white-space: nowrap;
}

.box-recent .pages ol li a:hover {
    background: #18569f;
    border-color: #18569f;
    color: #ffffff;
}

.box-recent .pages ol li.current {
    background: #18569f;
    border-color: #18569f;
    color: #ffffff;
}

/* Przyciski "Poprzednie" / "Następne" — auto szerokość, pełny padding */
.box-recent .pages ol li a.next,
.box-recent .pages ol li a.previous,
.box-recent .pages ol li a.i-next,
.box-recent .pages ol li a.i-previous {
    min-width: auto !important;
    width: auto !important;
    padding: 0 16px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    white-space: nowrap !important;
    letter-spacing: 0.2px;
}

/* Usuń pseudo-elementy strzałek z RWD sprite */
.box-recent .pages ol li a.next::before,
.box-recent .pages ol li a.previous::before,
.box-recent .pages ol li a.i-next::before,
.box-recent .pages ol li a.i-previous::before {
    display: none !important;
    content: none !important;
}

.box-recent .pages ol li a.next:hover,
.box-recent .pages ol li a.previous:hover,
.box-recent .pages ol li a.i-next:hover,
.box-recent .pages ol li a.i-previous:hover {
    background: #18569f !important;
    border-color: #18569f !important;
    color: #ffffff !important;
}


/* ============================================ *
 * MOJE ZAMÓWIENIA — pager .pager-no-toolbar
 * Struktura: .count-container (.amount + .limiter) + .pages
 * ============================================ */

/* Wrapper pagera */
.box-recent .pager.pager-no-toolbar {
    padding: 14px 20px !important;
    border-top: 1px solid #e8eef5;
    border-bottom: none;
    background: none !important;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

/* Górny rząd: licznik + "Pokaż:" */
.box-recent .pager.pager-no-toolbar .count-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 12px;
}

/* "1-10 z 18" */
.box-recent .pager.pager-no-toolbar .amount {
    font-size: 12px;
    color: #5a6a7a;
    margin: 0 !important;
    white-space: nowrap;
}

/* "Pokaż" + select */
.box-recent .pager.pager-no-toolbar .limiter {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0 !important;
}

.box-recent .pager.pager-no-toolbar .limiter label {
    font-size: 12px;
    color: #5a6a7a;
    white-space: nowrap;
    font-weight: normal;
}

.box-recent .pager.pager-no-toolbar .limiter select {
    border: 1px solid #dce6f0 !important;
    border-radius: 4px !important;
    font-size: 12px !important;
    padding: 4px 6px !important;
    color: #1a1a2e !important;
    height: 28px !important;
    background: #ffffff !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

.box-recent .pager.pager-no-toolbar .limiter select:focus {
    border-color: #18569f !important;
    outline: none;
}

/* Pager — przyciski stron, wyśrodkowany */
.box-recent .pager.pager-no-toolbar .pages {
    display: flex !important;
    justify-content: center;
    width: 100%;
    padding: 0 !important;
    border: none !important;
}

.box-recent .pager.pager-no-toolbar .pages strong {
    display: none !important;
}

.box-recent .pager.pager-no-toolbar .pages ol {
    display: flex !important;
    align-items: center;
    gap: 4px;
    list-style: none;
    margin: 0 !important;
    padding: 0 !important;
    float: none !important;
    flex-wrap: wrap;
    justify-content: center;
}

.box-recent .pager.pager-no-toolbar .pages ol li {
    margin: 0 !important;
    float: none !important;
}

/* Cyfry stron */
.box-recent .pager.pager-no-toolbar .pages ol li a,
.box-recent .pager.pager-no-toolbar .pages ol li.current {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    height: 36px;
    padding: 0 8px;
    border: 1px solid #dce6f0 !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    background: #ffffff !important;
    text-decoration: none !important;
    line-height: 1;
    box-sizing: border-box;
    white-space: nowrap;
}

.box-recent .pager.pager-no-toolbar .pages ol li a:hover {
    background: #18569f !important;
    border-color: #18569f !important;
    color: #ffffff !important;
}

.box-recent .pager.pager-no-toolbar .pages ol li.current {
    background: #18569f !important;
    border-color: #18569f !important;
    color: #ffffff !important;
}

/* "Poprzednie" / "Następne" — pełna szerokość tekstu */
.box-recent .pager.pager-no-toolbar .pages ol li a.next,
.box-recent .pager.pager-no-toolbar .pages ol li a.previous,
.box-recent .pager.pager-no-toolbar .pages ol li a.i-next,
.box-recent .pager.pager-no-toolbar .pages ol li a.i-previous {
    min-width: auto !important;
    width: auto !important;
    padding: 0 16px !important;
    font-size: 12px !important;
}

/* Usuń strzałki sprite z RWD */
.box-recent .pager.pager-no-toolbar .pages ol li a.next::before,
.box-recent .pager.pager-no-toolbar .pages ol li a.previous::before,
.box-recent .pager.pager-no-toolbar .pages ol li a.i-next::before,
.box-recent .pager.pager-no-toolbar .pages ol li a.i-previous::before {
    display: none !important;
    content: none !important;
}

/* Mobile */
@media only screen and (max-width: 770px) {
    .box-recent .pager.pager-no-toolbar .count-container {
        flex-direction: column;
        align-items: flex-start;
    }
}


/* ============================================ *
 * DANE KONTA — formularz edycji (edit.phtml)
 * body.customer-account-edit
 * ============================================ */

/* Poprawka z poprzedniej sesji */
.box-recent .pager.pager-no-toolbar {
    width: 100% !important;
    box-sizing: border-box;
}

/* Wrapper formularza jako karta */
body.customer-account-edit .col-main > form,
body.customer-account-edit #form-validate {
    background: #ffffff;
}

/* Nagłówek strony */
body.customer-account-edit .page-title {
    padding: 16px 20px !important;
    border-bottom: 1px solid #e8eef5;
    margin: 0 !important;
}

body.customer-account-edit .page-title h1 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    margin: 0 !important;
    text-transform: none !important;
}

/* Fieldset — sekcja formularza */
body.customer-account-edit .fieldset {
    padding: 20px 20px 0 !important;
    border: none !important;
    margin: 0 !important;
}

/* Legend — tytuł sekcji */
body.customer-account-edit .fieldset .legend {
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    color: #333333 !important;
    border-bottom: none !important;
    border-left: 3px solid #18569f !important;
    padding: 2px 0 2px 10px !important;
    margin: 0 0 20px !important;
    width: auto !important;
}

/* "* Required Fields" */
body.customer-account-edit .fieldset p.required {
    font-size: 11px;
    color: #888888;
    margin: -12px 0 16px;
}

/* Etykiety */
body.customer-account-edit .form-list label,
body.customer-account-edit .form-list .label {
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    color: #555555 !important;
    display: block;
    margin-bottom: 6px !important;
}

body.customer-account-edit .form-list label em {
    color: #e03030 !important;
    font-style: normal;
    margin-right: 2px;
}

/* Input text / email / password */
body.customer-account-edit .form-list input[type="text"],
body.customer-account-edit .form-list input[type="email"],
body.customer-account-edit .form-list input[type="password"],
body.customer-account-edit .form-list input[type="tel"],
body.customer-account-edit .form-list select {
    width: 100% !important;
    max-width: 480px !important;
    height: 44px !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 6px !important;
    padding: 0 14px !important;
    font-size: 14px !important;
    color: #333333 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

body.customer-account-edit .form-list input:focus,
body.customer-account-edit .form-list select:focus {
    border-color: #18569f !important;
    outline: none !important;
}

/* Ukryj dummy input */
body.customer-account-edit .form-list input.no-display {
    display: none !important;
}

/* Odstępy między polami */
body.customer-account-edit .form-list > li {
    margin-bottom: 18px !important;
    list-style: none !important;
}

/* Dwukolumnowy layout pól (imię + nazwisko) */
body.customer-account-edit .form-list li.fields {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

body.customer-account-edit .form-list li.fields .field {
    flex: 1 1 200px;
    min-width: 0;
}

/* Checkbox "Zmień hasło" */
body.customer-account-edit .form-list li.control {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 20px !important;
}

body.customer-account-edit .form-list li.control input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    min-height: auto !important;
    border-radius: 3px !important;
    accent-color: #18569f;
    cursor: pointer;
}

body.customer-account-edit .form-list li.control label {
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    color: #333333 !important;
    margin: 0 !important;
    cursor: pointer;
}

/* Informacja o minimalnej długości hasła */
body.customer-account-edit .form-instructions {
    font-size: 11px;
    color: #888888;
    margin-top: 4px;
}

/* Separator między sekcjami */
body.customer-account-edit .fieldset + .fieldset {
    border-top: 1px solid #e8eef5 !important;
    margin-top: 4px !important;
    padding-top: 20px !important;
}

/* Przyciski */
body.customer-account-edit .buttons-set {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px !important;
    margin: 8px 0 0 !important;
    border-top: 1px solid #e8eef5;
    border: none !important;
    border-top: 1px solid #e8eef5 !important;
    width: auto !important;
}

/* Link "Wstecz" */
body.customer-account-edit .buttons-set .back-link a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.customer-account-edit .buttons-set .back-link a:hover {
    text-decoration: underline !important;
}

/* Przycisk "Zapisz" */
body.customer-account-edit .buttons-set .button {
    background: #00804a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 12px 28px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    height: auto !important;
    cursor: pointer;
    transition: background 0.15s;
}

body.customer-account-edit .buttons-set .button:hover {
    background: #005c34 !important;
}

body.customer-account-edit .buttons-set .button span,
body.customer-account-edit .buttons-set .button span span {
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

/* Mobile */
@media only screen and (max-width: 770px) {
    body.customer-account-edit .form-list li.fields {
        flex-direction: column;
        gap: 0;
    }

    body.customer-account-edit .form-list input[type="text"],
    body.customer-account-edit .form-list input[type="email"],
    body.customer-account-edit .form-list input[type="password"] {
        max-width: 100% !important;
    }

    body.customer-account-edit .buttons-set {
        flex-direction: column-reverse;
        gap: 12px;
        align-items: flex-start;
    }
}


/* ============================================ *
 * KSIĄŻKA ADRESOWA — book.phtml
 * body.customer-address-index
 * ============================================ */

/* Nagłówek strony z przyciskiem "Dodaj nowy adres" */
body.customer-address-index .page-title.title-buttons {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 0 !important;
    margin-bottom: 20px !important;
    border-bottom: 1px solid #e8eef5 !important;
}

body.customer-address-index .page-title h1 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    margin: 0 !important;
    text-transform: none !important;
}

body.customer-address-index .page-title .button {
    background: #18569f !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 9px 18px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    height: auto !important;
    cursor: pointer;
    transition: background 0.15s;
    white-space: nowrap;
}

body.customer-address-index .page-title .button:hover {
    background: #0f3d74 !important;
}

body.customer-address-index .page-title .button span,
body.customer-address-index .page-title .button span span {
    color: #ffffff !important;
    font-size: 12px !important;
}

/* Layout dwukolumnowy */
body.customer-address-index .addresses-list {
    display: flex;
    gap: 20px;
    align-items: flex-start;
    margin-bottom: 20px;
}

body.customer-address-index .addresses-list .col-1,
body.customer-address-index .addresses-list .col-2 {
    flex: 1 1 0;
    min-width: 0;
    padding: 0 !important;
    float: none !important;
    width: auto !important;
}

/* Nagłówki sekcji h2 */
body.customer-address-index .addresses-list h2 {
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    color: #333333 !important;
    border-left: 3px solid #18569f !important;
    padding: 2px 0 2px 10px !important;
    margin: 0 0 16px !important;
}

/* Karta adresu */
body.customer-address-index .addresses-list li.item {
    background: #ffffff;
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    padding: 16px 18px;
    margin-bottom: 12px;
    list-style: none;
}

/* Tytuł adresu h3 */
body.customer-address-index .addresses-list li.item h3 {
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    color: #18569f !important;
    margin: 0 0 10px !important;
    border: none !important;
    padding: 0 !important;
}

/* Adres */
body.customer-address-index .addresses-list li.item address {
    font-size: 13px !important;
    font-style: normal !important;
    color: #444444 !important;
    line-height: 1.7 !important;
    margin-bottom: 12px !important;
}

/* Linki edycji */
body.customer-address-index .addresses-list li.item p a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.customer-address-index .addresses-list li.item p a:hover {
    text-decoration: underline !important;
}

/* Separator | między linkami */
body.customer-address-index .addresses-list li.item .separator {
    color: #d0dae6;
    margin: 0 4px;
}

/* Pusty adres */
body.customer-address-index .addresses-list li.item.empty {
    background: #f8fafc;
    border-style: dashed;
}

body.customer-address-index .addresses-list li.item.empty p,
body.customer-address-index .addresses-list li.item.empty > *:not(h3) {
    font-size: 13px;
    color: #888888;
    font-style: normal !important;
}

/* Link "Wstecz" */
body.customer-address-index .buttons-set {
    border: none !important;
    padding: 0 !important;
    margin: 4px 0 0 !important;
    width: auto !important;
}

body.customer-address-index .buttons-set .back-link a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.customer-address-index .buttons-set .back-link a:hover {
    text-decoration: underline !important;
}

/* Mobile */
@media only screen and (max-width: 770px) {
    body.customer-address-index .addresses-list {
        flex-direction: column;
    }
}

/* ============================================ *
 * EDYCJA ADRESU — address/edit.phtml
 * body.customer-address-form
 * ============================================ */

/* Karta formularza */
body.customer-address-form .my-account,
body.customer-address-form .col-main > form,
body.customer-address-form #form-validate {
    background: #ffffff;
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    overflow: hidden;
}

/* Nagłówek strony */
body.customer-address-form .page-title {
    padding: 16px 20px !important;
    border-bottom: 1px solid #e8eef5;
    margin: 0 !important;
}

body.customer-address-form .page-title h1 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    margin: 0 !important;
    text-transform: none !important;
}

/* Fieldset */
body.customer-address-form .fieldset {
    padding: 20px 20px 0 !important;
    border: none !important;
    margin: 0 !important;
}

body.customer-address-form .fieldset + .fieldset {
    border-top: 1px solid #e8eef5 !important;
    padding-top: 20px !important;
    margin-top: 4px !important;
}

/* Legend */
body.customer-address-form .fieldset .legend {
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    color: #333333 !important;
    border-bottom: none !important;
    border-left: 3px solid #18569f !important;
    padding: 2px 0 2px 10px !important;
    margin: 0 0 20px !important;
    width: auto !important;
}

/* "* Required Fields" */
body.customer-address-form .fieldset p.required {
    font-size: 11px;
    color: #888888;
    margin: -12px 0 16px;
}

/* Etykiety */
body.customer-address-form .form-list label {
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    color: #555555 !important;
    display: block;
    margin-bottom: 6px !important;
}

body.customer-address-form .form-list label em {
    color: #e03030 !important;
    font-style: normal;
    margin-right: 2px;
}

/* Inputy */
body.customer-address-form .form-list input[type="text"],
body.customer-address-form .form-list input[type="tel"],
body.customer-address-form .form-list input[type="email"],
body.customer-address-form .form-list select {
    width: 100% !important;
    height: 44px !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 6px !important;
    padding: 0 14px !important;
    font-size: 14px !important;
    color: #333333 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

body.customer-address-form .form-list input:focus,
body.customer-address-form .form-list select:focus {
    border-color: #18569f !important;
    outline: none !important;
}

/* Odstępy między polami */
body.customer-address-form .form-list > li {
    margin-bottom: 18px !important;
    list-style: none !important;
}

/* Dwukolumnowy layout pól */
body.customer-address-form .form-list li.fields {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
}

body.customer-address-form .form-list li.fields .field {
    flex: 1 1 180px;
    min-width: 0;
}

/* Pełna szerokość dla .wide */
body.customer-address-form .form-list li.wide {
    display: block;
}

/* Checkboxy domyślne adresy */
body.customer-address-form .form-list li.control {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 14px !important;
}

body.customer-address-form .form-list li.control input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    min-height: auto !important;
    border-radius: 3px !important;
    accent-color: #18569f;
    cursor: pointer;
}

body.customer-address-form .form-list li.control label {
    font-size: 13px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    color: #333333 !important;
    margin: 0 !important;
    cursor: pointer;
}

body.customer-address-form .form-list li.control strong {
    font-size: 12px;
    font-weight: 700;
    color: #18569f;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

/* Przyciski */
body.customer-address-form .buttons-set {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px !important;
    margin: 8px 0 0 !important;
    border: none !important;
    border-top: 1px solid #e8eef5 !important;
    width: auto !important;
}

body.customer-address-form .buttons-set .back-link a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.customer-address-form .buttons-set .back-link a:hover {
    text-decoration: underline !important;
}

body.customer-address-form .buttons-set .button {
    background: #00804a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 12px 28px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    height: auto !important;
    cursor: pointer;
    transition: background 0.15s;
}

body.customer-address-form .buttons-set .button:hover {
    background: #005c34 !important;
}

body.customer-address-form .buttons-set .button span,
body.customer-address-form .buttons-set .button span span {
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 800 !important;
}

/* Mobile */
@media only screen and (max-width: 770px) {
    body.customer-address-form .form-list li.fields {
        flex-direction: column;
        gap: 0;
    }

    body.customer-address-form .buttons-set {
        flex-direction: column-reverse;
        gap: 12px;
        align-items: flex-start;
    }
}


/* ============================================ *
 * EDYCJA ADRESU — dodatkowe poprawki
 * Struktura: .my-account > .page-title + form
 * ============================================ */

/* Karta obejmuje cały .my-account */
body.customer-address-form .my-account {
    background: #ffffff;
    border: 0px solid #e0e8f2;
    border-radius: 0px;
    overflow: visible;
    padding: 0 !important;
}

/* Nagłówek strony wewnątrz karty */
body.customer-address-form .my-account .page-title {
    padding: 16px 20px !important;
    border-bottom: 1px solid #e8eef5 !important;
    margin: 0 !important;
}

body.customer-address-form .my-account .page-title h1 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    margin: 0 !important;
    text-transform: none !important;
}

/* customer-name block (imię + nazwisko) — flex row */
body.customer-address-form .customer-name {
    display: flex !important;
    gap: 16px !important;
    flex-wrap: wrap;
    width: 100%;
}

body.customer-address-form .customer-name .field {
    flex: 1 1 180px !important;
    min-width: 0;
}


/* ============================================ *
 * MOJE ZGODY — tabela zgód (customer_view.phtml)
 * body.tlabs-consents-index-index
 * ============================================ */

/* Nagłówek strony */
body.tlabs-consents-index-index .page-title {
    margin-bottom: 20px !important;
}

body.tlabs-consents-index-index .page-title h1 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    text-transform: none !important;
}

/* Karta z tabelą */
body.tlabs-consents-index-index .box-account {
    background: #ffffff !important;
    border: 0px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

/* Tabela */
body.tlabs-consents-index-index .data-table {
    width: 100%;
    border-collapse: collapse;
    margin: 0 !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

/* Nagłówki kolumn */
body.tlabs-consents-index-index .data-table thead th {
    background: #f8fafc !important;
    color: #888888 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding: 10px 16px !important;
    border-bottom: 1px solid #e8eef5 !important;
    border-top: none !important;
    text-align: left !important;
    white-space: nowrap;
}

/* Komórki */
body.tlabs-consents-index-index .data-table tbody td {
    padding: 12px 16px !important;
    font-size: 13px !important;
    color: #333333 !important;
    border-bottom: 1px solid #f0f4f8 !important;
    vertical-align: top !important;
    background: transparent !important;
}

body.tlabs-consents-index-index .data-table tbody tr:last-child td {
    border-bottom: none !important;
}

body.tlabs-consents-index-index .data-table tbody tr:hover td {
    background: #fafcff !important;
}

/* Usuń zebra-striping z decorateTable */
body.tlabs-consents-index-index .data-table tbody tr.odd td,
body.tlabs-consents-index-index .data-table tbody tr.even td {
    background: transparent !important;
}

/* Link do zamówienia */
body.tlabs-consents-index-index .data-table td a {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
    text-transform: none !important;
}

body.tlabs-consents-index-index .data-table td a:hover {
    text-decoration: underline !important;
}

/* Treść klauzuli — mały tekst, zawijany */
body.tlabs-consents-index-index .data-table td small {
    font-size: 11px !important;
    color: #666666 !important;
    line-height: 1.6 !important;
    display: block;
    max-width: 360px;
}

/* Brak zgód */
body.tlabs-consents-index-index .data-table td[colspan] {
    text-align: center !important;
    color: #888888 !important;
    padding: 24px 16px !important;
    font-size: 13px !important;
}

/* Mobile */
@media only screen and (max-width: 770px) {
    body.tlabs-consents-index-index .data-table thead {
        display: none;
    }

    body.tlabs-consents-index-index .data-table tbody td {
        display: block !important;
        padding: 6px 16px !important;
        border-bottom: none !important;
        font-size: 13px !important;
    }

    body.tlabs-consents-index-index .data-table tbody td:first-child {
        padding-top: 14px !important;
        font-weight: 700;
    }

    body.tlabs-consents-index-index .data-table tbody td:last-child {
        padding-bottom: 14px !important;
        border-bottom: 1px solid #f0f4f8 !important;
    }

    body.tlabs-consents-index-index .data-table td small {
        max-width: 100%;
    }
}


/* Nagłówek "Moje zgody" — poza .box-account, wewnątrz .my-account */
body.tlabs-consents-index-index .my-account .page-title {
    margin-bottom: 16px !important;
}

body.tlabs-consents-index-index .my-account .page-title h1 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    text-transform: none !important;
    margin: 0 !important;
}


/* ============================================ *
 * MOJE LICENCJE ESET — licenses.phtml
 * body.esetesd-account-licenses
 * ============================================ */

/* Nagłówek strony */
body.esetesd-account-licenses .page-title {
    margin-bottom: 16px !important;
}

body.esetesd-account-licenses .page-title h1 {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    text-transform: none !important;
    margin: 0 !important;
}

/* Brak licencji */
body.esetesd-account-licenses .note-msg {
    background: #f8fafc;
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    padding: 24px 20px;
    font-size: 13px;
    color: #888888;
    margin-bottom: 20px;
}

/* Karta z tabelą */
body.esetesd-account-licenses #esetesd-licenses-table {
    width: 100%;
    border-collapse: collapse;
    background: #ffffff;
    border: 0px solid #e0e8f2;
    border-radius: 0px;
    overflow: hidden;
    margin: 0 0 20px !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

/* Nagłówki kolumn */
body.esetesd-account-licenses #esetesd-licenses-table thead th {
    background: #f8fafc !important;
    color: #888888 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding: 10px 16px !important;
    border-bottom: 1px solid #e8eef5 !important;
    border-top: none !important;
    text-align: left !important;
    white-space: nowrap;
}

/* Komórki */
body.esetesd-account-licenses #esetesd-licenses-table tbody td {
    padding: 13px 16px !important;
    font-size: 13px !important;
    color: #333333 !important;
    border-bottom: 1px solid #f0f4f8 !important;
    vertical-align: middle !important;
    background: transparent !important;
}

body.esetesd-account-licenses #esetesd-licenses-table tbody tr:last-child td {
    border-bottom: none !important;
}

body.esetesd-account-licenses #esetesd-licenses-table tbody tr:hover td {
    background: #fafcff !important;
}

/* Usuń zebra-striping */
body.esetesd-account-licenses #esetesd-licenses-table tbody tr.odd td,
body.esetesd-account-licenses #esetesd-licenses-table tbody tr.even td {
    background: transparent !important;
}

/* Numer zamówienia */
body.esetesd-account-licenses #esetesd-licenses-table tbody td:first-child {
    font-weight: 600 !important;
    color: #18569f !important;
    white-space: nowrap;
}

/* Klucz licencji — monospace */
body.esetesd-account-licenses #esetesd-licenses-table tbody td code {
    font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
    font-size: 12px !important;
    color: #1a1a2e !important;
    background: #f0f4f8;
    padding: 3px 8px;
    border-radius: 4px;
    letter-spacing: 0.5px;
    white-space: nowrap;
    display: inline-block;
}

/* Link "Pobierz oprogramowanie" */
body.esetesd-account-licenses #esetesd-licenses-table tbody td a {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #18569f !important;
    text-decoration: none !important;
    text-transform: none !important;
    white-space: nowrap;
}

body.esetesd-account-licenses #esetesd-licenses-table tbody td a:hover {
    color: #0f3d74 !important;
    text-decoration: underline !important;
}

/* Data ważności */
body.esetesd-account-licenses #esetesd-licenses-table tbody td:nth-child(4) {
    white-space: nowrap;
    color: #555555 !important;
}

/* Link "Powrót" */
body.esetesd-account-licenses .buttons-set {
    border: none !important;
    padding: 0 !important;
    margin: 4px 0 0 !important;
    width: auto !important;
}

body.esetesd-account-licenses .buttons-set a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.esetesd-account-licenses .buttons-set a:hover {
    text-decoration: underline !important;
}

/* Mobile */
@media only screen and (max-width: 770px) {
    body.esetesd-account-licenses #esetesd-licenses-table thead {
        display: none;
    }

    body.esetesd-account-licenses #esetesd-licenses-table tbody td {
        display: block !important;
        padding: 6px 16px !important;
        border-bottom: none !important;
    }

    body.esetesd-account-licenses #esetesd-licenses-table tbody td:first-child {
        padding-top: 14px !important;
    }

    body.esetesd-account-licenses #esetesd-licenses-table tbody td:last-child {
        padding-bottom: 14px !important;
        border-bottom: 1px solid #f0f4f8 !important;
    }

    body.esetesd-account-licenses #esetesd-licenses-table tbody td code {
        white-space: normal;
        word-break: break-all;
    }
}


/* ============================================ *
 * PANEL KLIENTA — ujednolicone nagłówki stron
 * Styl: pomarańczowy lewy border + ciemny tekst
 * Dotyczy wszystkich podstron customer-account
 * ============================================ */

body.customer-account .col-main .page-title,
body.customer-account .col-main .my-account .page-title {
    position: relative !important;
    margin: 0 0 20px !important;
    padding: 0 0 0 22px !important;
    border-left: none !important;
    border-bottom: none !important;
    background: none !important;
}

/* Pionowa kreska */
body.customer-account .col-main .page-title::before,
body.customer-account .col-main .my-account .page-title::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    bottom: 0 !important;
    width: 4px !important;
    background: #18569f !important;
    border-radius: 0 !important;
}

/* Strzałka — trójkąt po prawej stronie kreski */
body.customer-account .col-main .page-title::after,
body.customer-account .col-main .my-account .page-title::after {
    content: '' !important;
    position: absolute !important;
    left: 4px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    border-top: 7px solid transparent !important;
    border-bottom: 7px solid transparent !important;
    border-left: 7px solid #18569f !important;
}

body.customer-account .col-main .page-title h1,
body.customer-account .col-main .my-account .page-title h1 {
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #1a1a2e !important;
    margin: 0 !important;
    padding: 0 !important;
    text-transform: none !important;
    line-height: 1.2 !important;
    border: none !important;
}

/* ============================================ *
 * TABELA LICENCJI — fix border-radius
 * border-collapse: separate wymagane dla rogów
 * ============================================ */

body.esetesd-account-licenses #esetesd-licenses-table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

/* Też dla tabeli zgód */
body.tlabs-consents-index-index .box-account .data-table,
body.tlabs-consents-index-index .data-table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

/* Ogólny fix dla wszystkich kart z data-table w panelu */
body.customer-account .box-account {
    border-radius: 10 !important;
    overflow: hidden !important;
}

body.customer-account .box-account .data-table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border-radius: 0 !important;
}


/* ============================================ *
 * LISTA ŻYCZEŃ — wishlist-index-index
 * Tabela: #wishlist-table (.clean-table)
 * ============================================ */

/* Wrapper .my-wishlist — bez ramki */
body.wishlist-index-index .my-wishlist {
    background: none;
    border: none;
    border-radius: 0;
    margin-bottom: 20px;
}

/* Nagłówek strony — styl jak reszta panelu (border-left arrow) */
body.wishlist-index-index .my-wishlist .page-title.title-buttons {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 0 0 0 22px !important;
    margin: 0 0 20px !important;
    border: none !important;
    border-bottom: none !important;
}

body.wishlist-index-index .my-wishlist .page-title h1 {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Fieldset bez ramki */
body.wishlist-index-index .fieldset {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Tabela — wrapper div dla zaokrąglonych rogów */
body.wishlist-index-index .fieldset {
    border-radius: 10px !important;
    overflow: hidden !important;
    border: 1px solid #e0e8f2 !important;
    background: #ffffff !important;
    margin-bottom: 16px !important;
}

body.wishlist-index-index #wishlist-table {
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    border: none !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    width: 100%;
}

/* Tabela */
body.wishlist-index-index #wishlist-table {
    width: 100%;
    border-collapse: collapse !important;
    margin: 0 !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

/* Nagłówki kolumn */
body.wishlist-index-index #wishlist-table thead th {
    background: #f8fafc !important;
    color: #888888 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding: 10px 16px !important;
    border-bottom: 1px solid #e8eef5 !important;
    border-top: none !important;
    text-align: left !important;
}

/* Ukryj kolumnę zdjęcia w nagłówku */
body.wishlist-index-index #wishlist-table thead .customer-wishlist-item-image {
    width: 80px;
}

/* Komórki */
body.wishlist-index-index #wishlist-table tbody td {
    padding: 16px !important;
    font-size: 13px !important;
    color: #333333 !important;
    border-bottom: 1px solid #f0f4f8 !important;
    vertical-align: top !important;
    background: transparent !important;
}

body.wishlist-index-index #wishlist-table tbody tr:last-child td {
    border-bottom: none !important;
}

body.wishlist-index-index #wishlist-table tbody tr.odd td,
body.wishlist-index-index #wishlist-table tbody tr.even td {
    background: transparent !important;
}

body.wishlist-index-index #wishlist-table tbody tr:hover td {
    background: #fafcff !important;
}

/* Zdjęcie produktu */
body.wishlist-index-index .customer-wishlist-item-image {
    width: 80px !important;
    padding: 12px 8px 12px 16px !important;
}

body.wishlist-index-index .customer-wishlist-item-image img {
    border-radius: 6px;
    border: 1px solid #e8eef5;
    display: block;
    width: 70px !important;
    height: 70px !important;
    object-fit: contain;
}

/* Info o produkcie */
body.wishlist-index-index .customer-wishlist-item-info {
    vertical-align: top !important;
}

body.wishlist-index-index .customer-wishlist-item-info .product-name {
    margin: 0 0 6px !important;
    font-size: 14px !important;
}

body.wishlist-index-index .customer-wishlist-item-info .product-name a {
    font-weight: 700 !important;
    color: #1a1a2e !important;
    text-decoration: none !important;
    font-size: 14px !important;
}

body.wishlist-index-index .customer-wishlist-item-info .product-name a:hover {
    color: #18569f !important;
}

body.wishlist-index-index .customer-wishlist-item-info .wishlist-sku {
    font-size: 11px !important;
    color: #888888 !important;
    margin-bottom: 10px !important;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}

body.wishlist-index-index .customer-wishlist-item-info textarea {
    width: 100% !important;
    max-width: 320px !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 6px !important;
    padding: 8px 10px !important;
    font-size: 12px !important;
    color: #555555 !important;
    resize: vertical;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    margin-bottom: 10px;
}

body.wishlist-index-index .customer-wishlist-item-info textarea:focus {
    border-color: #18569f !important;
    outline: none !important;
}

/* Przycisk "Aktualizuj" wewnątrz wiersza */
body.wishlist-index-index .item-manage .button {
    font-size: 11px !important;
    padding: 6px 12px !important;
    height: auto !important;
    background: #f0f5fb !important;
    color: #18569f !important;
    border: 1px solid #b8cfea !important;
    border-radius: 5px !important;
    font-weight: 600 !important;
    text-transform: none !important;
}

body.wishlist-index-index .item-manage .button span span {
    color: #18569f !important;
    font-size: 11px !important;
}

/* Ilość */
body.wishlist-index-index .customer-wishlist-item-quantity {
    vertical-align: middle !important;
    text-align: center !important;
}

body.wishlist-index-index .customer-wishlist-item-quantity .qty {
    width: 50px !important;
    height: 36px !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 5px !important;
    text-align: center !important;
    font-size: 13px !important;
    padding: 0 6px !important;
}

/* Cena */
body.wishlist-index-index .customer-wishlist-item-price {
    vertical-align: middle !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    white-space: nowrap;
}

body.wishlist-index-index .customer-wishlist-item-price .price {
    font-size: 15px !important;
    font-weight: 800 !important;
    color: #1a1a2e !important;
}

/* Koszyk + edytuj */
body.wishlist-index-index .customer-wishlist-item-cart {
    vertical-align: middle !important;
    white-space: nowrap;
}

body.wishlist-index-index .customer-wishlist-item-cart .btn-cart {
    background: #00804a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 9px 16px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    height: auto !important;
    margin-bottom: 8px;
    display: block;
    width: 100%;
    white-space: nowrap !important;
}

body.wishlist-index-index .customer-wishlist-item-cart .btn-cart:hover {
    background: #005c34 !important;
}

body.wishlist-index-index .customer-wishlist-item-cart .btn-cart span,
body.wishlist-index-index .customer-wishlist-item-cart .btn-cart span span {
    color: #ffffff !important;
    font-size: 12px !important;
}

body.wishlist-index-index .customer-wishlist-item-cart .link-edit {
    display: block !important;
    text-align: center;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
    padding: 5px 0 !important;
    background: none !important;
    border: none !important;
    height: auto !important;
}

body.wishlist-index-index .customer-wishlist-item-cart .link-edit span,
body.wishlist-index-index .customer-wishlist-item-cart .link-edit span span {
    color: #18569f !important;
    font-size: 11px !important;
}

body.wishlist-index-index .customer-wishlist-item-cart p {
    margin: 0 !important;
}

/* Usuń produkt */
body.wishlist-index-index .customer-wishlist-item-remove {
    vertical-align: middle !important;
    text-align: center !important;
}

body.wishlist-index-index .customer-wishlist-item-remove .btn-remove {
    font-size: 11px !important;
    color: #b0281a !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

body.wishlist-index-index .customer-wishlist-item-remove .btn-remove:hover {
    text-decoration: underline !important;
}

/* Przyciski dolne */
body.wishlist-index-index .buttons-set2 {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap;
    padding: 16px 20px !important;
    border-top: 1px solid #e8eef5 !important;
    border: none !important;
    border-top: 1px solid #e8eef5 !important;
    margin: 0 !important;
    width: auto !important;
}

/* "Podziel się listą życzeń" */
body.wishlist-index-index .btn-share {
    background: #f0f5fb !important;
    color: #18569f !important;
    border: 1px solid #b8cfea !important;
    border-radius: 6px !important;
    padding: 10px 18px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    height: auto !important;
    text-transform: none !important;
}

body.wishlist-index-index .btn-share span span {
    color: #18569f !important;
    font-size: 12px !important;
}

/* "Dodaj wszystko do koszyka" */
body.wishlist-index-index .btn-add {
    background: #00804a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 10px 18px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    height: auto !important;
    text-transform: none !important;
}

body.wishlist-index-index .btn-add span span {
    color: #ffffff !important;
    font-size: 12px !important;
}

/* "Aktualizuj listę życzeń" */
body.wishlist-index-index .btn-update {
    background: #ffffff !important;
    color: #555555 !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 6px !important;
    padding: 10px 18px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    height: auto !important;
    text-transform: none !important;
}

body.wishlist-index-index .btn-update span span {
    color: #555555 !important;
    font-size: 12px !important;
}

/* Link "Powrót" */
body.wishlist-index-index .buttons-set {
    border: none !important;
    padding: 0 !important;
    margin: 12px 0 0 !important;
    width: auto !important;
}

body.wishlist-index-index .buttons-set .back-link a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.wishlist-index-index .buttons-set .back-link a:hover {
    text-decoration: underline !important;
}

/* Mobile */
@media only screen and (max-width: 770px) {
    body.wishlist-index-index #wishlist-table thead {
        display: none;
    }

    body.wishlist-index-index #wishlist-table tbody td {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box;
    }

    body.wishlist-index-index .customer-wishlist-item-image {
        padding: 16px 16px 0 !important;
    }

    body.wishlist-index-index .buttons-set2 {
        flex-direction: column;
        align-items: stretch;
    }
}


/* ============================================ *
 * UDOSTĘPNIJ LISTĘ ŻYCZEŃ — sharing.phtml
 * body.wishlist-index-share
 * ============================================ */

/* Formularz jako karta */
body.wishlist-index-share #form-validate {
    background: #ffffff;
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    overflow: hidden;
}

/* Fieldset */
body.wishlist-index-share .fieldset {
    padding: 20px 20px 0 !important;
    border: none !important;
    margin: 0 !important;
}

/* Legend */
body.wishlist-index-share .fieldset .legend {
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    color: #333333 !important;
    border-bottom: none !important;
    border-left: 3px solid #18569f !important;
    padding: 2px 0 2px 10px !important;
    margin: 0 0 20px !important;
    width: auto !important;
}

/* Etykiety */
body.wishlist-index-share .form-list label {
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
    text-transform: uppercase !important;
    color: #555555 !important;
    display: block;
    margin-bottom: 6px !important;
}

body.wishlist-index-share .form-list label em {
    color: #e03030 !important;
    font-style: normal;
    margin-right: 2px;
}

/* Textarea */
body.wishlist-index-share .form-list textarea {
    width: 100% !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 6px !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    color: #333333 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s;
    resize: vertical;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

body.wishlist-index-share .form-list textarea:focus {
    border-color: #18569f !important;
    outline: none !important;
}

/* Odstępy między polami */
body.wishlist-index-share .form-list > li {
    margin-bottom: 18px !important;
    list-style: none !important;
}

/* Checkbox RSS */
body.wishlist-index-share .form-list li.control {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin-bottom: 14px !important;
}

body.wishlist-index-share .form-list li.control .input-box {
    flex-shrink: 0;
    padding-top: 2px;
}

body.wishlist-index-share .form-list li.control input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    accent-color: #18569f;
    cursor: pointer;
}

body.wishlist-index-share .form-list li.control label {
    font-size: 13px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    color: #444444 !important;
    margin: 0 !important;
    cursor: pointer;
    line-height: 1.5;
}

/* Przyciski */
body.wishlist-index-share .buttons-set {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 16px 20px !important;
    margin: 8px 0 0 !important;
    border: none !important;
    border-top: 1px solid #e8eef5 !important;
    width: auto !important;
    flex-wrap: wrap;
    gap: 12px;
}

body.wishlist-index-share .buttons-set p.required {
    font-size: 11px !important;
    color: #888888 !important;
    margin: 0 !important;
    order: -1;
    width: 100%;
}

body.wishlist-index-share .buttons-set .back-link a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.wishlist-index-share .buttons-set .back-link a:hover {
    text-decoration: underline !important;
}

body.wishlist-index-share .buttons-set .button {
    background: #18569f !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 12px 28px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    height: auto !important;
    cursor: pointer;
    transition: background 0.15s;
}

body.wishlist-index-share .buttons-set .button:hover {
    background: #0f3d74 !important;
}

body.wishlist-index-share .buttons-set .button span,
body.wishlist-index-share .buttons-set .button span span {
    color: #ffffff !important;
    font-size: 13px !important;
}



/* ============================================ *
 * PODGLĄD ZAMÓWIENIA — sales-order-view
 * ============================================ */

/* Nagłówek: numer + status + linki akcji */
body.sales-order-view .my-account .page-title.title-buttons {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap;
    gap: 8px 14px;
    padding: 0 0 0 22px !important;
    margin: 0 0 16px !important;
    border-bottom: none !important;
    position: relative !important;
}

body.sales-order-view .my-account .page-title.title-buttons h1 {
    flex: 1 1 auto;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #1a1a2e !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    text-transform: none !important;
    line-height: 1.3 !important;
}

/* Linki "Zamów ponownie" i "Wydrukuj" */
body.sales-order-view .page-title.title-buttons .link-reorder,
body.sales-order-view .page-title.title-buttons .link-print,
body.sales-order-view .page-title.title-buttons span.separator {
    font-size: 12px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    white-space: nowrap;
    flex-shrink: 0;
    top: 0;
}

body.sales-order-view .page-title.title-buttons .link-reorder,
body.sales-order-view .page-title.title-buttons .link-print {
    color: #18569f !important;
}

body.sales-order-view .page-title.title-buttons .link-reorder:hover,
body.sales-order-view .page-title.title-buttons .link-print:hover {
    text-decoration: underline !important;
}

body.sales-order-view .page-title.title-buttons .separator {
    color: #d0dae6 !important;
    flex-shrink: 0;
}

/* Zakładki order-info (dl / ul) */
body.sales-order-view .order-info {
    margin: 0 0 8px !important;
}

body.sales-order-view .order-info dt {
    display: none !important;
}

body.sales-order-view .order-info dd {
    margin: 0 !important;
    padding: 0 !important;
}

body.sales-order-view #order-info-tabs {
    display: flex !important;
    list-style: none !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
    border-bottom: 2px solid #e0e8f2 !important;
    gap: 0 !important;
}

body.sales-order-view #order-info-tabs li {
    padding: 8px 16px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #888888 !important;
    border-bottom: 3px solid transparent !important;
    margin-bottom: -2px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: default;
}

body.sales-order-view #order-info-tabs li.current,
body.sales-order-view #order-info-tabs li.first {
    color: #18569f !important;
    border-bottom-color: #18569f !important;
}

/* Data zamówienia */
body.sales-order-view .order-date {
    font-size: 12px !important;
    color: #888888 !important;
    margin: 0 0 16px !important;
}

/* Karty informacyjne — col2-set */
body.sales-order-view .order-info-box {
    display: flex !important;
    gap: 16px !important;
    margin-bottom: 16px !important;
}

body.sales-order-view .order-info-box .col-1,
body.sales-order-view .order-info-box .col-2 {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    float: none !important;
    width: auto !important;
    padding: 0 !important;
}

body.sales-order-view .order-info-box .box {
    background: #ffffff !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    height: 100% !important;
}

body.sales-order-view .order-info-box .box-title {
    padding: 10px 16px !important;
    border-bottom: 1px solid #e8eef5 !important;
    background: #f8fafc !important;
    width: 100%;
}

body.sales-order-view .order-info-box .box-title h2 {
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.7px !important;
    color: #555555 !important;
    margin: 0 !important;
    border: none !important;
    padding: 0 !important;
}

body.sales-order-view .order-info-box .box-content {
    padding: 14px 16px !important;
    font-size: 13px !important;
    color: #444444 !important;
    line-height: 1.7 !important;
}

body.sales-order-view .order-info-box .box-content address {
    font-style: normal !important;
}

body.sales-order-view .order-info-box .box-content .subtitle {
    margin: 0 !important;
    font-size: 13px !important;
}

/* Nagłówek sekcji tabeli */
body.sales-order-view .order-items .table-caption {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    margin: 0 0 12px !important;
    text-transform: none !important;
    border: none !important;
    padding: 0 !important;
}

body.sales-order-view .order-items .table-caption .separator {
    color: #d0dae6;
    margin: 0 8px;
}

body.sales-order-view .order-items .table-caption a {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

/* Tabela produktów */
body.sales-order-view #my-orders-table {
    width: 100%;
    border-collapse: collapse !important;
    background: #ffffff;
    border: 1px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    margin-bottom: 16px !important;
}

/* Nagłówki kolumn */
body.sales-order-view #my-orders-table thead th {
    background: #f8fafc !important;
    color: #888888 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding: 10px 16px !important;
    border-bottom: 1px solid #e8eef5 !important;
    border-top: none !important;
}

/* Komórki tbody */
body.sales-order-view #my-orders-table tbody td {
    padding: 14px 16px !important;
    font-size: 13px !important;
    color: #333333 !important;
    border-bottom: 1px solid #f0f4f8 !important;
    vertical-align: top !important;
    background: transparent !important;
}

body.sales-order-view #my-orders-table tbody tr:last-child td {
    border-bottom: none !important;
}

body.sales-order-view #my-orders-table tbody tr.odd td,
body.sales-order-view #my-orders-table tbody tr.even td {
    background: transparent !important;
}

body.sales-order-view #my-orders-table tbody .product-name {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    margin: 0 0 4px !important;
}

body.sales-order-view #my-orders-table .price {
    font-weight: 600 !important;
    color: #1a1a2e !important;
}

/* Stopka tabeli — sumy */
body.sales-order-view #my-orders-table tfoot td {
    padding: 8px 16px !important;
    font-size: 13px !important;
    color: #555555 !important;
    border-top: 1px solid #f0f4f8 !important;
    background: #fafcff !important;
}

body.sales-order-view #my-orders-table tfoot tr.grand_total td {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    border-top: 2px solid #e0e8f2 !important;
    background: #f8fafc !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}

/* Link "Powrót" */
body.sales-order-view .order-items .buttons-set {
    border: none !important;
    padding: 0 !important;
    margin: 4px 0 0 !important;
    width: auto !important;
}

body.sales-order-view .order-items .buttons-set .back-link a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.sales-order-view .order-items .buttons-set .back-link a:hover {
    text-decoration: underline !important;
}

/* Mobile */
@media only screen and (max-width: 770px) {
    body.sales-order-view .page-title.title-buttons h1 {
        font-size: 16px !important;
        width: 100%;
    }

    body.sales-order-view .order-info-box {
        flex-direction: column !important;
    }

    body.sales-order-view #my-orders-table thead {
        display: none !important;
    }

    body.sales-order-view #my-orders-table tbody td {
        display: block !important;
        padding: 6px 16px !important;
        border-bottom: none !important;
    }

    body.sales-order-view #my-orders-table tbody td:first-child {
        padding-top: 14px !important;
    }

    body.sales-order-view #my-orders-table tbody td:last-child {
        padding-bottom: 14px !important;
        border-bottom: 1px solid #f0f4f8 !important;
    }

    body.sales-order-view #my-orders-table tfoot td {
        text-align: right !important;
    }
}

/* ============================================ *
 * CHECKOUT ONEPAGE — checkout-onepage-index
 * ============================================ */

/* Nagłówek strony */
body.checkout-onepage-index .page-title h1 {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: #1a1a2e !important;
    margin-bottom: 20px !important;
}

/* ---- LISTA KROKÓW .opc ---- */

body.checkout-onepage-index .opc {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Każda sekcja jako karta */
body.checkout-onepage-index .opc .section {
    background: #ffffff;
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    margin-bottom: 12px;
    /* NIE używamy overflow:hidden — obcina kółko numeru kroku */
}

/* Zaokrąglenie górne na nagłówku, dolne na zawartości */
body.checkout-onepage-index .step-title {
    border-radius: 10px 10px 0 0;
}

body.checkout-onepage-index .step.a-item {
    border-radius: 0 0 10px 10px;
}

/* Gdy krok jest zwinięty (brak .a-item visible), nagłówek ma pełne zaokrąglenie */
body.checkout-onepage-index .opc .section:not(.active) .step-title {
    border-radius: 10px !important;
}

/* Nieaktywna sekcja — delikatniejsza */
body.checkout-onepage-index .opc .section:not(.allow):not(.active) {
    opacity: 0.7;
}

/* ---- NAGŁÓWEK KROKU .step-title ---- */

body.checkout-onepage-index .step-title {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 14px 20px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e8eef5 !important;
    border-radius: 10px 10px 0 0 !important;
    cursor: pointer !important;
    margin: 0 !important;
    position: relative !important; /* zapobiega dziedziczeniu position:relative z rodzica */
}

body.checkout-onepage-index .step-title .number {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important; /* nadpisuje position:absolute z RWD */
    top: auto !important;
    left: auto !important;
    width: 28px !important;
    height: 28px !important;
    background: #18569f !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    flex-shrink: 0 !important;
    line-height: 1 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Aktywna sekcja — zielony numer */
body.checkout-onepage-index .opc .section.active .step-title .number {
    background: #00804a;
}

/* Ukończona sekcja — szary numer */
body.checkout-onepage-index .opc .section.allow:not(.active) .step-title .number {
    background: #aab8c8;
}

body.checkout-onepage-index .step-title h2 {
    flex: 1 1 auto;
    min-width: 0;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    margin: 0 0 0 4px !important;
    padding: 0 !important;
    text-transform: none !important;
    overflow: visible !important;
}

body.checkout-onepage-index .step-title a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
    display: none; /* widoczny tylko w ukończonych krokach */
}

body.checkout-onepage-index .opc .section.allow:not(.active) .step-title a {
    display: inline !important;
}

body.checkout-onepage-index .step-title a:hover {
    text-decoration: underline !important;
}

/* ---- CIAŁO KROKU .step.a-item ---- */

body.checkout-onepage-index .step.a-item {
    padding: 20px !important;
}

/* ---- POLA FORMULARZA ---- */

/* Etykiety */
body.checkout-onepage-index .form-list label,
body.checkout-onepage-index .form-list .label {
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    color: #555555 !important;
    display: block;
    margin-bottom: 6px !important;
}

body.checkout-onepage-index .form-list label em,
body.checkout-onepage-index .form-list .label em {
    color: #e03030 !important;
    font-style: normal;
    margin-right: 2px;
}

/* Input text */
body.checkout-onepage-index .input-text {
    width: 100% !important;
    height: 42px !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 6px !important;
    padding: 0 14px !important;
    font-size: 14px !important;
    color: #333333 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
    transition: border-color 0.15s;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

body.checkout-onepage-index .input-text:focus {
    border-color: #18569f !important;
    outline: none !important;
}

body.checkout-onepage-index .input-text[disabled] {
    background: #f8fafc !important;
    color: #888888 !important;
    cursor: not-allowed;
}

/* Select */
body.checkout-onepage-index select,
body.checkout-onepage-index select.validate-select,
body.checkout-onepage-index select.address-select {
    width: 100% !important;
    height: 42px !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 6px !important;
    padding: 0 14px !important;
    font-size: 14px !important;
    color: #333333 !important;
    background: #ffffff !important;
    box-sizing: border-box !important;
    appearance: auto;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

body.checkout-onepage-index select:focus {
    border-color: #18569f !important;
    outline: none !important;
}

/* Flex layout .fields */
body.checkout-onepage-index .form-list .fields {
    display: flex;
    gap: 16px !important;
    margin-bottom: 14px !important;
}

body.checkout-onepage-index .form-list .fields .field,
body.checkout-onepage-index .form-list .fields > div.field {
    flex: 1 1 0 !important;
    min-width: 0;
    display: block !important;
}

/* li.fields zawierający div.fields (firma) — pionowy układ */
body.checkout-onepage-index .form-list li.fields > div.fields {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
}

body.checkout-onepage-index .form-list li.fields > div.fields label {
    display: block !important;
    margin-bottom: 6px !important;
}

body.checkout-onepage-index .form-list li.fields > div.fields .input-box {
    display: block !important;
    width: 100% !important;
}

/* .wide — pełna szerokość */
body.checkout-onepage-index .form-list li.wide {
    margin-bottom: 14px !important;
    display: block !important;
}

body.checkout-onepage-index .form-list li.wide .input-box {
    width: 100%;
}

/* Checkbox / radio */
body.checkout-onepage-index .form-list li.control {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 10px !important;
    list-style: none !important;
}

body.checkout-onepage-index .form-list li.control input[type="checkbox"],
body.checkout-onepage-index .form-list li.control input[type="radio"] {
    width: 16px !important;
    height: 16px !important;
    flex-shrink: 0;
    accent-color: #18569f;
    cursor: pointer;
    margin: 0 !important;
}

body.checkout-onepage-index .form-list li.control label {
    font-size: 13px !important;
    font-weight: 400 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    color: #444444 !important;
    margin: 0 !important;
    cursor: pointer;
}

/* customer-name flex */
body.checkout-onepage-index .customer-name {
    display: flex !important;
    gap: 16px !important;
}

body.checkout-onepage-index .customer-name .field {
    flex: 1 1 0 !important;
}

/* Separator między polami .input-box */
body.checkout-onepage-index .input-box {
    margin-bottom: 0 !important;
}

/* ---- PRZYCISKI .buttons-set ---- */

body.checkout-onepage-index .buttons-set {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 20px !important;
    padding-top: 16px !important;
    border-top: 1px solid #e8eef5 !important;
    border: none !important;
    border-top: 1px solid #e8eef5 !important;
    width: auto !important;
}

body.checkout-onepage-index .buttons-set .button {
    background: #18569f !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 12px 28px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.7px !important;
    height: auto !important;
    cursor: pointer;
    transition: background 0.15s;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

body.checkout-onepage-index .buttons-set .button:hover {
    background: #0f3d74 !important;
}

body.checkout-onepage-index .buttons-set .button span,
body.checkout-onepage-index .buttons-set .button span span {
    color: #ffffff !important;
    font-size: 13px !important;
}

body.checkout-onepage-index .buttons-set .back-link a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.checkout-onepage-index .buttons-set .back-link a:hover {
    text-decoration: underline !important;
}

body.checkout-onepage-index .buttons-set .required {
    font-size: 11px !important;
    color: #888888 !important;
    margin: 0 !important;
    width: 100%;
    order: -1;
}

body.checkout-onepage-index .buttons-set .please-wait {
    font-size: 12px !important;
    color: #888888 !important;
}

/* ---- BLOK POSTĘPU .block-progress ---- */

body.checkout-onepage-index .opc-block-progress {
    background: #ffffff;
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    overflow: hidden;
    padding-left: 0;
}

body.checkout-onepage-index .opc-block-progress .block-title {
    padding: 12px 16px !important;
    padding-left: 0 !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e8eef5 !important;
    text-align: center !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body.checkout-onepage-index .opc-block-progress .block-title strong,
body.checkout-onepage-index .opc-block-progress .block-title span {
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.7px !important;
    color: #555555 !important;
}

body.checkout-onepage-index .opc-block-progress .block-content {
    padding: 16px !important;
}
body.checkout-onepage-index .col-right.sidebar .block .block-content {
    padding: 0 15px !important;
}

body.checkout-onepage-index .opc-block-progress dl dt {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #888888 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 4px !important;
}

body.checkout-onepage-index .opc-block-progress dl dt.complete {
    color: #00804a !important;
}

body.checkout-onepage-index .opc-block-progress dl dd {
    font-size: 13px !important;
    color: #444444 !important;
    margin-bottom: 12px !important;
    padding-left: 0 !important;
}

body.checkout-onepage-index .opc-block-progress dl dd address {
    font-style: normal !important;
    line-height: 1.6 !important;
}

body.checkout-onepage-index .opc-block-progress .changelink a {
    font-size: 11px !important;
    color: #18569f !important;
    text-decoration: none !important;
}

/* ---- FIELDSET bez ramki ---- */
body.checkout-onepage-index fieldset {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* ---- KOMUNIKAT p.required ---- */
body.checkout-onepage-index p.required {
    font-size: 11px !important;
    color: #888888 !important;
    margin: 0 0 12px !important;
}

/* ---- Błędy walidacji ---- */
body.checkout-onepage-index .validation-advice {
    font-size: 11px !important;
    color: #e03030 !important;
    margin-top: 4px !important;
}

body.checkout-onepage-index .input-text.validation-failed,
body.checkout-onepage-index select.validation-failed {
    border-color: #e03030 !important;
}

/* ---- Mobile ---- */
@media only screen and (max-width: 770px) {
    body.checkout-onepage-index .form-list .fields {
        flex-direction: column !important;
        gap: 10px !important;
    }

    body.checkout-onepage-index .customer-name {
        flex-direction: column !important;
        gap: 10px !important;
    }

    body.checkout-onepage-index .buttons-set {
        flex-direction: column;
        align-items: stretch;
    }

    body.checkout-onepage-index .buttons-set .button {
        width: 100%;
        text-align: center;
    }
}


/* Ukryj puste karty kroków gdy klient nie jest zalogowany */
body:not(.opc-has-progressed-from-login) .opc.opc-firststep-login .section:not(#opc-login) {
    opacity: 0 !important;
    pointer-events: none !important;
    border-color: transparent !important;
    background: transparent !important;
    box-shadow: none !important;
}

body:not(.opc-has-progressed-from-login) .opc.opc-firststep-login .section:not(#opc-login) .step-title {
    background: transparent !important;
    border: none !important;
}

/* ============================================ *
 * MINICART
 * ============================================ */

.minicart-wrapper {
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

/* Nagłówek dropdownu */
.minicart-wrapper .block-subtitle {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 14px 16px !important;
    margin: 0 !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e8eef5 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #888888 !important;
}

.minicart-wrapper .block-subtitle .close {
    font-size: 20px !important;
    color: #aab8c8 !important;
    text-decoration: none !important;
    line-height: 1 !important;
    font-weight: 300 !important;
    transition: color 0.15s;
    top: 5px;
}

.minicart-wrapper .block-subtitle .close:hover {
    color: #18569f !important;
}

/* Lista produktów */
.mini-products-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    max-height: 320px;
    overflow-y: auto;
}

.mini-products-list .item {
    display: flex !important;
    gap: 12px !important;
    padding: 14px 16px !important;
    border-bottom: 1px solid #f0f4f8 !important;
    align-items: flex-start !important;
}

.mini-products-list .item:last-child {
    border-bottom: none !important;
}

/* Obrazek produktu */
.mini-products-list .item .product-image {
    flex-shrink: 0 !important;
    display: block !important;
    width: 52px !important;
    height: 52px !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    border: 1px solid #e0e8f2 !important;
    background: #f8fafc !important;
}

.mini-products-list .item .product-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
}

/* Szczegóły produktu */
.mini-products-list .item .product-details {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    margin-left: 5px;
}

.mini-products-list .item .product-name {
    margin: 0 0 6px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
}

.mini-products-list .item .product-name a {
    color: #1a1a2e !important;
    text-decoration: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.mini-products-list .item .product-name a:hover {
    color: #18569f !important;
}

/* Tabela cena/ilość */
.mini-products-list .info-wrapper {
    width: 100% !important;
    border: none !important;
    margin: 0 0 8px !important;
    border-collapse: collapse !important;
}

.mini-products-list .info-wrapper th,
.mini-products-list .info-wrapper td {
    padding: 2px 0 !important;
    font-size: 11px !important;
    text-align: left !important;
    border: none !important;
    background: none !important;
    vertical-align: middle !important;
}

.mini-products-list .info-wrapper th {
    color: #aab8c8 !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    width: 44px !important;
    padding-right: 8px !important;
    font-size: 10px !important;
}

.mini-products-list .info-wrapper .price {
    color: #18569f !important;
    font-weight: 800 !important;
    font-size: 13px !important;
}

/* Input ilości — ukryty bo disabled */
.mini-products-list .qty.input-text {
    width: 36px !important;
    height: 24px !important;
    text-align: center !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 4px !important;
    font-size: 11px !important;
    padding: 0 4px !important;
    background: #f8fafc !important;
    color: #555 !important;
}

.mini-products-list .quantity-button {
    display: none !important;
}

/* Linki Zmień | Usuń */
.mini-products-list .item .product-details > a.btn-edit {
    font-size: 11px !important;
    color: #18569f !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

.mini-products-list .item .product-details > a.btn-edit:hover {
    text-decoration: underline !important;
}

/* separator | */
.mini-products-list .item .product-details > a.btn-edit + * {
    font-size: 11px !important;
}

/* "Usuń produkt" */
.mini-products-list .item .product-details .btn-remove,
.mini-products-list .item .product-details > span:last-child {
    font-size: 11px !important;
    /*color: #aab8c8 !important;*/
    color: transparent !important;
    cursor: pointer !important;
    font-weight: 600 !important;
    transition: color 0.15s;
}

.mini-products-list .item .product-details .btn-remove:hover,
.mini-products-list .item .product-details > span:last-child:hover {
    /*color: #e03030 !important;*/
    color: transparent !important;
}

/* Suma częściowa */
.minicart-wrapper .block-content {
    padding: 12px 16px !important;
    background: #ffffff !important;
    border-top: 1px solid #e8eef5 !important;
}

.minicart-wrapper .block-content .subtotal {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin: 0 !important;
    background-color: transparent;
}

.minicart-wrapper .block-content .subtotal .label {
    color: #888888 !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    font-size: 10px !important;
}

.minicart-wrapper .block-content .subtotal .price {
    color: #1a1a2e !important;
    font-weight: 800 !important;
    font-size: 15px !important;
}

/* Przyciski akcji */
.minicart-wrapper .minicart-actions {
    padding: 12px 16px 16px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    background: #ffffff !important;
    border-top: 1px solid #e8eef5 !important;
}

.minicart-wrapper .minicart-actions .checkout-types {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.minicart-wrapper .minicart-actions .checkout-button {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    background: #00804a !important;
    color: #ffffff !important;
    border-radius: 6px !important;
    padding: 12px 16px !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    text-decoration: none !important;
    border: none !important;
    transition: background 0.15s !important;
}

.minicart-wrapper .minicart-actions .checkout-button:hover {
    background: #006038 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

.minicart-wrapper .minicart-actions .cart-link {
    display: block !important;
    text-align: center !important;
    color: #18569f !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    text-decoration: none !important;
    padding: 4px 0 !important;
    transition: color 0.15s !important;
}

.minicart-wrapper .minicart-actions .cart-link:hover {
    color: #0f3d74 !important;
    text-decoration: underline !important;
}

/* Komunikaty błędów/sukcesu */
.minicart-message {
    font-size: 12px !important;
    padding: 8px 16px !important;
}
/* ============================================ *
 * MOJE OPINIE O PRODUKTACH — review-customer-index
 * ============================================ */

body.review-customer-index .page-title h1,
body.review-customer-index .page-title h2 {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #1a1a2e !important;
    padding-left: 22px !important;
    position: relative !important;
    margin-bottom: 20px !important;
}

body.review-customer-index .page-title h2::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 4px !important;
    height: 100% !important;
    background: #18569f !important;
    border-radius: 2px !important;
}

/* Pager */
body.review-customer-index .pager {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    padding: 10px 0 !important;
    margin-bottom: 8px !important;
    border: none !important;
    background: none !important;
}

body.review-customer-index .pager .count-container {
    display: flex !important;
    align-items: center !important;
    gap: 16px !important;
}

body.review-customer-index .pager .amount {
    font-size: 12px !important;
    color: #888888 !important;
    margin: 0 !important;
}

body.review-customer-index .pager .amount strong {
    color: #1a1a2e !important;
    font-weight: 700 !important;
}

body.review-customer-index .pager .limiter {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-size: 12px !important;
    color: #888888 !important;
}

body.review-customer-index .pager .limiter select {
    height: 30px !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 4px !important;
    font-size: 12px !important;
    padding: 0 8px !important;
    color: #333333 !important;
}

/* Tabela opinii */
body.review-customer-index #my-reviews-table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    background: #ffffff !important;
    margin-bottom: 16px !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif !important;
}

body.review-customer-index #my-reviews-table thead th {
    background: #f8fafc !important;
    color: #888888 !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
    padding: 12px 16px !important;
    border-bottom: 1px solid #e8eef5 !important;
    white-space: nowrap !important;
}

body.review-customer-index #my-reviews-table tbody tr {
    transition: background 0.12s !important;
}

body.review-customer-index #my-reviews-table tbody tr:hover {
    background: #fafcff !important;
}

body.review-customer-index #my-reviews-table tbody td {
    padding: 14px 16px !important;
    font-size: 13px !important;
    color: #444444 !important;
    border-bottom: 1px solid #f0f4f8 !important;
    vertical-align: middle !important;
}

body.review-customer-index #my-reviews-table tbody tr:last-child td {
    border-bottom: none !important;
}

/* Data */
body.review-customer-index #my-reviews-table .nobr {
    white-space: nowrap !important;
    color: #888888 !important;
    font-size: 12px !important;
}

/* Nazwa produktu */
body.review-customer-index #my-reviews-table .product-name {
    margin: 0 !important;
    font-size: 13px !important;
    font-weight: 700 !important;
}

body.review-customer-index #my-reviews-table .product-name a {
    color: #1a1a2e !important;
    text-decoration: none !important;
}

body.review-customer-index #my-reviews-table .product-name a:hover {
    color: #18569f !important;
}

/* Treść opinii */
body.review-customer-index #my-reviews-table tbody td:nth-child(4) {
    color: #555555 !important;
    font-style: italic !important;
}

/* Link "Zobacz szczegóły" */
body.review-customer-index #my-reviews-table a.nobr {
    color: #18569f !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    white-space: nowrap !important;
}

body.review-customer-index #my-reviews-table a.nobr:hover {
    text-decoration: underline !important;
}

/* Alternating rows */
body.review-customer-index #my-reviews-table tbody tr.odd {
    background: #ffffff !important;
}

body.review-customer-index #my-reviews-table tbody tr.even {
    background: #fafcff !important;
}

/* Buttons set - "Powrót" */
body.review-customer-index .buttons-set {
    margin-top: 16px !important;
    border: none !important;
    padding: 0 !important;
}

body.review-customer-index .buttons-set .back-link a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.review-customer-index .buttons-set .back-link a:hover {
    text-decoration: underline !important;
}
/* ============================================ *
 * RIGHT SIDEBAR — bloki boczne
 * ============================================ */

/* Wspólny wrapper dla wszystkich bloków w sidebar */
.col-right.sidebar .block,
.col-left.sidebar .block-reorder,
.col-left.sidebar .block-compare,
.col-left.sidebar .block-viewed {
    background: #ffffff;
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 16px !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

/* Nagłówek bloku */
.col-right.sidebar .block .block-title,
.col-left.sidebar .block-reorder .block-title,
.col-left.sidebar .block-compare .block-title,
.col-left.sidebar .block-viewed .block-title {
    padding: 12px 16px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e8eef5 !important;
    border-top: none !important;
    margin: 0 !important;
    cursor: default !important;
}

.col-right.sidebar .block .block-title strong,
.col-right.sidebar .block .block-title strong span,
.col-left.sidebar .block-reorder .block-title strong,
.col-left.sidebar .block-reorder .block-title strong span {
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #888888 !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    display: block !important;
    width: auto !important;
    cursor: default !important;
    font-style: normal !important;
}

/* Usuń strzałkę accordion z mobile */
.col-right.sidebar .block .block-title strong:after,
.col-right.sidebar .block .block-title strong:before {
    display: none !important;
}

.col-left.sidebar .block-blog .block-title strong,    
.col-right.sidebar .block-blog .block-title strong {
    background: none;
    padding: 0;
}

/* Zawartość bloku */
.col-right.sidebar .block .block-content {
    padding: 0 !important;
    border: none !important;
    margin: 0 !important;
}

/* ---- OSTATNIO OGLĄDANE / BLOCK-VIEWED ---- */

.col-right.sidebar .block-viewed .mini-products-list,
.col-right.sidebar .block-compared .mini-products-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.col-right.sidebar .block-viewed .mini-products-list li,
.col-right.sidebar .block-compared .mini-products-list li {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 14px !important;
    border-bottom: 1px solid #f0f4f8 !important;
}

.col-right.sidebar .block-viewed .mini-products-list li:last-child,
.col-right.sidebar .block-compared .mini-products-list li:last-child {
    border-bottom: none !important;
}

.col-right.sidebar .block-viewed .mini-products-list .product-image,
.col-right.sidebar .block-compared .mini-products-list .product-image {
    flex-shrink: 0 !important;
    width: 44px !important;
    height: 44px !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    background: #f8fafc !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.col-right.sidebar .block-viewed .mini-products-list .product-image img,
.col-right.sidebar .block-compared .mini-products-list .product-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    display: block !important;
}

.col-right.sidebar .block-viewed .mini-products-list .product-details,
.col-right.sidebar .block-compared .mini-products-list .product-details {
    flex: 1 !important;
    min-width: 0 !important;
}

.col-right.sidebar .block-viewed .mini-products-list .product-name,
.col-right.sidebar .block-compared .mini-products-list .product-name {
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin: 0 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.col-right.sidebar .block-viewed .mini-products-list .product-name a,
.col-right.sidebar .block-compared .mini-products-list .product-name a {
    color: #1a1a2e !important;
    text-decoration: none !important;
}

.col-right.sidebar .block-viewed .mini-products-list .product-name a:hover,
.col-right.sidebar .block-compared .mini-products-list .product-name a:hover {
    color: #18569f !important;
}

/* ---- OSTATNIO PORÓWNYWANE ---- */

.col-right.sidebar .block-compared .block-content ol {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.col-right.sidebar .block-compared .block-content li {
    padding: 10px 14px !important;
    border-bottom: 1px solid #f0f4f8 !important;
    font-size: 12px !important;
    color: #444444 !important;
    line-height: 1.4 !important;
}

.col-right.sidebar .block-compared .block-content li:last-child {
    border-bottom: none !important;
}

.col-right.sidebar .block-compared .block-content .actions {
    padding: 10px 14px !important;
    border-top: 1px solid #e8eef5 !important;
    text-align: center !important;
}

.col-right.sidebar .block-compared .block-content .actions a {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #18569f !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* ---- MOJA LISTA ŻYCZEŃ (sidebar) ---- */

.col-right.sidebar .block-wishlist .block-subtitle {
    font-size: 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    color: #888888 !important;
    padding: 10px 14px !important;
    border-bottom: 1px solid #f0f4f8 !important;
    margin: 0 !important;
    display: block !important;
}

.col-right.sidebar .block-wishlist .mini-products-list {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.col-right.sidebar .block-wishlist .mini-products-list li {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    padding: 10px 14px !important;
    border-bottom: 1px solid #f0f4f8 !important;
}

.col-right.sidebar .block-wishlist .mini-products-list li:last-child {
    border-bottom: none !important;
}

.col-right.sidebar .block-wishlist .mini-products-list .product-image {
    flex-shrink: 0 !important;
    width: 44px !important;
    height: 44px !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 6px !important;
    overflow: hidden !important;
    background: #f8fafc !important;
}

.col-right.sidebar .block-wishlist .mini-products-list .product-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    display: block !important;
}

.col-right.sidebar .block-wishlist .mini-products-list .product-details {
    flex: 1 !important;
    min-width: 0 !important;
}

.col-right.sidebar .block-wishlist .mini-products-list .product-name {
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin: 0 0 4px !important;
}

.col-right.sidebar .block-wishlist .mini-products-list .product-name a {
    color: #1a1a2e !important;
    text-decoration: none !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.col-right.sidebar .block-wishlist .mini-products-list .product-name a:hover {
    color: #18569f !important;
}

.col-right.sidebar .block-wishlist .mini-products-list .price-box .price {
    font-size: 12px !important;
    font-weight: 800 !important;
    color: #18569f !important;
}

.col-right.sidebar .block-wishlist .mini-products-list .link-cart {
    display: inline-block !important;
    margin-top: 4px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    color: #00804a !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-decoration: none !important;
}

.col-right.sidebar .block-wishlist .mini-products-list .link-cart:hover {
    text-decoration: underline !important;
}

.col-right.sidebar .block-wishlist .actions {
    padding: 12px 14px !important;
    border-top: 1px solid #e8eef5 !important;
    text-align: center !important;
}

.col-right.sidebar .block-wishlist .actions a {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #18569f !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.col-right.sidebar .block-wishlist .actions a:hover {
    text-decoration: underline !important;
}

/* ---- MOJE ZAMÓWIENIA (block-reorder) ---- */

.col-right.sidebar .block-reorder .block-subtitle,
.col-left.sidebar .block-reorder .block-subtitle {
    font-size: 10px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    color: #888888 !important;
    padding: 10px 14px !important;
    border-bottom: 1px solid #f0f4f8 !important;
    margin: 0 !important;
    display: block !important;
}

.col-right.sidebar .block-reorder #cart-sidebar-reorder,
.col-left.sidebar .block-reorder #cart-sidebar-reorder {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.col-right.sidebar .block-reorder #cart-sidebar-reorder li.item,
.col-left.sidebar .block-reorder #cart-sidebar-reorder li.item {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 10px 14px !important;
    border-bottom: 1px solid #f0f4f8 !important;
}

.col-right.sidebar .block-reorder #cart-sidebar-reorder li.item:last-child,
.col-left.sidebar .block-reorder #cart-sidebar-reorder li.item:last-child {
    border-bottom: none !important;
}

.col-right.sidebar .block-reorder #cart-sidebar-reorder li.item input[type="checkbox"],
.col-left.sidebar .block-reorder #cart-sidebar-reorder li.item input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    flex-shrink: 0 !important;
    accent-color: #18569f !important;
    margin: 0 !important;
    cursor: pointer !important;
}

.col-right.sidebar .block-reorder #cart-sidebar-reorder li.item .product-name,
.col-left.sidebar .block-reorder #cart-sidebar-reorder li.item .product-name {
    flex: 1 !important;
    margin: 0 !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
}

.col-right.sidebar .block-reorder #cart-sidebar-reorder li.item .product-name a,
.col-left.sidebar .block-reorder #cart-sidebar-reorder li.item .product-name a {
    color: #1a1a2e !important;
    text-decoration: none !important;
}

.col-right.sidebar .block-reorder #cart-sidebar-reorder li.item .product-name a:hover,
.col-left.sidebar .block-reorder #cart-sidebar-reorder li.item .product-name a:hover {
    color: #18569f !important;
}

.col-right.sidebar .block-reorder .block-content .actions,
.col-left.sidebar .block-reorder .block-content .actions {
    padding: 12px 14px !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
    border-top: 1px solid #e8eef5 !important;
}

.col-right.sidebar .block-reorder .block-content .actions .button.btn-cart,
.col-left.sidebar .block-reorder .block-content .actions .button.btn-cart {
    background: #00804a !important;
    color: #ffffff !important;
    border-radius: 6px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    padding: 8px 14px !important;
    border: none !important;
    height: auto !important;
    cursor: pointer !important;
    transition: background 0.15s !important;
    width: 100% !important;
    text-align: center !important;
}

.col-right.sidebar .block-reorder .block-content .actions .button.btn-cart:hover,
.col-left.sidebar .block-reorder .block-content .actions .button.btn-cart:hover {
    background: #005c34 !important;
}

.col-right.sidebar .block-reorder .block-content .actions .button.btn-cart span,
.col-right.sidebar .block-reorder .block-content .actions .button.btn-cart span span,
.col-left.sidebar .block-reorder .block-content .actions .button.btn-cart span,
.col-left.sidebar .block-reorder .block-content .actions .button.btn-cart span span {
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
}

.col-right.sidebar .block-reorder .block-content .actions a,
.col-left.sidebar .block-reorder .block-content .actions a {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #18569f !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    white-space: nowrap !important;
}

.col-right.sidebar .block-reorder .block-content .actions a:hover,
.col-left.sidebar .block-reorder .block-content .actions a:hover {
    text-decoration: underline !important;
}
/* ============================================ *
 * LOGOWANIE / REJESTRACJA / RESET HASŁA
 * ============================================ */

/* Nadpisania styles.css dla stron logowania/rejestracji/reset hasła */

/* styles.css: .form-instructions — kursywa Georgia → resetujemy */
body.customer-account-login form .form-instructions,
body.customer-account-create form .form-instructions,
body.customer-account-forgotpassword form .form-instructions {
    font-style: normal !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif !important;
    font-size: 13px !important;
    color: #555555 !important;
}

/* styles.css: .fieldset p.required float:right → blokujemy */
body.customer-account-login .fieldset p.required,
body.customer-account-create .fieldset p.required,
body.customer-account-forgotpassword .fieldset p.required {
    float: none !important;
    margin-bottom: 0 !important;
}

/* styles.css: .form-list > li margin-bottom → kontrolujemy sami */
body.customer-account-login .form-list > li,
body.customer-account-create .form-list > li,
body.customer-account-forgotpassword .form-list > li {
    margin-bottom: 0 !important;
}

/* styles.css: .form-list .field, .wide, .control margin-bottom */
body.customer-account-create .form-list .field {
    margin-bottom: 0 !important;
}

/* styles.css: validation-advice czerwony tekst — zostawiamy */
body.customer-account-login .scaffold-form label:first-child {
    width: auto !important;
}

body.customer-account-login .col2-set .buttons-set {
    border-top: 1px solid #e8eef5 !important;
}

body.customer-account-login .col2-set .buttons-set button,
body.customer-account-login .col2-set .buttons-set .button {
    float: none !important;
    min-width: auto !important;
    margin: 0 !important;
}

/* Usuń padding i border-left z styles.css — zastępujemy kartami */
body.customer-account-login .col2-set .col-1,
body.customer-account-login .col2-set .col-2 {
    padding-top: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-top: 0 !important;
    border-left: none !important;
}

/* Rejestracja — usuń margin-left z styles.css */
body.customer-account-create .fieldset,
body.customer-account-create .buttons-set {
    margin-left: 0 !important;
    max-width: none !important;
}

body.customer-account-create .scaffold-form label:first-child {
    width: auto !important;
}

/* Reset hasła — nadpisz margin-left i max-width */
body.customer-account-forgotpassword .fieldset,
body.customer-account-forgotpassword .buttons-set {
    margin-left: 0 !important;
}

/* Wspólne — nagłówek strony */
body.customer-account-login .page-title h1,
body.customer-account-create .page-title h1,
body.customer-account-forgotpassword .page-title h1 {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #1a1a2e !important;
    padding-left: 22px !important;
    position: relative !important;
    margin-bottom: 24px !important;
}

body.customer-account-login .page-title h1::before,
body.customer-account-create .page-title h1::before,
body.customer-account-forgotpassword .page-title h1::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 4px !important;
    height: 100% !important;
    background: #18569f !important;
    border-radius: 2px !important;
}

/* ---- STRONA LOGOWANIA ---- */

body.customer-account-login .account-login {
    max-width: 900px !important;
}

body.customer-account-login .col2-set {
    display: flex !important;
    gap: 24px !important;
    align-items: flex-start !important;
}

body.customer-account-login .col2-set .col-1,
body.customer-account-login .col2-set .col-2 {
    flex: 1 !important;
    background: #ffffff !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
}

/* Nagłówki sekcji */
body.customer-account-login .col2-set h2 {
    font-size: 14px !important;
    font-weight: 800 !important;
    color: #888888 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    padding: 14px 20px !important;
    margin: 0 !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e8eef5 !important;
}

body.customer-account-login .col2-set .content {
    padding: 20px !important;
}

body.customer-account-login .col2-set .content.fieldset {
    padding-bottom: 0 !important;
}

/* Nowi użytkownicy — lista korzyści */
body.customer-account-login .new-users .form-instructions {
    font-size: 13px !important;
    color: #555555 !important;
    margin-bottom: 12px !important;
}

body.customer-account-login .new-users ul.benefits {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 0 8px 0 !important;
}

body.customer-account-login .new-users ul.benefits li {
    font-size: 13px !important;
    color: #444444 !important;
    padding: 5px 0 5px 20px !important;
    position: relative !important;
    border-bottom: 1px solid #f0f4f8 !important;
}

body.customer-account-login .new-users ul.benefits li:last-child {
    border-bottom: none !important;
}

body.customer-account-login .new-users ul.benefits li::before {
    content: '✓' !important;
    position: absolute !important;
    left: 0 !important;
    color: #00804a !important;
    font-weight: 700 !important;
    font-size: 12px !important;
}

/* Formularz logowania */
body.customer-account-login .form-instructions {
    font-size: 13px !important;
    color: #555555 !important;
    margin-bottom: 12px !important;
}

body.customer-account-login .required {
    font-size: 11px !important;
    color: #aab8c8 !important;
    margin-bottom: 12px !important;
}

body.customer-account-login .form-list {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

body.customer-account-login .form-list li {
    margin-bottom: 14px !important;
}

body.customer-account-login .form-list label {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #555555 !important;
    display: block !important;
    margin-bottom: 5px !important;
}

body.customer-account-login .form-list .input-text {
    width: 100% !important;
    height: 42px !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 6px !important;
    padding: 0 12px !important;
    font-size: 14px !important;
    color: #1a1a2e !important;
    transition: border-color 0.15s !important;
    box-sizing: border-box !important;
}

body.customer-account-login .form-list .input-text:focus {
    border-color: #18569f !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(24,86,159,.1) !important;
}

/* Link "Nie pamiętasz hasła" */
body.customer-account-login .form-list a.f-left {
    font-size: 12px !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.customer-account-login .form-list a.f-left:hover {
    text-decoration: underline !important;
}

/* Przyciski */
body.customer-account-login .buttons-set {
    padding: 16px 20px !important;
    border-top: 1px solid #e8eef5 !important;
    margin: 0 !important;
    display: flex !important;
    justify-content: flex-end !important;
}

body.customer-account-login .new-users .buttons-set {
    justify-content: flex-start !important;
}

body.customer-account-login .buttons-set .button {
    background: #18569f !important;
    color: #ffffff !important;
    border-radius: 6px !important;
    padding: 10px 24px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    border: none !important;
    cursor: pointer !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
}

body.customer-account-login .buttons-set .button:hover {
    background: #0f3d74 !important;
}

body.customer-account-login .buttons-set .button span span {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
}

/* Mobile logowanie */
@media only screen and (max-width: 770px) {
    body.customer-account-login .col2-set {
        flex-direction: column !important;
    }
    body.customer-account-login .col2-set .col-1,
    body.customer-account-login .col2-set .col-2 {
        width: 100% !important;
    }
}

/* ---- REJESTRACJA ---- */

body.customer-account-create .account-create {
    max-width: 700px !important;
}

body.customer-account-create .fieldset {
    background: #ffffff !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

body.customer-account-create .fieldset > .form-instructions,
body.customer-account-create .fieldset > .required,
body.customer-account-create .fieldset > .form-list {
    padding: 0 24px !important;
}

body.customer-account-create .fieldset > .form-instructions {
    padding-top: 20px !important;
    font-size: 13px !important;
    color: #555555 !important;
}

body.customer-account-create .fieldset > .required {
    font-size: 11px !important;
    color: #aab8c8 !important;
    margin-bottom: 4px !important;
}

body.customer-account-create .form-list {
    list-style: none !important;
    padding: 0 24px !important;
    margin: 0 !important;
}

body.customer-account-create .form-list > li {
    padding: 10px 0 !important;
    border-bottom: 1px solid #f0f4f8 !important;
}

body.customer-account-create .form-list > li:last-child {
    border-bottom: none !important;
}

body.customer-account-create .form-list label {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #555555 !important;
    display: block !important;
    margin-bottom: 5px !important;
}

body.customer-account-create .form-list .input-text {
    width: 100% !important;
    height: 42px !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 6px !important;
    padding: 0 12px !important;
    font-size: 14px !important;
    color: #1a1a2e !important;
    transition: border-color 0.15s !important;
    box-sizing: border-box !important;
}

body.customer-account-create .form-list .input-text:focus {
    border-color: #18569f !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(24,86,159,.1) !important;
}

/* Flex na parach pól (imię/nazwisko, hasło/potwierdzenie) */
body.customer-account-create .form-list li.fields {
    display: flex !important;
    gap: 16px !important;
}

body.customer-account-create .form-list li.fields .field,
body.customer-account-create .form-list li.fields .customer-name > div {
    flex: 1 !important;
    margin-bottom: 0 !important;
}

/* customer-name (imię + nazwisko) — flex row */
body.customer-account-create .form-list .customer-name {
    display: flex !important;
    gap: 16px !important;
    flex: 1 !important;
}

body.customer-account-create .form-list .customer-name .field {
    flex: 1 !important;
    margin-bottom: 0 !important;
}

/* Informacja o haśle */
body.customer-account-create .form-instructions {
    font-size: 11px !important;
    color: #aab8c8 !important;
    margin: 4px 0 0 0 !important;
}

/* Checkbox zgody i newsletter */
body.customer-account-create .form-list li.control,
body.customer-account-create .tlabs-consents-consent-checkout {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    padding: 10px 0 !important;
}

body.customer-account-create .form-list li.control label,
body.customer-account-create .tlabs-consents-consent-checkout label {
    font-size: 12px !important;
    font-weight: 400 !important;
    color: #555555 !important;
    line-height: 1.5 !important;
    margin: 0 !important;
}

/* Przyciski rejestracji */
body.customer-account-create .buttons-set {
    padding: 16px 24px !important;
    border-top: 1px solid #e8eef5 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin: 0 !important;
}

body.customer-account-create .buttons-set .back-link a {
    font-size: 12px !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.customer-account-create .buttons-set .button {
    background: #00804a !important;
    color: #ffffff !important;
    border-radius: 6px !important;
    padding: 10px 24px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    border: none !important;
    cursor: pointer !important;
}

body.customer-account-create .buttons-set .button:hover {
    background: #005c34 !important;
}

body.customer-account-create .buttons-set .button span span {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
}

/* ---- RESET HASŁA ---- */

body.customer-account-forgotpassword .fieldset {
    background: #ffffff !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    padding: 0 !important;
    max-width: 500px !important;
}

body.customer-account-forgotpassword .fieldset h2 {
    font-size: 14px !important;
    font-weight: 800 !important;
    color: #888888 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    padding: 14px 20px !important;
    margin: 0 !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e8eef5 !important;
}

body.customer-account-forgotpassword .fieldset .form-instructions {
    font-size: 13px !important;
    color: #555555 !important;
    padding: 16px 20px 0 !important;
    margin: 0 !important;
}

body.customer-account-forgotpassword .fieldset .required {
    font-size: 11px !important;
    color: #aab8c8 !important;
    padding: 4px 20px 0 !important;
    margin: 0 !important;
}

body.customer-account-forgotpassword .form-list {
    list-style: none !important;
    padding: 8px 20px 16px !important;
    margin: 0 !important;
}

body.customer-account-forgotpassword .form-list label {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #555555 !important;
    display: block !important;
    margin-bottom: 5px !important;
}

body.customer-account-forgotpassword .form-list .input-text {
    width: 100% !important;
    height: 42px !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 6px !important;
    padding: 0 12px !important;
    font-size: 14px !important;
    color: #1a1a2e !important;
    transition: border-color 0.15s !important;
    box-sizing: border-box !important;
}

body.customer-account-forgotpassword .form-list .input-text:focus {
    border-color: #18569f !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(24,86,159,.1) !important;
}

body.customer-account-forgotpassword .buttons-set {
    padding: 14px 20px !important;
    border-top: 1px solid #e8eef5 !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin: 0 !important;
    max-width: 500px !important;
}

body.customer-account-forgotpassword .buttons-set .back-link a {
    font-size: 12px !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.customer-account-forgotpassword .buttons-set .button {
    background: #18569f !important;
    color: #ffffff !important;
    border-radius: 6px !important;
    padding: 10px 24px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    border: none !important;
    cursor: pointer !important;
}

body.customer-account-forgotpassword .buttons-set .button:hover {
    background: #0f3d74 !important;
}

body.customer-account-forgotpassword .buttons-set .button span span {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
}

/* ============================================ *
 * FORMULARZ KONTAKTOWY — contacts-index-index
 * ============================================ */

body.contacts-index-index .page-title h1 {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #1a1a2e !important;
    padding-left: 22px !important;
    position: relative !important;
    margin-bottom: 24px !important;
}

body.contacts-index-index .page-title h1::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 4px !important;
    height: 100% !important;
    background: #18569f !important;
    border-radius: 2px !important;
}

/* Karta formularza */
body.contacts-index-index #contactForm .fieldset {
    background: #ffffff !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}

/* Nagłówek karty */
body.contacts-index-index #contactForm .fieldset h2.legend {
    font-size: 10px !important;
    font-weight: 800 !important;
    color: #888888 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    padding: 14px 20px !important;
    margin: 0 !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e8eef5 !important;
}

/* Nadpisanie styles.css — p.required float:right */
body.contacts-index-index .fieldset p.required {
    float: none !important;
    font-size: 11px !important;
    color: #aab8c8 !important;
    padding: 8px 20px 0 !important;
    margin: 0 !important;
}

/* Lista pól */
body.contacts-index-index .form-list {
    list-style: none !important;
    padding: 0 20px !important;
    margin: 0 !important;
}

body.contacts-index-index .form-list > li {
    padding: 12px 0 !important;
    border-bottom: 1px solid #f0f4f8 !important;
    margin: 0 !important;
}

body.contacts-index-index .form-list > li:last-child {
    border-bottom: none !important;
}

/* Flex na parze Nazwa + Email */
body.contacts-index-index .form-list li.fields {
    display: flex !important;
    gap: 16px !important;
}

body.contacts-index-index .form-list li.fields .field {
    flex: 1 !important;
    margin-bottom: 0 !important;
}

/* Etykiety */
body.contacts-index-index .form-list label {
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #555555 !important;
    display: block !important;
    margin-bottom: 5px !important;
    width: auto !important;
    float: none !important;
}

/* Pola input */
body.contacts-index-index .form-list .input-text {
    width: 100% !important;
    height: 42px !important;
    border: 1px solid #d0dae6 !important;
    border-radius: 6px !important;
    padding: 0 12px !important;
    font-size: 14px !important;
    color: #1a1a2e !important;
    transition: border-color 0.15s !important;
    box-sizing: border-box !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif !important;
}

body.contacts-index-index .form-list .input-text:focus {
    border-color: #18569f !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(24,86,159,.1) !important;
}

/* Textarea */
body.contacts-index-index .form-list textarea.input-text {
    height: 120px !important;
    padding: 10px 12px !important;
    resize: vertical !important;
    line-height: 1.6 !important;
}

/* Nadpisanie styles.css — .form-instructions kursywa */
body.contacts-index-index form .form-instructions {
    font-style: normal !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif !important;
}

/* Przyciski */
body.contacts-index-index .buttons-set {
    padding: 14px 20px !important;
    border-top: 1px solid #e8eef5 !important;
    display: flex !important;
    justify-content: flex-end !important;
    margin: 0 !important;
}

body.contacts-index-index .buttons-set .button {
    background: #00804a !important;
    color: #ffffff !important;
    border-radius: 6px !important;
    padding: 10px 28px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    border: none !important;
    cursor: pointer !important;
    transition: background 0.15s !important;
}

body.contacts-index-index .buttons-set .button:hover {
    background: #005c34 !important;
}

body.contacts-index-index .buttons-set .button span span {
    font-size: 13px !important;
    font-weight: 700 !important;
    color: #ffffff !important;
}

/* Mobile */
@media only screen and (max-width: 600px) {
    body.contacts-index-index .form-list li.fields {
        flex-direction: column !important;
        gap: 0 !important;
    }
}

/* ============================================ *
 * BLOG — blog-index-list, blog-post-view
 * ============================================ */

/* Grid 2 kolumny na liście postów */
body.blog-index-list .col-main,
body.blog-cat-view .col-main {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
    align-items: start !important;
}

/* Toolbar i mapa popup — pełna szerokość */
body.blog-index-list .col-main .oz-toolbar,
body.blog-index-list .col-main #map-popup,
body.blog-index-list .col-main #messages_product_view,
body.blog-cat-view .col-main .oz-toolbar,
body.blog-cat-view .col-main #map-popup,
body.blog-cat-view .col-main #messages_product_view {
    grid-column: 1 / -1 !important;
}

/* Wrapper posta — karta */
body.blog-index-list .postWrapper,
body.blog-cat-view .postWrapper,
body.blog-post-view .postWrapper {
    background: #ffffff !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    margin-bottom: 0 !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif !important;
}

@media only screen and (max-width: 770px) {
    body.blog-index-list .col-main,
    body.blog-cat-view .col-main {
        grid-template-columns: 1fr !important;
    }
}

/* Nagłówek posta */
body.blog-index-list .postTitle,
body.blog-cat-view .postTitle,
body.blog-post-view .postTitle {
    padding: 18px 20px 14px !important;
    border-bottom: 1px solid #f0f4f8 !important;
}

body.blog-index-list .postTitle h2,
body.blog-cat-view .postTitle h2,
body.blog-post-view .postTitle h2 {
    font-size: 17px !important;
    font-weight: 800 !important;
    color: #1a1a2e !important;
    margin: 0 0 6px 0 !important;
    line-height: 1.3 !important;
}

body.blog-index-list .postTitle h2 a,
body.blog-cat-view .postTitle h2 a,
body.blog-post-view .postTitle h2 a {
    color: #1a1a2e !important;
    text-decoration: none !important;
}

body.blog-index-list .postTitle h2 a:hover,
body.blog-cat-view .postTitle h2 a:hover,
body.blog-post-view .postTitle h2 a:hover {
    color: #18569f !important;
}

/* Data posta */
body.blog-index-list .postTitle h3,
body.blog-cat-view .postTitle h3,
body.blog-post-view .postTitle h3 {
    font-size: 11px !important;
    font-weight: 400 !important;
    color: #aab8c8 !important;
    margin: 0 !important;
    text-transform: none !important;
    border: none !important;
    padding: 0 !important;
}

/* Treść posta */
body.blog-index-list .postContent,
body.blog-cat-view .postContent,
body.blog-post-view .postContent {
    padding: 16px 20px !important;
    font-size: 14px !important;
    color: #444444 !important;
    line-height: 1.7 !important;
}

body.blog-index-list .postContent p,
body.blog-cat-view .postContent p,
body.blog-post-view .postContent p {
    margin-bottom: 12px !important;
}

body.blog-index-list .postContent img,
body.blog-cat-view .postContent img,
body.blog-post-view .postContent img {
    max-width: 100% !important;
    height: auto !important;
    border-radius: 6px !important;
}

/* Link "Read More" */
body.blog-index-list .postContent a.aw-blog-read-more,
body.blog-cat-view .postContent a.aw-blog-read-more,
body.blog-post-view .postContent a.aw-blog-read-more {
    display: inline-block !important;
    margin-top: 8px !important;
    color: #18569f !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

body.blog-index-list .postContent a.aw-blog-read-more:hover,
body.blog-cat-view .postContent a.aw-blog-read-more:hover,
body.blog-post-view .postContent a.aw-blog-read-more:hover {
    text-decoration: underline !important;
}

/* Tagi */
body.blog-index-list .tags,
body.blog-cat-view .tags,
body.blog-post-view .tags {
    padding: 0 20px !important;
}

/* Szczegóły — "Posted in / By" */
body.blog-index-list .postDetails,
body.blog-cat-view .postDetails,
body.blog-post-view .postDetails {
    padding: 10px 20px 14px !important;
    font-size: 11px !important;
    color: #aab8c8 !important;
    border-top: 1px solid #f0f4f8 !important;
}

body.blog-index-list .postDetails a,
body.blog-cat-view .postDetails a,
body.blog-post-view .postDetails a {
    color: #18569f !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

body.blog-index-list .postDetails a:hover,
body.blog-cat-view .postDetails a:hover,
body.blog-post-view .postDetails a:hover {
    text-decoration: underline !important;
}

/* ---- SIDEBAR blok Blog ---- */
.block-blog {
    background: #ffffff !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    margin-bottom: 16px !important;
}

.block-blog .block-title {
    padding: 12px 16px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e8eef5 !important;
    margin: 0 !important;
}

.block-blog .block-title strong,
.block-blog .block-title strong span {
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #888888 !important;
}

.block-blog .block-content {
    padding: 0 !important;
}

.block-blog .menu-recent,
.block-blog .menu-categories {
    padding: 12px 16px !important;
    border-bottom: 1px solid #f0f4f8 !important;
}

.block-blog .menu-categories {
    border-bottom: none !important;
    margin: 5px 9px;
}

.block-blog h5 {
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    color: #888888 !important;
    margin: 0 0 8px 0 !important;
}

.block-blog ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.block-blog ul li {
    padding: 4px 0 !important;
    font-size: 13px !important;
}

.block-blog ul li a {
    color: #1a1a2e !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

.block-blog ul li a:hover {
    color: #18569f !important;
}
.blog-title,
.blog-cat-title {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #1a1a2e !important;
    padding-left: 22px !important;
    position: relative !important;
    margin-bottom: 0 !important;
    border-left: 0 !important;
}

.blog-title::before,
.blog-cat-title::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 4px !important;
    height: 100% !important;
    background: #18569f !important;
    border-radius: 2px !important;
}

/* ============================================ *
 * FAQ — Tlabs_FAQ
 * ============================================ */

/* ---- Strona listy / kategorii ---- */

.tlabs-faq-page {
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

.tlabs-faq-title {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #1a1a2e !important;
    padding-left: 22px !important;
    position: relative !important;
    margin-bottom: 24px !important;
    border-left: 0 !important;
}

.tlabs-faq-title::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 4px !important;
    height: 100% !important;
    background: #18569f !important;
    border-radius: 2px !important;
}

/* ---- Akordeon ---- */

.tlabs-faq-list {
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 20px;
}

/* Pytanie — nagłówek akordeonu */
.tlabs-faq-question {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 16px 20px !important;
    margin: 0 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #1a1a2e !important;
    background: #ffffff !important;
    border-bottom: 1px solid #f0f4f8 !important;
    cursor: pointer !important;
    transition: background 0.15s, color 0.15s !important;
    user-select: none !important;
}

.tlabs-faq-question:hover {
    background: #f8fafc !important;
    color: #18569f !important;
}

.tlabs-faq-question.ui-state-active {
    background: #f0f4f8 !important;
    color: #18569f !important;
    border-bottom-color: #e0e8f2 !important;
}

/* Ikona +/- */
.tlabs-faq-question .faq-icon {
    flex-shrink: 0 !important;
    width: 20px !important;
    height: 20px !important;
    border: 2px solid #18569f !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: relative !important;
    transition: background 0.15s !important;
}

.tlabs-faq-question .faq-icon::before,
.tlabs-faq-question .faq-icon::after {
    content: '' !important;
    position: absolute !important;
    background: #18569f !important;
    border-radius: 1px !important;
    transition: transform 0.2s !important;
}

/* pozioma kreska */
.tlabs-faq-question .faq-icon::before {
    width: 9px !important;
    height: 2px !important;
}

/* pionowa kreska */
.tlabs-faq-question .faq-icon::after {
    width: 2px !important;
    height: 9px !important;
}

/* Gdy otwarte — chowamy pionową kreskę (= minus) */
.tlabs-faq-question.ui-state-active .faq-icon::after {
    transform: scaleY(0) !important;
}

.tlabs-faq-question.ui-state-active .faq-icon {
    background: #18569f !important;
}

.tlabs-faq-question.ui-state-active .faq-icon::before,
.tlabs-faq-question.ui-state-active .faq-icon::after {
    background: #ffffff !important;
}

/* Kontener odpowiedzi */
.tlabs-faq-answer-container {
    border-bottom: 1px solid #f0f4f8 !important;
}

.tlabs-faq-answer-container:last-child {
    border-bottom: none !important;
}

.tlabs-faq-answer-inner {
    padding: 16px 20px 20px 52px !important;
    background: #fafcff !important;
}

/* Treść odpowiedzi */
.tlabs-faq-answer {
    font-size: 14px !important;
    color: #444444 !important;
    line-height: 1.7 !important;
}

.tlabs-faq-answer p {
    margin-bottom: 10px !important;
}

.tlabs-faq-answer a {
    color: #18569f !important;
    font-weight: 600 !important;
}

/* Meta — kategoria */
.tlabs-faq-meta {
    font-size: 11px !important;
    color: #888888 !important;
    margin-bottom: 10px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.tlabs-faq-meta strong {
    color: #18569f !important;
}

/* Permalink */
.tlabs-faq-permalink {
    margin-top: 12px !important;
    font-size: 11px !important;
}

.tlabs-faq-permalink a {
    color: #aab8c8 !important;
    font-weight: 400 !important;
    text-decoration: none !important;
}

.tlabs-faq-permalink a:hover {
    color: #18569f !important;
}

/* Brak pytań */
.tlabs-faq-empty {
    color: #888888 !important;
    font-size: 14px !important;
    padding: 20px 0 !important;
}

/* ---- Widok pojedynczego pytania ---- */

.tlabs-faq-view-page .tlabs-faq-item {
    background: #ffffff !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    margin-bottom: 20px !important;
}

.tlabs-faq-view-page .tlabs-faq-question {
    padding: 20px 24px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e8eef5 !important;
    font-size: 16px !important;
    cursor: default !important;
}

.tlabs-faq-view-page .tlabs-faq-question:hover {
    background: #f8fafc !important;
    color: #1a1a2e !important;
}

.tlabs-faq-view-page .tlabs-faq-answer {
    padding: 20px 24px !important;
    font-size: 14px !important;
    color: #444444 !important;
    line-height: 1.7 !important;
}

.tlabs-faq-views {
    padding: 0 24px 16px !important;
    font-size: 11px !important;
    color: #aab8c8 !important;
}

/* Breadcrumb */
.tlabs-faq-breadcrumb {
    font-size: 12px !important;
    color: #888888 !important;
    margin-bottom: 16px !important;
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
}

.tlabs-faq-breadcrumb a {
    color: #18569f !important;
    text-decoration: none !important;
    font-weight: 600 !important;
}

.tlabs-faq-breadcrumb a:hover {
    text-decoration: underline !important;
}

.tlabs-faq-breadcrumb .separator {
    color: #d0dae6 !important;
}

/* Nawigacja poprzednie/następne */
.tlabs-faq-navigation {
    display: flex !important;
    justify-content: space-between !important;
    gap: 16px !important;
    margin-bottom: 16px !important;
}

.tlabs-faq-nav-prev,
.tlabs-faq-nav-next {
    flex: 1 !important;
}

.tlabs-faq-nav-next {
    text-align: right !important;
}

.tlabs-faq-navigation a {
    font-size: 13px !important;
    color: #18569f !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    display: inline-block !important;
}

.tlabs-faq-navigation a:hover {
    text-decoration: underline !important;
}

/* Powrót do listy */
.tlabs-faq-back a {
    display: inline-flex !important;
    align-items: center !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: #18569f !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.tlabs-faq-back a:hover {
    text-decoration: underline !important;
}

/* ---- Sidebar — kategorie FAQ ---- */

.block-faq-categories {
    background: #ffffff !important;
    border: 1px solid #e0e8f2 !important;
    border-radius: 10px !important;
    overflow: hidden !important;
    margin-bottom: 16px !important;
}

.block-faq-categories .block-title {
    padding: 12px 16px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e8eef5 !important;
    margin: 0 !important;
}

.block-faq-categories .block-title strong span {
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #888888 !important;
}

.block-faq-categories .block-content {
    padding: 0 !important;
}

#faq-sidebar-nav {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

#faq-sidebar-nav li {
    border-bottom: 1px solid #f0f4f8 !important;
}

#faq-sidebar-nav li:last-child {
    border-bottom: none !important;
}

#faq-sidebar-nav li a {
    display: block !important;
    padding: 10px 16px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #444444 !important;
    text-decoration: none !important;
    transition: color 0.12s, background 0.12s !important;
}

#faq-sidebar-nav li a:hover {
    color: #18569f !important;
    background: #f8fafc !important;
}

#faq-sidebar-nav li.current a {
    color: #18569f !important;
    font-weight: 700 !important;
    background: #f0f4f8 !important;
    border-left: 3px solid #18569f !important;
    padding-left: 13px !important;
}

/* ============================================ *
 * STICKY FOOTER — stopka zawsze na dole
 * ============================================ */

/* Minimalna wysokość głównego obszaru treści —
   topbar (~36px) + header (~80px) + nav (~44px) + footer (~300px) ≈ 460px */
.main-container {
    min-height: calc(100vh - 440px);
}

/* FAQ — sidebar z kategoriami nad pytaniami na mobile */
@media only screen and (max-width: 770px) {
    body.tlabs-faq-index-index .main,
    body.tlabs-faq-category-index .main {
        display: flex !important;
        flex-direction: column !important;
    }

    body.tlabs-faq-index-index .col-left.sidebar,
    body.tlabs-faq-category-index .col-left.sidebar {
        order: -1 !important;
        width: 100% !important;
        float: none !important;
        margin: 0 0 16px 0 !important;
    }

    body.tlabs-faq-index-index .col-main,
    body.tlabs-faq-category-index .col-main {
        width: 100% !important;
        float: none !important;
    }
}
/* Blog — sidebar nad treścią na mobile */
@media only screen and (max-width: 770px) {
    body.blog-index-list .main,
    body.blog-cat-view .main,
    body.blog-post-view .main {
        display: flex !important;
        flex-direction: column !important;
    }

    body.blog-index-list .col-left.sidebar,
    body.blog-cat-view .col-left.sidebar,
    body.blog-post-view .col-left.sidebar {
        order: -1 !important;
        width: 100% !important;
        float: none !important;
        margin: 0 0 16px 0 !important;
    }

    body.blog-index-list .col-main,
    body.blog-cat-view .col-main,
    body.blog-post-view .col-main {
        width: 100% !important;
        float: none !important;
    }
}


/* ============================================================ *
 * UZUPEŁNIENIA NADPISAŃ — kolory motywu RWD → paleta Oazatech
 * Wygenerowane automatycznie na podstawie porównania styles.css
 * ============================================================ */

/* ---- Linki globalne ---- */

a:focus {
    outline-color: #2268b5;
    color: #0f3d74;
}

/* ---- Nagłówki ---- */

h1, .h1 {
    color: #18569f;
    border-left-color: #18569f;
}

h3, .h3 {
    border-left-color: #18569f;
}

/* ---- CMS menu boczne ---- */

.block-cms-menu li strong {
    color: #18569f;
}

.block-cms-menu li a:hover {
    color: #18569f;
}

/* ---- Przycisk .button2 (link-button) ---- */

.button2 span span {
    color: #18569f;
}

.button2 span span:hover {
    color: #0f3d74;
}

/* ---- Breadcrumbs ---- */

.breadcrumbs a:hover {
    color: #18569f;
}

/* ---- Przyciski usuwania/poprzedni ---- */

.btn-previous:hover {
    background-color: #18569f;
    border-color: #18569f;
}

.btn-remove:after {
    color: #18569f;
}

.btn-previous:after {
    border-right-color: #18569f;
}

/* ---- Promo / komunikaty ---- */

.promo-msg {
    color: #18569f;
}

/* ---- Ceny ---- */

.price-box .minimal-price-link {
    color: #18569f;
}

.price-box .special-price {
    color: #18569f;
}

/* ---- Skrócone opisy (truncated) ---- */

.truncated .truncated_full_value .item-options {
    border-color: #18569f;
}

.truncated .truncated_full_value .item-options:after {
    border-bottom-color: #18569f;
}

/* ---- Obrazki produktów ---- */

.no-touch .product-image:hover {
    border-color: #18569f;
}

/* ---- Paginacja — brakujące stany ---- */

.pages .current {
    color: #18569f;
}

.pages .previous:hover {
    border-color: #18569f;
}

.pages .next:before {
    border-left-color: #18569f;
}

.pages .next:hover:before {
    border-left-color: #0f3d74;
}

.pages .previous:before {
    border-right-color: #18569f;
}

.pages .previous:hover:before {
    border-right-color: #0f3d74;
}

/* ---- Konto klienta — tabela podsumowania ---- */

body.customer-account .data-table .summary-collapse:before {
    border-top-color: #18569f;
}

body.customer-account .data-table .summary-collapse:hover:before {
    border-top-color: #0f3d74;
}

body.customer-account .data-table .show-details .summary-collapse:before {
    border-bottom-color: #18569f;
}

body.customer-account .data-table .show-details .summary-collapse:hover:before {
    border-bottom-color: #0f3d74;
}

/* ---- Pola formularzy ---- */

.input-text:focus {
    border-color: #18569f;
}

/* ---- Header — linki konta i koszyk ---- */

#header-account a:hover {
    color: #18569f;
}

@media only screen and (min-width: 771px) {
    .skip-cart {
        color: #18569f;
    }
}

/* ---- Stopka ---- */

.footer address {
    color: #18569f;
}

.footer .links a:hover {
    color: #18569f;
}

.footer .button:active {
    background: #005c34;
}

/* ---- Produkty — brakujące selektory ---- */

p.product-name a:hover {
    color: #18569f;
}

.product-view .product-img-box .product-name h1 {
    color: #18569f;
}

.product-view .product-shop .price-box .full-product-price .price {
    color: #18569f;
}

.grouped-items-table .name-wrapper {
    color: #18569f;
}

.product-view .product-options .swatch-attr .select-label {
    color: #18569f;
}

/* ---- Filtry warstwowe — strzałki ---- */

.block-layered-nav .block-subtitle--filter:after {
    border-top-color: #18569f;
}

.block-layered-nav .block-content > dl > dt:after {
    border-top-color: #18569f;
}

#accordion > dl > dt:after {
    border-top-color: #18569f;
}

/* ---- Koszyk ---- */

.cart-table .cart-tax-total:after {
    border-right-color: #18569f;
}

.cart-table .cart-tax-total.cart-tax-total-expanded:after {
    border-top-color: #18569f;
}

/* ---- Cross-sell ---- */

.crosssell h2 {
    color: #18569f;
}

/* ---- OPC checkout ---- */

.opc .section.active .step-title h2 {
    color: #18569f;
}

/* ---- Swatche ---- */

#narrow-by-list dd .swatch-link:hover .swatch-label,
.swatch-link:hover {
    border-color: #18569f;
}

/* ---- Recenzje ---- */

#customer-reviews h2,
#customer-reviews h3 span {
    color: #18569f;
}

#customer-reviews dl dd .review-meta {
    color: #18569f;
    display: block;
}

/* ---- Slideshow ---- */

.slideshow-pager span:hover:before {
    background-color: #2268b5;
}

.slideshow-pager span.cycle-pager-active:before {
    background-color: #0f3d74;
}

.slideshow-prev:hover:before {
    border-color: transparent #2268b5 transparent transparent;
}

.slideshow-next:hover:before {
    border-color: transparent transparent transparent #2268b5;
}

/* ---- Lista życzeń (wishlist) ---- */

#wishlist-table .product-name a {
    color: #18569f;
}

#wishlist-table textarea:focus {
    border-color: #18569f;
}

#wishlist-table .giftregisty-add li,
#wishlist-table .truncated .details {
    color: #18569f;
}

/* ---- Miniatura koszyka w headerze ---- */

.header-minicart .product-details .product-name a {
    color: #18569f;
}

.header-minicart .info-wrapper td {
    color: #18569f;
}

.header-minicart .subtotal .price {
    color: #18569f;
}

/* ---- Autocomplete wyszukiwarki ---- */

.search-autocomplete ul {
    border-color: #18569f;
}

.search-autocomplete ul li {
    color: #18569f;
}

.search-autocomplete ul li:hover {
    color: #2268b5;
}

.search-autocomplete ul li.selected {
    background-color: #18569f;
}

.search-autocomplete:before {
    border-bottom-color: #18569f;
}

/* ---- Recenzja produktu ---- */

.product-review .product-details h2 {
    color: #18569f;
}

/* ---- Strona 404 ---- */

.cms-no-route .std h1,
.cms-no-route .std h2 {
    color: #18569f;
}

/* ---- Sidebar — aktywna pozycja (mobile fix) ---- */

@media only screen and (max-width: 770px) {
    .sidebar .block:not(.block-layered-nav) .block-title > strong {
        color: #18569f;
    }
}

/* ---- Sidebar mobile — usuń tło i obramowanie accordion dla FAQ i bloga ---- */

@media only screen and (max-width: 770px) {
    .sidebar .block:not(.block-layered-nav) .block-title > strong,
    .sidebar .block:not(.block-layered-nav) .block-title.active > strong {
        background: transparent;
        border: none;
        padding: 7px 10px;
        cursor: default;
        color: #18569f;
    }
    .sidebar .block:not(.block-layered-nav) .block-title > strong:hover,
    .sidebar .block:not(.block-layered-nav) .block-title.active > strong:hover {
        background-color: transparent;
    }
    .sidebar .block:not(.block-layered-nav) .block-title > strong::after,
    .sidebar .block:not(.block-layered-nav) .block-title.active > strong::after {
        left: 0;
    }
    .sidebar .block:not(.block-layered-nav) .block-title.active > strong::after {
        margin-top: 0;
        left: -3px;
    }
    .sidebar .block:not(.block-layered-nav) .block-content {
        border: 0;
    }
}
.catalogsearch-result-index .page-title h1 {
    font-size: 24px;
    font-weight: 800;
    color: #18569f;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    margin: 0;
    padding-left: 14px;
    border-left: 4px solid #00804a;
}

/*.catalogsearch-result-index .page-title h1::before {
    content: '' !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 4px !important;
    height: 100% !important;
    background: #18569f !important;
    border-radius: 2px !important;
}*/

/* ============================================ *
 * PORÓWNAJ PRODUKTY — strona i widget sidebar
 * catalog-product-compare-index
 * .block-compare (sidebar)
 * ============================================ */

/* ---- WIDGET SIDEBAR (.block-compare) ---- */

.block-compare {
    background: #ffffff;
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 16px !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
}

.block-compare .block-title {
    padding: 12px 16px !important;
    background: #f8fafc !important;
    border-bottom: 1px solid #e8eef5 !important;
    margin: 0 !important;
    cursor: default !important;
}

.block-compare .block-title strong,
.block-compare .block-title strong span {
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #888888 !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    display: block !important;
    width: auto !important;
}

/* Usuń strzałkę accordion mobilnego */
.block-compare .block-title strong:after,
.block-compare .block-title strong:before {
    display: none !important;
}

.block-compare .block-content {
    padding: 0 !important;
    border: none !important;
    margin: 0 !important;
}

/* Lista produktów w widgecie — rzeczywista struktura: ol#compare-items > li.item */
.block-compare .block-content ol#compare-items,
.block-compare .block-content ol {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.block-compare .block-content ol#compare-items li.item,
.block-compare .block-content ol li.item {
    display: block !important;
    overflow: hidden !important;
    padding: 13px 16px !important;
    border-bottom: 1px solid #f0f4f8 !important;
    margin: 0 !important;
}

.block-compare .block-content ol#compare-items li.item:last-child,
.block-compare .block-content ol li.item:last-child {
    border-bottom: none !important;
}

/* Nazwa produktu w widgecie */
.block-compare .block-content ol li.item .product-name {
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 0 !important;
    overflow: hidden !important;
}

.block-compare .block-content ol li.item .product-name a {
    color: #1a1a2e !important;
    text-decoration: none !important;
}

.block-compare .block-content ol li.item .product-name a:hover {
    color: #18569f !important;
}

/* btn-remove — styl z RWD (bez nadpisań) */

/* Sekcja akcji — przyciski */
.block-compare .block-content .actions {
    padding: 16px !important;
    border-top: 1px solid #e8eef5 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
}

/* Przycisk "Porównaj" */
.block-compare .block-content .actions .button {
    display: block !important;
    width: 100% !important;
    background: #18569f !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 12px 14px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    cursor: pointer !important;
    transition: background 0.15s !important;
    height: auto !important;
    box-sizing: border-box !important;
}

.block-compare .block-content .actions .button:hover {
    background: #0f3d74 !important;
}

.block-compare .block-content .actions .button span,
.block-compare .block-content .actions .button span span {
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 700 !important;
}

/* Link "Wyczyść wszystko" */
.block-compare .block-content .actions a.link-compare-clear,
.block-compare .block-content .actions a {
    display: block !important;
    text-align: center !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #888888 !important;
    text-decoration: none !important;
}

.block-compare .block-content .actions a.link-compare-clear:hover,
.block-compare .block-content .actions a:hover {
    color: #b0281a !important;
    text-decoration: underline !important;
}


/* ---- STRONA PORÓWNANIA (catalog-product-compare-index) ---- */

body.catalog-product-compare-index .page-title h1 {
    font-size: 24px !important;
    font-weight: 800 !important;
    color: #18569f !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif !important;
    margin: 0 0 20px !important;
    padding-left: 14px !important;
    border-left: 4px solid #00804a !important;
}

/* Wrapper tabeli z poziomym scrollem */
body.catalog-product-compare-index .compare-table-wrapper {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid #e0e8f2;
    border-radius: 10px;
    margin-bottom: 20px;
}

/* Tabela porównania */
body.catalog-product-compare-index .compare-table,
.compare-table {
    width: 100%;
    border-collapse: collapse !important;
    border-spacing: 0 !important;
    font-family: "Raleway", "Helvetica Neue", Verdana, Arial, sans-serif;
    min-width: 600px;
}

/* Nagłówek — wiersz z produktami */
.compare-table thead tr,
.compare-table tr.first {
    background: none !important;
}

/* Komórka nagłówkowa (th) — niebieskie tło z białym tekstem */
.compare-table th,
.compare-table thead th {
    background-color: #18569f !important;
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    padding: 14px 16px !important;
    text-align: center !important;
    border: none !important;
    border-right: 1px solid rgba(255,255,255,0.15) !important;
    vertical-align: top !important;
    min-width: 160px !important;
}

.compare-table th:first-child,
.compare-table thead th:first-child {
    background-color: #0f3d74 !important;
    text-align: left !important;
    min-width: 140px !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.6px !important;
}

.compare-table th:last-child,
.compare-table thead th:last-child {
    border-right: none !important;
}

/* Zdjęcie produktu w nagłówku */
.compare-table th .product-image,
.compare-table th a.product-image {
    display: block !important;
    margin: 0 auto 10px !important;
    width: 100px !important;
    height: 100px !important;
    border-radius: 8px !important;
    overflow: hidden !important;
    background: rgba(255,255,255,0.12) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.compare-table th .product-image img,
.compare-table th a.product-image img {
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    display: block !important;
}

/* Nazwa produktu w nagłówku */
.compare-table th .product-name,
.compare-table th h3.product-name {
    margin: 0 0 6px !important;
}

.compare-table th .product-name a,
.compare-table th h3.product-name a {
    color: #ffffff !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    line-height: 1.3 !important;
    display: block !important;
}

.compare-table th .product-name a:hover,
.compare-table th h3.product-name a:hover {
    text-decoration: underline !important;
    color: rgba(255,255,255,0.85) !important;
}

/* Przycisk "Dodaj do koszyka" w nagłówku */
.compare-table th .action-box .btn-cart,
.compare-table th .btn-cart {
    display: inline-block !important;
    background: #00804a !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 5px !important;
    padding: 7px 14px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    cursor: pointer !important;
    transition: background 0.15s !important;
    margin-top: 8px !important;
    text-decoration: none !important;
}

.compare-table th .action-box .btn-cart:hover,
.compare-table th .btn-cart:hover {
    background: #005c34 !important;
}

.compare-table th .action-box .btn-cart span,
.compare-table th .action-box .btn-cart span span,
.compare-table th .btn-cart span,
.compare-table th .btn-cart span span {
    color: #ffffff !important;
    font-size: 11px !important;
}

/* Link "Usuń" z porównania */
.compare-table th .remove-link,
.compare-table th a.btn-remove {
    display: inline-block !important;
    margin-top: 6px !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    color: rgba(255,255,255,0.6) !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 0.4px !important;
    transition: color 0.15s !important;
}

.compare-table th .remove-link:hover,
.compare-table th a.btn-remove:hover {
    color: #ffc0b0 !important;
}

/* Cena w nagłówku */
.compare-table th .price-box .price {
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 800 !important;
}

.compare-table th .price-box .old-price .price {
    color: rgba(255,255,255,0.55) !important;
    font-size: 12px !important;
    text-decoration: line-through !important;
    font-weight: 400 !important;
}

/* Wiersze z cechami */
.compare-table tbody tr {
    background: #ffffff !important;
    transition: background 0.12s !important;
}

.compare-table tbody tr:nth-child(even) {
    background: #f8fafc !important;
}

.compare-table tbody tr:hover {
    background: #eef4fb !important;
}

/* Komórki cech */
.compare-table tbody td {
    padding: 12px 16px !important;
    font-size: 13px !important;
    color: #444444 !important;
    border-bottom: 1px solid #f0f4f8 !important;
    border-right: 1px solid #f0f4f8 !important;
    vertical-align: middle !important;
    text-align: center !important;
}

.compare-table tbody td:last-child {
    border-right: none !important;
}

/* Pierwsza kolumna — etykieta cechy */
.compare-table tbody td:first-child,
.compare-table tbody th.label {
    background: #f4f7fb !important;
    color: #5a6a7a !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-align: left !important;
    border-right: 2px solid #e0e8f2 !important;
}

/* Ostatni wiersz bez dolnej linii */
.compare-table tbody tr:last-child td {
    border-bottom: none !important;
}

/* Cena w komórkach treści */
.compare-table tbody .price {
    color: #18569f !important;
    font-weight: 800 !important;
    font-size: 15px !important;
}

/* Link "Powrót" pod tabelą */
body.catalog-product-compare-index .buttons-set {
    border: none !important;
    padding: 0 !important;
    margin: 4px 0 0 !important;
    width: auto !important;
}

body.catalog-product-compare-index .buttons-set a {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #18569f !important;
    text-decoration: none !important;
}

body.catalog-product-compare-index .buttons-set a:hover {
    text-decoration: underline !important;
}

/* Mobile */
@media only screen and (max-width: 770px) {
    body.catalog-product-compare-index .compare-table-wrapper {
        border-radius: 6px;
    }

    .compare-table th {
        min-width: 130px !important;
        padding: 10px 10px !important;
    }

    .compare-table tbody td {
        padding: 10px 10px !important;
        font-size: 12px !important;
    }

    .compare-table th .product-image,
    .compare-table th a.product-image {
        width: 70px !important;
        height: 70px !important;
    }
}

/* Linki "Porównaj" pod produktem w listingu */
.link-compare {
    color: #18569f !important;
/*    font-size: 11px !important;
    font-weight: 600 !important;*/
    text-decoration: none !important;
}

.link-compare:hover {
    color: #0f3d74 !important;
    text-decoration: underline !important;
}

/* Aktywny link "Porównaj" (dodany do listy) */
.link-compare.added {
    color: #00804a !important;
    font-weight: 700 !important;
}

/* Przycisk "Napisz recenzję" w widgecie trust */
.oz-review-trust__btn {
    display: inline-block;
    margin-top: 16px;
    padding: 10px 22px;
    background: #18569f;
    color: #ffffff !important;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 700;
    text-decoration: none !important;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: background 0.15s;
}

.oz-review-trust__btn:hover {
    background: #0f3d74;
    text-decoration: none !important;
}