@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');

:root {
    --bg-primary: #FFFFFF;          /* Główne tło strony (jasne, czyste) */
    --bg-secondary: #F9F9FB;        /* Subtelne tło dla sekcji, kart i koszyka */
    --border-color: #E5E7EB;        /* Delikatne linie podziału */
    --text-main: #111827;           /* Główny głęboki czarny tekst */
    --text-muted: #6B7280;          /* Szary tekst pomocniczy */
    --primary-color: #333;       /* Głęboka, matowa czerń dla głównych przycisków CTA */
    --primary-color-hover: #4f4e4e; /* Hover głównych przycisków */
    --accent-color: #0F172A;        /* Ciemny grafit/granat dla elementów wyróżnionych */
    --accent-color-hover: #1E293B;  /* Hover akcentu */
    --button-text-color: #FFFFFF;   /* Biały tekst na przyciskach */
    --font-family: 'Montserrat';
    --bg-info: rgb(249, 250, 251);
}

/* Globalne ustawienie czcionki dla całej strony */
html, body {
    font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: #333333;
}


h1, h2, h3, h4, h5, h6, 
input, button, select, textarea, 
.button, a {
    font-family: 'Montserrat', sans-serif;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 60px 20px;
}

.entry-title {
    font-size: 36px;
    font-weight: 600;
    margin-bottom: 30px;
    text-align: center;
}

.entry-content {
    line-height: 1.6;
    font-size: 16px;
}


/* ==========================================================================
   ODSTĘPY DLA TREŚCI STRONY NA URZĄDZENIACH MOBILNYCH
   ========================================================================== */

html, 
body {
    max-width: 100% !important;
}

#page,
.site,
.site-content,
#content,
main#primary {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important; 
}

.alma-maincontent {
    padding-left: 14vw !important;
    padding-right: 14vw !important;

    box-sizing: border-box !important; 
    max-width: 100% !important;
    width: 100% !important;
    overflow: hidden !important; 
    background-color: #fbfbfb;
}

.content-area,
main#primary {
    padding-top: 25px !important; 
}

@media screen and (max-width: 991px) {

    .alma-maincontent {
        padding-left: 0 !important;
        padding-right: 0 !important;

        box-sizing: border-box !important; 
    }

    .container {
        max-width: 1200px;
        margin: 0 auto;
        padding: 60px 10px;
    }

    .content-area,
    main#primary {
        padding-top: 25px !important; 
    }
}

.woocommerce-breadcrumb {
    font-size: 11px !important;
    letter-spacing: 0.15em !important; /* Szerokie rozstawienie liter nadaje elegancji */
    text-transform: uppercase !important;
    color: #999 !important;
    margin-bottom: 20px !important;
    padding-left: 15px !important;
}

/* Nagłówek Sklep */
h1.woocommerce-products-header__title {
    font-size: clamp(28px, 6vw + 8px, 48px);
    font-weight: 300; /* Lżejsza waga czcionki wygląda bardziej premium */
    line-height: 1.1;
    color: #222;
    margin-bottom: 15px;
}

.woocommerce-result-count {
    font-size: 12px;
    color: #bbb;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

h1.woocommerce-products-header__title::after {
    content: '';
    display: block;
    width: 40px;
    height: 2px;
    background: var(--primary-color); /* Twój kolor */
    margin: 20px auto; /* Wyśrodkowane wygląda bardziej "galeryjnie" */
}

.woocommerce-breadcrumb .current-breadcrumb {
    display: inline-block !important;
    vertical-align: bottom !important;
    max-width: 150px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.woocommerce-breadcrumb a:first-child {
    max-width: none !important;
}

/* =========================================================
   NAPRAWA NAGŁÓWKA I ELEMENTÓW MOBILNYCH (ALMAHOME)
   ========================================================= */

/* 1. Reset przycisków ikon mobilnych, żeby nie wyglądały jak standardowe przyciski formularzy */
button.alma-icon-btn {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 8px !important;
    margin: 0 !important;
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: var(--text-main, #221f1d) !important;
    width: auto !important;
    height: auto !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

button.alma-icon-btn:hover {
    background: transparent !important;
    transform: none !important;
}

/* 2. Rysowanie ikony Hamburgera (trzy paski) */
button.menu-toggle {
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    width: 24px !important;
    height: 18px !important;
    padding: 0 !important;
    background: transparent !important;
}

button.menu-toggle .hamburger-line {
    display: block !important;
    width: 100% !important;
    height: 2px !important;
    background-color: var(--text-main, #221f1d) !important;
    border-radius: 2px !important;
    transition: all 0.3s ease !important;
}

/* 3. Naprawa Sidebara i Przycisku X względem WP Admin Bar */
.main-navigation {
    z-index: 999999 !important; /* Nadpisuje domyślny admin bar WordPressa */
}

/* Czysty, czarny przycisk X wewnątrz menu */
.menu-close-btn {
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    z-index: 1000000 !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer !important;
    padding: 5px !important;
}


.menu-close-btn svg {
    stroke: #000000 !important; /* Wymuszenie czarnego koloru X */
    width: 26px !important;
    height: 26px !important;
}


/* =========================================================
   DEFINITYWNA NAPRAWA WIDOCZNOŚCI HAMBURGERA I PRZYCISKU X
   ========================================================= */

/* 1. Domyślnie na każdym ekranie (w tym desktop) całkowicie ukrywamy przyciski mobilne */
.menu-close-btn,
button.menu-toggle {
    display: none !important;
}
/* =========================================================
   PEŁNA BLOKADA PRZYCISKU X NA DESKTOPY (WYSOKA SPECYFICZNOŚĆ)
   ======================================================== */

/* 1. Domyślnie na komputerach (powyżej 992px) przycisk X jest bezwzględnie ukryty */
@media (min-width: 992px) {
    .main-navigation .menu-close-btn,
    .menu-drawer-container .menu-close-btn,
    button.menu-close-btn {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }
}

/* 2. Globalny bezpiecznik (ukrywaj wszędzie, dopóki nie ma widoku mobilnego) */
.main-navigation .menu-close-btn {
    display: none !important;
}

/* 3. Pokazujemy przycisk X WYŁĄCZNIE na telefonach i tabletach (poniżej 991px) */
@media (max-width: 991px) {
    .main-navigation .menu-close-btn,
    button.menu-close-btn {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        position: absolute !important;
        top: 20px !important;
        right: 20px !important;
        z-index: 1000000 !important;
        background: transparent !important;
        border: none !important;
        cursor: pointer !important;
        padding: 5px !important;
    }

    button.menu-toggle {
        display: flex !important;
    }

    .menu-close-btn svg {
        stroke: #000000 !important;
        width: 26px !important;
        height: 26px !important;
    }
}


/* Główne okienko (popup), teraz węższe i przylega do prawej strony na PC */
.alma-search-wrapper {
    position: absolute;
    top: calc(100% + 5px); /* Odrobina odstępu od nagłówka */
    right: 20px; /* Okienko wysuwa się po prawej stronie (tam gdzie ikony) */
    width: 400px; /* Konkretna, niewielka szerokość */
    background-color: #ffffff;
    border: 1px solid #E5E7EB;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.08); /* Estetyczny, miękki cień oddzielający od tła */
    z-index: 9999;
    padding: 16px;
    font-family: -apple-system, BlinkMacSystemFont, 'Inter', sans-serif;
    box-sizing: border-box;
}

/* Wersja mobilna: pośrodku ekranu z lekkim marginesem po bokach */
@media (max-width: 768px) {
    .alma-search-wrapper {
        right: 15px;
        left: 15px;
        width: auto; /* Zajmuje dostępną przestrzeń na telefonie */
    }
}

/* Kontener z inputem */
.alma-search-container {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Chudszy, delikatniejszy input */
.alma-search-input {
    flex: 1;
    height: 38px; /* Mniej masywny */
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    padding: 0 14px;
    font-size: 14px; /* Odrobinę mniejszy font */
    color: #111827;
    background: #F8FAFC;
    outline: none;
    transition: all 0.2s ease;
    box-sizing: border-box;
}

.alma-search-input:focus {
    border-color: #9ca3af;
    background: #ffffff;
}

/* Zamknięcie wyszukiwarki (krzyżyk) */
.alma-search-close {
    cursor: pointer;
    background: transparent;
    border: none;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s;
}
.alma-search-close:hover {
    opacity: 0.7;
}

/* Lista wyników */
.alma-search-results {
    margin-top: 15px;
}

.alma-search-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px; /* Trochę ciaśniej */
}

.alma-search-list li a {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px;
    text-decoration: none;
    border-radius: 8px; /* Mniejsze zaokrąglenie wewnątrz */
    transition: background 0.2s ease;
}

.alma-search-list li a:hover {
    background-color: #f9fafb;
}

.alma-search-img img {
    width: 44px; /* Nieco mniejsze zdjęcia */
    height: 44px;
    object-fit: cover;
    border-radius: 6px;
    border: 1px solid #E5E7EB;
}

.alma-search-info {
    display: flex;
    flex-direction: column;
}

.alma-search-title {
    font-size: 14px;
    font-weight: 600;
    color: #111827;
    line-height: 1.3;
}

.alma-search-price {
    font-size: 13px;
    font-weight: 700;
    color: var(--season-text, #af9072); /* Użycie Twojej zmiennej z CSS, lub po prostu czarnego */
    margin-top: 2px;
}

.alma-loading, .alma-no-results {
    font-size: 13px;
    color: #6b7280;
    padding: 10px 5px;
    text-align: center;
}

/* 4. PRZYCISK: "Zobacz wszystkie wyniki" */
.alma-search-all {
    display: block;
    margin-top: 15px;
    text-align: center;
    font-size: 13px;
    font-weight: 600;
    color: #111827;
    background-color: #F8FAFC; /* Subtelne tło pod przycisk */
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    padding: 10px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.alma-search-all:hover {
    background-color: #E2E8F0;
    color: #0f172a;
}

/* --- OVERLAY (Zaciemnienie tła) --- */
.alma-cart-sidebar-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.4);
    z-index: 99998; /* Bardzo wysoki z-index, pod sidebarem */
    backdrop-filter: blur(2px); /* Lekkie rozmycie sklepu pod spodem */
}


/* --- SIDEBAR KOSZYKA --- */
.alma-cart-sidebar {
    position: fixed;
    top: 0;
    right: -420px; /* Domyślnie schowany za ekranem */
    width: 100%;
    max-width: 400px;
    height: 100dvh; /* Używamy 100dvh, żeby idealnie dopasować się do ekranów mobilnych i pasków przeglądarki */
    background-color: #ffffff;
    z-index: 99999;
    box-shadow: -4px 0 20px rgba(0, 0, 0, 0.1);
    transition: right 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    flex-direction: column;
    font-family: -apple-system, BlinkMacSystemFont, 'Inter', sans-serif;
    box-sizing: border-box;
}

/* Klasa dodawana przez JS, która wsuwa element na ekran */
.alma-cart-sidebar.is-open {
    right: 0;
}

/* Nagłówek Sidebaru (zawsze widoczny na górze) */
.alma-cart-header {
    flex-shrink: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    border-bottom: 1px solid #E5E7EB;
    background-color: #ffffff;
}

.alma-cart-header h3 {
    margin: 0;
    font-size: 18px;
    font-weight: 700;
    color: #111827;
}

.alma-cart-close {
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.2s;
}

.alma-cart-close:hover {
    opacity: 0.6;
}

/* Ciało sidebaru – zmienione na kontener Flex, który rozciąga się na całą wysokość */
.alma-cart-body {
    flex: 1;
    display: flex;
    flex-direction: column;
    margin: 0 10px;
    overflow: hidden; /* Wyłączamy scroll całego ciała, scrollujemy tylko listę */
    padding: 0; /* Przenosimy padding do wnętrza, żeby dolny panel kleił się do krawędzi */
}

/* Główny kontener wewnątrz ciała koszyka WooCommerce */
.alma-cart-body .widget_shopping_cart_content {
    display: flex;
    flex-direction: column;
    height: 100%;
    box-sizing: border-box;
}

/* Przewijalna lista produktów (zajmuje całą wolną przestrzeń w środku) */
.widget_shopping_cart_content .woocommerce-mini-cart {
    list-style: none;
    padding: 20px;
    margin: 0;
    overflow-y: auto; /* Scroll działa TYLKO tutaj */
    flex: 1; /* Rozpycha się, wypychając podsumowanie na sam dół */
}

/* --- SEKCJA DOLNA (Kwota i przyciski zawsze na dole) --- */
.widget_shopping_cart_content .woocommerce-mini-cart__total,
.widget_shopping_cart_content .woocommerce-mini-cart__buttons {
    flex-shrink: 0; /* Zapobiega zwijaniu elementów */
}

/* Stylizacja kontenera podsumowania i przycisków na dole */
.widget_shopping_cart_content .woocommerce-mini-cart__total {
    padding: 15px 20px 10px 20px;
    margin: 0 !important;
    border-top: 1px solid #E5E7EB;
    background-color: #ffffff;
}

.widget_shopping_cart_content .woocommerce-mini-cart__buttons {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 0 20px 20px 20px;
    margin: 0 !important;
    background-color: #ffffff;
}

/* Przycisk "Przejdź do koszyka" */
.widget_shopping_cart_content .woocommerce-mini-cart__buttons .button:not(.checkout) {
    display: block;
    text-align: center;
    padding: 12px;
    background: #F8FAFC;
    color: #111827;
    border: 1px solid #E2E8F0;
    border-radius: 8px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
}

/* Przycisk "Zamówienie / Checkout" */
.widget_shopping_cart_content .woocommerce-mini-cart__buttons .checkout {
    display: block;
    text-align: center !important;
    padding: 12px !important;
    background: var(--season-text, #111827) !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: opacity 0.2s ease !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart__buttons .button:hover {
    opacity: 0.9 !important;
}

/* ==========================================================================
   POPRAWKA LOOK-AND-FEEL PRODUKTÓW W MINI-KOSZYKU
   ========================================================================== */

/* 1. KONTENER CAŁEGO WIERSZA PRODUKTU */
.widget_shopping_cart_content .woocommerce-mini-cart-item {
    position: relative !important;
    padding: 12px 36px 14px 0 !important; /* 36px po prawej daje miejsce na większy przycisk X */
    border-bottom: 1px solid #E5E7EB !important;
    margin: 0 !important;
    float: none !important;
    clear: both !important;
    display: block !important;
}

/* 2. POWIĘKSZONY I WYRAŹNY PRZYCISK X (REMOVE) */
.widget_shopping_cart_content .woocommerce-mini-cart-item a.remove {
    position: absolute !important;
    top: 10px !important;
    right: 0 !important;
    left: auto !important;
    width: 28px !important;
    height: 28px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: #6B7280 !important;
    background-color: #F3F4F6 !important; /* Szare kółeczko w tle */
    border-radius: 50% !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    float: none !important;
    transition: all 0.2s ease !important;
    z-index: 2 !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item a.remove:hover {
    color: #FFFFFF !important;
    background-color: #EF4444 !important; /* Czerwone podświetlenie przy najechaniu */
}

/* 3. ZDJĘCIE I TYTUŁ PRODUKTU */
.widget_shopping_cart_content .woocommerce-mini-cart-item a:not(.remove) {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    color: #111827 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
    margin-bottom: 8px !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item img {
    width: 52px !important;
    height: 52px !important;
    object-fit: cover !important;
    border-radius: 8px !important;
    float: none !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

/* ==========================================================================
   POPRAWKA ROZDZIELENIA OPCJI WPC PRODUCT OPTIONS
   ========================================================================== */

/* 1. GŁÓWNY KONTENER OPCJI */
.widget_shopping_cart_content .woocommerce-mini-cart-item dl.variation,
.widget_shopping_cart_content .woocommerce-mini-cart-item .wc-item-meta {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    margin: 8px 0 8px 64px !important; /* Wcięcie pod tytułem produktu */
    padding: 10px 12px !important;
    background-color: #F9FAFB !important;
    border: 1px solid #E5E7EB !important;
    border-radius: 8px !important;
    float: none !important;
    clear: both !important;
    width: auto !important;
}

/* 2. POJEDYNCZY WIERSZ KAŻDEJ OPCJI (oddzielenie od siebie) */
.widget_shopping_cart_content .woocommerce-mini-cart-item dl.variation dt,
.widget_shopping_cart_content .woocommerce-mini-cart-item dl.variation dd,
.widget_shopping_cart_content .woocommerce-mini-cart-item .wc-item-meta dt,
.widget_shopping_cart_content .woocommerce-mini-cart-item .wc-item-meta dd {
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Wtyczka WPC dzieli opcje często na osobne paragrafy lub linie */
.widget_shopping_cart_content .woocommerce-mini-cart-item dl.variation > *,
.widget_shopping_cart_content .woocommerce-mini-cart-item .wc-item-meta > * {
    display: flex !important;
    flex-direction: column !important;
    padding-bottom: 6px !important;
    margin-bottom: 6px !important;
    border-bottom: 1px dashed #E5E7EB !important; /* Kropkowana linia oddzielająca opcje */
}

/* Usuwamy linię pod ostatnim elementem, żeby nie było pustego odstępu na dole */
.widget_shopping_cart_content .woocommerce-mini-cart-item dl.variation > *:last-child,
.widget_shopping_cart_content .woocommerce-mini-cart-item .wc-item-meta > *:last-child {
    border-bottom: none !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

/* 3. STYLIZACJA ETYKIET (np. Kolor wstążki) */
.widget_shopping_cart_content .woocommerce-mini-cart-item dl.variation dt,
.widget_shopping_cart_content .woocommerce-mini-cart-item .wc-item-meta dt {
    font-weight: 700 !important;
    color: #111827 !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 2px !important;
}

/* 4. STYLIZACJA WARTOŚCI (np. Szałwiowy, Madagascar Vanilla) */
.widget_shopping_cart_content .woocommerce-mini-cart-item dl.variation dd,
.widget_shopping_cart_content .woocommerce-mini-cart-item .wc-item-meta dd {
    font-weight: 400 !important;
    color: #4B5563 !important;
    font-size: 12px !important;
    padding-left: 0 !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item dl.variation dd p,
.widget_shopping_cart_content .woocommerce-mini-cart-item .wc-item-meta dd p {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
}

/* 5. ILOŚĆ I CENA */
.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity {
    display: block !important;
    font-size: 13px !important;
    color: #6B7280 !important;
    margin-left: 64px !important;
    margin-top: 6px !important;
    font-weight: 500 !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
}

.widget_shopping_cart_content .woocommerce-mini-cart-item .quantity .amount {
    font-weight: 700 !important;
    color: #111827 !important;
}



/* --- Nowoczesny wygląd powiadomień (Toastów) WooCommerce --- */

.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-error {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px;
    background-color: #f0fdf4 !important;
    color: #1f2937 !important;
    border: 1px solid #047857 !important;
    border-radius: 10px !important;
    padding: 14px 18px !important;
    font-size: 14px;
    font-weight: 500;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05), 0 2px 4px -1px rgba(0, 0, 0, 0.03);
    margin-bottom: 20px !important;
    list-style: none outside !important;
}

/* Usunięcie domyślnych ikonek WooCommerce */
.woocommerce-notices-wrapper .woocommerce-info::before,
.woocommerce-notices-wrapper .woocommerce-message::before,
.woocommerce-notices-wrapper .woocommerce-error::before {
    display: none !important;
}

/* Warianty kolorystyczne dla błędów */
.woocommerce-notices-wrapper .woocommerce-error {
    background-color: #fef2f2 !important;
    border-color: #dc2626 !important;
    color: #991b1b !important;
}

/* Wariant sukcesu / wiadomości */
.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info {
    background-color: #f0fdf4 !important;
    border-color: #047857 !important;
    color: #065f46 !important;
}

/* --- Stylowanie wszystkich linków / przycisków akcji wewnątrz toastów (np. "Cofnij?", "Przejdź do kasy") --- */
.woocommerce-notices-wrapper a,
.woocommerce-notices-wrapper .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: #047857 !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 6px !important;
    padding: 6px 14px !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    margin-left: auto !important;
    transition: background-color 0.2s ease, transform 0.1s ease;
    box-shadow: 0 2px 4px rgba(4, 120, 87, 0.2);
}

.woocommerce-notices-wrapper a:hover,
.woocommerce-notices-wrapper .button:hover {
    background-color: #065f46 !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Specjalny styl dla przycisku cofania / odwracania akcji */
.woocommerce-notices-wrapper a.restore-item {
    background-color: #e5e7eb !important;
    color: #1f2937 !important;
    box-shadow: none !important;
}

.woocommerce-notices-wrapper a.restore-item:hover {
    background-color: #d1d5db !important;
    color: #111827 !important;
}

/* =========================================================
   PUSTY STAN (Brak wyników wyszukiwania / Pusta kategoria)
   ========================================================= */

.alma-empty-state-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 60px 20px;
    margin: 40px auto;
    max-width: 500px;
    background-color: #f8fafc; /* Jasne, delikatne tło z Twojego motywu */
    border: 2px dashed #e2e8f0; /* Przyjazna, przerywana ramka */
    border-radius: 16px;
    font-family: -apple-system, BlinkMacSystemFont, 'Inter', sans-serif;
}

.alma-empty-state-icon {
    color: #94a3b8; /* Zgaszony, szary kolor ikony */
    width: 80px;
    height: 80px;
    margin-bottom: 24px;
    /* Delikatna animacja unoszenia się lupy */
    animation: floating-search 3s infinite ease-in-out;
}

.alma-empty-state-icon svg {
    width: 100%;
    height: 100%;
}

@keyframes floating-search {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-10px); }
}

.alma-empty-state-title {
    font-size: 24px;
    font-weight: 700;
    color: #111827; /* Ciemny grafit z motywu */
    margin: 0 0 12px 0;
    line-height: 1.2;
}

.alma-empty-state-text {
    font-size: 15px;
    color: #475569;
    margin: 0 0 28px 0;
    line-height: 1.6;
    max-width: 400px;
}

/* Przycisk powrotu w stylu spójnym ze stroną */
.alma-empty-state-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 32px;
    background-color: var(--season-text, #111827);
    color: #ffffff !important;
    text-decoration: none !important;
    border-radius: 12px;
    font-weight: 600;
    font-size: 15px;
    transition: all 0.2s ease;
    border: none;
}

.alma-empty-state-btn:hover {
    box-shadow: 0 6px 20px rgba(17, 24, 39, 0.15);
    background-color: color-mix(in srgb, var(--season-text, #111827) 90%, black);
}

/* Responsywność dla smartfonów */
@media (max-width: 768px) {
    .alma-empty-state-wrapper {
        padding: 40px 20px;
        margin: 20px 15px;
        border-radius: 12px;
    }
    
    .alma-empty-state-icon {
        width: 60px;
        height: 60px;
        margin-bottom: 20px;
    }
    
    .alma-empty-state-title {
        font-size: 20px;
    }
    
    .alma-empty-state-btn {
        width: 100%; /* Na telefonie przycisk na całą szerokość boksu */
    }
}

/* ==========================================
   GLOBALNE STYLOWANIE PÓŁ HASŁA (BEZ RUCHU NA HOVER)
   ========================================== */

.password-input,
.woocommerce-Input--password,
.woocommerce-form-row:has(.show-password-input) {
    position: relative !important;
    display: block !important;
    width: 100% !important;
}

.password-input input[type="password"],
.password-input input[type="text"],
.woocommerce-form-row input[type="password"] {
    width: 100% !important;
    padding-right: 45px !important;
    box-sizing: border-box !important;
}

/* Base przycisku oka */
.show-password-input,
button.show-password-input,
span.show-password-input,
.woocommerce-form-row .show-password-input {
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    margin: 0 !important;
    padding: 4px !important;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    cursor: pointer !important;
    z-index: 5 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    height: auto !important;
    width: auto !important;
    color: #666 !important;
    transition: color 0.2s ease !important; /* Zmiana koloru bez animowania pozycji */
}

/* BLOKADA RUCHU: Sztywne wyśrodkowanie przy najechaniu i kliknięciu */
.show-password-input:hover,
button.show-password-input:hover,
.show-password-input:focus,
button.show-password-input:focus,
.show-password-input:active,
button.show-password-input:active {
    top: 50% !important;
    transform: translateY(-50%) !important; /* Trzyma ikonę pionowo w miejscu */
    margin: 0 !important;
    padding: 4px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #000 !important;
}

/* Przekształcamy boks powiadomienia w elastyczny kontener */
.woocommerce-message {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 16px !important;
    flex-wrap: nowrap !important;
}

/* Wymuszamy, aby przycisk zawsze lądował na samym końcu i się nie kurczył */
.woocommerce-message .button.wc-forward {
    margin-left: auto !important;
    flex-shrink: 0 !important;
    white-space: nowrap !important;
}