/* ==========================================================================
   WooCommerce — TooSteel (minimal, czarno-biały)
   ========================================================================== */

#woo {
    --woo-ink: #231f20;
    --woo-bg: #fff;
    --woo-line: #e6e6e6;
    --woo-muted: #777;
    color: var(--woo-ink);
}

/* ---------- ARCHIWUM / SIATKA PRODUKTÓW ---------------------------------- */

#woo ul.products {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
}

#woo ul.products::before,
#woo ul.products::after {
    content: none;
}

#woo ul.products li.product {
    position: relative;
    overflow: hidden;
    background: #111;
    width: auto;
    float: none;
    margin: 0;
    text-align: left;
}

#woo ul.products li.product .content__thumb {
    position: relative;
    overflow: hidden;
}

#woo ul.products li.product .content__thumb img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    display: block;
    margin: 0;
    transition: transform .6s ease;
}

#woo ul.products li.product:hover .content__thumb img {
    transform: scale(1.06);
}

#woo ul.products li.product .content__thumb::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,
            rgba(0, 0, 0, .8) 0%,
            rgba(0, 0, 0, .5) 35%,
            rgba(0, 0, 0, .15) 65%,
            rgba(0, 0, 0, 0) 100%);
    z-index: 1;
}

#woo ul.products li.product .content__box {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 2;
    width: 100%;
    padding: 2.5rem;
}

#woo ul.products li.product .woocommerce-loop-product__title {
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 1.3;
    margin: 0;
}

#woo ul.products li.product .woocommerce-loop-product__title a {
    color: #fff;
    text-decoration: none;
}

#woo ul.products li.product .woocommerce-loop-product__title a:hover {
    color: #e6e6e6;
}

#woo ul.products li.product .price {
    display: flex;
    align-items: center;
    gap:1rem;
    font-weight: 400;
    font-size: 1.2rem;
    color: #fff;
    margin-bottom: 1.25rem;
}

#woo ul.products li.product .price .woocommerce-price-suffix {
    display: inline-flex;
    align-items: center;
    white-space: nowrap;
    margin-top: 0rem;
    padding: .15rem .55rem;
    background: rgba(255, 255, 255, .14);
    border-radius: 999px;
    font-size: .68rem;
    font-weight: 600;
    letter-spacing: .02em;
    color: rgba(255, 255, 255, .75);
}

#woo ul.products li.product .btn-small a {
    display: inline-flex;
    align-items: center;
    gap: .6rem;
    font-size: .95rem;
    font-weight: 600;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: .03em;
}

#woo ul.products li.product .btn-small i {
    font-size: 1rem;
    transition: transform .3s ease;
}

#woo ul.products li.product:hover .btn-small i {
    transform: translateX(4px);
}

/* ---------- KAFLE KATEGORII (nad siatką produktów) --------------------- */

.shop-cats {
    margin-bottom: 3rem;
}

.shop-cats__grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 8px;
}

.shop-cat {
    position: relative;
    display: flex;
    align-items: flex-end;
    height: 300px;
    padding: 1.75rem;
    background: #111 center / cover no-repeat;
    overflow: hidden;
    text-decoration: none;
}

.shop-cat__overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top,
            rgba(0, 0, 0, .78) 0%,
            rgba(0, 0, 0, .4) 55%,
            rgba(0, 0, 0, .1) 100%);
    transition: background .3s ease;
}

.shop-cat:hover .shop-cat__overlay {
    background: linear-gradient(to top,
            rgba(0, 0, 0, .82) 0%,
            rgba(0, 0, 0, .5) 55%,
            rgba(0, 0, 0, .2) 100%);
}

.shop-cat__body {
    position: relative;
    z-index: 2;
    width: 100%;
}

.shop-cat__title {
    color: #fff;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.25;
    margin: 0 0 .5rem;
}

.shop-cat__link {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: rgba(255, 255, 255, .85);
    font-size: .9rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.shop-cat__link i {
    transition: transform .3s ease;
}

.shop-cat:hover .shop-cat__link {
    color: #fff;
}

.shop-cat:hover .shop-cat__link i {
    transform: translateX(4px);
}

@media (max-width: 991px) {
    .shop-cats__grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .shop-cat {
        height: 260px;
    }
}

@media (max-width: 575px) {
    .shop-cats__grid {
        grid-template-columns: 1fr;
    }

    .shop-cat {
        height: 220px;
    }
}

/* ---------- PAGINACJA SKLEPU -------------------------------------------- */

#woo .woocommerce-pagination {
    margin-top: 4rem;
    text-align: center;
}

#woo .woocommerce-pagination ul {
    display: inline-flex;
    gap: .5rem;
    list-style: none;
    margin: 0;
    padding: 0;
    border: 0;
}

#woo .woocommerce-pagination ul li {
    margin: 0;
    border: 0;
    overflow: visible;
}

#woo .woocommerce-pagination ul li a,
#woo .woocommerce-pagination ul li span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 46px;
    height: 46px;
    padding: 0 .65rem;
    border: 1px solid var(--woo-line);
    border-radius: 0;
    color: var(--woo-ink);
    font-weight: 600;
    line-height: 1;
    transition: .2s ease-in-out;
}

#woo .woocommerce-pagination ul li a:hover,
#woo .woocommerce-pagination ul li span.current {
    background: var(--woo-ink);
    border-color: var(--woo-ink);
    color: #fff;
}

/* ---------- POJEDYNCZY PRODUKT — KARTA ---------------------------------- */

#woo div.product {
    display: grid;
    grid-template-columns: 45% 50%;
    gap: 3.5rem;
    align-items: start;
}

#woo div.product .product-media,
#woo div.product .woocommerce-product-gallery,
#woo div.product .summary {
    width: auto;
    float: none;
    margin: 0;
}

#woo div.product .woocommerce-product-gallery img {
    width: 100%;
    height: auto;
    display: block;
}

#woo div.product .summary {
    margin: 0;
}

/* Badge dostępności */
#woo .stock-badge {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    background: #f0f0f0;
    color: var(--woo-ink);
    font-size: .85rem;
    font-weight: 600;
    padding: .45rem .9rem;
    border-radius: 999px;
    margin-bottom: 1.5rem;
}

#woo .stock-badge i {
    font-size: .9rem;
}

/* Nazwa nad ceną (kolumna) */
#woo .summary-head {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .5rem;
    margin-bottom: 1.5rem;
}

#woo .summary-head .product_title {
    font-size: 3.4rem;
    font-weight: 700;
    line-height: 1.1;
    margin: 0;
}

#woo .summary-head .price {
    font-size: 1.6rem;
    font-weight: 700;
    color: var(--woo-ink);
    white-space: nowrap;
    margin: 0;
}

#woo .summary-head .price .woocommerce-price-suffix {
    font-size: .85rem;
    font-weight: 400;
    color: var(--woo-muted);
    margin-left: .35rem;
}

#woo .woocommerce-product-details__short-description {
    color: #444;
    line-height: 1.7;
    margin-bottom: 2rem;
}

#woo .woocommerce-product-details__short-description p {
    margin-bottom: .75rem;
}

/* Akcje: rząd [ilość + dodaj do koszyka], pod spodem [zapytaj o produkt 100%] */
#woo .summary-actions {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
}

#woo div.product form.cart {
    display: flex;
    align-items: stretch;
    gap: 0rem;
    width: 100%;
    margin: 0;
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}

#woo div.product form.cart .quantity {
    flex: 0 0 auto;
    margin: 0 .75rem 0 0;
}

#woo .single_add_to_cart_button {
    flex: 1 1 auto;
}

#woo .ask-product {
    width: 100%;
}

#woo .single_add_to_cart_button,
#woo .ask-product {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    padding: .85rem 1.8rem;
    font-weight: 700;
    font-size: 1rem;
    border-radius: 0;
    cursor: pointer;
    transition: .2s ease-in-out;
}

#woo .single_add_to_cart_button {
    background: var(--woo-ink);
    color: #fff;
    border: 2px solid var(--woo-ink);
}

#woo .single_add_to_cart_button:hover {
    opacity: .85;
}

#woo .ask-product {
    background: #fff;
    color: var(--woo-ink);
    border: 2px solid var(--woo-ink);
    text-decoration: none;
}

#woo .ask-product:hover {
    background: var(--woo-ink);
    color: #fff;
}

#woo div.product .quantity .qty {
    width: 64px;
    height: 100%;
    min-height: 52px;
    padding: 0 .5rem;
    text-align: center;
    border: 1px solid var(--woo-line);
    border-radius: 0;
    font-family: inherit;
    font-size: 1rem;
}

/* Galeria — miniatury */
#woo div.product .flex-control-thumbs {
    display: flex;
    flex-wrap: wrap;
    gap: .75rem;
    list-style: none;
    margin: .75rem 0 0;
    padding: 0;
}

#woo div.product .flex-control-thumbs li {
    width: auto;
    margin: 0;
}

#woo div.product .flex-control-thumbs img {
    width: 90px;
    height: auto;
    cursor: pointer;
    opacity: .65;
    transition: opacity .2s ease-in-out;
}

#woo div.product .flex-control-thumbs img.flex-active,
#woo div.product .flex-control-thumbs img:hover {
    opacity: 1;
}

/* ---------- TABSY (OPIS / ATRYBUTY / ZAPYTAJ) --------------------------- */

#woo .product-tabs {
    margin-top: 4rem;
}

#woo .pt-nav {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 0;
    margin: 0 0 2rem;
    padding: 0;
    border-bottom: 1px solid var(--woo-line);
}

#woo .pt-nav li {
    margin: 0;
}

#woo .pt-tab {
    background: transparent;
    border: 0;
    border-bottom: 3px solid transparent;
    margin-bottom: -1px;
    padding: 1rem 1.75rem;
    font-family: inherit;
    font-size: 1rem;
    font-weight: 700;
    color: var(--woo-muted);
    cursor: pointer;
    transition: .2s ease-in-out;
}

#woo .pt-tab:hover {
    color: var(--woo-ink);
}

#woo .pt-tab.is-active {
    color: var(--woo-ink);
    border-bottom-color: var(--woo-ink);
}

#woo .pt-panel {
    display: none;
}

#woo .pt-panel.is-active {
    display: block;
}

/* ---------- TABELA ATRYBUTÓW (SPECYFIKACJA) ----------------------------- */

#woo .product-description {
    line-height: 1.8;
}

#woo .woocommerce-product-attributes {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
}

#woo .woocommerce-product-attributes th,
#woo .woocommerce-product-attributes td {
    text-align: left;
    padding: .6rem .9rem;
    border: 1px solid var(--woo-line);
    vertical-align: top;
}

#woo .woocommerce-product-attributes th {
    width: 40%;
    font-weight: 700;
    background: #fafafa;
}

#woo .woocommerce-product-attributes td p {
    margin: 0;
}

/* ---------- FORMULARZ ZAPYTANIA (CF7 na białym tle) -------------------- */

#woo .product-form {
    width: 100%;
}

/* Pola tekstowe (width:100% TYLKO dla pól tekstowych — nie dla checkboxów/plików) */
#woo .product-form input[type="text"],
#woo .product-form input[type="email"],
#woo .product-form input[type="tel"],
#woo .product-form input[type="url"],
#woo .product-form input[type="number"],
#woo .product-form input[type="date"],
#woo .product-form textarea,
#woo .product-form select {
    width: 100%;
    background: #fff;
    border: 1px solid var(--woo-line);
    color: var(--woo-ink);
    padding: .85rem 1rem;
    border-radius: 0;
    font-family: inherit;
    font-size: 1rem;
    margin: 0;
}

#woo .product-form input:focus,
#woo .product-form textarea:focus,
#woo .product-form select:focus {
    border-color: var(--woo-ink);
    outline: 0;
}

#woo .product-form textarea {
    min-height: 150px;
    resize: vertical;
}

/* Odstępy między wierszami pól (formularz używa bootstrapowego .row) */
#woo .product-form .row {
    --bs-gutter-x: 1.25rem;
    --bs-gutter-y: 1.25rem;
}

/* Tematy + zgoda — nadpisanie białego tekstu z .cta-form/acc.css na ciemny */
#woo .product-form .form-topics,
#woo .product-form .form-agree {
    margin: 1.5rem 0;
}

#woo .product-form .form-topics p {
    color: var(--woo-ink);
    font-weight: 600;
    margin-bottom: .65rem;
}

#woo .product-form .wpcf7-checkbox {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem 1.75rem;
    background: transparent;
    border: none;
    padding: 0
}

#woo .product-form .wpcf7-list-item {
    margin: 0;
    color: #444;
}

#woo .product-form .wpcf7-list-item label {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    cursor: pointer;
}

#woo .product-form input[type="checkbox"],
#woo .product-form input[type="radio"] {
    flex: 0 0 auto;
    width: 18px;
    height: 18px;
    margin: 0;
    padding: 0;
    accent-color: var(--woo-ink);
    cursor: pointer;
}

#woo .product-form .form-agree {
    color: #555;
    font-size: .9rem;
}

#woo .product-form .form-agree a {
    color: var(--woo-ink);
    text-decoration: underline;
}

#woo .product-form input[type="file"] {
    margin: .25rem 0;
}

#woo .product-form .form-submit {
    margin-top: 1.5rem;
}

#woo .product-form input[type="submit"],
#woo .product-form button[type="submit"],
#woo .product-form .wpcf7-submit {
    width: auto;
    background: var(--woo-ink);
    color: #fff;
    border: 0;
    padding: .7rem 1.5rem;
    font-weight: 700;
    font-size: 1rem;
    text-transform: uppercase;
    border-radius: 0;
    cursor: pointer;
    transition: .2s ease-in-out;
}

#woo .product-form input[type="submit"]:hover,
#woo .product-form button[type="submit"]:hover,
#woo .product-form .wpcf7-submit:hover {
    opacity: .85;
}

/* Komunikaty CF7 (acc.css daje jasny tekst — przyciemniamy na białym) */
#woo .product-form .wpcf7-response-output {
    color: var(--woo-ink);
    margin: 1.5rem 0 0;
}

/* ---------- SEKCJE DOLNE: PODOBNE / LOSOWE ----------------------------- */

#woo .products-row {
    margin-top: 5rem;
}

#woo .products-row-title {
    font-size: 1.8rem;
    font-weight: 300;
    margin: 0 0 2rem;
}

/* ---------- KOMUNIKATY -------------------------------------------------- */

#woo .woocommerce-notices-wrapper:empty {
    display: none;
}

#woo .woocommerce-message,
#woo .woocommerce-info,
#woo .woocommerce-error {
    list-style: none;
    padding: 1rem 1.2rem;
    margin: 0 0 1.25rem;
    border: 0;
    border-left: 3px solid var(--woo-ink);
    background: #f7f7f7;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

#woo .woocommerce-error {
    border-left-color: #c0392b;
}

#woo .woocommerce-message::before,
#woo .woocommerce-info::before,
#woo .woocommerce-error::before,
#woo .woocommerce-message::after,
#woo .woocommerce-info::after,
#woo .woocommerce-error::after {
    content: none;
}

#woo .woocommerce-message .button,
#woo .woocommerce-message a.wc-forward {
    flex: 0 0 auto;
    margin-left: auto;
    background: var(--woo-ink);
    color: #fff;
    padding: .45rem 1rem;
    font-weight: 700;
    border: 0;
    border-radius: 0;
    text-decoration: none;
    transition: .2s ease-in-out;
}

#woo .woocommerce-message .button:hover,
#woo .woocommerce-message a.wc-forward:hover {
    opacity: .85;
}

/* ---------- UKRYCIE CTA NA PODSTRONACH SKLEPU -------------------------- */

body.woocommerce .cta-section,
body.woocommerce-page .cta-section {
    display: none;
}

/* ---------- KOSZYK / CHECKOUT (bloki WooCommerce) --------------------- */

/* Przyciski — spójne z motywem (czarne, proste kanty, mocniejsze) */
:is(#woo, .woocommerce-page) .wc-block-cart__submit-button,
:is(#woo, .woocommerce-page) .wc-block-components-checkout-place-order-button,
:is(#woo, .woocommerce-page) .wc-block-components-button.contained,
:is(#woo, .woocommerce-page) .wp-element-button {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 56px;
    background: var(--woo-ink);
    color: #fff;
    border: 0;
    border-radius: 0;
    font-weight: 700;
    font-size: 1.05rem;
    padding: 1rem 2rem;
    transition: .2s ease-in-out;
}

:is(#woo, .woocommerce-page) .wc-block-components-checkout-place-order-button .wc-block-components-button__text,
:is(#woo, .woocommerce-page) .wc-block-cart__submit-button .wc-block-components-button__text {
    font-size: 1.05rem;
}

:is(#woo, .woocommerce-page) .wc-block-cart__submit-button:hover,
:is(#woo, .woocommerce-page) .wc-block-components-checkout-place-order-button:hover,
:is(#woo, .woocommerce-page) .wc-block-components-button.contained:hover,
:is(#woo, .woocommerce-page) .wp-element-button:hover {
    background: var(--woo-ink);
    opacity: .9;
}

/* Tabela koszyka — linie i nagłówek */
:is(#woo, .woocommerce-page) .wc-block-cart-items {
    border-top: 1px solid var(--woo-line);
}

#woo table.wc-block-cart-items thead {
    display: none
}

:is(#woo, .woocommerce-page) .wc-block-cart-items__header {
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: .8rem;
}

:is(#woo, .woocommerce-page) .wc-block-cart-items__header th {
    background: var(--woo-ink);
    color: #fff;
    border: 0;
    padding-top: .9rem;
    padding-bottom: .9rem;
}

:is(#woo, .woocommerce-page) .wc-block-cart-item__total .wc-block-components-product-price {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--woo-ink);
}

:is(#woo, .woocommerce-page) .wc-block-cart-item__total,
:is(#woo, .woocommerce-page) .wc-block-cart-items td {
    border-bottom: none
}

/* Pozycja koszyka — większe: nazwa / cena / opis / miniatura */
:is(#woo, .woocommerce-page) .wc-block-components-product-name {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--woo-ink);
    text-decoration: none;
}

:is(#woo, .woocommerce-page) .wc-block-cart-item__prices,
:is(#woo, .woocommerce-page) .wc-block-cart-item__prices .wc-block-components-product-price {
    font-size: 1.25rem;
}

:is(#woo, .woocommerce-page) .wc-block-components-product-metadata,
:is(#woo, .woocommerce-page) .wc-block-components-product-metadata__description {
    font-size: 1rem;
}

:is(#woo, .woocommerce-page) .wc-block-cart-item__image img {
    width: 150px;
    max-width: none;
}

/* Karty podsumowania — wspólny, schludny wygląd (koszyk + checkout) */
:is(#woo, .woocommerce-page) .wc-block-cart__sidebar,
:is(#woo, .woocommerce-page) .wc-block-checkout__sidebar {
    padding: 1.25rem;
    border: 1px solid var(--woo-line);
    border-radius: 0;
    background: #fafafa;
}

:is(#woo, .woocommerce-page) .wc-block-cart__sidebar .wc-block-components-totals-wrapper {
    padding: .5rem 0;
}

/* Wewnętrzna karta produktu w podsumowaniu — bez dublowania tła */
:is(#woo, .woocommerce-page) .wc-block-checkout__sidebar .wc-block-components-order-summary {
    background: transparent;
    border: 0;
    padding: 0;
}

/* Tytuły podsumowania */
:is(#woo, .woocommerce-page) .wc-block-cart__totals-title,
:is(#woo, .woocommerce-page) .wc-block-components-order-summary__title,
:is(#woo, .woocommerce-page) .wc-block-components-checkout-step__title {
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: .8rem;
    font-weight: 700;
    color: var(--woo-muted);
}

/* Wiersze sum (Kwota / Dostawa) */
:is(#woo, .woocommerce-page) .wc-block-components-totals-item,
:is(#woo, .woocommerce-page) .wc-block-components-totals-item__label,
:is(#woo, .woocommerce-page) .wc-block-components-totals-item__value {
    padding-top: .25rem;
    padding-bottom: .25rem;
    font-size: 1rem;
}

/* Suma końcowa — mocny akcent */
:is(#woo, .woocommerce-page) .wc-block-components-totals-footer-item,
:is(#woo, .woocommerce-page) .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 1.2rem;
    font-weight: 700;
    color: var(--woo-ink);
}

/* "W tym X zł VAT" — drobny, stonowany */
:is(#woo, .woocommerce-page) .wc-block-components-totals-footer-item-tax,
:is(#woo, .woocommerce-page) .wc-block-components-totals-footer-item-tax .wc-block-components-totals-item__label,
:is(#woo, .woocommerce-page) .wc-block-components-totals-footer-item-tax .wc-block-components-totals-item__value {
    font-size: .8rem;
    font-weight: 400;
    color: var(--woo-muted);
}

/* "Wysyłka zostanie obliczona..." — odstęp i drobniejsze */
:is(#woo, .woocommerce-page) .wc-block-components-totals-shipping {
    margin-top: .5rem;
    font-size: .85rem;
    font-weight: 400;
}

/* Pozycje w podsumowaniu zamówienia (checkout) — większe nazwa/cena/opis */
:is(#woo, .woocommerce-page) .wc-block-components-order-summary-item {
    padding: .85rem 0;
    border-bottom: 1px solid var(--woo-line);
}

:is(#woo, .woocommerce-page) .wc-block-components-order-summary-item .wc-block-components-product-name,
:is(#woo, .woocommerce-page) .wc-block-components-order-summary-item__total-price {
    font-size: 1.05rem;
    font-weight: 700;
}

:is(#woo, .woocommerce-page) .wc-block-components-order-summary-item__description {
    font-size: .95rem;
}

/* Stepper ilości */
:is(#woo, .woocommerce-page) .wc-block-components-quantity-selector {
    border: 1px solid var(--woo-line);
    border-radius: 0;
}

/* Checkout — pola (floating label) */
:is(#woo, .woocommerce-page) .wc-block-components-text-input input,
:is(#woo, .woocommerce-page) .wc-block-components-text-input .components-text-control__input,
:is(#woo, .woocommerce-page) .wc-block-components-select .components-form-token-field__input,
:is(#woo, .woocommerce-page) .wc-block-components-select select {
    border-radius: 0;
    border-color: var(--woo-line);
}

:is(#woo, .woocommerce-page) .wc-block-components-text-input input:focus,
:is(#woo, .woocommerce-page) .wc-block-components-text-input.is-active input {
    border-color: var(--woo-ink);
    box-shadow: none;
}

:is(#woo, .woocommerce-page) .wc-block-components-checkbox__input,
:is(#woo, .woocommerce-page) .wc-block-components-radio-control__input {
    accent-color: var(--woo-ink);
}

/* Wybrana opcja płatności */
:is(#woo, .woocommerce-page) .wc-block-components-radio-control__option--checked {
    border-color: var(--woo-ink);
}

/* ---------- RESPONSIVE -------------------------------------------------- */

@media (max-width: 991px) {
    #woo ul.products {
        grid-template-columns: repeat(2, 1fr);
        gap: 1.5rem;
    }

    #woo ul.products li.product .content__thumb img {
        height: 360px;
    }

    #woo ul.products li.product .content__box {
        padding: 2rem;
    }

    #woo div.product {
        grid-template-columns: 1fr;
        gap: 2rem;
    }
}

@media (max-width: 575px) {
    #woo ul.products {
        grid-template-columns: 1fr;
    }

    #woo ul.products li.product .content__thumb img {
        height: 300px;
    }

    #woo .summary-head .product_title {
        font-size: 1.6rem;
    }

    #woo .summary-actions {
        flex-direction: column;
    }

    #woo .single_add_to_cart_button,
    #woo .ask-product {
        width: 100%;
    }

    #woo .pt-tab {
        padding: .85rem 1.1rem;
    }
}

.nf-menu-cart .nf-cart-link {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    white-space: nowrap;
}

.mobile-nav .nf-menu-cart .nf-cart-link {
    font-weight: 700;
    color: #231f20;
}

.nf-cart-link .woocommerce-Price-amount {
    font-weight: 700;
}
/* ---------- MOJE KONTO --------------------------------------------------- */

#woo .woocommerce:has(> .woocommerce-MyAccount-navigation) {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 3rem;
    align-items: start;
}

#woo .woocommerce-MyAccount-navigation,
#woo .woocommerce-MyAccount-content {
    float: none;
    width: 100%;
}

#woo .woocommerce-MyAccount-navigation ul {
    list-style: none;
    margin: 0;
    padding: 0;
    border: 1px solid var(--woo-line);
}

#woo .woocommerce-MyAccount-navigation li {
    margin: 0;
    border-bottom: 1px solid var(--woo-line);
}

#woo .woocommerce-MyAccount-navigation li:last-child {
    border-bottom: 0;
}

#woo .woocommerce-MyAccount-navigation li a {
    display: block;
    padding: .85rem 1.25rem;
    font-weight: 600;
    color: var(--woo-ink);
    text-decoration: none;
    transition: .2s ease-in-out;
}

#woo .woocommerce-MyAccount-navigation li a:hover,
#woo .woocommerce-MyAccount-navigation li.is-active a {
    background: var(--woo-ink);
    color: #fff;
}

#woo .woocommerce-MyAccount-content {
    line-height: 1.7;
}

#woo .woocommerce-MyAccount-content p a {
    color: var(--woo-ink);
    font-weight: 600;
    text-decoration: underline;
}

#woo .woocommerce-MyAccount-content table.shop_table {
    width: 100%;
    border: 0;
    border-collapse: collapse;
    border-radius: 0;
}

#woo .woocommerce-MyAccount-content table.shop_table th {
    background: var(--woo-ink);
    color: #fff;
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: .8rem;
    border: 0;
    padding: .9rem 1rem;
}

#woo .woocommerce-MyAccount-content table.shop_table td {
    padding: .85rem 1rem;
    border: 0;
    border-bottom: 1px solid var(--woo-line);
}

#woo .woocommerce-MyAccount-content .woocommerce-button,
#woo .woocommerce-MyAccount-content .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: var(--woo-ink);
    color: #fff;
    border: 2px solid var(--woo-ink);
    border-radius: 0;
    font-weight: 700;
    font-size: .9rem;
    padding: .55rem 1.3rem;
    text-decoration: none;
    cursor: pointer;
    transition: .2s ease-in-out;
}

#woo .woocommerce-MyAccount-content .woocommerce-button:hover,
#woo .woocommerce-MyAccount-content .button:hover {
    opacity: .85;
    color: #fff;
}

#woo .woocommerce-MyAccount-content .woocommerce-Address-title {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: .75rem;
}

#woo .woocommerce-MyAccount-content .woocommerce-Address-title h3 {
    font-size: 1.3rem;
    font-weight: 700;
    margin: 0;
}

#woo .woocommerce-MyAccount-content .woocommerce-Address-title .edit {
    font-size: .85rem;
    font-weight: 600;
    color: var(--woo-ink);
    text-decoration: underline;
}

#woo .woocommerce-MyAccount-content address {
    border: 1px solid var(--woo-line);
    padding: 1.25rem;
    font-style: normal;
    line-height: 1.7;
}

#woo .woocommerce-MyAccount-content fieldset {
    border: 0;
    margin: 2rem 0 0;
    padding: 0;
}

#woo .woocommerce-MyAccount-content legend {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 1rem;
    padding: 0;
}

#woo .woocommerce-MyAccount-content .form-row label {
    display: block;
    font-weight: 600;
    font-size: .9rem;
    margin-bottom: .35rem;
}

#woo .woocommerce-MyAccount-content .form-row .input-text,
#woo .woocommerce-MyAccount-content .form-row select {
    width: 100%;
    min-height: 48px;
    padding: .6rem .9rem;
    border: 1px solid var(--woo-line);
    border-radius: 0;
    background: #fff;
}

#woo .woocommerce-MyAccount-content .form-row .input-text:focus,
#woo .woocommerce-MyAccount-content .form-row select:focus {
    border-color: var(--woo-ink);
    outline: none;
    box-shadow: none;
}

#woo .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-notices-wrapper {
    grid-column: 1 / -1;
}

#woo .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation {
    grid-column: 1;
}

#woo .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content {
    grid-column: 2;
}

@media (max-width: 767px) {
    #woo .woocommerce:has(> .woocommerce-MyAccount-navigation) {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    #woo .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-navigation,
    #woo .woocommerce:has(> .woocommerce-MyAccount-navigation) > .woocommerce-MyAccount-content {
        grid-column: 1;
    }
}

/* CHECKOUT — FAKTURA VAT (pola firmy w jednym rzędzie) */

.wp-block-woocommerce-checkout-additional-information-block .wc-block-components-address-form {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 1rem;
}

.wp-block-woocommerce-checkout-additional-information-block .wc-block-components-address-form__toosteel-faktura-vat {
    grid-column: 1 / -1;
}

@media (max-width: 767px) {
    .wp-block-woocommerce-checkout-additional-information-block .wc-block-components-address-form {
        grid-template-columns: 1fr;
    }
}
