/**
 * WooCommerce Premium v9.0
 * Design de Alta Conversão - Nível Enterprise
 */

:root {
    --wc-primary: #10B981;
    --wc-primary-dark: #059669;
    --wc-primary-light: #D1FAE5;
    --wc-primary-glow: rgba(16, 185, 129, 0.3);
    --wc-gold: #F59E0B;
    --wc-gold-light: #FEF3C7;
    --wc-dark: #1F2937;
    --wc-darker: #111827;
    --wc-text: #374151;
    --wc-text-light: #6B7280;
    --wc-border: #E5E7EB;
    --wc-bg: #F9FAFB;
    --wc-white: #FFFFFF;
    --wc-error: #EF4444;
    --wc-radius: 24px;
    --wc-radius-sm: 16px;
    --wc-radius-xs: 12px;
    --wc-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
    --wc-shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
    --wc-shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

/* ========================================
   CARRINHO - DESIGN PREMIUM ALTA CONVERSÃO
======================================== */

/* Background gradiente suave */
.woocommerce-cart {
    background: linear-gradient(180deg, #ECFDF5 0%, #F9FAFB 30%, #FFFFFF 100%) !important;
    min-height: 100vh !important;
}

/* Container principal */
.woocommerce-cart .site-main,
.woocommerce-cart .entry-content {
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 40px !important;
}

/* Título Carrinho */
.woocommerce-cart .entry-title,
.woocommerce-cart h1:first-of-type {
    font-size: 48px !important;
    font-weight: 800 !important;
    color: var(--wc-darker) !important;
    text-align: center !important;
    margin-bottom: 16px !important;
    letter-spacing: -1px !important;
}

/* Subtítulo de segurança */
.woocommerce-cart .entry-title::after,
.woocommerce-cart h1:first-of-type::after {
    content: "🔒 Suas informações estão 100% seguras" !important;
    display: block !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: var(--wc-text-light) !important;
    margin-top: 12px !important;
    letter-spacing: 0 !important;
}

/* Container WC Blocks */
.wp-block-woocommerce-cart,
.wc-block-cart {
    max-width: 100% !important;
    padding: 0 !important;
}

/* ========================================
   LAYOUT GRID - 2 COLUNAS PREMIUM
======================================== */
.wc-block-cart .wp-block-woocommerce-filled-cart-block {
    display: grid !important;
    grid-template-columns: 1fr 420px !important;
    gap: 40px !important;
    align-items: start !important;
    margin-top: 40px !important;
}

/* ========================================
   COLUNA ESQUERDA - ITENS DO CARRINHO
======================================== */
.wc-block-cart .wp-block-woocommerce-cart-items-block {
    background: var(--wc-white) !important;
    border-radius: var(--wc-radius) !important;
    box-shadow: var(--wc-shadow-lg) !important;
    overflow: hidden !important;
    border: 1px solid rgba(0,0,0,0.05) !important;
}

/* Header da tabela */
.wc-block-cart .wc-block-cart-items__header {
    background: linear-gradient(135deg, var(--wc-darker) 0%, #374151 100%) !important;
    padding: 20px 32px !important;
    display: grid !important;
    grid-template-columns: 1fr auto !important;
}

.wc-block-cart .wc-block-cart-items__header span {
    color: rgba(255,255,255,0.9) !important;
    font-weight: 600 !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    letter-spacing: 1.5px !important;
}

/* Cada item do carrinho */
.wc-block-cart .wc-block-cart-items__row {
    display: grid !important;
    grid-template-columns: 120px 1fr auto auto !important;
    gap: 24px !important;
    padding: 28px 32px !important;
    border-bottom: 1px solid var(--wc-border) !important;
    align-items: center !important;
    transition: all 0.3s ease !important;
}

.wc-block-cart .wc-block-cart-items__row:hover {
    background: linear-gradient(90deg, #F0FDF4 0%, transparent 100%) !important;
}

.wc-block-cart .wc-block-cart-items__row:last-child {
    border-bottom: none !important;
}

/* Imagem do produto */
.wc-block-cart .wc-block-cart-item__image {
    position: relative !important;
}

.wc-block-cart .wc-block-cart-item__image img {
    width: 120px !important;
    height: 120px !important;
    object-fit: cover !important;
    border-radius: var(--wc-radius-sm) !important;
    border: 3px solid var(--wc-border) !important;
    transition: all 0.3s ease !important;
}

.wc-block-cart .wc-block-cart-items__row:hover .wc-block-cart-item__image img {
    border-color: var(--wc-primary) !important;
    transform: scale(1.02) !important;
}

/* Info do produto */
.wc-block-cart .wc-block-cart-item__product {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.wc-block-cart .wc-block-components-product-name {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: var(--wc-darker) !important;
    text-decoration: none !important;
    line-height: 1.4 !important;
    transition: color 0.2s !important;
}

.wc-block-cart .wc-block-components-product-name:hover {
    color: var(--wc-primary-dark) !important;
}

/* Preço original e promocional */
.wc-block-cart .wc-block-components-product-price {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

.wc-block-cart .wc-block-components-product-price del {
    color: var(--wc-text-light) !important;
    font-size: 14px !important;
    text-decoration: line-through !important;
}

.wc-block-cart .wc-block-components-product-price ins,
.wc-block-cart .wc-block-components-product-price__value {
    color: var(--wc-primary-dark) !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    text-decoration: none !important;
}

/* Badge de economia */
.wc-block-cart .wc-block-components-sale-badge {
    background: linear-gradient(135deg, var(--wc-primary-light) 0%, #A7F3D0 100%) !important;
    color: var(--wc-primary-dark) !important;
    padding: 6px 14px !important;
    border-radius: 20px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    box-shadow: 0 2px 8px var(--wc-primary-glow) !important;
}

.wc-block-cart .wc-block-components-sale-badge::before {
    content: "🎉" !important;
}

/* Controle de quantidade PREMIUM */
.wc-block-cart .wc-block-cart-item__quantity {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 10px !important;
}

.wc-block-cart .wc-block-components-quantity-selector {
    display: flex !important;
    align-items: center !important;
    background: var(--wc-bg) !important;
    border: 2px solid var(--wc-border) !important;
    border-radius: var(--wc-radius-xs) !important;
    overflow: hidden !important;
    transition: all 0.2s !important;
}

.wc-block-cart .wc-block-components-quantity-selector:hover {
    border-color: var(--wc-primary) !important;
    box-shadow: 0 0 0 4px var(--wc-primary-glow) !important;
}

.wc-block-cart .wc-block-components-quantity-selector button {
    width: 44px !important;
    height: 44px !important;
    background: transparent !important;
    border: none !important;
    color: var(--wc-text) !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.wc-block-cart .wc-block-components-quantity-selector button:hover {
    background: var(--wc-primary) !important;
    color: var(--wc-white) !important;
}

.wc-block-cart .wc-block-components-quantity-selector input {
    width: 50px !important;
    height: 44px !important;
    border: none !important;
    border-left: 2px solid var(--wc-border) !important;
    border-right: 2px solid var(--wc-border) !important;
    background: var(--wc-white) !important;
    text-align: center !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    color: var(--wc-darker) !important;
}

/* Link remover */
.wc-block-cart .wc-block-cart-item__remove-link {
    color: var(--wc-text-light) !important;
    font-size: 13px !important;
    text-decoration: none !important;
    opacity: 0.7 !important;
    transition: all 0.2s !important;
}

.wc-block-cart .wc-block-cart-item__remove-link:hover {
    color: var(--wc-error) !important;
    opacity: 1 !important;
}

/* Subtotal do item */
.wc-block-cart .wc-block-cart-item__total {
    text-align: right !important;
}

.wc-block-cart .wc-block-cart-item__total .wc-block-components-product-price {
    flex-direction: column !important;
    align-items: flex-end !important;
}

.wc-block-cart .wc-block-cart-item__total .wc-block-components-product-price__value {
    font-size: 22px !important;
    font-weight: 800 !important;
    color: var(--wc-primary-dark) !important;
}

/* ========================================
   COLUNA DIREITA - TOTAIS (SIDEBAR PREMIUM)
======================================== */
.wc-block-cart .wp-block-woocommerce-cart-totals-block {
    position: sticky !important;
    top: 30px !important;
}

.wc-block-cart .wp-block-woocommerce-cart-order-summary-block {
    background: var(--wc-white) !important;
    border-radius: var(--wc-radius) !important;
    box-shadow: var(--wc-shadow-xl) !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 2px solid var(--wc-primary-light) !important;
}

/* Header do resumo */
.wc-block-cart .wp-block-woocommerce-cart-order-summary-heading-block {
    background: linear-gradient(135deg, var(--wc-darker) 0%, #374151 100%) !important;
    color: var(--wc-white) !important;
    padding: 24px 28px !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    margin: 0 !important;
    text-align: center !important;
}

/* Conteúdo do resumo */
.wc-block-cart .wp-block-woocommerce-cart-order-summary-coupon-form-block,
.wc-block-cart .wp-block-woocommerce-cart-order-summary-totals-block {
    padding: 24px 28px !important;
}

/* Cupom */
.wc-block-cart .wc-block-components-totals-coupon {
    background: var(--wc-bg) !important;
    border-radius: var(--wc-radius-xs) !important;
    padding: 16px !important;
    margin-bottom: 20px !important;
}

.wc-block-cart .wc-block-components-totals-coupon__form {
    display: flex !important;
    gap: 10px !important;
}

.wc-block-cart .wc-block-components-totals-coupon input {
    flex: 1 !important;
    height: 48px !important;
    padding: 0 16px !important;
    border: 2px solid var(--wc-border) !important;
    border-radius: var(--wc-radius-xs) !important;
    font-size: 14px !important;
    transition: all 0.2s !important;
}

.wc-block-cart .wc-block-components-totals-coupon input:focus {
    border-color: var(--wc-primary) !important;
    outline: none !important;
    box-shadow: 0 0 0 4px var(--wc-primary-glow) !important;
}

.wc-block-cart .wc-block-components-totals-coupon button {
    height: 48px !important;
    padding: 0 20px !important;
    background: var(--wc-dark) !important;
    color: var(--wc-white) !important;
    border: none !important;
    border-radius: var(--wc-radius-xs) !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all 0.2s !important;
}

.wc-block-cart .wc-block-components-totals-coupon button:hover {
    background: var(--wc-primary) !important;
    transform: translateY(-2px) !important;
}

/* Linhas de totais */
.wc-block-cart .wc-block-components-totals-item {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding: 16px 0 !important;
    border-bottom: 1px solid var(--wc-border) !important;
}

.wc-block-cart .wc-block-components-totals-item:last-child {
    border-bottom: none !important;
}

.wc-block-cart .wc-block-components-totals-item__label {
    font-weight: 500 !important;
    color: var(--wc-text) !important;
    font-size: 15px !important;
}

.wc-block-cart .wc-block-components-totals-item__value {
    font-weight: 600 !important;
    color: var(--wc-darker) !important;
    font-size: 17px !important;
}

/* TOTAL FINAL - DESTAQUE MÁXIMO */
.wc-block-cart .wc-block-components-totals-footer-item {
    background: linear-gradient(135deg, #ECFDF5 0%, #D1FAE5 100%) !important;
    margin: 20px -28px -24px -28px !important;
    padding: 24px 28px !important;
    border-top: 2px dashed var(--wc-primary) !important;
}

.wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--wc-darker) !important;
}

.wc-block-cart .wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    font-size: 32px !important;
    font-weight: 900 !important;
    color: var(--wc-primary-dark) !important;
    text-shadow: 0 2px 4px var(--wc-primary-glow) !important;
}

/* ========================================
   BOTÃO CHECKOUT - CONVERSÃO MÁXIMA
======================================== */
.wc-block-cart .wp-block-woocommerce-proceed-to-checkout-block {
    padding: 28px !important;
    background: var(--wc-white) !important;
}

.wc-block-cart .wc-block-cart__submit-button,
.wc-block-cart a.wc-block-cart__submit-button,
.wc-block-cart .wc-block-components-button {
    display: block !important;
    width: 100% !important;
    padding: 22px 32px !important;
    background: linear-gradient(135deg, var(--wc-primary) 0%, var(--wc-primary-dark) 100%) !important;
    color: var(--wc-white) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    text-align: center !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
    border-radius: var(--wc-radius-sm) !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 8px 20px var(--wc-primary-glow), 0 4px 8px rgba(0,0,0,0.1) !important;
    position: relative !important;
    overflow: hidden !important;
}

.wc-block-cart .wc-block-cart__submit-button::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: -100% !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.3), transparent) !important;
    transition: all 0.5s ease !important;
}

.wc-block-cart .wc-block-cart__submit-button:hover::before {
    left: 100% !important;
}

.wc-block-cart .wc-block-cart__submit-button:hover {
    transform: translateY(-4px) !important;
    box-shadow: 0 12px 30px var(--wc-primary-glow), 0 8px 16px rgba(0,0,0,0.15) !important;
    color: var(--wc-white) !important;
}

/* Trust badges após botão */
.wc-block-cart .wp-block-woocommerce-proceed-to-checkout-block::after {
    content: "" !important;
    display: block !important;
    margin-top: 20px !important;
    padding-top: 20px !important;
    border-top: 1px solid var(--wc-border) !important;
    text-align: center !important;
    font-size: 13px !important;
    color: var(--wc-text-light) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns=http://www.w3.org/2000/svg fill=%2310B981 viewBox=0 0 24 24%3E%3Cpath d=M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm-2 16l-4-4 1.41-1.41L10 14.17l6.59-6.59L18 9l-8 8z/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-size: 32px !important;
    padding-top: 50px !important;
}

.wc-block-cart .wp-block-woocommerce-proceed-to-checkout-block::after {
    content: "Pagamento 100% Seguro • SSL Criptografado • Garantia de 7 dias" !important;
}

/* ========================================
   PRODUTOS RELACIONADOS / UPSELLS - PREMIUM
======================================== */
.single-product .related.products,
.single-product .upsells.products,
.single-product section.related,
.single-product section.upsells {
    margin-top: 80px !important;
    padding: 60px 0 !important;
    background: linear-gradient(180deg, #F9FAFB 0%, var(--wc-white) 100%) !important;
    border-top: 1px solid var(--wc-border) !important;
}

.single-product .related.products > h2,
.single-product .upsells.products > h2,
.single-product section.related > h2,
.single-product section.upsells > h2 {
    font-size: 32px !important;
    font-weight: 800 !important;
    color: var(--wc-darker) !important;
    text-align: center !important;
    margin-bottom: 48px !important;
    position: relative !important;
}

.single-product .related.products > h2::after,
.single-product .upsells.products > h2::after {
    content: "" !important;
    display: block !important;
    width: 80px !important;
    height: 4px !important;
    background: linear-gradient(90deg, var(--wc-primary), var(--wc-primary-dark)) !important;
    margin: 16px auto 0 !important;
    border-radius: 2px !important;
}

/* Grid de produtos */
.single-product .related.products ul.products,
.single-product .upsells.products ul.products,
.single-product section.related ul.products,
.single-product section.upsells ul.products {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)) !important;
    gap: 32px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Card de produto */
.single-product .related.products ul.products li.product,
.single-product .upsells.products ul.products li.product {
    background: var(--wc-white) !important;
    border-radius: var(--wc-radius) !important;
    box-shadow: var(--wc-shadow) !important;
    overflow: hidden !important;
    transition: all 0.3s ease !important;
    border: 1px solid var(--wc-border) !important;
    position: relative !important;
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    float: none !important;
}

.single-product .related.products ul.products li.product:hover,
.single-product .upsells.products ul.products li.product:hover {
    transform: translateY(-8px) !important;
    box-shadow: var(--wc-shadow-xl) !important;
    border-color: var(--wc-primary-light) !important;
}

/* Badge de oferta nos cards */
.single-product .related.products ul.products li.product .onsale,
.single-product .upsells.products ul.products li.product .onsale {
    position: absolute !important;
    top: 16px !important;
    left: 16px !important;
    background: linear-gradient(135deg, #EF4444 0%, #DC2626 100%) !important;
    color: var(--wc-white) !important;
    padding: 8px 16px !important;
    border-radius: 20px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    z-index: 10 !important;
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.4) !important;
}

/* Imagem do produto */
.single-product .related.products ul.products li.product a img,
.single-product .upsells.products ul.products li.product a img {
    width: 100% !important;
    height: 250px !important;
    object-fit: cover !important;
    transition: transform 0.5s ease !important;
}

.single-product .related.products ul.products li.product:hover a img,
.single-product .upsells.products ul.products li.product:hover a img {
    transform: scale(1.05) !important;
}

/* Conteúdo do card */
.single-product .related.products ul.products li.product .woocommerce-loop-product__title,
.single-product .upsells.products ul.products li.product .woocommerce-loop-product__title {
    font-size: 16px !important;
    font-weight: 700 !important;
    color: var(--wc-darker) !important;
    padding: 20px 20px 8px !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

.single-product .related.products ul.products li.product .price,
.single-product .upsells.products ul.products li.product .price {
    padding: 0 20px 16px !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    color: var(--wc-primary-dark) !important;
}

.single-product .related.products ul.products li.product .price del,
.single-product .upsells.products ul.products li.product .price del {
    color: var(--wc-text-light) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    margin-right: 8px !important;
}

.single-product .related.products ul.products li.product .price ins,
.single-product .upsells.products ul.products li.product .price ins {
    text-decoration: none !important;
    color: var(--wc-primary-dark) !important;
}

/* Botão adicionar ao carrinho */
.single-product .related.products ul.products li.product .button,
.single-product .upsells.products ul.products li.product .button,
.single-product .related.products ul.products li.product a.add_to_cart_button,
.single-product .upsells.products ul.products li.product a.add_to_cart_button {
    display: block !important;
    width: calc(100% - 40px) !important;
    margin: 0 20px 20px !important;
    padding: 14px 24px !important;
    background: var(--wc-dark) !important;
    color: var(--wc-white) !important;
    text-align: center !important;
    text-decoration: none !important;
    border-radius: var(--wc-radius-xs) !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    transition: all 0.3s ease !important;
    border: none !important;
}

.single-product .related.products ul.products li.product .button:hover,
.single-product .upsells.products ul.products li.product .button:hover {
    background: var(--wc-primary) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px var(--wc-primary-glow) !important;
}

/* ========================================
   PÁGINA DE PRODUTO - LAYOUT PREMIUM
======================================== */
.single-product {
    background: linear-gradient(180deg, #ECFDF5 0%, #F9FAFB 30%, var(--wc-white) 100%) !important;
}

.single-product .site-main {
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 40px !important;
}

/* Grid 2 colunas */
@media (min-width: 1024px) {
    .single-product div.product {
        display: grid !important;
        grid-template-columns: 550px 1fr !important;
        gap: 60px !important;
        align-items: start !important;
    }
    
    .single-product div.product .woocommerce-product-gallery {
        float: none !important;
        width: 100% !important;
    }
    
    .single-product div.product .summary {
        float: none !important;
        width: 100% !important;
    }
    
    .single-product div.product .woocommerce-tabs {
        grid-column: 1 / -1 !important;
    }
    
    .single-product div.product .related,
    .single-product div.product .upsells {
        grid-column: 1 / -1 !important;
    }
}

/* Galeria */
.single-product .woocommerce-product-gallery {
    background: var(--wc-white) !important;
    border-radius: var(--wc-radius) !important;
    box-shadow: var(--wc-shadow-lg) !important;
    padding: 24px !important;
    overflow: hidden !important;
}

.single-product .woocommerce-product-gallery img {
    border-radius: var(--wc-radius-sm) !important;
}

/* Badge oferta */
.single-product span.onsale {
    background: linear-gradient(135deg, #EF4444 0%, #DC2626 100%) !important;
    color: var(--wc-white) !important;
    padding: 12px 24px !important;
    border-radius: 30px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    position: absolute !important;
    top: 40px !important;
    left: 40px !important;
    z-index: 10 !important;
    box-shadow: 0 4px 15px rgba(239, 68, 68, 0.4) !important;
}

/* Summary */
.single-product .summary {
    background: var(--wc-white) !important;
    border-radius: var(--wc-radius) !important;
    box-shadow: var(--wc-shadow-lg) !important;
    padding: 48px !important;
}

.single-product .product_title {
    font-size: 36px !important;
    font-weight: 800 !important;
    color: var(--wc-darker) !important;
    margin-bottom: 24px !important;
    line-height: 1.2 !important;
}

.single-product .summary .price {
    font-size: 36px !important;
    font-weight: 800 !important;
    color: var(--wc-primary-dark) !important;
    padding-bottom: 28px !important;
    margin-bottom: 28px !important;
    border-bottom: 2px solid var(--wc-border) !important;
}

.single-product .summary .price del {
    font-size: 22px !important;
    color: var(--wc-text-light) !important;
    margin-right: 16px !important;
}

.single-product .summary .price ins {
    text-decoration: none !important;
    background: var(--wc-primary-light) !important;
    padding: 8px 20px !important;
    border-radius: var(--wc-radius-xs) !important;
}

/* Form quantidade + botão */
.single-product form.cart {
    display: flex !important;
    gap: 20px !important;
    margin: 32px 0 !important;
    align-items: center !important;
}

.single-product .quantity input {
    width: 80px !important;
    height: 60px !important;
    text-align: center !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    border: 2px solid var(--wc-border) !important;
    border-radius: var(--wc-radius-xs) !important;
}

.single-product button.single_add_to_cart_button {
    flex: 1 !important;
    height: 60px !important;
    background: linear-gradient(135deg, var(--wc-primary) 0%, var(--wc-primary-dark) 100%) !important;
    color: var(--wc-white) !important;
    border: none !important;
    border-radius: var(--wc-radius-sm) !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    box-shadow: 0 6px 20px var(--wc-primary-glow) !important;
}

.single-product button.single_add_to_cart_button:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 10px 30px var(--wc-primary-glow) !important;
}

/* Tabs */
.single-product .woocommerce-tabs {
    margin-top: 60px !important;
    background: var(--wc-white) !important;
    border-radius: var(--wc-radius) !important;
    box-shadow: var(--wc-shadow-lg) !important;
    overflow: hidden !important;
}

.single-product .woocommerce-tabs ul.tabs {
    display: flex !important;
    background: var(--wc-bg) !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border-bottom: 2px solid var(--wc-border) !important;
}

.single-product .woocommerce-tabs ul.tabs li {
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

.single-product .woocommerce-tabs ul.tabs li a {
    display: block !important;
    padding: 20px 36px !important;
    color: var(--wc-text) !important;
    text-decoration: none !important;
    font-weight: 600 !important;
    border-bottom: 3px solid transparent !important;
    margin-bottom: -2px !important;
    transition: all 0.2s !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
    color: var(--wc-primary) !important;
    border-bottom-color: var(--wc-primary) !important;
    background: var(--wc-white) !important;
}

.single-product .woocommerce-tabs .panel {
    padding: 40px !important;
}

/* ========================================
   MINHA CONTA - PREMIUM
======================================== */
.woocommerce-account {
    background: linear-gradient(180deg, #ECFDF5 0%, #F9FAFB 100%) !important;
}

.woocommerce-account .site-main {
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 40px !important;
}

@media (min-width: 1024px) {
    .woocommerce-account.logged-in .woocommerce {
        display: grid !important;
        grid-template-columns: 300px 1fr !important;
        gap: 40px !important;
        align-items: start !important;
    }
    
    .woocommerce-account .woocommerce-MyAccount-navigation {
        float: none !important;
        width: 100% !important;
    }
    
    .woocommerce-account .woocommerce-MyAccount-content {
        float: none !important;
        width: 100% !important;
    }
}

.woocommerce-account .woocommerce-MyAccount-navigation {
    background: var(--wc-white) !important;
    border-radius: var(--wc-radius) !important;
    box-shadow: var(--wc-shadow-lg) !important;
    overflow: hidden !important;
    position: sticky !important;
    top: 30px !important;
}

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

.woocommerce-account .woocommerce-MyAccount-navigation li {
    border-bottom: 1px solid var(--wc-border) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
    border-bottom: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a {
    display: block !important;
    padding: 20px 28px !important;
    color: var(--wc-text) !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    transition: all 0.2s !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li a:hover {
    background: var(--wc-primary-light) !important;
    color: var(--wc-primary-dark) !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a {
    background: linear-gradient(135deg, var(--wc-primary) 0%, var(--wc-primary-dark) 100%) !important;
    color: var(--wc-white) !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
    background: var(--wc-white) !important;
    border-radius: var(--wc-radius) !important;
    box-shadow: var(--wc-shadow-lg) !important;
    padding: 48px !important;
}

/* ========================================
   RESPONSIVO
======================================== */
@media (max-width: 1023px) {
    .wc-block-cart .wp-block-woocommerce-filled-cart-block {
        grid-template-columns: 1fr !important;
    }
    
    .wc-block-cart .wp-block-woocommerce-cart-totals-block {
        position: static !important;
    }
    
    .single-product div.product {
        display: block !important;
    }
    
    .single-product .summary {
        margin-top: 24px !important;
    }
    
    .woocommerce-account .woocommerce-MyAccount-navigation {
        position: static !important;
        margin-bottom: 24px !important;
    }
}

@media (max-width: 600px) {
    .woocommerce-cart .site-main,
    .single-product .site-main,
    .woocommerce-account .site-main {
        padding: 20px !important;
    }
    
    .wc-block-cart .wc-block-cart-items__row {
        grid-template-columns: 80px 1fr !important;
    }
    
    .single-product form.cart {
        flex-direction: column !important;
    }
    
    .single-product button.single_add_to_cart_button {
        width: 100% !important;
    }
}

/* ========================================
   FIX RELACIONADOS/UPSELLS - CENTRALIZADO
======================================== */

/* Container das seções */
.single-product .related.products,
.single-product .upsells.products,
.single-product section.related,
.single-product section.upsells {
    max-width: 1200px !important;
    margin: 60px auto !important;
    padding: 50px 40px !important;
    background: var(--wc-white) !important;
    border-radius: var(--wc-radius) !important;
    box-shadow: var(--wc-shadow) !important;
}

/* Grid centralizado */
.single-product .related.products ul.products,
.single-product .upsells.products ul.products {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 32px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Card de produto - largura fixa */
.single-product .related.products ul.products li.product,
.single-product .upsells.products ul.products li.product {
    width: 300px !important;
    max-width: 100% !important;
    flex: 0 0 300px !important;
    float: none !important;
    margin: 0 !important;
}

/* Se só tem 1 produto, centraliza bonito */
.single-product .related.products ul.products li.product:only-child,
.single-product .upsells.products ul.products li.product:only-child {
    width: 350px !important;
    flex: 0 0 350px !important;
}

/* Overflow da imagem */
.single-product .related.products ul.products li.product > a,
.single-product .upsells.products ul.products li.product > a {
    display: block !important;
    overflow: hidden !important;
    border-radius: var(--wc-radius-sm) var(--wc-radius-sm) 0 0 !important;
}
