/* WooCommerce My Account Dark Theme Override */

/* ═══════════════════════════════════════════════════════════════
   PJAX – Barra de progreso y transiciones de página
   ═══════════════════════════════════════════════════════════════ */

/* Barra de progreso en la parte superior */
#suertudos-pjax-progress {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    z-index: 999999;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.2s ease;
}
#suertudos-pjax-progress.active {
    opacity: 1;
}
.suertudos-pjax-progress-fill {
    height: 100%;
    width: 0%;
    background: linear-gradient(90deg, #f7c64b, #36f073, #f7c64b);
    background-size: 200% 100%;
    animation: pjax-shimmer 1.5s linear infinite;
    border-radius: 0 2px 2px 0;
    box-shadow: 0 0 10px rgba(247, 198, 75, 0.5), 0 0 5px rgba(54, 240, 115, 0.3);
}
@keyframes pjax-shimmer {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

/* Wrapper de fade para transiciones */
#pjax-fade-wrapper {
    will-change: opacity;
}

/* ═══════════════════════════════════════════════════════════════
   CORRECCIÓN: Hover de textos en el menú desplegable del perfil
   ═══════════════════════════════════════════════════════════════ */
header a.hover\:text-white:hover,
header a.hover\:text-white:hover *,
header a.text-red-400:hover,
header a.text-red-400:hover * {
    color: #ffffff !important;
}
header a.hover\:bg-brand-gold\/8:hover {
    background-color: rgba(247, 198, 75, 0.08) !important;
}
header a.hover\:bg-red-500\/8:hover {
    background-color: rgba(239, 68, 68, 0.08) !important;
}

/* ═══════════════════════════════════════════════════════════════
   DISEÑO Y ANIMACIÓN: Botón Comprar Packs con luz y flicker
   ═══════════════════════════════════════════════════════════════ */
.btn-header-comprar {
    box-shadow: 0 0 12px rgba(247, 198, 75, 0.4) !important;
    animation: btn-glow-flicker 6s infinite alternate !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}

.btn-header-comprar:hover {
    transform: scale(1.05) !important;
    box-shadow: 0 0 16px rgba(247, 198, 75, 0.6) !important;
}

@keyframes btn-glow-flicker {
    0%, 100% {
        box-shadow: 0 0 12px rgba(247, 198, 75, 0.4) !important;
    }
    45% {
        box-shadow: 0 0 12px rgba(247, 198, 75, 0.4) !important;
    }
    48% {
        box-shadow: 0 0 4px rgba(247, 198, 75, 0.1) !important;
    }
    50% {
        box-shadow: 0 0 18px rgba(247, 198, 75, 0.7) !important;
    }
    52% {
        box-shadow: 0 0 6px rgba(247, 198, 75, 0.15) !important;
    }
    54% {
        box-shadow: 0 0 16px rgba(247, 198, 75, 0.5) !important;
    }
}

/* ═══════════════════════════════════════════════════════════════
   DISEÑO Y EFECTO LIQUID GLASS DEL HEADER
   ═══════════════════════════════════════════════════════════════ */
.header-liquid-glass {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 64px !important;
    z-index: 99999 !important;
    background: rgba(2, 5, 3, 0.75) !important;
    backdrop-filter: blur(12px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(12px) saturate(180%) !important;
    border-bottom: 1px solid rgba(247, 198, 75, 0.15) !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.05) !important;
    display: flex !important;
    align-items: center !important;
    
    /* Impedir que scripts externos oculten, muevan o invisibilicen el header al hacer scroll */
    transform: translate(0, 0) !important;
    transform: none !important;
    margin-top: 0 !important;
    visibility: visible !important;
    opacity: 1 !important;
    transition: background 0.3s ease, border 0.3s ease, box-shadow 0.3s ease !important;
}

/* Ajustes cuando la barra de administración de WordPress está activa */
body.admin-bar .header-liquid-glass {
    top: 32px !important;
}
@media screen and (max-width: 782px) {
    body.admin-bar .header-liquid-glass {
        top: 0 !important;
    }
}

/* Estilo Liquid Glass para el menú desplegable del perfil */
.user-menu-dropdown {
    position: absolute !important;
    right: 0 !important;
    top: calc(100% + 12px) !important;
    width: 14rem !important;
    z-index: 100000 !important;
    padding: 8px 0 !important;
    background: rgba(2, 5, 3, 0.85) !important;
    backdrop-filter: blur(16px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(180%) !important;
    border: 1px solid rgba(247, 198, 75, 0.15) !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.6) !important;
    
    /* Smooth transition and spring-back bounce slide */
    transition: opacity 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1), visibility 0.3s !important;
    transform: translateY(-12px) scale(0.95) !important;
    opacity: 0 !important;
    visibility: hidden !important;
}

.user-menu-dropdown.active {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) scale(1) !important;
}

/* Forzar el color correcto de los enlaces del menú desplegable del perfil para evitar que el tema padre los ponga negros si coinciden con la página actual */
.user-menu-dropdown a {
    color: #fff5d4 !important;
    text-decoration: none !important;
}
.user-menu-dropdown a:hover {
    color: #ffffff !important;
}
.user-menu-dropdown a.text-red-400 {
    color: #f87171 !important;
}
.user-menu-dropdown a.text-red-400:hover {
    color: #f87171 !important;
}

/* Compensar la posición fija del header para evitar solapamientos con el contenido */
body {
    padding-top: 64px !important;
}
body.admin-bar {
    padding-top: 96px !important;
}
@media screen and (max-width: 782px) {
    body.admin-bar {
        padding-top: 64px !important;
    }
}

/* Efecto hover interactivo para enlaces de navegación del header */
header nav a {
    position: relative !important;
    padding-bottom: 4px !important;
    color: #fff5d4 !important;
    transition: color 0.3s ease !important;
}

header nav a::after {
    content: '' !important;
    position: absolute !important;
    bottom: 0 !important;
    left: 50% !important;
    width: 0 !important;
    height: 2px !important;
    background-color: #36f073 !important; /* brand-greenBright */
    transition: width 0.3s ease, left 0.3s ease !important;
    box-shadow: 0 0 8px #36f073 !important;
}

header nav a:hover::after {
    width: 100% !important;
    left: 0 !important;
}

header nav a:hover {
    color: #36f073 !important;
}

/* Global Page Background for My Account */
html {
    font-size: 16px !important;
}

body.woocommerce-account,
body.woocommerce-page {
    background-color: #020503 !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed !important;
    background-image:
      radial-gradient(circle at 10% 15%, rgba(54, 240, 115, 0.05), transparent 35%),
      radial-gradient(circle at 90% 85%, rgba(247, 198, 75, 0.05), transparent 35%) !important;
    font-size: 16px !important;
    overflow-y: scroll !important;
}

body.woocommerce-account #page, 
body.woocommerce-account #content, 
body.woocommerce-account .site-content, 
body.woocommerce-account .site-main,
body.woocommerce-page #page, 
body.woocommerce-page #content, 
body.woocommerce-page .site-content, 
body.woocommerce-page .site-main {
    background: transparent !important;
    background-image: none !important;
    box-shadow: none !important;
}

body.woocommerce-account .page-title { display: none !important; }

/* 2. Navigation Sidebar Dark Style Only (No layout/position overrides) */
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.page-template-template-fullscreen-account.woocommerce-account .woocommerce-MyAccount-navigation {
    background-color: rgba(13, 17, 14, 0.6) !important;
    border: 1px solid rgba(247, 198, 75, 0.15) !important;
    border-radius: 20px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.4) !important;
    overflow: hidden !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li {
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.03) !important;
    background-color: transparent !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child {
    border-bottom: none !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a,
body.page-template-template-fullscreen-account.logged-in nav.woocommerce-MyAccount-navigation ul>li>a,
body.page-template-template-fullscreen-account.woocommerce-account .woocommerce-MyAccount-navigation-link > a,
body.page-template-template-fullscreen-account.woocommerce-account .woocommerce-MyAccount-navigation-link a {
    display: flex !important;
    align-items: center !important;
    color: #d8c28a !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    font-size: 17px !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover,
body.page-template-template-fullscreen-account.woocommerce-account .woocommerce-MyAccount-navigation-link:hover a,
body.page-template-template-fullscreen-account.woocommerce-account .woocommerce-MyAccount-navigation-link > a:hover {
    color: #ffffff !important;
    background-color: rgba(247, 198, 75, 0.05) !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.page-template-template-fullscreen-account.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active a,
body.page-template-template-fullscreen-account.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active > a {
    color: #36f073 !important;
    background-color: rgba(54, 240, 115, 0.05) !important;
    border-left: 4px solid #36f073 !important;
}

/* Hide or style icons in nav if they exist */
body.woocommerce-account .woocommerce-MyAccount-navigation li a i, 
body.woocommerce-account .woocommerce-MyAccount-navigation li a svg {
    margin-right: 14px !important;
    font-size: 20px !important;
    opacity: 0.8 !important;
}
body.woocommerce-account .woocommerce-MyAccount-navigation li a i {
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", "FontAwesome" !important;
    font-weight: 900 !important;
    display: inline-block !important;
    visibility: visible !important;
}


/* Force hide logout link as failsafe */
body.woocommerce-account .woocommerce-MyAccount-navigation-link--customer-logout,
body.woocommerce-account li.woocommerce-MyAccount-navigation-link--customer-logout {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

/* 3. Main Content Area Dark Style Only (No layout/position overrides) */
body.woocommerce-account .woocommerce-MyAccount-content,
body.page-template-template-fullscreen-account.woocommerce-account .woocommerce-MyAccount-content {
    background-color: rgba(13, 17, 14, 0.6) !important;
    border: 1px solid rgba(247, 198, 75, 0.15) !important;
    border-radius: 20px !important;
    padding: 3rem !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.4) !important;
    color: #fff5d4 !important;
}

/* 4. Typography & Headings */
.woocommerce-MyAccount-content h2, 
.woocommerce-MyAccount-content h3, 
.woocommerce-MyAccount-content header h3 {
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 900 !important;
    margin-top: 0 !important;
    margin-bottom: 2rem !important;
    font-size: 26px !important;
}
.woocommerce-MyAccount-content p {
    color: #d8c28a !important;
    font-size: 17px !important;
    line-height: 1.8 !important;
    margin-bottom: 1.5rem !important;
}
.woocommerce-MyAccount-content a {
    color: #f7c64b !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
    font-weight: 600 !important;
}
.woocommerce-MyAccount-content a:hover {
    color: #36f073 !important;
}

/* 5. Tables (Orders, Downloads) */
.woocommerce-account table.woocommerce-orders-table thead,
.woocommerce-account table.woocommerce-MyAccount-downloads thead,
.woocommerce-account table.account-orders-table thead {
    background: transparent !important;
}

body.woocommerce-account table.woocommerce-orders-table, 
body.woocommerce-account table.woocommerce-MyAccount-downloads, 
body.woocommerce-account table.account-orders-table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background-color: rgba(255, 255, 255, 0.01) !important;
    border: 1px solid rgba(247, 198, 75, 0.3) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    margin-bottom: 2rem !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
}
body.woocommerce-account table.woocommerce-orders-table th, 
body.woocommerce-account table.woocommerce-MyAccount-downloads th, 
body.woocommerce-account table.account-orders-table th {
    background-color: rgba(255, 255, 255, 0.03) !important;
    color: #f7c64b !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    padding: 1.1rem 1.2rem !important;
    border: none !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(247, 198, 75, 0.3) !important;
    text-align: left !important;
}
body.woocommerce-account table.woocommerce-orders-table td, 
body.woocommerce-account table.woocommerce-MyAccount-downloads td, 
body.woocommerce-account table.account-orders-table td {
    padding: 1.2rem 1.2rem !important;
    border: none !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(247, 198, 75, 0.2) !important;
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 15px !important;
    background: transparent !important;
    vertical-align: middle !important;
    transition: background-color 0.2s ease !important;
}
body.woocommerce-account table.woocommerce-orders-table tr:last-child td, 
body.woocommerce-account table.woocommerce-MyAccount-downloads tr:last-child td, 
body.woocommerce-account table.account-orders-table tr:last-child td {
    border-bottom: none !important;
}
body.woocommerce-account table.woocommerce-orders-table tr,
body.woocommerce-account table.woocommerce-MyAccount-downloads tr,
body.woocommerce-account table.account-orders-table tr {
    border: none !important;
}
body.woocommerce-account table.woocommerce-orders-table tr:hover td,
body.woocommerce-account table.woocommerce-MyAccount-downloads tr:hover td,
body.woocommerce-account table.account-orders-table tr:hover td {
    background-color: rgba(255, 255, 255, 0.03) !important;
}

/* Order ID column styling */
table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-number a {
    color: #f7c64b !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}
table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-number a:hover {
    color: #36f073 !important;
}

/* Order Date column styling */
table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-date {
    font-weight: 500 !important;
}

/* Order Total column styling & Fix contrast */
table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-total {
    color: rgba(255, 255, 255, 0.55) !important; /* Muted gray for "para X elementos" */
    font-size: 14px !important;
}
table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-total .amount,
table.woocommerce-orders-table td.woocommerce-orders-table__cell-order-total bdi {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    margin-right: 4px !important;
}

/* Status Colors in Tables */
mark.order-status {
    background: rgba(255, 255, 255, 0.06) !important;
    color: #ffffff !important;
    padding: 5px 12px !important;
    border-radius: 20px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em !important;
    display: inline-flex !important;
    align-items: center !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
}
mark.order-status.status-completed { 
    background: rgba(54, 240, 115, 0.1) !important; 
    color: #36f073 !important; 
    border: 1px solid rgba(54, 240, 115, 0.2) !important;
}
mark.order-status.status-processing { 
    background: rgba(247, 198, 75, 0.1) !important; 
    color: #f7c64b !important; 
    border: 1px solid rgba(247, 198, 75, 0.2) !important;
}
mark.order-status.status-cancelled { 
    background: rgba(239, 68, 68, 0.1) !important; 
    color: #ef4444 !important; 
    border: 1px solid rgba(239, 68, 68, 0.2) !important;
}
mark.order-status.status-on-hold { 
    background: rgba(156, 163, 175, 0.1) !important; 
    color: #e5e7eb !important; 
    border: 1px solid rgba(156, 163, 175, 0.2) !important;
}

/* Order Details Page Custom Styling (View Order & Order Received) */
.woocommerce-MyAccount-content p.woocommerce-notice.woocommerce-notice--info,
.woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-MyAccount-content .woocommerce-notice,
.woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-MyAccount-content .woocommerce-error {
    background-color: rgba(247, 198, 75, 0.05) !important;
    border: 1px solid rgba(247, 198, 75, 0.2) !important;
    color: rgba(255, 255, 255, 0.9) !important;
    padding: 1.2rem 1.5rem 1.2rem 3.5rem !important;
    border-radius: 12px !important;
    font-size: 15px !important;
    line-height: 1.7 !important;
    margin-bottom: 2.5rem !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
    position: relative !important;
}
.woocommerce-MyAccount-content p.woocommerce-notice.woocommerce-notice--info::before,
.woocommerce-MyAccount-content .woocommerce-info::before,
.woocommerce-MyAccount-content .woocommerce-notice::before,
.woocommerce-MyAccount-content .woocommerce-message::before,
.woocommerce-MyAccount-content .woocommerce-error::before {
    color: #f7c64b !important;
    left: 1.5rem !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    position: absolute !important;
}
.woocommerce-MyAccount-content .woocommerce-error {
    border-color: rgba(239, 68, 68, 0.3) !important;
}
.woocommerce-MyAccount-content .woocommerce-error::before {
    color: #ef4444 !important;
}
.woocommerce-MyAccount-content p.woocommerce-notice.woocommerce-notice--info mark,
.woocommerce-MyAccount-content .woocommerce-info mark,
.woocommerce-MyAccount-content .woocommerce-notice mark {
    background: transparent !important;
    color: #f7c64b !important;
    font-weight: 700 !important;
}
.woocommerce-MyAccount-content p.woocommerce-notice.woocommerce-notice--info mark.order-status,
.woocommerce-MyAccount-content .woocommerce-notice mark.order-status {
    background: rgba(54, 240, 115, 0.1) !important;
    color: #36f073 !important;
    border: 1px solid rgba(54, 240, 115, 0.25) !important;
    padding: 4px 10px !important;
    border-radius: 20px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.03em !important;
    display: inline-flex !important;
    align-items: center !important;
    vertical-align: middle !important;
    margin-left: 5px !important;
}

body.woocommerce-account table.woocommerce-table--order-details,
body.woocommerce-account table.order_details {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background-color: rgba(255, 255, 255, 0.01) !important;
    border: 1px solid rgba(247, 198, 75, 0.3) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    margin-bottom: 2.5rem !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
}
body.woocommerce-account table.woocommerce-table--order-details thead,
body.woocommerce-account table.order_details thead {
    background: transparent !important;
}
body.woocommerce-account table.woocommerce-table--order-details th,
body.woocommerce-account table.order_details th {
    background-color: rgba(255, 255, 255, 0.03) !important;
    color: #f7c64b !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    padding: 1.1rem 1.2rem !important;
    border: none !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(247, 198, 75, 0.3) !important;
    text-align: left !important;
}
body.woocommerce-account table.woocommerce-table--order-details tbody td,
body.woocommerce-account table.order_details tbody td,
body.woocommerce-account table.woocommerce-table--order-details tfoot td,
body.woocommerce-account table.order_details tfoot td {
    padding: 1.2rem 1.2rem !important;
    border: none !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(247, 198, 75, 0.2) !important;
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 15px !important;
    background: transparent !important;
    vertical-align: middle !important;
}
table.woocommerce-table--order-details tbody td.woocommerce-table__product-name a,
table.order_details tbody td.product-name a {
    color: #f7c64b !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
}
table.woocommerce-table--order-details tbody td.woocommerce-table__product-name a:hover,
table.order_details tbody td.product-name a:hover {
    color: #36f073 !important;
}
table.woocommerce-table--order-details td.woocommerce-table__product-total,
table.order_details td.product-total,
table.woocommerce-table--order-details tfoot td,
table.order_details tfoot td,
table.woocommerce-table--order-details td.woocommerce-table__product-total .amount,
table.order_details td.product-total .amount,
table.woocommerce-table--order-details tfoot td .amount,
table.order_details tfoot td .amount,
table.woocommerce-table--order-details tfoot td bdi,
table.order_details tfoot td bdi {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 15px !important;
}
body.woocommerce-account table.woocommerce-table--order-details tfoot th,
body.woocommerce-account table.order_details tfoot th {
    color: rgba(255, 255, 255, 0.8) !important;
    font-weight: 600 !important;
    padding: 1.1rem 1.2rem !important;
    border: none !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid rgba(247, 198, 75, 0.2) !important;
    background-color: rgba(255, 255, 255, 0.01) !important;
}
body.woocommerce-account table.woocommerce-table--order-details tr:last-child td,
body.woocommerce-account table.order_details tr:last-child td,
body.woocommerce-account table.woocommerce-table--order-details tfoot tr:last-child th,
body.woocommerce-account table.order_details tfoot tr:last-child th,
body.woocommerce-account table.woocommerce-table--order-details tfoot tr:last-child td,
body.woocommerce-account table.order_details tfoot tr:last-child td {
    border-bottom: none !important;
}
body.woocommerce-account table.woocommerce-table--order-details tr,
body.woocommerce-account table.order_details tr {
    border: none !important;
    border-top: none !important;
    border-bottom: none !important;
}

.woocommerce-customer-details h2,
.woocommerce-order-details h2 {
    color: #ffffff !important;
    font-size: 22px !important;
    font-weight: 700 !important;
    margin-top: 2rem !important;
    margin-bottom: 1.2rem !important;
}
.woocommerce-customer-details address {
    background-color: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(247, 198, 75, 0.3) !important;
    border-radius: 12px !important;
    padding: 1.5rem !important;
    color: rgba(255, 255, 255, 0.8) !important;
    font-style: normal !important;
    line-height: 1.7 !important;
    font-size: 15px !important;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1) !important;
    max-width: 480px !important;
}

/* ═══════════════════════════════════════════════════════════════
   BOTÓN DE DESCARGAS (Icono en lugar de texto)
   ═══════════════════════════════════════════════════════════════ */
body.woocommerce-account table.woocommerce-table--order-downloads td.download-file a.woocommerce-MyAccount-downloads-file,
body.woocommerce-account table.woocommerce-table--order-downloads td.download-file a.button {
    font-size: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    background: #f7c64b !important;
    border-radius: 8px !important;
    color: transparent !important;
    position: relative !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease !important;
    text-decoration: none !important;
    border: none !important;
}

body.woocommerce-account table.woocommerce-table--order-downloads td.download-file a.woocommerce-MyAccount-downloads-file:hover,
body.woocommerce-account table.woocommerce-table--order-downloads td.download-file a.button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(247, 198, 75, 0.4) !important;
}

body.woocommerce-account table.woocommerce-table--order-downloads td.download-file a.woocommerce-MyAccount-downloads-file::after,
body.woocommerce-account table.woocommerce-table--order-downloads td.download-file a.button::after {
    content: '' !important;
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="%23020503" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"></path><polyline points="7 10 12 15 17 10"></polyline><line x1="12" y1="15" x2="12" y2="3"></line></svg>') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    position: absolute !important;
}

/* 6. Forms (Account Details, Addresses) */
.woocommerce-MyAccount-content form {
    border: none !important;
    padding: 0 !important;
    margin-top: 1rem !important;
}
.woocommerce-MyAccount-content form fieldset {
    border: 1px solid rgba(247, 198, 75, 0.1) !important;
    border-radius: 16px !important;
    padding: 2.5rem !important;
    margin-bottom: 2.5rem !important;
}
.woocommerce form fieldset legend,
.woocommerce-page form fieldset legend {
    color: #ffffff !important;
    font-weight: 900 !important;
    font-size: 18px !important;
    padding: 0 15px !important;
}
.woocommerce form label,
.woocommerce-page form label {
    display: block !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #fff5d4 !important;
    margin-bottom: 0.6rem !important;
}/* Formularios e Inputs (Global para WooCommerce oscuro) */
.woocommerce form input[type="text"],
.woocommerce form input[type="password"],
.woocommerce form input[type="email"],
.woocommerce form input[type="tel"],
.woocommerce form input[type="number"],
.woocommerce form select,
.woocommerce form textarea,
.woocommerce-page form input[type="text"],
.woocommerce-page form input[type="password"],
.woocommerce-page form input[type="email"],
.woocommerce-page form input[type="tel"],
.woocommerce-page form input[type="number"],
.woocommerce-page form select,
.woocommerce-page form textarea {
    background-color: rgba(255, 255, 255, 0.05) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: #ffffff !important;
    padding: 0.8rem 1rem !important;
    border-radius: 8px !important;
    transition: all 0.3s ease !important;
}

.woocommerce form input:focus,
.woocommerce form select:focus,
.woocommerce form textarea:focus,
.woocommerce-page form input:focus,
.woocommerce-page form select:focus,
.woocommerce-page form textarea:focus {
    background-color: rgba(255, 255, 255, 0.1) !important;
    border-color: #f7c64b !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(247, 198, 75, 0.2) !important;
}
.select2-container--default .select2-selection--single {
    background-color: #0d110e !important;
    border: 1px solid rgba(247, 198, 75, 0.2) !important;
    border-radius: 12px !important;
    height: 52px !important;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #ffffff !important;
    line-height: 52px !important;
}

/* 7. Buttons */
.woocommerce-MyAccount-content .button,
.woocommerce-MyAccount-content button[type="submit"],
.woocommerce-MyAccount-content .woocommerce-Button {
    background: linear-gradient(to right, #f7c64b, #b87817) !important;
    color: #000000 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    padding: 1.1rem 2.5rem !important;
    border-radius: 14px !important;
    border: none !important;
    cursor: pointer !important;
    transition: transform 0.2s ease !important;
    display: inline-block !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(247,198,75,0.3) !important;
    font-size: 15px !important;
}
.woocommerce-MyAccount-content .button:hover,
.woocommerce-MyAccount-content button[type="submit"]:hover {
    transform: scale(1.02) !important;
    color: #000000 !important;
}

/* Table specific buttons (View Order) */
table.woocommerce-orders-table .button,
table.woocommerce-MyAccount-downloads .button {
    background: rgba(54, 240, 115, 0.05) !important;
    color: #36f073 !important;
    box-shadow: none !important;
    border: 1px solid rgba(54, 240, 115, 0.25) !important;
    padding: 0.5rem 1.2rem !important;
    font-size: 12px !important;
    border-radius: 8px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    transition: all 0.2s ease-in-out !important;
    display: inline-block !important;
}
table.woocommerce-orders-table .button:hover,
table.woocommerce-MyAccount-downloads .button:hover {
    background: #36f073 !important;
    color: #0b130e !important;
    border-color: #36f073 !important;
    box-shadow: 0 0 12px rgba(54, 240, 115, 0.3) !important;
    transform: translateY(-1px) !important;
}

/* 8. Addresses blocks */
.woocommerce-Address {
    background-color: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(247, 198, 75, 0.1) !important;
    border-radius: 16px !important;
    padding: 2.5rem !important;
    margin-bottom: 2rem !important;
}
.woocommerce-Address-title h3 {
    margin-bottom: 1.5rem !important;
    font-size: 22px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
}
.woocommerce-Address-title a.edit {
    background: rgba(247, 198, 75, 0.1) !important;
    color: #f7c64b !important;
    padding: 0.5rem 1.2rem !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}
.woocommerce-Address-title a.edit:hover {
    background: #f7c64b !important;
    color: #000000 !important;
}
address {
    font-style: normal !important;
    color: #d8c28a !important;
    line-height: 1.8 !important;
    font-size: 17px !important;
}

/* Remove weird margins in WooCommerce My Account */
.woocommerce-MyAccount-content > p:first-child {
    margin-top: 0 !important;
}

/* ==========================================
   CARRO Y CHECKOUT (DARK PREMIUM OVERRIDES)
   ========================================== */
body.woocommerce-cart,
body.woocommerce-checkout {
    background-color: #020503 !important;
}

body.woocommerce-cart #page,
body.woocommerce-cart #content,
body.woocommerce-cart .site-content,
body.woocommerce-cart .site-main,
body.woocommerce-checkout #page,
body.woocommerce-checkout #content,
body.woocommerce-checkout .site-content,
body.woocommerce-checkout .site-main {
    background-color: #020503 !important;
    color: #fff5d4 !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed !important;
    background-image:
      radial-gradient(circle at 10% 15%, rgba(54, 240, 115, 0.05), transparent 35%),
      radial-gradient(circle at 90% 85%, rgba(247, 198, 75, 0.05), transparent 35%) !important;
}

/* Títulos en Carrito y Checkout */
body.woocommerce-cart h1,
body.woocommerce-cart h2,
body.woocommerce-cart h3,
body.woocommerce-checkout h1,
body.woocommerce-checkout h2,
body.woocommerce-checkout h3 {
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
}

/* Contenedores de bloques de carrito vacío */
body.woocommerce-cart .cart-empty,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .wc-block-cart-empty,
body.woocommerce-cart .wc-block-components-cart-empty,
body.woocommerce-cart .woocommerce-notices-wrapper {
    background-color: rgba(13, 17, 14, 0.6) !important;
    border: 1px solid rgba(247, 198, 75, 0.15) !important;
    border-radius: 20px !important;
    padding: 3rem !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.4) !important;
    color: #fff5d4 !important;
    text-align: center !important;
    max-width: 800px !important;
    margin: 40px auto !important;
}

/* Inversión de iconos negros de WooCommerce Blocks a blanco para fondo oscuro */
body.woocommerce-cart .wc-block-components-cart-empty__image img,
body.woocommerce-cart .wc-block-cart-empty__image img,
body.woocommerce-cart img[src*="empty"],
body.woocommerce-cart .woocommerce-cart-empty-icon,
body.woocommerce-cart .wc-block-components-cart-empty__image svg {
    filter: invert(1) brightness(1.2) !important;
}

/* Títulos informativos de carrito vacío */
body.woocommerce-cart .cart-empty,
body.woocommerce-cart .wc-block-components-cart-empty__title,
body.woocommerce-cart .woocommerce-info {
    font-size: 20px !important;
    color: #ffffff !important;
}

/* Botones para volver a la tienda */
body.woocommerce-cart .return-to-shop a.button,
body.woocommerce-cart .wc-block-components-cart-empty__button a {
    background: linear-gradient(to right, #f7c64b, #b87817) !important;
    color: #000000 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    padding: 1.1rem 2.5rem !important;
    border-radius: 14px !important;
    border: none !important;
    cursor: pointer !important;
    transition: transform 0.2s ease !important;
    display: inline-block !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(247,198,75,0.3) !important;
    font-size: 15px !important;
    margin-top: 1.5rem !important;
}

body.woocommerce-cart .return-to-shop a.button:hover,
body.woocommerce-cart .wc-block-components-cart-empty__button a:hover {
    transform: scale(1.02) !important;
    color: #000000 !important;
}

/* Títulos de recomendados */
body.woocommerce-cart .cross-sells h2,
body.woocommerce-cart .up-sells h2,
body.woocommerce-cart .related h2 {
    text-align: center !important;
    margin-top: 3rem !important;
    margin-bottom: 2rem !important;
    font-size: 28px !important;
}

/* Grilla de productos (Estilo de Tarjeta de Ticket Suertudos - Standard & Gutenberg Blocks) */
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product,
body.woocommerce-cart ul.products li.product,
body.woocommerce-checkout ul.products li.product,
.wc-block-grid__products li.wc-block-grid__product,
.wc-block-grid__product {
    background-color: rgba(13, 17, 14, 0.8) !important;
    border: 1px solid rgba(247, 198, 75, 0.25) !important;
    border-radius: 16px !important;
    padding: 2rem !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.4) !important;
    text-align: center !important;
    transition: all 0.3s ease !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
    align-items: center !important;
    float: none !important;
    box-sizing: border-box !important;
}

/* Flexibilidad de columnas en bloques Gutenberg */
.wc-block-grid__products,
ul.wc-block-grid__products {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 20px !important;
    justify-content: center !important;
    margin: 20px auto !important;
    padding: 0 !important;
    list-style: none !important;
}

.wc-block-grid__products li.wc-block-grid__product,
.wc-block-grid__product {
    flex: 1 1 calc(33.333% - 20px) !important;
    max-width: calc(33.333% - 20px) !important;
    margin: 0 !important;
}

@media (max-width: 768px) {
    .wc-block-grid__products li.wc-block-grid__product,
    .wc-block-grid__product {
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }
}

.woocommerce ul.products li.product:hover,
.woocommerce-page ul.products li.product:hover,
body.woocommerce-cart ul.products li.product:hover,
body.woocommerce-checkout ul.products li.product:hover,
.wc-block-grid__products li.wc-block-grid__product:hover,
.wc-block-grid__product:hover {
    border-color: #36f073 !important; /* Borde verde brillante al pasar el ratón */
    transform: translateY(-4px) !important;
}

/* Centrado y bordes de la imagen */
.woocommerce ul.products li.product a img,
.woocommerce-page ul.products li.product a img,
.wc-block-grid__product-image,
.wc-block-grid__product-image img,
.wc-block-grid__product-link img {
    margin: 0 auto 1.5rem auto !important;
    border-radius: 12px !important;
    display: block !important;
    max-height: 250px !important;
    object-fit: cover !important;
    width: auto !important;
}

/* Título de los productos */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3,
.woocommerce-page ul.products li.product h3,
body.woocommerce-cart ul.products li.product .woocommerce-loop-product__title,
body.woocommerce-checkout ul.products li.product .woocommerce-loop-product__title,
.wc-block-grid__product-title,
.wc-block-grid__product-link .wc-block-grid__product-title {
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
    margin: 0 0 1rem 0 !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    text-align: center !important;
    text-decoration: none !important;
}

/* Precio de los productos */
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price,
body.woocommerce-cart ul.products li.product .price,
body.woocommerce-checkout ul.products li.product .price,
.wc-block-grid__product-price,
.wc-block-grid__product-price.price {
    color: #f7c64b !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    margin-bottom: 1.5rem !important;
    display: block !important;
    text-align: center !important;
}

.wc-block-grid__product-price.price span,
.wc-block-grid__product-price.price del,
.wc-block-grid__product-price.price ins {
    color: inherit !important;
}

/* Botón Añadir al carrito / Participar nativo (Estilo Outline dorado que cambia a sólido) */
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button,
.woocommerce-page ul.products li.product .add_to_cart_button,
body.woocommerce-cart ul.products li.product .button,
body.woocommerce-checkout ul.products li.product .button,
.wc-block-grid__product-add-to-cart a,
.wp-block-button__link.add_to_cart_button {
    background-color: #020503 !important;
    color: #f7c64b !important;
    border: 1px solid rgba(247, 198, 75, 0.3) !important;
    padding: 0.8rem 1.8rem !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    border-radius: 10px !important;
    text-transform: uppercase !important;
    transition: all 0.3s ease !important;
    display: inline-block !important;
    width: 100% !important;
    max-width: 200px !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
    text-align: center !important;
    margin: 0 !important;
    box-shadow: none !important;
    text-decoration: none !important;
}

.woocommerce ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover,
.woocommerce-page ul.products li.product .add_to_cart_button:hover,
body.woocommerce-cart ul.products li.product .button:hover,
body.woocommerce-checkout ul.products li.product .button:hover,
.wc-block-grid__product-add-to-cart a:hover,
.wp-block-button__link.add_to_cart_button:hover {
    background-color: #f7c64b !important;
    color: #000000 !important;
    border-color: #f7c64b !important;
    transform: scale(1.02) !important;
}

/* Tablas y Formularios de Carrito/Checkout con productos */
/* Tablas y Formularios de Carrito/Checkout con productos */
body.woocommerce-cart table.shop_table,
body.woocommerce-checkout table.shop_table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background-color: rgba(255, 255, 255, 0.01) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
}
body.woocommerce-cart table.shop_table thead,
body.woocommerce-checkout table.shop_table thead {
    background: transparent !important;
}

body.woocommerce-cart table.shop_table th,
body.woocommerce-checkout table.shop_table th {
    background-color: rgba(255, 255, 255, 0.03) !important;
    color: #f7c64b !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    padding: 1.1rem 1.2rem !important;
    border: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

body.woocommerce-cart table.shop_table td,
body.woocommerce-checkout table.shop_table td {
    padding: 1.2rem 1.2rem !important;
    border: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    color: rgba(255, 255, 255, 0.9) !important;
    font-size: 15px !important;
    background: transparent !important;
    vertical-align: middle !important;
}
body.woocommerce-cart table.shop_table tr:last-child td,
body.woocommerce-checkout table.shop_table tr:last-child td {
    border-bottom: none !important;
}
body.woocommerce-cart table.shop_table tr:hover td,
body.woocommerce-checkout table.shop_table tr:hover td {
    background-color: rgba(255, 255, 255, 0.02) !important;
}

body.woocommerce-cart table.shop_table td.product-name a,
body.woocommerce-checkout table.shop_table td.product-name a {
    color: #f7c64b !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    font-size: 15px !important;
    transition: color 0.2s ease !important;
}
body.woocommerce-cart table.shop_table td.product-name a:hover,
body.woocommerce-checkout table.shop_table td.product-name a:hover {
    color: #36f073 !important;
}

/* Fix product price & total text visibility */
body.woocommerce-cart table.shop_table td.product-price,
body.woocommerce-cart table.shop_table td.product-subtotal,
body.woocommerce-cart table.shop_table td.product-price .amount,
body.woocommerce-cart table.shop_table td.product-subtotal .amount,
body.woocommerce-cart table.shop_table td.product-price bdi,
body.woocommerce-cart table.shop_table td.product-subtotal bdi,
body.woocommerce-checkout table.shop_table td.product-total,
body.woocommerce-checkout table.shop_table td.product-total .amount,
body.woocommerce-checkout table.shop_table td.product-total bdi {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 15px !important;
}

/* Remove button styling */
body.woocommerce-cart table.shop_table a.remove {
    color: #ef4444 !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    border-radius: 50% !important;
    width: 24px !important;
    height: 24px !important;
    line-height: 22px !important;
    text-align: center !important;
    display: inline-block !important;
    transition: all 0.2s ease-in-out !important;
    border: 1px solid rgba(239, 68, 68, 0.2) !important;
    background-color: rgba(239, 68, 68, 0.05) !important;
}
body.woocommerce-cart table.shop_table a.remove:hover {
    background-color: #ef4444 !important;
    color: #ffffff !important;
}

/* Quantity inputs */
.woocommerce .quantity input.qty {
    background-color: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    padding: 5px !important;
}

/* Cart Totals Box & Checkout Form Container */
body.woocommerce-cart .cart_totals,
body.woocommerce-checkout form.checkout {
    background-color: rgba(255, 255, 255, 0.01) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 12px !important;
    padding: 2rem !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
}

body.woocommerce-cart .cart_totals table th {
    color: rgba(255, 255, 255, 0.8) !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    padding: 1.1rem 0 !important;
}
body.woocommerce-cart .cart_totals table td,
body.woocommerce-cart .cart_totals table td .amount,
body.woocommerce-cart .cart_totals table td bdi {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    background: transparent !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    padding: 1.1rem 0 !important;
    text-align: right !important;
}
body.woocommerce-cart .cart_totals table tr:last-child th,
body.woocommerce-cart .cart_totals table tr:last-child td {
    border-bottom: none !important;
}

/* Proceed to Checkout Button */
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    background: linear-gradient(to right, #f7c64b, #b87817) !important;
    color: #000000 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    padding: 1.1rem 2.5rem !important;
    border-radius: 12px !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
    display: block !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(247,198,75,0.3) !important;
    font-size: 15px !important;
    letter-spacing: 0.05em !important;
}
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(247,198,75,0.4) !important;
    color: #000000 !important;
}

/* Checkout Form Inputs & Fields Styling */
body.woocommerce-checkout form.checkout input.input-text,
body.woocommerce-checkout form.checkout select,
body.woocommerce-checkout form.checkout textarea {
    background-color: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    padding: 0.8rem 1rem !important;
    transition: all 0.2s ease !important;
}
body.woocommerce-checkout form.checkout input.input-text:focus,
body.woocommerce-checkout form.checkout select:focus,
body.woocommerce-checkout form.checkout textarea:focus {
    border-color: #f7c64b !important;
    background-color: rgba(255, 255, 255, 0.04) !important;
    box-shadow: 0 0 8px rgba(247,198,75,0.15) !important;
    outline: none !important;
}
body.woocommerce-checkout form.checkout label {
    color: rgba(255, 255, 255, 0.8) !important;
    font-weight: 600 !important;
    margin-bottom: 0.5rem !important;
    font-size: 14px !important;
}
body.woocommerce-checkout h3 {
    color: #ffffff !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    margin-bottom: 1.5rem !important;
}

/* Checkout Place Order Button */
body.woocommerce-checkout #place_order {
    background: linear-gradient(to right, #f7c64b, #b87817) !important;
    color: #000000 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    padding: 1.1rem 2.5rem !important;
    border-radius: 12px !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
    box-shadow: 0 4px 14px rgba(247,198,75,0.3) !important;
    font-size: 15px !important;
    letter-spacing: 0.05em !important;
    width: 100% !important;
}
body.woocommerce-checkout #place_order:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(247,198,75,0.4) !important;
}

/* ==========================================
   CHECKOUT PAYMENT METHODS
   ========================================== */
#add_payment_method #payment, 
.woocommerce-cart #payment, 
.woocommerce-checkout #payment {
    background: rgba(0, 0, 0, 0.2) !important;
    border-radius: 12px !important;
    padding: 20px !important;
}
#add_payment_method #payment div.payment_box, 
.woocommerce-cart #payment div.payment_box, 
.woocommerce-checkout #payment div.payment_box {
    background-color: rgba(255, 255, 255, 0.05) !important;
    color: #fff !important;
    border-radius: 8px !important;
    padding: 15px !important;
}
#add_payment_method #payment div.payment_box::before, 
.woocommerce-cart #payment div.payment_box::before, 
.woocommerce-checkout #payment div.payment_box::before {
    border-bottom-color: rgba(255, 255, 255, 0.05) !important;
}

/* ==========================================
   MINI CART (WIDGET)
   ========================================== */
.widget_shopping_cart_content,
.woocommerce-mini-cart {
    background-color: #0d110e !important;
    color: #fff !important;
}
.woocommerce-mini-cart__empty-message {
    color: #fff !important;
}
.woocommerce-mini-cart-item {
    border-bottom: 1px solid rgba(255,255,255,0.1) !important;
}
.woocommerce-mini-cart-item a {
    color: #fff !important;
}
.woocommerce-mini-cart-item a:hover {
    color: #f7c64b !important;
}
.widget_shopping_cart_content .total {
    border-top: 1px solid rgba(255,255,255,0.1) !important;
    color: #f7c64b !important;
}
.widget_shopping_cart_content .buttons .button {
    background-color: #f7c64b !important;
    color: #0d110e !important;
}
.widget_shopping_cart_content .buttons .button:hover {
    background-color: #d4a73e !important;
}
.widget_shopping_cart_content .buttons .checkout {
    background: linear-gradient(to right, #f7c64b, #b87817) !important;
    color: #000 !important;
}

/* ==========================================
   PRODUCTO INDIVIDUAL (DARK PREMIUM OVERRIDES)
   ========================================== */
body.single-product {
    background-color: #020503 !important;
    color: #fff5d4 !important;
}

body.single-product #page,
body.single-product #content,
body.single-product .site-content,
body.single-product .site-main {
    background-color: #020503 !important;
    background-repeat: no-repeat !important;
    background-attachment: fixed !important;
    background-image:
      radial-gradient(circle at 10% 15%, rgba(54, 240, 115, 0.05), transparent 35%),
      radial-gradient(circle at 90% 85%, rgba(247, 198, 75, 0.05), transparent 35%) !important;
}

body.single-product div.product,
body.single-product div.product div.summary,
body.single-product div.product div.images {
    background: transparent !important;
}

/* ==========================================
   WOOCOMMERCE NOTICES (MESSAGE, INFO, ERROR)
   ========================================== */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-NoticeGroup {
    background-color: rgba(13, 17, 14, 0.9) !important;
    border-top: 3px solid #f7c64b !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    padding: 15px 20px 15px 50px !important;
    margin-bottom: 20px !important;
    position: relative !important;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
    color: #f7c64b !important;
    left: 20px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    position: absolute !important;
}

.woocommerce-error {
    border-top-color: #e2401c !important; /* red for errors */
}

.woocommerce-error::before {
    color: #ef4444 !important;
}

.woocommerce-message a.button,
.woocommerce-info a.button,
.woocommerce-error a.button {
    background: #f7c64b !important;
    color: #0d110e !important;
    border: none !important;
    border-radius: 9999px !important;
    padding: 8px 24px !important;
    font-weight: 700 !important;
    margin-top: -5px !important;
    float: right !important;
}
.woocommerce-message a.button:hover,
.woocommerce-info a.button:hover,
.woocommerce-error a.button:hover {
    background: #d4a73e !important;
    transform: translateY(-2px);
}

/* Títulos y textos descriptivos */
body.single-product .summary.entry-summary h1.product_title,
body.single-product div.product .product_title {
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 900 !important;
    font-size: 32px !important;
    margin-bottom: 15px !important;
    line-height: 1.2 !important;
}

body.single-product .summary.entry-summary,
body.single-product .summary.entry-summary p,
body.single-product .summary.entry-summary div,
body.single-product .woocommerce-product-details__short-description {
    color: #d8c28a !important;
    font-size: 16px !important;
    line-height: 1.7 !important;
}

body.single-product .summary.entry-summary strong,
body.single-product .woocommerce-product-details__short-description strong {
    color: #ffffff !important;
}

/* Precios */
body.single-product .price,
body.single-product p.price,
body.single-product .price span.amount,
body.single-product .price ins span.amount,
body.single-product .price ins,
body.single-product div.product p.price span.amount {
    color: #f7c64b !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 900 !important;
    font-size: 35px !important;
    line-height: 40px !important;
}

body.single-product .price del span.amount,
body.single-product .price del,
body.single-product div.product p.price del span.amount {
    color: rgba(255, 255, 255, 0.4) !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    text-decoration: line-through !important;
}

/* Sección del Cronómetro (Lotería) */
body.single-product .lottery-time.countdown {
    color: #fff5d4 !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 15px !important;
    margin-top: 25px !important;
    margin-bottom: 8px !important;
}

body.single-product .lottery-time.countdown .main-lottery,
body.single-product .lottery-time-countdown {
    background-color: rgba(13, 17, 14, 0.6) !important;
    border: 1px solid rgba(247, 198, 75, 0.15) !important;
    border-radius: 16px !important;
    padding: 20px 15px !important;
    margin-top: 10px !important;
    margin-bottom: 25px !important;
    display: flex !important;
    justify-content: space-around !important;
    align-items: center !important;
    float: none !important;
    width: 100% !important;
    max-width: 500px !important;
    box-sizing: border-box !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3) !important;
}

/* Celdas internas del contador */
body.single-product .wc_lotery_countdown-section {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    float: none !important;
    width: auto !important;
    padding: 0 8px !important;
    flex: 1 1 0% !important;
}

body.single-product .wc_lotery_countdown-amount {
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 800 !important;
    font-size: 32px !important;
    line-height: 1.1 !important;
}

body.single-product .wc_lotery_countdown-period {
    color: #d8c28a !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 700 !important;
    font-size: 11px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    margin-top: 5px !important;
    opacity: 0.8 !important;
    text-align: center !important;
}

/* Countdown Layout Fix */
body.single-product .lottery-time-countdown span.countdown-row,
body.single-product .lottery-time-countdown div.countdown-row,
body.single-product .lottery-time-countdown .countdown-row {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    gap: 15px !important;
}

body.single-product .lottery-time-countdown span.countdown-section,
body.single-product .lottery-time-countdown .countdown-section {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, 0.05) !important;
    padding: 10px !important;
    border-radius: 12px !important;
    min-width: 65px !important;
}

/* Galería e Imagen de Producto */

body.single-product .woocommerce-product-gallery,
body.single-product div.product div.images.woocommerce-product-gallery {
    border-radius: 20px !important;
    overflow: hidden !important;
    border: 1px solid rgba(247, 198, 75, 0.15) !important;
    background-color: transparent !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.3) !important;
    height: auto !important; /* Ensure height scales */
}

body.single-product .woocommerce-product-gallery img {
    border-radius: 20px !important;
    transition: transform 0.5s ease !important;
}

body.single-product .woocommerce-product-gallery img:hover {
    transform: scale(1.02) !important;
}

/* Botón de Compra / Participar */
body.single-product div.product form.cart .button,
body.single-product .woocommerce.single-product div.product form.cart .button,
body.single-product .single_add_to_cart_button {
    background: linear-gradient(to right, #f7c64b, #b87817) !important;
    color: #000000 !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-weight: 850 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    padding: 15px 35px !important;
    border-radius: 12px !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    box-shadow: 0 4px 14px rgba(247,198,75,0.3) !important;
    display: inline-block !important;
    font-size: 14px !important;
    margin-top: 15px !important;
}

body.single-product div.product form.cart .button:hover,
body.single-product .single_add_to_cart_button:hover {
    transform: translateY(-2px) scale(1.02) !important;
    box-shadow: 0 6px 20px rgba(247,198,75,0.5) !important;
    color: #000000 !important;
}

/* Selector de Cantidad */
body.single-product .quantity input.qty {
    background-color: #0d110e !important;
    border: 1px solid rgba(247, 198, 75, 0.25) !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    padding: 12px !important;
    font-weight: 700 !important;
    outline: none !important;
    transition: all 0.2s ease !important;
}

body.single-product .quantity input.qty:focus {
    border-color: #36f073 !important;
    box-shadow: 0 0 0 1px #36f073 !important;
}

/* Productos Relacionados */
body.single-product .related.products {
    background: transparent !important;
    margin-top: 50px !important;
    padding: 0 !important;
    border: none !important;
}

body.single-product .related.products h2 {
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 900 !important;
    font-size: 28px !important;
    text-align: center !important;
    margin-bottom: 35px !important;
}

/* Pestañas WooCommerce (Tabs) */
body.single-product .woocommerce-tabs {
    background-color: rgba(13, 17, 14, 0.6) !important;
    border: 1px solid rgba(247, 198, 75, 0.15) !important;
    border-radius: 20px !important;
    padding: 35px !important;
    margin-top: 50px !important;
    box-shadow: 0 8px 30px rgba(0,0,0,0.4) !important;
}

body.single-product .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid rgba(247, 198, 75, 0.15) !important;
    background: transparent !important;
    padding: 0 !important;
    margin: 0 0 25px 0 !important;
}

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

body.single-product .woocommerce-tabs ul.tabs li a {
    color: #d8c28a !important;
    font-weight: 700 !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    transition: color 0.2s ease !important;
}

body.single-product .woocommerce-tabs ul.tabs li.active a,
body.single-product .woocommerce-tabs ul.tabs li a:hover {
    color: #36f073 !important;
}

body.single-product .woocommerce-tabs .woocommerce-Tabs-panel {
    color: #fff5d4 !important;
}

body.single-product .woocommerce-tabs .woocommerce-Tabs-panel h2 {
    color: #ffffff !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 800 !important;
    font-size: 22px !important;
}



/* ==========================================
   SHOP PAGE SPECIFIC FIXES (TIENDA)
   ========================================== */

body.woocommerce-page .woocommerce-products-header__title.page-title {
    color: #f7c64b !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 800 !important;
    font-size: 32px !important;
    margin-bottom: 20px !important;
    text-transform: uppercase !important;
}

body.woocommerce-page .woocommerce-result-count {
    color: #ffffff !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 14px !important;
    margin-bottom: 20px !important;
}

body.woocommerce-page .woocommerce-ordering select {
    background-color: #0d110e !important;
    color: #ffffff !important;
    border: 1px solid rgba(247, 198, 75, 0.3) !important;
    padding: 10px 40px 10px 15px !important;
    border-radius: 8px !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 14px !important;
    outline: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%22292.4%22%20height%3D%22292.4%22%3E%3Cpath%20fill%3D%22%23f7c64b%22%20d%3D%22M287%2069.4a17.6%2017.6%200%200%200-13-5.4H18.4c-5%200-9.3%201.8-12.9%205.4A17.6%2017.6%200%200%200%200%2082.2c0%205%201.8%209.3%205.4%2012.9l128%20127.9c3.6%203.6%207.8%205.4%2012.8%205.4s9.2-1.8%2012.8-5.4L287%2095c3.5-3.5%205.4-7.8%205.4-12.8%200-5-1.9-9.2-5.5-12.8z%22%2F%3E%3C%2Fsvg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 15px top 50% !important;
    background-size: 12px auto !important;
    cursor: pointer !important;
}

body.woocommerce-page .woocommerce-ordering select:focus {
    border-color: #36f073 !important;
}

/* Pagination */
body.woocommerce-page nav.woocommerce-pagination ul {
    border: none !important;
}

body.woocommerce-page nav.woocommerce-pagination ul li {
    border: none !important;
    margin: 0 5px !important;
}

body.woocommerce-page nav.woocommerce-pagination ul li a,
body.woocommerce-page nav.woocommerce-pagination ul li span {
    background-color: #1a1f1c !important;
    color: #ffffff !important;
    border: 1px solid rgba(247, 198, 75, 0.2) !important;
    padding: 10px 15px !important;
    border-radius: 8px !important;
    font-weight: bold !important;
    transition: all 0.3s ease !important;
}

body.woocommerce-page nav.woocommerce-pagination ul li span.current,
body.woocommerce-page nav.woocommerce-pagination ul li a:hover {
    background-color: #f7c64b !important;
    color: #000000 !important;
    border-color: #f7c64b !important;
}

/* ==========================================
   WOOCOMMERCE BLOCKS (CART & CHECKOUT BLOCKS)
   ========================================== */

/* Spacing and grid separation between columns to prevent stacking */
@media (min-width: 992px) {
    /* CART AND CHECKOUT OUTER WRAPPERS */
    .wc-block-cart,
    .wp-block-woocommerce-cart,
    .wc-block-checkout,
    .wp-block-woocommerce-checkout {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
        display: block !important;
    }

    /* CART LAYOUT CONTAINER */
    .wc-block-cart .wc-block-components-sidebar-layout,
    .wp-block-woocommerce-cart .wc-block-components-sidebar-layout {
        display: grid !important;
        grid-template-columns: 6.6fr 3.4fr !important;
        gap: 36px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
    }
    
    /* CHECKOUT LAYOUT CONTAINER */
    .wc-block-checkout .wc-block-components-sidebar-layout,
    .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout {
        display: grid !important;
        grid-template-columns: 6.2fr 3.8fr !important;
        gap: 36px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
    }
    
    /* MAIN COLUMN (Cart / Checkout Fields) */
    .wc-block-cart__main,
    .wp-block-woocommerce-cart-items-block,
    .wc-block-checkout__main,
    .wp-block-woocommerce-checkout-fields-block,
    .wc-block-components-sidebar-layout .wc-block-components-main {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
    
    /* SIDEBAR COLUMN (Cart Totals / Checkout Summary) */
    .wc-block-cart__sidebar,
    .wp-block-woocommerce-cart-totals-block,
    .wc-block-checkout__sidebar,
    .wp-block-woocommerce-checkout-totals-block,
    .wp-block-woocommerce-checkout-order-summary-block,
    .wc-block-components-sidebar-layout .wc-block-components-sidebar {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

@media (max-width: 991px) {
    /* CART AND CHECKOUT OUTER WRAPPERS */
    .wc-block-cart,
    .wp-block-woocommerce-cart,
    .wc-block-checkout,
    .wp-block-woocommerce-checkout {
        width: 100% !important;
        display: block !important;
    }

    /* LAYOUT CONTAINERS MOBILE */
    .wc-block-components-sidebar-layout {
        display: flex !important;
        flex-direction: column !important;
        gap: 30px !important;
        width: 100% !important;
    }
    
    .wc-block-cart__main,
    .wp-block-woocommerce-cart-items-block,
    .wc-block-checkout__main,
    .wp-block-woocommerce-checkout-fields-block,
    .wc-block-cart__sidebar,
    .wp-block-woocommerce-cart-totals-block,
    .wc-block-checkout__sidebar,
    .wp-block-woocommerce-checkout-totals-block,
    .wp-block-woocommerce-checkout-order-summary-block,
    .wc-block-components-sidebar-layout .wc-block-components-main,
    .wc-block-components-sidebar-layout .wc-block-components-sidebar {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* Hide Cross-Sells, Gutenberg Product grids, and sibling blocks after the cart block */
body.woocommerce-cart .cross-sells,
body.woocommerce-cart .up-sells,
body.woocommerce-cart .wc-block-cart__cross-sells,
body.woocommerce-cart .wp-block-woocommerce-cart-cross-sells-block,
body.woocommerce-cart .wc-block-grid,
body.woocommerce-cart .wc-block-grid__products,
/* Selectores hermanos para bloques agregados en el editor de páginas debajo del bloque de carrito */
.wp-block-woocommerce-cart ~ h2.wp-block-heading,
.wp-block-woocommerce-cart ~ .wp-block-woocommerce-product-template,
.wp-block-woocommerce-cart ~ .wc-block-product-template,
.wc-block-cart ~ h2.wp-block-heading,
.wc-block-cart ~ .wc-block-product-template,
.wc-block-cart ~ .wc-block-product-template__responsive {
    display: none !important;
}

/* Cart block main layout & headers styling */
.wc-block-cart-items-header,
.wc-block-cart-items__header,
.wc-block-cart-items__header-item,
.wc-block-cart-items-header-single {
    background-color: rgba(255, 255, 255, 0.03) !important;
    color: #f7c64b !important;
    text-transform: uppercase !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em !important;
    border: none !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
}

.wc-block-cart-items,
.wc-block-cart__items,
.wp-block-woocommerce-cart-items-block {
    border-collapse: separate !important;
    border-spacing: 0 !important;
    background-color: rgba(255, 255, 255, 0.01) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
    padding: 0 !important;
}

.wc-block-cart-items__row,
.wc-block-cart-item,
.wc-block-cart__items-row {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    transition: background-color 0.2s ease !important;
    background: transparent !important;
}

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

.wc-block-cart-items__row:hover,
.wc-block-cart-item:hover {
    background-color: rgba(255, 255, 255, 0.02) !important;
}

/* Product names visibility */
.wc-block-components-product-name,
.wc-block-cart-item__title,
.wc-block-cart-item__name,
.wc-block-cart-item__product-name a,
.wc-block-components-product-name a {
    color: #f7c64b !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    font-size: 15px !important;
    transition: color 0.2s ease !important;
}
.wc-block-components-product-name:hover,
.wc-block-cart-item__title:hover,
.wc-block-cart-item__name:hover,
.wc-block-cart-item__product-name a:hover,
.wc-block-components-product-name a:hover {
    color: #36f073 !important;
}

/* Prices visibility (fixes unreadable dark gray on dark bg) */
.wc-block-components-product-price,
.wc-block-cart-item__price,
.wc-block-cart-item__total,
.wc-block-components-totals-item__value,
.wc-block-components-formatted-money-amount,
.wc-block-components-totals-item__value span,
.wc-block-components-totals-footer-item span {
    color: #ffffff !important;
    font-weight: 700 !important;
}

.wc-block-cart-item__total,
.wc-block-cart-item__total .wc-block-components-formatted-money-amount,
.wc-block-cart-item__total span {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
}

.wc-block-components-product-price,
.wc-block-components-product-price .wc-block-components-formatted-money-amount,
.wc-block-components-product-price span {
    color: rgba(255, 255, 255, 0.7) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

/* Quantity inputs custom styling in blocks */
.wc-block-components-quantity-selector,
.wc-block-components-quantity-selector input,
.wc-block-components-quantity-selector button {
    background-color: rgba(255, 255, 255, 0.03) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    color: #ffffff !important;
    border-radius: 6px !important;
}
.wc-block-components-quantity-selector button:hover {
    background-color: rgba(255, 255, 255, 0.08) !important;
    color: #36f073 !important;
}

/* Remove button in blocks */
.wc-block-cart-item__remove-link,
button.wc-block-cart-item__remove-link,
.wc-block-cart-item__remove {
    color: #ef4444 !important;
    transition: all 0.2s ease !important;
}
.wc-block-cart-item__remove-link:hover,
button.wc-block-cart-item__remove-link:hover {
    color: #ff6b6b !important;
    transform: scale(1.1) !important;
}

/* Cart Totals Box & Block Checkout container */
.wc-block-cart__totals,
.wc-block-cart-totals,
.wp-block-woocommerce-cart-totals-block,
.wp-block-woocommerce-cart-order-summary-block {
    background-color: rgba(255, 255, 255, 0.01) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 12px !important;
    padding: 2rem !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
}

.wc-block-cart-totals__title,
.wc-block-cart-totals h2,
.wp-block-woocommerce-cart-totals-block h2,
.wp-block-woocommerce-cart-order-summary-block h2 {
    color: #ffffff !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    margin-bottom: 1.5rem !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
    padding-bottom: 0.8rem !important;
}

.wc-block-components-totals-item,
.wc-block-components-totals-footer-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
    padding: 1.1rem 1rem !important;
}
.wc-block-components-totals-item:last-of-type,
.wc-block-components-totals-footer-item:last-of-type {
    border-bottom: none !important;
}

.wc-block-components-totals-item__label,
.wc-block-components-totals-item .wc-block-components-totals-item__label {
    color: rgba(255, 255, 255, 0.8) !important;
    font-weight: 600 !important;
    font-size: 15px !important;
}

.wc-block-components-totals-item__value,
.wc-block-components-totals-item__value .wc-block-components-formatted-money-amount {
    color: #ffffff !important;
    font-weight: 700 !important;
    font-size: 16px !important;
}

/* Accent for main total value */
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.wc-block-components-totals-footer-item .wc-block-components-formatted-money-amount {
    color: #f7c64b !important;
    font-size: 20px !important;
    font-weight: 800 !important;
}

/* Proceed to Checkout button styling in blocks */
.wc-block-cart__submit-button,
.wc-block-cart__submit a,
.wc-block-cart__submit button,
.wc-block-components-button,
.wp-block-woocommerce-cart-totals-block .wc-block-components-button,
.wc-block-cart__submit-container button,
.wc-block-cart__submit-container a {
    background: linear-gradient(to right, #f7c64b, #b87817) !important;
    color: #000000 !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    padding: 1.1rem 2.5rem !important;
    border-radius: 12px !important;
    border: none !important;
    cursor: pointer !important;
    transition: all 0.2s ease-in-out !important;
    display: block !important;
    text-align: center !important;
    text-decoration: none !important;
    box-shadow: 0 4px 14px rgba(247,198,75,0.3) !important;
    font-size: 15px !important;
    letter-spacing: 0.05em !important;
    width: 100% !important;
}
.wc-block-cart__submit-button:hover,
.wc-block-cart__submit a:hover,
.wc-block-cart__submit button:hover,
.wc-block-components-button:hover,
.wp-block-woocommerce-cart-totals-block .wc-block-components-button:hover,
.wc-block-cart__submit-container button:hover,
.wc-block-cart__submit-container a:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(247,198,75,0.4) !important;
    color: #000000 !important;
}

/* Checkout Block styles (inputs and boxes) */
.wc-block-checkout,
.wp-block-woocommerce-checkout {
    background: transparent !important;
    color: #ffffff !important;
}
.wc-block-checkout__sidebar,
.wc-block-checkout__main {
    background: transparent !important;
}
.wc-block-components-sidebar,
.wc-block-components-checkout-step {
    background-color: rgba(255, 255, 255, 0.01) !important;
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    border-radius: 12px !important;
    padding: 2rem !important;
    margin-bottom: 2rem !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
}

/* ==========================================
   REVERT PAYMENT METHODS TO DEFAULT (LIGHT)
   ========================================== */
.wc-block-checkout__payment-method {
    background-color: #ffffff !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    padding: 1.5rem !important;
    margin-bottom: 2rem !important;
    color: #1a202c !important;
}

.wc-block-checkout__payment-method label,
.wc-block-checkout__payment-method span,
.wc-block-checkout__payment-method div,
.wc-block-checkout__payment-method p,
.wc-block-checkout__payment-method h1,
.wc-block-checkout__payment-method h2,
.wc-block-checkout__payment-method h3,
.wc-block-checkout__payment-method h4,
.wc-block-checkout__payment-method h5,
.wc-block-checkout__payment-method h6,
.wc-block-checkout__payment-method a {
    color: #1a202c !important;
}

.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-content {
    background-color: #f8fafc !important;
    border: none !important;
}

/* Fix borders between payment methods */
.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option,
.wc-block-checkout__payment-method .wc-block-components-radio-control {
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid #e2e8f0 !important;
    border-radius: 0 !important;
}
.wc-block-checkout__payment-method .wc-block-components-radio-control-accordion-option:last-child,
.wc-block-checkout__payment-method .wc-block-components-radio-control:last-child {
    border-bottom: none !important;
}

/* Fix radio buttons and checkboxes inside the payment block */
.wc-block-checkout__payment-method input[type="radio"],
.wc-block-checkout__payment-method input[type="checkbox"],
.wc-block-checkout__payment-method .wc-block-components-radio-control__input {
    border: 2px solid #cbd5e1 !important;
    background-color: #ffffff !important;
    box-shadow: none !important;
}
.wc-block-checkout__payment-method input[type="radio"]:checked,
.wc-block-checkout__payment-method input[type="checkbox"]:checked,
.wc-block-checkout__payment-method .wc-block-components-radio-control__input:checked {
    border-color: #1a202c !important;
}

.wc-block-components-text-input input,
.wc-block-components-combobox select,
.wc-block-components-combobox input,
.wc-block-components-country-input input,
.wc-block-components-country-input select,
.wc-block-components-state-input input,
.wc-block-components-state-input select,
.wc-block-components-select-input select,
.wc-block-checkout select,
.wc-block-components-textarea textarea,
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"] {
    background-color: rgba(255, 255, 255, 0.02) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
    border-radius: 8px !important;
    padding: 0.8rem 1rem !important;
    transition: all 0.2s ease !important;
}
.wc-block-components-text-input input:focus,
.wc-block-components-combobox select:focus,
.wc-block-components-combobox input:focus,
.wc-block-components-country-input input:focus,
.wc-block-components-country-input select:focus,
.wc-block-components-state-input input:focus,
.wc-block-components-state-input select:focus,
.wc-block-components-select-input select:focus,
.wc-block-checkout select:focus,
.wc-block-components-textarea textarea:focus {
    border-color: #f7c64b !important;
    background-color: rgba(255, 255, 255, 0.04) !important;
    box-shadow: 0 0 8px rgba(247,198,75,0.15) !important;
    outline: none !important;
}

/* Fix option items in native selects */
.wc-block-checkout select option,
.wc-block-components-select-input select option,
.wc-block-components-country-input select option,
.wc-block-components-state-input select option {
    background-color: #1a1f1c !important;
    color: #ffffff !important;
}
.wc-block-components-text-input label {
    color: rgba(255, 255, 255, 0.8) !important;
    font-weight: 600 !important;
}

/* Animación Pixar Jump para el número 2 del logo */
.animate-pixar-jump {
    display: inline-block !important;
    animation: pixar-jump 5s infinite !important;
    transform-origin: bottom center !important;
}

@keyframes pixar-jump {
    0%, 80%, 100% {
        transform: translateY(0) scale(1, 1);
    }
    82% {
        transform: translateY(0) scale(1.2, 0.8);
    }
    85% {
        transform: translateY(-15px) scale(0.9, 1.1);
    }
    88% {
        transform: translateY(0) scale(1.1, 0.9);
    }
    90% {
        transform: translateY(-5px) scale(0.95, 1.05);
    }
    92% {
        transform: translateY(0) scale(1.02, 0.98);
    }
    94% {
        transform: translateY(0) scale(1, 1);
    }
}

/* ==========================================
   CORRECCIÓN: Grilla y Dimensiones de Finalizar Compra (Checkout Block)
   ========================================== */

/* Centrar y dimensionar el contenedor principal del checkout y carrito */
body.woocommerce-checkout .container,
body.woocommerce-cart .container {
    max-width: 1200px !important;
    width: 100% !important;
    margin-right: auto !important;
    margin-left: auto !important;
    padding-right: 15px !important;
    padding-left: 15px !important;
    box-sizing: border-box !important;
}

/* Forzar a que todos los contenedores intermedios del tema padre y maquetadores de páginas (WPBakery/Bootstrap) ocupen el 100% de la anchura para no restringir el bloque */
body.woocommerce-checkout #primary,
body.woocommerce-checkout #main,
body.woocommerce-checkout article,
body.woocommerce-checkout .entry-content,
body.woocommerce-checkout .vc_row,
body.woocommerce-checkout .vc_column_container,
body.woocommerce-checkout .vc_column-inner,
body.woocommerce-checkout .wpb_wrapper,
body.woocommerce-cart #primary,
body.woocommerce-cart #main,
body.woocommerce-cart article,
body.woocommerce-cart .entry-content,
body.woocommerce-cart .vc_row,
body.woocommerce-cart .vc_column_container,
body.woocommerce-cart .vc_column-inner,
body.woocommerce-cart .wpb_wrapper {
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
}

/* Espaciado del contenido */
body.woocommerce-checkout .site-content {
    padding-top: 40px !important;
    padding-bottom: 60px !important;
}

/* Asegurar que la grilla del checkout ocupe todo el ancho */
@media (min-width: 992px) {
    body.woocommerce-checkout .wc-block-checkout,
    body.woocommerce-checkout .wp-block-woocommerce-checkout {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
        display: block !important;
    }

    body.woocommerce-checkout .wc-block-components-sidebar-layout {
        display: grid !important;
        grid-template-columns: 6.2fr 3.8fr !important;
        gap: 36px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
    }
    
    body.woocommerce-checkout .wc-block-checkout__main,
    body.woocommerce-checkout .wp-block-woocommerce-checkout-fields-block,
    body.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-main {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
    
    body.woocommerce-checkout .wc-block-checkout__sidebar,
    body.woocommerce-checkout .wp-block-woocommerce-checkout-totals-block,
    body.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block,
    body.woocommerce-checkout .wc-block-components-sidebar,
    body.woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-sidebar {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}

/* Corregir el resumen del pedido en el Checkout Block para evitar que el título del producto se contraiga */
body.woocommerce-checkout .wc-block-components-order-summary-item {
    display: flex !important;
    flex-direction: row !important;
    width: 100% !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 16px !important;
    box-sizing: border-box !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__image {
    flex-shrink: 0 !important;
    width: 48px !important;
    height: 48px !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__description {
    flex-grow: 1 !important;
    flex-shrink: 1 !important;
    min-width: 0 !important; /* Importante para permitir que el contenido de texto se ajuste y no comprima el flex item */
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: 4px 12px 12px 16px !important;
    box-sizing: border-box !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__description .wc-block-components-product-name {
    display: block !important;
    white-space: normal !important; /* Permite wrapping normal de las palabras */
    word-break: break-word !important; /* Evita que rompa palabras a menos que sea necesario */
    overflow-wrap: break-word !important;
    width: 100% !important;
    max-width: 100% !important;
}

body.woocommerce-checkout .wc-block-components-order-summary-item__total-price {
    flex-shrink: 0 !important;
    text-align: right !important;
}

/* Fix Checkout Checkboxes Alignment (Order Notes, etc.) */
.wc-block-checkout input[type="checkbox"],
.woocommerce-checkout input[type="checkbox"],
.wc-block-components-checkbox__input {
    -webkit-appearance: auto !important;
    appearance: auto !important;
    width: 1.2em !important;
    height: 1.2em !important;
    margin-right: 0.5em !important;
    border: none !important;
    background: transparent !important;
    vertical-align: middle !important;
}

.wc-block-components-checkbox {
    display: flex !important;
    align-items: center !important;
}

/* Fix Combobox Dropdown Menus (Country, State) with Premium Glassmorphism and Slide Animation */
@keyframes customDropdownSlideIn {
    0% {
        opacity: 0;
        transform: translateY(-8px) scale(0.96);
    }
    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.components-combobox-control__suggestions-container,
.components-custom-select-control__menu,
.wc-block-components-combobox-control__suggestions-container,
.components-custom-select-control__menu-container {
    background: rgba(2, 5, 3, 0.95) !important;
    backdrop-filter: blur(16px) saturate(180%) !important;
    -webkit-backdrop-filter: blur(16px) saturate(180%) !important;
    border: 1px solid rgba(247, 198, 75, 0.2) !important;
    border-radius: 12px !important;
    color: #ffffff !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.65) !important;
    animation: customDropdownSlideIn 0.3s cubic-bezier(0.34, 1.56, 0.64, 1) forwards !important;
    transform-origin: top center !important;
    padding: 6px !important;
    z-index: 999999 !important;
}

.components-combobox-control__suggestion,
.components-custom-select-control__item,
.wc-block-components-combobox-control__suggestion {
    color: #fff5d4 !important;
    background: transparent !important;
    padding: 10px 14px !important;
    font-family: 'Plus Jakarta Sans', sans-serif !important;
    font-size: 14px !important;
    border-radius: 8px !important;
    margin: 2px 4px !important;
    transition: background-color 0.2s ease, color 0.2s ease !important;
}

.components-combobox-control__suggestion:hover,
.components-combobox-control__suggestion[aria-selected="true"],
.components-custom-select-control__item:hover,
.components-custom-select-control__item[aria-selected="true"],
.wc-block-components-combobox-control__suggestion:hover,
.wc-block-components-combobox-control__suggestion[aria-selected="true"] {
    background-color: rgba(247, 198, 75, 0.15) !important; /* Destaque amarillo suave */
    color: #f7c64b !important;
}

/* Ensure Payment Step Title is Dark (Visible on White Background) */
.wc-block-components-checkout-step--payment .wc-block-components-title,
.wp-block-woocommerce-checkout-payment-block .wc-block-components-title,
.wc-block-components-checkout-step--payment h2,
.wp-block-woocommerce-checkout-payment-block h2,
.wc-block-components-checkout-step--payment .wc-block-components-checkout-step__title,
.wc-block-components-checkout-step--payment .wc-block-components-checkout-step__description,
.wp-block-woocommerce-checkout-payment-block .wc-block-components-checkout-step__title {
    color: #1a202c !important;
}

/* Fix WooCommerce Blocks Select Container Background (Country/State) */
.wc-blocks-components-select .wc-blocks-components-select__container {
    background-color: rgba(255, 255, 255, 0.02) !important;
    border-radius: 8px !important;
    position: relative !important;
}

/* Prevent duplicate arrows in country/region/state comboboxes and selects */
.wc-blocks-components-select select,
.wc-blocks-components-select .wc-blocks-components-select__select,
.wc-block-components-combobox select,
.wc-block-components-combobox input,
.wc-block-components-combobox__input,
.wc-block-components-country-input input,
.wc-block-components-country-input select,
.wc-block-components-state-input input,
.wc-block-components-state-input select,
.wc-block-components-select-input select,
.wc-block-checkout select,
body.woocommerce-checkout select,
body.woocommerce-page select {
    background-image: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
}

.wc-blocks-components-select .wc-blocks-components-select__select {
    color: #ffffff !important;
    background: transparent !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 8px !important;
    padding-right: 40px !important; /* Make room for the expand arrow */
}

.wc-blocks-components-select .wc-blocks-components-select__select:focus {
    border-color: #f7c64b !important;
    background-color: rgba(255, 255, 255, 0.04) !important;
    box-shadow: 0 0 8px rgba(247,198,75,0.15) !important;
    outline: none !important;
}

.wc-blocks-components-select .wc-blocks-components-select__label {
    top: 0 !important;
    left: 12px !important;
    transform: translateY(-50%) scale(0.9) !important;
    background-color: #0c0c0c !important; /* Matches dark theme background to cut the border */
    padding: 0 4px !important;
    color: #f7c64b !important;
    z-index: 5 !important;
    pointer-events: none !important;
}

/* Fix floating labels for Text Inputs (Material Outlined style) */
.wc-block-components-text-input label,
.wc-block-components-combobox label {
    top: 50% !important;
    transform: translateY(-50%) !important;
    left: 12px !important;
    font-size: 14px !important;
    pointer-events: none !important;
    transition: all 0.2s ease !important;
    color: rgba(255, 255, 255, 0.6) !important;
}

.wc-block-components-text-input.is-active label,
.wc-block-components-text-input input:-webkit-autofill + label,
.wc-block-components-combobox.is-active label {
    top: 0 !important;
    transform: translateY(-50%) scale(0.9) !important;
    background-color: #0c0c0c !important;
    padding: 0 4px !important;
    color: #f7c64b !important;
}

.wc-blocks-components-select .wc-blocks-components-select__expand {
    fill: #ffffff !important;
    pointer-events: none !important;
}

