/**
 * EVARTE — cart, checkout and customer account presentation.
 * This extends WooCommerce Blocks' own markup and does not replace its
 * components, validation, session, cart, payment or order behaviour.
 */
body.woocommerce-cart .wp-block-woocommerce-cart,
body.woocommerce-checkout .wp-block-woocommerce-checkout,
body.woocommerce-account .post-content .woocommerce {
    font-family: var(--evarte-font-body);
    color: var(--evarte-charcoal);
    font-size: 16px;
    line-height: 1.65;
}
body.woocommerce-cart :is(.wc-block-components-title, .wc-block-cart__empty-cart__title, .wc-block-components-totals-wrapper h2, .wp-block-heading),
body.woocommerce-checkout :is(.wc-block-components-title, .wc-block-checkout__title, .wc-block-components-order-summary__button-text, .wp-block-heading),
body.woocommerce-account .post-content :is(h2, h3) {
    font-family: var(--evarte-font-heading);
    color: var(--evarte-charcoal);
    letter-spacing: -0.015em;
}
body.woocommerce-cart :is(.wc-block-components-sidebar, .wc-block-cart__main),
body.woocommerce-checkout :is(.wc-block-checkout__main, .wc-block-components-sidebar) {
    min-width: 0;
}
body.woocommerce-cart :is(.wc-block-components-totals-wrapper, .wc-block-cart-items, .wc-block-components-order-summary),
body.woocommerce-checkout :is(.wc-block-components-order-summary, .wc-block-components-totals-wrapper) {
    border-color: var(--evarte-silver);
}
body.woocommerce-cart .wc-block-components-button:not(.is-link),
body.woocommerce-checkout .wc-block-components-button:not(.is-link),
body.woocommerce-cart .wp-block-button__link,
body.woocommerce-account .woocommerce-button.button {
    border-radius: var(--evarte-radius);
    min-height: 44px;
    font-family: var(--evarte-font-body);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.35;
}
body.woocommerce-cart .wc-block-cart__submit-button,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-account .woocommerce-button.button {
    color: var(--evarte-ivory);
    background: var(--evarte-burgundy);
    border: 1px solid var(--evarte-burgundy);
}
body.woocommerce-cart .wc-block-cart__submit-button:hover,
body.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
body.woocommerce-account .woocommerce-button.button:hover {
    background: var(--evarte-burgundy-dark);
    border-color: var(--evarte-burgundy-dark);
    color: var(--evarte-ivory);
}
body.woocommerce-cart :is(input[type="text"], input[type="email"], input[type="tel"], input[type="number"], select, textarea),
body.woocommerce-checkout :is(input[type="text"], input[type="email"], input[type="tel"], input[type="number"], select, textarea),
body.woocommerce-account .woocommerce :is(input[type="text"], input[type="email"], input[type="password"], input[type="tel"], select, textarea) {
    border-radius: var(--evarte-radius);
    border-color: var(--evarte-silver);
    background-color: var(--evarte-ivory);
    color: var(--evarte-charcoal);
}
body.woocommerce-cart :is(a, button, input, select, textarea):focus-visible,
body.woocommerce-checkout :is(a, button, input, select, textarea):focus-visible,
body.woocommerce-account .post-content :is(a, button, input, select, textarea):focus-visible {
    outline: 2px solid var(--evarte-turquoise);
    outline-offset: 3px;
}
body.woocommerce-cart .wp-block-woocommerce-cart :is(.wc-block-components-notice-banner, .woocommerce-message, .woocommerce-error, .woocommerce-info),
body.woocommerce-checkout .wp-block-woocommerce-checkout :is(.wc-block-components-notice-banner, .woocommerce-message, .woocommerce-error, .woocommerce-info),
body.woocommerce-account .post-content :is(.woocommerce-message, .woocommerce-error, .woocommerce-info) {
    border-radius: var(--evarte-radius);
    background-color: var(--evarte-ivory);
    color: var(--evarte-charcoal);
    box-shadow: none;
}
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-notice-banner.is-success,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-notice-banner.is-success {
    border-color: var(--evarte-turquoise);
    border-inline-start: 3px solid var(--evarte-turquoise);
}
body.woocommerce-cart .wp-block-woocommerce-cart .wc-block-components-notice-banner.is-error,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-notice-banner.is-error {
    border-color: #A23A46;
    border-inline-start: 3px solid #A23A46;
}
body.woocommerce-cart .wp-block-woocommerce-cart :is(a:not(.wp-block-button__link), .wc-block-components-button.is-link),
body.woocommerce-checkout .wp-block-woocommerce-checkout :is(a:not(.wp-block-button__link), .wc-block-components-button.is-link),
body.woocommerce-account .post-content .woocommerce a:not(.button) {
    color: var(--evarte-turquoise);
    text-underline-offset: 3px;
}
body.woocommerce-cart .wp-block-woocommerce-cart a:hover,
body.woocommerce-checkout .wp-block-woocommerce-checkout a:hover,
body.woocommerce-account .post-content .woocommerce a:hover {
    color: var(--evarte-burgundy);
}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > h2 {
    margin-bottom: 22px;
    font-weight: 600;
}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > p a {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    padding: 10px 20px;
    background: var(--evarte-burgundy);
    border: 1px solid var(--evarte-burgundy);
    border-radius: var(--evarte-radius);
    color: var(--evarte-ivory) !important;
    font-weight: 600;
    text-decoration: none;
}
body.woocommerce-cart .wp-block-woocommerce-empty-cart-block > p a:hover {
    background: var(--evarte-burgundy-dark);
    border-color: var(--evarte-burgundy-dark);
}
@media (max-width: 767px) {
    body.woocommerce-cart .wp-block-woocommerce-cart,
    body.woocommerce-checkout .wp-block-woocommerce-checkout,
    body.woocommerce-account .post-content .woocommerce {
        font-size: 16px;
    }
    body.woocommerce-cart .wc-block-cart__submit-button,
    body.woocommerce-checkout .wc-block-components-checkout-place-order-button {
        width: 100%;
    }
}
@media (prefers-reduced-motion: reduce) {
    body.woocommerce-cart .wp-block-woocommerce-cart *,
    body.woocommerce-checkout .wp-block-woocommerce-checkout *,
    body.woocommerce-account .post-content .woocommerce * {
        scroll-behavior: auto;
    }
}
