/* ==========================================================================
   WOOCOMMERCE — Koszyk, Zamówienie, Moje Konto, Thank You
   Akademia Naturalnego Życia — Custom Theme
   Wszystkie wartości przez zmienne z globals.css
   ========================================================================== */

/* ══════════════════════════════════════════════════
   1. RESET & WRAPPER BAZOWY
══════════════════════════════════════════════════ */

.woocommerce,
.woocommerce-page {
    font-family: var(--font-ui);
    color: var(--color-text);
}

.woocommerce .woocommerce-notices-wrapper,
.woocommerce-page .woocommerce-notices-wrapper {
    max-width: var(--container-max);
    margin-inline: auto;
    padding-inline: var(--space-6);
}

/* Ogólny wrapper stron WC */
.woocommerce-cart .entry-content,
.woocommerce-checkout .entry-content,
.woocommerce-account .entry-content {
    padding-block: var(--space-16);
}

/* ══════════════════════════════════════════════════
   2. POWIADOMIENIA (notices)
══════════════════════════════════════════════════ */

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.wc-block-components-notice-banner {
    border-radius: var(--radius-md);
    padding: var(--space-4) var(--space-5);
    margin-bottom: var(--space-6);
    font-size: 0.9375rem;
    display: flex;
    align-items: center;
    gap: var(--space-3);
    border: none;
    border-left: 4px solid;
}

.woocommerce-message {
    background-color: color-mix(in srgb, var(--color-primary) 8%, white);
    border-left-color: var(--color-primary);
    color: var(--color-primary-dark);
}

.woocommerce-info {
    background-color: color-mix(in srgb, var(--color-accent) 8%, white);
    border-left-color: var(--color-accent);
    color: var(--color-accent-dark);
}

.woocommerce-error {
    background-color: #fef2f2;
    border-left-color: #dc2626;
    color: #991b1b;
    list-style: none;
    margin: 0;
    padding-left: var(--space-5);
}

.woocommerce-error li {
    padding: var(--space-1) 0;
}

/* ══════════════════════════════════════════════════
   3. PRZYCISKI — zunifikowane
══════════════════════════════════════════════════ */

.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce .button {
    display: inline-block;
    background-color: var(--color-primary);
    color: var(--color-white);
    font-family: var(--font-ui);
    font-weight: 600;
    font-size: 0.9375rem;
    letter-spacing: 0.03em;
    padding: var(--space-3) var(--space-6);
    border-radius: var(--radius-sm);
    border: 2px solid var(--color-primary);
    cursor: pointer;
    text-decoration: none;
    transition: background-color var(--transition-base), border-color var(--transition-base), color var(--transition-base);
    line-height: 1.5;
}

.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce .button:hover {
    background-color: var(--color-primary-dark);
    border-color: var(--color-primary-dark);
    color: var(--color-white);
}

.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt,
.woocommerce #respond input#submit.alt {
    background-color: var(--color-accent);
    border-color: var(--color-accent);
}

.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover {
    background-color: var(--color-accent-dark);
    border-color: var(--color-accent-dark);
}

/* Przycisk "Przejdź do płatności" i "Kupuję i płacę" */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce #payment #place_order,
.wc-block-cart__submit-button,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
    display: block;
    width: 100%;
    text-align: center;
    background-color: var(--color-heading);
    border-color: var(--color-heading);
    color: var(--color-white);
    padding: var(--space-4) var(--space-6);
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    border-radius: var(--radius-sm);
    transition: background-color var(--transition-base);
    cursor: pointer;
    border: none;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce #payment #place_order:hover,
.wc-block-cart__submit-button:hover,
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button:hover {
    background-color: var(--color-primary-dark);
    color: var(--color-white);
}

/* ══════════════════════════════════════════════════
   4. NAGŁÓWKI STRON WC
══════════════════════════════════════════════════ */

.woocommerce-cart h1,
.woocommerce-checkout h1,
.woocommerce-account h1,
.woocommerce-order-received h1,
.entry-title {
    font-family: var(--font-heading);
    font-size: clamp(2rem, 5vw, 2.75rem);
    font-weight: 700;
    color: var(--color-heading);
    margin-bottom: var(--space-8);
    line-height: 1.2;
}

/* ══════════════════════════════════════════════════
   5. KOSZYK (cart)
══════════════════════════════════════════════════ */

.woocommerce-cart-form {
    overflow-x: auto;
}

/* Tabela koszyka */
table.shop_table {
    width: 100%;
    border-collapse: collapse;
    font-family: var(--font-ui);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

table.shop_table th {
    background-color: color-mix(in srgb, var(--color-primary) 6%, white);
    color: var(--color-heading);
    font-weight: 700;
    font-size: 0.8125rem;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: var(--space-4) var(--space-5);
    text-align: left;
    border-bottom: 2px solid var(--color-border);
}

table.shop_table td {
    padding: var(--space-5);
    border-bottom: 1px solid var(--color-border);
    vertical-align: middle;
    color: var(--color-text);
}

table.shop_table tbody tr:last-child td {
    border-bottom: none;
}

table.shop_table tbody tr:hover {
    background-color: color-mix(in srgb, var(--color-primary) 3%, white);
}

/* Zdjęcie produktu w koszyku */
table.shop_table .product-thumbnail img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: var(--radius-sm);
    display: block;
}

/* Nazwa produktu */
table.shop_table .product-name a {
    color: var(--color-heading);
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none;
    font-family: var(--font-heading);
    transition: color var(--transition-base);
}

table.shop_table .product-name a:hover {
    color: var(--color-primary);
}

/* Krótki opis pod nazwą */
table.shop_table .product-name .variation,
table.shop_table .product-name dl {
    margin-top: var(--space-2);
    font-size: 0.875rem;
    color: var(--color-text-muted);
}

/* Opis produktu w td (short description) */
.woocommerce-cart-form td.product-name p,
.woocommerce-cart-form td.product-name .wc-item-meta {
    font-size: 0.875rem;
    color: var(--color-text-muted);
    margin-top: var(--space-2);
    line-height: 1.5;
}

/* Cena */
table.shop_table .product-price,
table.shop_table .product-subtotal {
    font-weight: 700;
    color: var(--color-primary-dark);
    font-size: 1.0625rem;
}

/* Ilość */
table.shop_table .product-quantity .qty {
    width: 64px;
    padding: var(--space-2) var(--space-3);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-ui);
    font-size: 0.9375rem;
    text-align: center;
}

/* Usuń produkt */
table.shop_table .product-remove a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: transparent;
    color: var(--color-text-muted);
    font-size: 1.125rem;
    text-decoration: none;
    transition: background-color var(--transition-base), color var(--transition-base);
}

table.shop_table .product-remove a:hover {
    background-color: #fee2e2;
    color: #dc2626;
}

/* Przyciski pod tabelą koszyka */
.cart-collaterals-wrapper,
.woocommerce-cart-form .actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--space-3);
    align-items: center;
    margin-top: var(--space-4);
}

/* Kupon */
.coupon {
    display: flex;
    gap: var(--space-3);
    flex-wrap: wrap;
    align-items: center;
}

.coupon label {
    font-weight: 600;
    color: var(--color-heading);
    margin-right: var(--space-2);
}

.coupon #coupon_code,
input[name="coupon_code"] {
    padding: var(--space-2) var(--space-4);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-ui);
    font-size: 0.9375rem;
    width: 200px;
    transition: border-color var(--transition-base);
}

.coupon #coupon_code:focus,
input[name="coupon_code"]:focus {
    outline: none;
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 15%, transparent);
}

/* Podsumowanie koszyka (sidebar) */
.cart_totals,
.cart-collaterals {
    background-color: color-mix(in srgb, var(--color-primary) 4%, white);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--space-7);
}

.cart_totals h2 {
    font-family: var(--font-heading);
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--color-heading);
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-4);
    border-bottom: 2px solid var(--color-border);
}

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

.cart_totals table th {
    text-align: left;
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--color-text);
    padding: var(--space-3) 0;
    background: none;
    border: none;
    border-bottom: 1px solid var(--color-border);
    text-transform: none;
    letter-spacing: 0;
}

.cart_totals table td {
    text-align: right;
    font-weight: 700;
    color: var(--color-heading);
    padding: var(--space-3) 0;
    border-bottom: 1px solid var(--color-border);
    background: none;
}

.cart_totals .order-total th,
.cart_totals .order-total td {
    font-size: 1.125rem;
    color: var(--color-primary-dark);
    border-bottom: none;
    padding-top: var(--space-4);
}

.cart_totals .order-total td {
    font-size: 1.25rem;
}

/* Dodaj kupon — rozwijane */
.cart_totals .blockui-overlay,
.woocommerce-checkout-payment .blockui-overlay {
    background: rgba(255,255,255,0.7);
}

/* ══════════════════════════════════════════════════
   6. CHECKOUT (zamówienie)
══════════════════════════════════════════════════ */

.woocommerce-checkout #customer_details {
    margin-bottom: var(--space-8);
}

/* Układ 2-kolumnowy checkout */
.woocommerce-checkout .col2-set {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-8);
    margin-bottom: var(--space-8);
}

@media (max-width: 768px) {
    .woocommerce-checkout .col2-set {
        grid-template-columns: 1fr;
    }
}

/* Nagłówki sekcji checkout */
.woocommerce-checkout h3,
.woocommerce-billing-fields h3,
.woocommerce-shipping-fields h3,
.woocommerce-additional-fields h3,
#order_review_heading {
    font-family: var(--font-heading);
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--color-heading);
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-3);
    border-bottom: 2px solid var(--color-border);
}

/* Pola formularza */
.woocommerce-checkout .form-row,
.woocommerce form .form-row {
    margin-bottom: var(--space-4);
}

.woocommerce-checkout .form-row label,
.woocommerce form .form-row label {
    display: block;
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--color-heading);
    margin-bottom: var(--space-2);
}

.woocommerce-checkout .form-row .required,
.woocommerce form .form-row .required {
    color: #dc2626;
    margin-left: 2px;
}

.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="password"],
.woocommerce-checkout input[type="number"],
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce form input[type="text"],
.woocommerce form input[type="email"],
.woocommerce form input[type="tel"],
.woocommerce form input[type="password"],
.woocommerce form select,
.woocommerce form textarea {
    width: 100%;
    padding: var(--space-3) var(--space-4);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-ui);
    font-size: 0.9375rem;
    color: var(--color-text);
    background-color: var(--color-white);
    transition: border-color var(--transition-base), box-shadow var(--transition-base);
    appearance: none;
    -webkit-appearance: none;
}

.woocommerce-checkout input:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus,
.woocommerce form input:focus,
.woocommerce form select:focus,
.woocommerce form textarea:focus {
    outline: none;
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 15%, transparent);
}

/* Select — strzałka */
.woocommerce form .select2-container,
.woocommerce-checkout .select2-container {
    width: 100% !important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single {
    height: auto;
    padding: var(--space-3) var(--space-4);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-sm);
    font-family: var(--font-ui);
    font-size: 0.9375rem;
    transition: border-color var(--transition-base);
}

.woocommerce-checkout .select2-container--default.select2-container--focus .select2-selection--single,
.woocommerce-checkout .select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--color-primary);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--color-primary) 15%, transparent);
    outline: none;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: var(--color-text);
    line-height: 1.5;
    padding: 0;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 100%;
    top: 0;
    right: var(--space-3);
}

/* Układ inline: imię + nazwisko, kod + miasto */
.woocommerce-checkout .form-row-first,
.woocommerce-checkout .form-row-last {
    width: calc(50% - var(--space-3));
    float: left;
}

.woocommerce-checkout .form-row-first {
    margin-right: var(--space-3);
}

.woocommerce-checkout .form-row-last {
    margin-left: var(--space-3);
}

.woocommerce-checkout .form-row-wide {
    width: 100%;
    clear: both;
}

@media (max-width: 640px) {
    .woocommerce-checkout .form-row-first,
    .woocommerce-checkout .form-row-last {
        width: 100%;
        float: none;
        margin: 0;
    }

    .woocommerce-checkout .form-row-first {
        margin-bottom: var(--space-4);
    }
}

/* ─── Przegląd zamówienia (order review) ─── */

#order_review {
    background-color: color-mix(in srgb, var(--color-primary) 4%, white);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--space-7);
}

#order_review table.shop_table {
    border: none;
    border-radius: 0;
    overflow: visible;
}

#order_review table.shop_table th,
#order_review table.shop_table td {
    background: none;
    padding: var(--space-3) 0;
    border-bottom: 1px solid var(--color-border);
}

#order_review table.shop_table th {
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    border-bottom: 2px solid var(--color-border);
}

#order_review .cart-subtotal td,
#order_review .order-total td {
    font-weight: 700;
    color: var(--color-primary-dark);
}

#order_review .order-total td {
    font-size: 1.125rem;
}

/* Thumbnail w order review */
#order_review .product-thumbnail img {
    border-radius: var(--radius-sm);
}

/* ─── Kupon — tylko w koszyku, ukryty na checkout ─── */

.woocommerce-checkout .checkout_coupon,
.woocommerce-checkout .woocommerce-form-coupon-toggle,
.wc-block-checkout .wc-block-components-totals-coupon {
    display: none !important;
}

/* ─── Metody płatności ─── */

#payment {
    background-color: color-mix(in srgb, var(--color-primary) 4%, white);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--space-6);
    margin-top: var(--space-6);
}

#payment ul.payment_methods {
    list-style: none;
    padding: 0;
    margin: 0 0 var(--space-5) 0;
}

#payment ul.payment_methods li {
    padding: var(--space-3) 0;
    border-bottom: 1px solid var(--color-border);
    display: flex;
    align-items: center;
    gap: var(--space-3);
}

#payment ul.payment_methods li:last-child {
    border-bottom: none;
}

#payment ul.payment_methods li label {
    font-weight: 600;
    color: var(--color-heading);
    cursor: pointer;
}

#payment .payment_box {
    background-color: color-mix(in srgb, var(--color-primary) 8%, white);
    border-radius: var(--radius-sm);
    padding: var(--space-4);
    margin-top: var(--space-3);
    font-size: 0.9375rem;
    color: var(--color-text-muted);
}

/* Checkbox akceptacji */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    margin: var(--space-5) 0;
    font-size: 0.875rem;
    color: var(--color-text-muted);
}

.woocommerce-checkout input[type="checkbox"] {
    width: auto;
    margin-right: var(--space-2);
    accent-color: var(--color-primary);
}

/* ══════════════════════════════════════════════════
   7. THANK YOU PAGE (dziękujemy za zamówienie)
══════════════════════════════════════════════════ */

.woocommerce-order-received .woocommerce,
.woocommerce-order-pay .woocommerce {
    max-width: var(--container-max);
    margin-inline: auto;
    padding-inline: var(--space-6);
    padding-block: var(--space-16);
}

/* Baner sukcesu */
.woocommerce-thankyou-order-received,
.woocommerce-order-received .woocommerce-notice--success {
    background-color: color-mix(in srgb, var(--color-primary) 10%, white);
    border: 1px solid color-mix(in srgb, var(--color-primary) 30%, white);
    border-left: 4px solid var(--color-primary);
    border-radius: var(--radius-md);
    padding: var(--space-5) var(--space-6);
    font-size: 1.0625rem;
    font-weight: 600;
    color: var(--color-primary-dark);
    margin-bottom: var(--space-8);
    display: flex;
    align-items: center;
    gap: var(--space-3);
}

.woocommerce-thankyou-order-received::before {
    content: "✓";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background-color: var(--color-primary);
    color: var(--color-white);
    border-radius: 50%;
    font-size: 0.875rem;
    font-weight: 700;
    flex-shrink: 0;
}

/* Szczegóły zamówienia — tabela */
.woocommerce-order-overview,
ul.woocommerce-order-overview {
    list-style: none;
    padding: 0;
    margin: 0 0 var(--space-8) 0;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: var(--space-4);
}

.woocommerce-order-overview li,
ul.woocommerce-order-overview li {
    background-color: color-mix(in srgb, var(--color-primary) 5%, white);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--space-4) var(--space-5);
    text-align: center;
}

.woocommerce-order-overview li strong,
ul.woocommerce-order-overview li strong {
    display: block;
    font-family: var(--font-heading);
    font-size: 1.125rem;
    color: var(--color-heading);
    margin-top: var(--space-2);
}

/* Sekcja "Szczegóły zamówienia" */
.woocommerce-order-details,
.woocommerce-customer-details {
    margin-bottom: var(--space-8);
}

.woocommerce-order-details h2,
.woocommerce-customer-details h2 {
    font-family: var(--font-heading);
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--color-heading);
    margin-bottom: var(--space-5);
    padding-bottom: var(--space-3);
    border-bottom: 2px solid var(--color-border);
}

/* Tabela produktów w thank you */
.woocommerce-table--order-details {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

/* ══════════════════════════════════════════════════
   8. MOJE KONTO (my-account)
══════════════════════════════════════════════════ */

.woocommerce-account .woocommerce {
    max-width: var(--container-max);
    margin-inline: auto;
    padding-inline: var(--space-6);
    padding-block: var(--space-16);
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: var(--space-10);
    align-items: start;
}

@media (max-width: 768px) {
    .woocommerce-account .woocommerce {
        grid-template-columns: 1fr;
    }
}

/* Sidebar nawigacja */
.woocommerce-MyAccount-navigation {
    background-color: color-mix(in srgb, var(--color-primary) 5%, white);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
    position: sticky;
    top: calc(var(--header-height, 80px) + var(--space-4));
}

.woocommerce-MyAccount-navigation ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.woocommerce-MyAccount-navigation ul li {
    border-bottom: 1px solid var(--color-border);
}

.woocommerce-MyAccount-navigation ul li:last-child {
    border-bottom: none;
}

.woocommerce-MyAccount-navigation ul li a {
    display: flex;
    align-items: center;
    gap: var(--space-3);
    padding: var(--space-4) var(--space-5);
    color: var(--color-text);
    font-weight: 500;
    font-size: 0.9375rem;
    text-decoration: none;
    transition: background-color var(--transition-base), color var(--transition-base);
}

.woocommerce-MyAccount-navigation ul li a:hover {
    background-color: color-mix(in srgb, var(--color-primary) 10%, white);
    color: var(--color-primary);
}

.woocommerce-MyAccount-navigation ul li.is-active a {
    background-color: var(--color-primary);
    color: var(--color-white);
    font-weight: 700;
}

/* Treść konta */
.woocommerce-MyAccount-content {
    min-width: 0;
}

.woocommerce-MyAccount-content h2 {
    font-family: var(--font-heading);
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--color-heading);
    margin-bottom: var(--space-6);
}

.woocommerce-MyAccount-content h3 {
    font-family: var(--font-heading);
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--color-heading);
    margin-bottom: var(--space-4);
}

/* Tabela zamówień */
.woocommerce-orders-table,
.woocommerce-MyAccount-content table {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.woocommerce-orders-table th,
.woocommerce-MyAccount-content table th {
    background-color: color-mix(in srgb, var(--color-primary) 8%, white);
    color: var(--color-heading);
    font-weight: 700;
    font-size: 0.8125rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: var(--space-4) var(--space-5);
    text-align: left;
    border-bottom: 2px solid var(--color-border);
}

.woocommerce-orders-table td,
.woocommerce-MyAccount-content table td {
    padding: var(--space-4) var(--space-5);
    border-bottom: 1px solid var(--color-border);
    font-size: 0.9375rem;
    vertical-align: middle;
}

.woocommerce-orders-table tr:last-child td,
.woocommerce-MyAccount-content table tr:last-child td {
    border-bottom: none;
}

.woocommerce-orders-table tr:hover td {
    background-color: color-mix(in srgb, var(--color-primary) 3%, white);
}

/* Status zamówienia */
.woocommerce-orders-table .woocommerce-orders-table__cell-order-status,
mark.order-status {
    display: inline-block;
    padding: 3px var(--space-3);
    border-radius: var(--radius-sm);
    font-size: 0.8125rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    background: none;
}

.woocommerce-orders-table mark.order-status.status-completed,
mark.order-status.status-completed {
    background-color: color-mix(in srgb, var(--color-primary) 12%, white);
    color: var(--color-primary-dark);
}

.woocommerce-orders-table mark.order-status.status-processing,
mark.order-status.status-processing {
    background-color: color-mix(in srgb, var(--color-accent) 12%, white);
    color: var(--color-accent-dark);
}

.woocommerce-orders-table mark.order-status.status-on-hold,
mark.order-status.status-on-hold {
    background-color: #fef9c3;
    color: #92400e;
}

.woocommerce-orders-table mark.order-status.status-cancelled,
mark.order-status.status-cancelled {
    background-color: #fee2e2;
    color: #991b1b;
}

/* Formularze w moim koncie */
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register,
.woocommerce-account .woocommerce-EditAccountForm,
.woocommerce-account .woocommerce-address-fields {
    background-color: color-mix(in srgb, var(--color-primary) 3%, white);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--space-8);
    max-width: 520px;
}

.woocommerce-account .woocommerce-form-login .form-row,
.woocommerce-account .woocommerce-form-register .form-row,
.woocommerce-account .woocommerce-EditAccountForm .form-row,
.woocommerce-account .woocommerce-address-fields .form-row {
    margin-bottom: var(--space-4);
}

/* Lost password */
.woocommerce-account .woocommerce-LostPassword {
    margin-top: var(--space-4);
    font-size: 0.875rem;
}

.woocommerce-account .woocommerce-LostPassword a {
    color: var(--color-primary);
    text-decoration: underline;
}

/* Adressy */
.woocommerce-account .addresses .title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: var(--space-4);
}

.woocommerce-account .woocommerce-Address {
    background-color: color-mix(in srgb, var(--color-primary) 3%, white);
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    padding: var(--space-6);
}

.woocommerce-account .woocommerce-Address address {
    font-style: normal;
    color: var(--color-text);
    line-height: 1.7;
}

/* ══════════════════════════════════════════════════
   9. STRONA LOGOWANIA (gdy oddzielna)
══════════════════════════════════════════════════ */

.woocommerce-account:not(.logged-in) .woocommerce {
    display: block;
    max-width: 560px;
}

.woocommerce-account:not(.logged-in) .u-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-8);
}

@media (max-width: 640px) {
    .woocommerce-account:not(.logged-in) .u-columns {
        grid-template-columns: 1fr;
    }
}

/* ══════════════════════════════════════════════════
   10. RESPONSIVE — TABELA KOSZYKA MOBILE
══════════════════════════════════════════════════ */

@media (max-width: 640px) {
    table.shop_table,
    table.shop_table thead {
        display: block;
    }

    table.shop_table thead {
        display: none; /* Ukryj nagłówki — dane przez data-attr */
    }

    table.shop_table tbody,
    table.shop_table tr {
        display: block;
    }

    table.shop_table tr {
        border-bottom: 2px solid var(--color-border);
        padding: var(--space-4) 0;
    }

    table.shop_table td {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: var(--space-2) var(--space-3);
        border-bottom: none;
    }

    table.shop_table td::before {
        content: attr(data-title);
        font-weight: 700;
        font-size: 0.8125rem;
        text-transform: uppercase;
        letter-spacing: 0.06em;
        color: var(--color-text-muted);
    }

    table.shop_table td.product-remove {
        justify-content: flex-end;
    }

    table.shop_table td.product-remove::before {
        display: none;
    }

    .cart_totals,
    .cart-collaterals {
        padding: var(--space-5);
    }

    .woocommerce-order-overview,
    ul.woocommerce-order-overview {
        grid-template-columns: 1fr 1fr;
    }

    .woocommerce-MyAccount-navigation {
        position: static;
    }
}

@media (max-width: 400px) {
    .woocommerce-order-overview,
    ul.woocommerce-order-overview {
        grid-template-columns: 1fr;
    }
}

/* ══════════════════════════════════════════════════
   11. BLOCK-BASED CHECKOUT (WC Blocks — fallback)
══════════════════════════════════════════════════ */

.wc-block-cart__main,
.wc-block-checkout__main {
    font-family: var(--font-ui);
}

.wc-block-cart-item__product-name {
    font-family: var(--font-heading);
    color: var(--color-heading);
    font-weight: 600;
}

.wc-block-components-product-price__value,
.wc-block-cart-item__total .wc-block-formatted-money-amount {
    color: var(--color-primary-dark);
    font-weight: 700;
}

.wc-block-components-totals-wrapper {
    border: 1px solid var(--color-border);
    border-radius: var(--radius-md);
    overflow: hidden;
}

.wc-block-components-order-summary-item__quantity {
    background-color: var(--color-primary);
    color: var(--color-white);
    font-size: 0.75rem;
    font-weight: 700;
    border-radius: 50%;
}
