/* ==========================================================================
   Raver Antillas Tweaks: Color de link en tablas de WooCommerce
   ========================================================================== */

/* El tema Hello Elementor define en su reset.css un <a> violeta/rosa
   (rgb(204,51,102)) como default para cualquier link sin clase propia.
   WooCommerce genera varios links "pelados" con ese default sin combinar
   con el tema oscuro: nombre de producto en la tabla de "Order details",
   en la tabla de "Downloads" y en el listado "My orders" de la cuenta.
   (El menu cart del header ya tiene su propio override mas arriba en este
   archivo). No se toca el <a> global del sitio para no arriesgar romper
   links de Elementor con su propio color intencional en otras partes. */
.shop_table.order_details .product-name a,
.shop_table.order_details .download-product a,
.woocommerce-orders-table__cell-order-number a {
    color: #ffffff !important;
}

.shop_table.order_details .product-name a:hover,
.shop_table.order_details .download-product a:hover,
.woocommerce-orders-table__cell-order-number a:hover {
    color: var(--e-global-color-primary, #2ECC71) !important;
}

/* ==========================================================================
   Raver Antillas Tweaks: Base global de boton .antillas-btn-submit
   ========================================================================== */

/* Las variantes de este boton solo existian con un contenedor padre
   especifico (.antillas-direcciones-container, .antillas-auth-container,
   etc.) - en paginas donde se usa suelto, como la fila de acciones de
   My Profile (My Orders / My Addresses / Log Out), quedaba sin ningun
   estilo (link violeta pelado). Base global para que funcione en
   cualquier lado; las reglas con contenedor especifico de mas abajo
   siguen ganando por especificidad si necesitan alguna variante. */
.antillas-btn-submit {
    font-family: "Inter", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    background-color: var(--e-global-color-primary, #2ECC71) !important;
    border: none !important;
    border-radius: 0px !important;
    padding: 14px 30px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    display: inline-block !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
}

.antillas-btn-submit:hover {
    background-color: var(--e-global-color-accent, #27AE60) !important;
    color: #000000 !important;
}

/* ==========================================================================
   Raver Antillas Tweaks: Estilos Globales para Paneles de Cuenta y Autenticación
   ========================================================================== */

/* CAMPOS DE TEXTO TOTALMENTE CUADRADOS */
body .antillas-auth-container input[type="text"],
body .antillas-auth-container input[type="password"],
body .antillas-auth-container input[type="email"],
body .antillas-auth-container input.input,
body .woocommerce-EditAccountForm input.input-text,
body .woocommerce-EditAccountForm select,
body .woocommerce-EditAccountForm textarea {
    font-family: "Inter", sans-serif !important;
    background-color: #111111 !important;
    border: 1px solid #2a2a2a !important;
    border-radius: 0px !important;
    box-shadow: none !important;
    color: var(--e-global-color-text, #ffffff) !important;
    padding: 14px 20px !important;
    width: 100% !important;
    height: auto !important;
    font-size: 14px !important;
    box-sizing: border-box !important;
    display: block !important;
    transition: border-color 0.2s ease-in-out;
}

body .antillas-auth-container input:focus,
body .woocommerce-EditAccountForm input.input-text:focus {
    border-color: #3a3a3a !important;
    outline: none !important;
}

/* Etiquetas superiores */
body .antillas-auth-container label,
body .woocommerce-EditAccountForm label {
    font-family: "Inter", sans-serif !important;
    display: block !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--e-global-color-secondary, #888888) !important;
    margin-bottom: 6px !important;
    text-transform: none !important;
}

/* BOTONES MOCKUP PREMIUM (INTER + COLOR ELEMENTOR) */
body .antillas-auth-container .antillas-btn-submit,
body .antillas-auth-container button,
body .antillas-auth-container input[type="submit"],
body .antillas-auth-container .login-submit input,
body .woocommerce-EditAccountForm button.button,
body .woocommerce-orders-table .woocommerce-button.button {
    font-family: "Inter", sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    background-color: var(--e-global-color-primary, #2ECC71) !important;
    border: none !important;
    border-radius: 0px !important;
    padding: 14px 35px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    display: inline-block !important;
    height: auto !important;
    width: auto !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
}

/* Efecto Hover */
body .antillas-auth-container .antillas-btn-submit:hover,
body .antillas-auth-container button:hover,
body .antillas-auth-container input[type="submit"]:hover,
body .antillas-auth-container .login-submit input:hover,
body .woocommerce-EditAccountForm button.button:hover,
body .woocommerce-orders-table .woocommerce-button.button:hover {
    background-color: var(--e-global-color-accent, #27AE60) !important;
    color: #000000 !important;
}

/* Textos informativos y enlaces */
body .antillas-auth-container p,
body .antillas-register-notice,
body .lost-desc {
    font-family: "Inter", sans-serif !important;
    font-size: 13px !important;
    color: var(--e-global-color-secondary, #a0a0a0) !important;
    line-height: 1.6 !important;
    margin-bottom: 20px !important;
}

body .antillas-lost-password a,
body .antillas-auth-container .legal-link a,
body .woocommerce-privacy-policy-text .antillas-legal-link {
    font-family: "Inter", sans-serif !important;
    color: var(--e-global-color-primary, #2ECC71) !important;
    text-decoration: underline !important;
    transition: color 0.2s ease;
}

body .antillas-lost-password a:hover,
body .antillas-auth-container .legal-link a:hover,
body .woocommerce-privacy-policy-text .antillas-legal-link:hover {
    color: #ffffff !important;
}

body .antillas-form-group {
    margin-bottom: 20px !important;
    clear: both !important;
}

body .antillas-remember-label {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    font-weight: normal !important;
    cursor: pointer !important;
    font-family: "Inter", sans-serif !important;
    font-size: 13px !important;
    color: var(--e-global-color-secondary, #a0a0a0) !important;
}

/* Estilos de maquetación de los bloques internos */
.woocommerce-EditAccountForm {
    width: 100% !important;
    max-width: 100% !important;
}

.woocommerce-orders-table {
    border-radius: 0px !important;
    border: none !important;
    width: 100% !important;
}

.woocommerce-orders-table th {
    font-family: "Inter", sans-serif !important;
    background-color: transparent !important;
    border-bottom: 2px solid #2a2a2a !important;
    text-transform: uppercase;
    font-size: 12px !important;
    padding: 12px 10px !important;
    color: #a0a0a0 !important;
}

.woocommerce-orders-table td {
    font-family: "Inter", sans-serif !important;
    padding: 15px 10px !important;
    border-bottom: 1px solid #2a2a2a !important;
    background-color: #111111 !important;
    color: #ffffff !important;
    font-size: 14px !important;
}

/* Vista Detalles Pedido */
.woocommerce-order-details,
.woocommerce-customer-details,
.woocommerce-order-downloads {
    background-color: #111111 !important;
    border: 1px solid #2a2a2a !important;
    padding: 30px !important;
    margin-top: 30px !important;
}

.woocommerce-order-details__title,
.woocommerce-column__title {
    font-family: "Inter", sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    border-bottom: 1px solid #2a2a2a !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
}

/* Titulo "Downloads": en el color primario para diferenciarlo del resto de
   titulos (blancos) y darle jerarquia propia - es la seccion que mas le
   importa al cliente apenas termina de comprar. */
.woocommerce-order-downloads__title {
    font-family: "Inter", sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    color: var(--e-global-color-primary, #2ECC71) !important;
    border-bottom: 1px solid #2a2a2a !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
}

.shop_table.order_details {
    border: none !important;
    width: 100% !important;
}

.shop_table.order_details th {
    font-family: "Inter", sans-serif !important;
    border-bottom: 2px solid #2a2a2a !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    color: #a0a0a0 !important;
    padding: 12px 15px !important;
}

.shop_table.order_details td {
    font-family: "Inter", sans-serif !important;
    border-bottom: 1px solid #2a2a2a !important;
    padding: 15px !important;
    font-size: 14px !important;
    color: #ffffff !important;
}

.shop_table.order_details tfoot th {
    font-family: "Inter", sans-serif !important;
    border-bottom: 1px solid #2a2a2a !important;
    font-weight: 500;
    color: var(--e-global-color-secondary, #a0a0a0);
}

.shop_table.order_details tfoot td {
    font-family: "Inter", sans-serif !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    text-align: right !important;
}

/* Direcciones de facturacion/envio en la pagina de "gracias por tu compra":
   WooCommerce las renderiza en un <address> sin clase, que hereda el color
   de texto default del tema (gris oscuro pensado para fondo claro) y queda
   casi invisible sobre el fondo negro de la tarjeta. */
.woocommerce-customer-details address {
    font-family: "Inter", sans-serif !important;
    font-style: normal !important;
    color: #ffffff !important;
    line-height: 1.7 !important;
}

/* Vista Recuperar Contraseña Interna */
.antillas-lost-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    margin-bottom: 15px !important;
    border-bottom: 1px solid #2a2a2a !important;
    padding-bottom: 10px !important;
}

.antillas-lost-header h3 {
    font-family: "Inter", sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin: 0 !important;
}

.antillas-close-btn {
    font-size: 28px !important;
    font-weight: 300 !important;
    color: #999999 !important;
    cursor: pointer !important;
    line-height: 20px !important;
}

.antillas-close-btn:hover {
    color: #ffffff !important;
}

.woocommerce-error,
.woocommerce-message,
.woocommerce-info {
    position: relative !important;
    padding: 15px 20px 15px 48px !important;
    /* Aumentamos el padding izquierdo para dar espacio al icono */
    margin-bottom: 25px !important;
    list-style: none !important;
    font-size: 14px !important;
    border-radius: 0px !important;
}

/* Posicionar correctamente los iconos de WooCommerce a la izquierda sin que tapen el texto */
.woocommerce-error::before,
.woocommerce-message::before,
.woocommerce-info::before {
    font-family: "Inter", sans-serif !important;
    /* Usar fuente Inter para iconos unicode robustos */
    position: absolute !important;
    left: 18px !important;
    top: 15px !important;
    font-size: 15px !important;
    font-weight: bold !important;
    display: inline-block !important;
    line-height: 1 !important;
}

.woocommerce-error {
    background-color: #1a1a1a !important;
    border-left: 4px solid #ef4444 !important;
    color: var(--e-global-color-text, #ffffff) !important;
}

.woocommerce-error::before {
    content: "✕" !important;
    /* Aspa limpia para errores */
    color: #ef4444 !important;
}

.woocommerce-message {
    background-color: #1a1a1a !important;
    border-left: 4px solid #2ecc71 !important;
    color: var(--e-global-color-text, #ffffff) !important;
}

.woocommerce-message::before {
    content: "✓" !important;
    /* Checkmark limpio para éxito */
    color: #2ecc71 !important;
}

.woocommerce-info {
    background-color: #1a1a1a !important;
    border-left: 4px solid #5bc0de !important;
    color: var(--e-global-color-text, #ffffff) !important;
}

.woocommerce-info::before {
    content: "ℹ" !important;
    /* Icono de info limpio para cupones / avisos */
    color: #5bc0de !important;
}

/* Ocultar la contraseña actual ÚNICAMENTE a los usuarios nuevos detectados */
body.antillas-usuario-nuevo .woocommerce-EditAccountForm p:has(label[for="password_current"]),
body.antillas-usuario-nuevo .woocommerce-EditAccountForm .woocommerce-form-row-profile-password-current {
    display: none !important;
}

/* ==========================================================================
   Raver Antillas Tweaks: Finalización de Compra (Checkout)
   ========================================================================== */

/* CHECKOUT: CAMPOS DE TEXTO Y SELECCIÓN */
body .antillas-checkout-container input[type="text"],
body .antillas-checkout-container input[type="tel"],
body .antillas-checkout-container input[type="email"],
body .antillas-checkout-container input[type="password"],
body .antillas-checkout-container textarea,
body .antillas-checkout-container select,
body .antillas-checkout-container .select2-container--default .select2-selection--single {
    font-family: "Inter", sans-serif !important;
    background-color: #111111 !important;
    border: 1px solid #2a2a2a !important;
    border-radius: 0px !important;
    box-shadow: none !important;
    color: var(--e-global-color-text, #ffffff) !important;
    padding: 12px 18px !important;
    width: 100% !important;
    height: auto !important;
    font-size: 14px !important;
    box-sizing: border-box !important;
    display: block !important;
    transition: border-color 0.2s ease-in-out;
}

body .antillas-checkout-container .select2-container--default .select2-selection--single {
    height: 48px !important;
    padding-top: 10px !important;
}

body .antillas-checkout-container input:focus,
body .antillas-checkout-container textarea:focus,
body .antillas-checkout-container .select2-container--default.select2-container--open .select2-selection--single {
    border-color: #3a3a3a !important;
    outline: none !important;
}

/* Ajustes para Select2 desplegable y campos de búsqueda */
body .select2-dropdown {
    border-radius: 0px !important;
    border: 1px solid #2a2a2a !important;
    background-color: #111111 !important;
    font-family: "Inter", sans-serif !important;
}

body .select2-container--default .select2-search--dropdown .select2-search__field {
    border-radius: 0px !important;
    border: 1px solid #2a2a2a !important;
    background-color: #111111 !important;
    color: #ffffff !important;
}

body .select2-container--default .select2-results__option,
body .select2-container--default .select2-selection--single .select2-selection__rendered {
    background-color: #111111 !important;
    color: #ffffff !important;
}

body .select2-container--default .select2-results__option--highlighted[aria-selected] {
    background-color: var(--e-global-color-primary, #2ECC71) !important;
    color: #000000 !important;
}

/* Etiquetas */
body .antillas-checkout-container label {
    font-family: "Inter", sans-serif !important;
    display: block !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--e-global-color-secondary, #a0a0a0) !important;
    margin-bottom: 6px !important;
    text-transform: none !important;
}

/* Botones en Checkout */
body .antillas-checkout-container button,
body .antillas-checkout-container input[type="submit"],
body .antillas-checkout-container .button,
body .antillas-checkout-empty .antillas-btn-submit {
    font-family: "Inter", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    background-color: var(--e-global-color-primary, #2ECC71) !important;
    border: none !important;
    border-radius: 0px !important;
    padding: 14px 35px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    display: inline-block !important;
    text-align: center !important;
    height: auto !important;
    width: auto !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
    text-decoration: none !important;
}

body .antillas-checkout-container button:hover,
body .antillas-checkout-container input[type="submit"]:hover,
body .antillas-checkout-container .button:hover,
body .antillas-checkout-empty .antillas-btn-submit:hover {
    background-color: var(--e-global-color-accent, #27AE60) !important;
    color: #000000 !important;
}

/* ==========================================================================
   Raver Antillas Tweaks: Layout del Checkout (2 columnas + titulos)
   ========================================================================== */

/* Titulos de seccion (Billing details / Additional information / Your order)
   en el color primario en vez del gris oscuro default */
body .antillas-checkout-container h3 {
    color: var(--e-global-color-primary, #2ECC71) !important;
    font-family: "Inter", sans-serif !important;
    font-weight: 700 !important;
}

/* "Billing details" y "Additional information" apilados, no lado a lado:
   con solo notas del pedido en la segunda columna quedaba un hueco vacio */
body .antillas-checkout-container .col2-set,
body .antillas-checkout-container .col2-set .col-1,
body .antillas-checkout-container .col2-set .col-2 {
    width: 100% !important;
    float: none !important;
}

body .antillas-checkout-container .col2-set .col-2 {
    margin-top: 30px !important;
}

/* Grid de 2 columnas: formulario a la izquierda, resumen del pedido fijo
   (sticky) a la derecha en una tarjeta, como un checkout moderno */
body .antillas-checkout-container form.checkout {
    display: grid !important;
    grid-template-columns: 1fr 400px;
    gap: 40px;
    align-items: start;
}

body .antillas-checkout-container #customer_details {
    grid-column: 1;
    grid-row: 1 / span 2;
}

body .antillas-checkout-container #order_review_heading {
    grid-column: 2;
    grid-row: 1;
    margin-top: 0 !important;
}

body .antillas-checkout-container #order_review {
    grid-column: 2;
    grid-row: 2;
    background-color: #111111 !important;
    border: 1px solid #2a2a2a !important;
    border-radius: 16px !important;
    padding: 30px !important;
    position: sticky;
    top: 20px;
}

@media (max-width: 900px) {
    body .antillas-checkout-container form.checkout {
        grid-template-columns: 1fr;
    }

    body .antillas-checkout-container #order_review_heading,
    body .antillas-checkout-container #order_review {
        grid-column: 1;
        position: static;
    }
}

/* ==========================================================================
   Raver Antillas Tweaks: Pasarela de Pagos (Payment Methods)
   ========================================================================== */

/* Espaciado interno para dar un respiro al contenido de la caja de costos */
.woocommerce-checkout-review-order {
    margin-bottom: 25px !important;
    padding: 0 !important;
}

/* Simular padding interno en el elemento <table> (ya que un table nativo no acepta padding) */
.woocommerce-checkout-review-order-table th:first-child,
.woocommerce-checkout-review-order-table td:first-child {
    padding-left: 25px !important;
    /* Espacio en el borde izquierdo */
}

.woocommerce-checkout-review-order-table th:last-child,
.woocommerce-checkout-review-order-table td:last-child {
    padding-right: 25px !important;
    /* Espacio en el borde derecho */
}

/* Espaciado extra en la parte superior del primer elemento y en la parte inferior del último */
.woocommerce-checkout-review-order-table tr:first-child th,
.woocommerce-checkout-review-order-table tr:first-child td {
    padding-top: 25px !important;
}

.woocommerce-checkout-review-order-table tr:last-child th,
.woocommerce-checkout-review-order-table tr:last-child td {
    padding-bottom: 25px !important;
}

/* Estilizar la tabla del resumen del pedido para que sea limpia y elegante */
.woocommerce-checkout-review-order-table {
    border: none !important;
    width: 100% !important;
    border-collapse: collapse !important;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
    border-bottom: 1px solid #2a2a2a !important;
    padding: 15px 0 !important;
    font-family: "Inter", sans-serif !important;
}

.woocommerce-checkout-review-order-table th {
    text-transform: uppercase !important;
    font-size: 12px !important;
    color: #a0a0a0 !important;
    font-weight: 500 !important;
    text-align: left !important;
}

.woocommerce-checkout-review-order-table td {
    font-size: 14px !important;
    color: var(--e-global-color-text, #ffffff) !important;
    text-align: right !important;
}

.woocommerce-checkout-review-order-table td.product-name {
    text-align: left !important;
}

.woocommerce-checkout-review-order-table td.product-name .product-quantity {
    color: var(--e-global-color-secondary, #a0a0a0) !important;
    font-weight: 400 !important;
}

.woocommerce-checkout-review-order-table tbody tr:hover td {
    background-color: rgba(255, 255, 255, 0.02) !important;
}

.woocommerce-checkout-review-order-table .order-total th {
    border-bottom: 1px solid #2a2a2a !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: #ffffff !important;
    text-align: left !important;
}

.woocommerce-checkout-review-order-table .order-total td {
    border-bottom: 1px solid #2a2a2a !important;
    font-weight: 600 !important;
    font-size: 16px !important;
    color: #ffffff !important;
    text-align: right !important;
}

/* #payment trae por defecto de WooCommerce un fondo lila semitransparente
   pensado para tema claro (rgba(129,110,153,.14)) que se nota como un parche
   sobre fondo oscuro y se extiende hasta el boton de Place Order */
.woocommerce-checkout #payment,
.woocommerce-checkout-payment {
    background: transparent !important;
    border-radius: 0 !important;
}

/* Contenedor principal de métodos de pago */
.woocommerce-checkout #payment ul.payment_methods {
    padding: 0 !important;
    margin: 0 0 25px 0 !important;
    list-style: none !important;
    border: none !important;
}

/* Cada opción de pago - integrada sin separadores o fondos individuales */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
    background: transparent !important;
    border: none !important;
    padding: 12px 0 !important;
    margin: 0 !important;
    list-style: none !important;
}

/* Evitar bordes o fondos en el elemento activo */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(input[type="radio"]:checked) {
    border: none !important;
    background-color: transparent !important;
}

/* Alinear radio e input horizontalmente */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input[type="radio"] {
    display: inline-block !important;
    vertical-align: middle !important;
    margin: 0 10px 0 0 !important;
    cursor: pointer !important;
    width: 18px !important;
    height: 18px !important;
    accent-color: var(--e-global-color-primary, #2ECC71) !important;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method label {
    display: inline-block !important;
    /* Sobrescribir el display: block !important global */
    vertical-align: middle !important;
    font-family: "Inter", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin: 0 !important;
    cursor: pointer !important;
    text-transform: none !important;
}

/* Caja de descripción del método seleccionado: transparente para que se
   funda con el fondo de la tarjeta de "Your order", no un parche de otro color */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method .payment_box {
    margin: 10px 0 4px 28px !important;
    /* Indentar para alinear con el texto del label */
    padding: 12px 0 12px 15px !important;
    background-color: transparent !important;
    border-left: 3px solid var(--e-global-color-primary, #2ECC71) !important;
    border-top: none !important;
    border-right: none !important;
    border-bottom: none !important;
    border-radius: 0px !important;
    font-size: 13px !important;
    color: var(--e-global-color-secondary, #a0a0a0) !important;
    line-height: 1.6 !important;
    box-shadow: none !important;
    width: auto !important;
    /* Evitar que se desborde hacia la derecha */
    float: none !important;
    clear: both !important;
}

/* Ocultar triángulo/flecha que pone WooCommerce por defecto en las descripciones */
.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method .payment_box::before {
    display: none !important;
}

/* Stripe Payment Element: es un iframe cross-origin, no se puede re-skinear
   con CSS propio. El plugin de Stripe arma su propio tema ("appearance")
   leyendo en JS el color de fondo real de #order_review/.payment_box y el
   background/color reales del input #billing_first_name (ver
   woocommerce-gateway-stripe/build/upe-classic.js, funcion et()). Como esos
   elementos ya son oscuros (fondo #111111, texto #ffffff), el iframe ya
   calcula un tema oscuro consistente con el resto del sitio: no forzar un
   fondo blanco aca, porque el iframe interno igual se pinta oscuro y solo
   generaba un marco blanco con cajas oscuras adentro (mezcla rota). Dejarlo
   transparente para que se funda con el fondo oscuro de #order_review. */
.woocommerce-checkout .wc-stripe-upe-element {
    background-color: transparent !important;
    border-radius: 8px !important;
    box-sizing: border-box !important;
}

/* WooCommerce/Stripe generan varios <fieldset> sin clase dentro de #payment
   (el que envuelve el Payment Element, el del checkbox "Save payment
   information", etc.) que traen el borde nativo del navegador sin resetear
   (2px groove, gris claro) - se ve como un marco blanco feo sobre fondo
   oscuro. Quitarlo de cualquier fieldset dentro del area de pago. */
.woocommerce-checkout #payment fieldset {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.woocommerce-checkout .wc-stripe-payment-method-instruction {
    margin-bottom: 12px !important;
    border-radius: 10px !important;
    overflow: hidden;
}

/* Términos de privacidad y botón de confirmación */
.woocommerce-checkout #payment .form-row.place-order {
    padding: 15px 0 0 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
}

.woocommerce-checkout #payment .woocommerce-privacy-policy-text {
    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    color: #a0a0a0 !important;
    line-height: 1.6 !important;
    margin-bottom: 20px !important;
}

.woocommerce-checkout #payment .woocommerce-privacy-policy-text a {
    color: var(--e-global-color-primary, #2ECC71) !important;
    text-decoration: underline !important;
}

.woocommerce-checkout #payment .woocommerce-privacy-policy-text a:hover {
    color: #ffffff !important;
}

/* Correcciones generales de checkboxes del checkout (como "Enviar a una dirección diferente") */
body .antillas-checkout-container label.checkbox,
body .antillas-checkout-container .woocommerce-form__label-for-checkbox,
body .antillas-checkout-container #ship-to-different-address label {
    display: flex !important;
    /* Forzar alineación flexible en una sola línea */
    align-items: center !important;
    gap: 10px !important;
    cursor: pointer !important;
    text-transform: none !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    color: #ffffff !important;
    margin-bottom: 15px !important;
}

body .antillas-checkout-container #ship-to-different-address label {
    font-size: 16px !important;
    /* Mayor tamaño para el encabezado de dirección alternativa */
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    margin-bottom: 0 !important;
}

body .antillas-checkout-container label.checkbox input[type="checkbox"],
body .antillas-checkout-container .woocommerce-form__label-for-checkbox input[type="checkbox"],
body .antillas-checkout-container #ship-to-different-address input[type="checkbox"] {
    display: inline-block !important;
    position: static !important;
    /* Elimina posiciones absolutas que puedan pisarse */
    margin: 0 !important;
    width: 18px !important;
    height: 18px !important;
    flex-shrink: 0 !important;
    accent-color: var(--e-global-color-primary, #2ECC71) !important;
}


/* Mensaje de carrito vacío y checkout vacío */
.antillas-checkout-empty,
.antillas-carrito-empty {
    text-align: left !important;
    padding: 40px 0 !important;
}

.antillas-checkout-empty h2,
.antillas-carrito-empty h2 {
    font-family: "Inter", sans-serif !important;
    font-size: 26px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin-bottom: 15px !important;
}

.antillas-checkout-empty p,
.antillas-carrito-empty p {
    font-family: "Inter", sans-serif !important;
    font-size: 14px !important;
    color: var(--e-global-color-secondary, #a0a0a0) !important;
    margin-bottom: 25px !important;
}

/* ==========================================================================
   Raver Antillas Tweaks: Carrito de Compra (Cart)
   ========================================================================== */

/* TABLA DE CARRITO Y CONTENIDOS */
body .antillas-carrito-container table.shop_table.cart {
    border-radius: 0px !important;
    border: none !important;
    width: 100% !important;
    margin-bottom: 30px !important;
}

body .antillas-carrito-container table.shop_table.cart th {
    font-family: "Inter", sans-serif !important;
    background-color: transparent !important;
    border-bottom: 2px solid #2a2a2a !important;
    text-transform: uppercase;
    font-size: 12px !important;
    padding: 12px 10px !important;
    color: #a0a0a0 !important;
}

body .antillas-carrito-container table.shop_table.cart td {
    font-family: "Inter", sans-serif !important;
    padding: 20px 10px !important;
    border-bottom: 1px solid #2a2a2a !important;
    background-color: #111111 !important;
    font-size: 14px !important;
    color: var(--e-global-color-text, #ffffff) !important;
}

/* CAMPOS DE TEXTO E INPUTS EN CARRITO */
body .antillas-carrito-container input[type="text"],
body .antillas-carrito-container .quantity input.qty {
    font-family: "Inter", sans-serif !important;
    background-color: #0A0A0A !important;
    border: 1px solid #2a2a2a !important;
    border-radius: 0px !important;
    box-shadow: none !important;
    color: var(--e-global-color-text, #ffffff) !important;
    padding: 10px 15px !important;
    height: 42px !important;
    font-size: 14px !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s ease-in-out;
}

body .antillas-carrito-container .quantity input.qty {
    width: 60px !important;
    text-align: center !important;
    padding: 5px !important;
}

body .antillas-carrito-container input[type="text"]:focus {
    border-color: #3a3a3a !important;
    outline: none !important;
}

/* BOTONES EN CARRITO */
body .antillas-carrito-container button,
body .antillas-carrito-container input[type="submit"],
body .antillas-carrito-container .button,
body .antillas-carrito-container a.button {
    font-family: "Inter", sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    background-color: var(--e-global-color-primary, #2ECC71) !important;
    border: none !important;
    border-radius: 0px !important;
    padding: 12px 25px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    display: inline-block !important;
    text-align: center !important;
    height: auto !important;
    width: auto !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
    text-decoration: none !important;
}

body .antillas-carrito-container button:hover,
body .antillas-carrito-container input[type="submit"]:hover,
body .antillas-carrito-container .button:hover,
body .antillas-carrito-container a.button:hover {
    background-color: var(--e-global-color-accent, #27AE60) !important;
    color: #000000 !important;
}

/* Botón "Aplicar cupón" secundario */
body .antillas-carrito-container .actions .coupon button.button {
    background-color: var(--e-global-color-secondary, #888888) !important;
    color: #000000 !important;
}

body .antillas-carrito-container .actions .coupon button.button:hover {
    background-color: #6b7280 !important;
}

/* SECCIÓN TOTALES DEL CARRITO (CART COLLATERALS) */
body .antillas-carrito-container .cart-collaterals {
    background-color: #111111 !important;
    border: 1px solid #2a2a2a !important;
    padding: 30px !important;
    margin-top: 30px !important;
    width: 100% !important;
    max-width: 480px !important;
    float: right !important;
    box-sizing: border-box !important;
}

body .antillas-carrito-container .cart-collaterals h2 {
    font-family: "Inter", sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    border-bottom: 1px solid #2a2a2a !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
    text-transform: uppercase !important;
}

body .antillas-carrito-container .cart-collaterals .shop_table {
    width: 100% !important;
    border: none !important;
}

body .antillas-carrito-container .cart-collaterals .shop_table th {
    font-family: "Inter", sans-serif !important;
    text-align: left !important;
    padding: 12px 0 !important;
    border-bottom: 1px solid #2a2a2a !important;
    font-weight: 500 !important;
    color: var(--e-global-color-secondary, #a0a0a0) !important;
    font-size: 14px !important;
}

body .antillas-carrito-container .cart-collaterals .shop_table td {
    font-family: "Inter", sans-serif !important;
    text-align: right !important;
    padding: 12px 0 !important;
    border-bottom: 1px solid #2a2a2a !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    font-size: 14px !important;
}

body .antillas-carrito-container .wc-proceed-to-checkout {
    padding-top: 20px !important;
    text-align: right !important;
}

body .antillas-carrito-container .wc-proceed-to-checkout a.checkout-button {
    font-size: 14px !important;
    padding: 14px 35px !important;
    width: 100% !important;
    display: block !important;
    box-sizing: border-box !important;
}

/* ==========================================================================
   Raver Antillas Tweaks: Menu Cart (widget nativo de Elementor Pro)
   El dropdown/drawer que se abre al hacer click en el icono del carrito del
   header viene con el tema claro por defecto de Elementor Pro, sin heredar
   nada del tema oscuro del sitio.
   ========================================================================== */

.elementor-menu-cart__container {
    background-color: rgba(0, 0, 0, 0.6) !important;
}

.elementor-menu-cart__main {
    background-color: #111111 !important;
    color: #ffffff !important;
    border-left: 1px solid #2a2a2a !important;
}

.elementor-menu-cart__close-button {
    color: #ffffff !important;
    fill: #ffffff !important;
}

.elementor-menu-cart__products-empty-message {
    color: #a0a0a0 !important;
    font-family: "Inter", sans-serif !important;
}

.elementor-menu-cart__product {
    border-bottom: 1px solid #2a2a2a !important;
    background-color: transparent !important;
}

.elementor-menu-cart__product-name a {
    color: #ffffff !important;
    font-family: "Inter", sans-serif !important;
    font-weight: 600 !important;
}

.elementor-menu-cart__product-name a:hover {
    color: var(--e-global-color-primary, #2ECC71) !important;
}

.elementor-menu-cart__product-price,
.elementor-menu-cart__product-price .amount,
.elementor-menu-cart__product-price .quantity {
    color: #a0a0a0 !important;
}

.elementor-menu-cart__product a.remove {
    color: #a0a0a0 !important;
    border-color: #2a2a2a !important;
}

.elementor-menu-cart__product a.remove:hover {
    color: #ffffff !important;
    background-color: #e74c3c !important;
}

.elementor-menu-cart__subtotal {
    color: #ffffff !important;
    font-family: "Inter", sans-serif !important;
    border-top: 1px solid #2a2a2a !important;
}

.elementor-menu-cart__subtotal .amount {
    color: var(--e-global-color-primary, #2ECC71) !important;
    font-weight: 700 !important;
}

.elementor-menu-cart__footer-buttons a.elementor-button {
    font-family: "Inter", sans-serif !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    border-radius: 0px !important;
    box-shadow: none !important;
}

.elementor-menu-cart__footer-buttons a.elementor-button--view-cart {
    background-color: transparent !important;
    color: #ffffff !important;
    border: 1px solid #2a2a2a !important;
}

.elementor-menu-cart__footer-buttons a.elementor-button--view-cart:hover {
    border-color: #ffffff !important;
}

.elementor-menu-cart__footer-buttons a.elementor-button--checkout {
    background-color: var(--e-global-color-primary, #2ECC71) !important;
    color: #000000 !important;
}

.elementor-menu-cart__footer-buttons a.elementor-button--checkout:hover {
    background-color: var(--e-global-color-accent, #27AE60) !important;
}

/* ==========================================================================
   Raver Antillas Tweaks: Direcciones del Usuario
   ========================================================================== */

/* Contenedor principal */
.antillas-direcciones-container {
    font-family: "Inter", sans-serif !important;
    margin: 20px 0 !important;
    width: 100% !important;
}

/* Tarjeta de estado vacío (Empty State) */
.antillas-direcciones-empty-card {
    background-color: #111111 !important;
    border: 1px solid #2a2a2a !important;
    padding: 50px 40px !important;
    text-align: center !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2) !important;
    max-width: 750px !important;
    margin: 0 auto !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    box-sizing: border-box !important;
}

.antillas-empty-icon-wrapper {
    background-color: rgba(46, 204, 113, 0.1) !important;
    color: var(--e-global-color-primary, #2ECC71) !important;
    width: 90px !important;
    height: 90px !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-bottom: 25px !important;
    box-shadow: 0 4px 15px rgba(46, 204, 113, 0.15) !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease !important;
}

.antillas-direcciones-empty-card:hover .antillas-empty-icon-wrapper {
    transform: translateY(-5px) !important;
    box-shadow: 0 8px 25px rgba(46, 204, 113, 0.25) !important;
}

.antillas-empty-icon {
    width: 42px !important;
    height: 42px !important;
}

.antillas-empty-title {
    font-size: 24px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin-bottom: 12px !important;
    font-family: "Inter", sans-serif !important;
}

.antillas-empty-description {
    font-size: 14px !important;
    color: var(--e-global-color-secondary, #a0a0a0) !important;
    max-width: 520px !important;
    line-height: 1.6 !important;
    margin-bottom: 30px !important;
    font-family: "Inter", sans-serif !important;
}

.antillas-empty-actions {
    display: flex !important;
    gap: 15px !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
}

/* Botones en contenedor de direcciones */
body .antillas-direcciones-container .antillas-btn-submit {
    font-family: "Inter", sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    background-color: var(--e-global-color-primary, #2ECC71) !important;
    border: none !important;
    border-radius: 0px !important;
    padding: 14px 30px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    display: inline-block !important;
    text-align: center !important;
    text-decoration: none !important;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
}

body .antillas-direcciones-container .antillas-btn-submit:hover {
    background-color: var(--e-global-color-accent, #27AE60) !important;
    color: #000000 !important;
}

/* Botón secundario premium */
body .antillas-direcciones-container .antillas-btn-secondary {
    background-color: transparent !important;
    color: var(--e-global-color-primary, #2ECC71) !important;
    border: 2px solid var(--e-global-color-primary, #2ECC71) !important;
    padding: 12px 28px !important;
    /* adjust for 2px border */
}

body .antillas-direcciones-container .antillas-btn-secondary:hover {
    background-color: var(--e-global-color-primary, #2ECC71) !important;
    color: #000000 !important;
}

/* Panel unificado de Direcciones (mismo diseño que los otros bloques) */
.antillas-direcciones-panel {
    background-color: transparent !important;
    border: none !important;
    padding: 0 !important;
    margin-top: 20px !important;
    box-sizing: border-box !important;
}

/* Grid de dos columnas */
.antillas-direcciones-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 20px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

@media (max-width: 768px) {
    .antillas-direcciones-grid {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
}

.antillas-direccion-col {
    background-color: #111111 !important;
    border: 1px solid #2a2a2a !important;
    padding: 30px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15) !important;
    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease !important;
    display: flex !important;
    flex-direction: column !important;
    box-sizing: border-box !important;
}

.antillas-direccion-col:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.3) !important;
    border-color: var(--e-global-color-primary, #2ECC71) !important;
}

/* Encabezados y títulos de direcciones alineados */
.antillas-direccion-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border-bottom: 1px solid #2a2a2a !important;
    padding-bottom: 12px !important;
    margin-bottom: 20px !important;
}

.antillas-direccion-title {
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    font-family: "Inter", sans-serif !important;
}

.antillas-title-icon {
    color: var(--e-global-color-primary, #2ECC71) !important;
    display: flex !important;
    align-items: center !important;
}

/* Enlaces de Editar / Agregar */
.antillas-direccion-action-link {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--e-global-color-primary, #2ECC71) !important;
    text-decoration: underline !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: color 0.2s ease !important;
}

.antillas-direccion-action-link:hover {
    color: #ffffff !important;
}

.antillas-direccion-body {
    flex-grow: 1 !important;
}

.antillas-address-content {
    font-style: normal !important;
    font-size: 14px !important;
    color: var(--e-global-color-secondary, #a0a0a0) !important;
    line-height: 1.8 !important;
    font-family: "Inter", sans-serif !important;
}

.antillas-address-placeholder {
    color: #6b7280 !important;
    font-style: italic !important;
    display: block !important;
    padding: 10px 0 !important;
}

/* ==========================================================================
   Raver Antillas Tweaks: Formulario de Edición de Dirección Inline
   ========================================================================== */

/* Contenedor del Formulario de Edición */
.antillas-edit-address-wrapper {
    background-color: #111111 !important;
    border: 1px solid #2a2a2a !important;
    padding: 40px 30px !important;
    margin-top: 20px !important;
    box-sizing: border-box !important;
}

/* Botón de volver */
.antillas-btn-back {
    font-family: "Inter", sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--e-global-color-primary, #2ECC71) !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 25px !important;
    transition: color 0.2s ease !important;
}

.antillas-btn-back:hover {
    color: #ffffff !important;
}

.antillas-btn-back svg {
    transition: transform 0.2s ease !important;
}

.antillas-btn-back:hover svg {
    transform: translateX(-4px) !important;
}

.antillas-direccion-edit-title {
    font-size: 20px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    margin: 0 0 30px 0 !important;
    border-bottom: 1px solid #2a2a2a !important;
    padding-bottom: 15px !important;
    font-family: "Inter", sans-serif !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

/* Inputs de WooCommerce en el formulario de dirección */
body .woocommerce-address-fields input.input-text,
body .woocommerce-address-fields select,
body .woocommerce-address-fields textarea,
body .woocommerce-address-fields .select2-container--default .select2-selection--single {
    font-family: "Inter", sans-serif !important;
    background-color: #0A0A0A !important;
    border: 1px solid #2a2a2a !important;
    border-radius: 0px !important;
    box-shadow: none !important;
    color: var(--e-global-color-text, #ffffff) !important;
    padding: 14px 20px !important;
    width: 100% !important;
    height: auto !important;
    font-size: 14px !important;
    box-sizing: border-box !important;
    display: block !important;
    transition: border-color 0.2s ease-in-out;
}

body .woocommerce-address-fields .select2-container--default .select2-selection--single {
    height: 48px !important;
    padding-top: 10px !important;
}

body .woocommerce-address-fields input.input-text:focus,
body .woocommerce-address-fields select:focus,
body .woocommerce-address-fields textarea:focus,
body .woocommerce-address-fields .select2-container--default.select2-container--open .select2-selection--single {
    border-color: #3a3a3a !important;
    outline: none !important;
}

/* Etiquetas (Labels) */
body .woocommerce-address-fields label {
    font-family: "Inter", sans-serif !important;
    display: block !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--e-global-color-secondary, #a0a0a0) !important;
    margin-bottom: 6px !important;
    text-transform: none !important;
}

/* Botón de Guardar Dirección */
body .woocommerce-address-fields button.button,
body .woocommerce-address-fields input[type="submit"] {
    font-family: "Inter", sans-serif !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    background-color: var(--e-global-color-primary, #2ECC71) !important;
    border: none !important;
    border-radius: 0px !important;
    padding: 14px 35px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    display: inline-block !important;
    height: auto !important;
    width: auto !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out;
}

body .woocommerce-address-fields button.button:hover,
body .woocommerce-address-fields input[type="submit"]:hover {
    background-color: var(--e-global-color-accent, #27AE60) !important;
    color: #000000 !important;
}

/* ==========================================================================
   Raver Woo: Tema Oscuro para Shortcodes de Login y Registro
   ========================================================================== */

/* INPUTS - Fondo oscuro y esquinas redondeadas */
body .antillas-auth-container input[type="text"],
body .antillas-auth-container input[type="password"],
body .antillas-auth-container input[type="email"],
body .antillas-auth-container input.antillas-input-field {
    background-color: #111111 !important;
    border: 1px solid #2a2a2a !important;
    border-radius: 12px !important;
    color: #e5e7eb !important;
    padding: 18px 20px !important;
    font-size: 15px !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

/* Placeholder */
body .antillas-auth-container input[type="text"]::placeholder,
body .antillas-auth-container input[type="password"]::placeholder,
body .antillas-auth-container input[type="email"]::placeholder {
    color: #4b4b4b !important;
}

/* Focus state */
body .antillas-auth-container input[type="text"]:focus,
body .antillas-auth-container input[type="password"]:focus,
body .antillas-auth-container input[type="email"]:focus,
body .antillas-auth-container input.antillas-input-field:focus {
    border-color: #3a3a3a !important;
    box-shadow: 0 0 0 3px rgba(46, 204, 113, 0.12) !important;
    outline: none !important;
}

/* LABELS - Uppercase pequeños en gris */
body .antillas-auth-container label:not(.antillas-remember-label) {
    color: #8a8a8a !important;
    text-transform: uppercase !important;
    letter-spacing: 0.8px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    margin-bottom: 10px !important;
}

/* BOTÓN SUBMIT - Verde brillante, ancho completo, redondeado */
body .antillas-auth-container .antillas-btn-submit,
body .antillas-auth-container input[type="submit"],
body .antillas-auth-container .login-submit input,
body .antillas-auth-container button[type="submit"] {
    background-color: var(--e-global-color-primary, #2ecc71) !important;
    color: #000000 !important;
    border-radius: 12px !important;
    width: 100% !important;
    padding: 18px 35px !important;
    font-size: 17px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    box-shadow: 0 4px 20px rgba(46, 204, 113, 0.25) !important;
    display: block !important;
    box-sizing: border-box !important;
    transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.1s ease;
}

body .antillas-auth-container .antillas-btn-submit:hover,
body .antillas-auth-container input[type="submit"]:hover,
body .antillas-auth-container .login-submit input:hover,
body .antillas-auth-container button[type="submit"]:hover {
    background-color: var(--e-global-color-primary, #27ae60) !important;
    color: #000000 !important;
    box-shadow: 0 6px 25px rgba(46, 204, 113, 0.35) !important;
    transform: translateY(-1px);
}

body .antillas-auth-container .antillas-btn-submit:active,
body .antillas-auth-container input[type="submit"]:active {
    transform: translateY(0px);
    box-shadow: 0 2px 10px rgba(46, 204, 113, 0.2) !important;
}

/* Espaciado entre campos */
body .antillas-auth-container .antillas-form-group {
    margin-bottom: 22px !important;
}

/* Texto de aviso del formulario de registro */
body .antillas-auth-container .antillas-register-notice,
body .antillas-auth-container .lost-desc {
    color: #8a8a8a !important;
    font-size: 13px !important;
    line-height: 1.6 !important;
    margin-bottom: 20px !important;
}

/* Política de privacidad / legal link en registro */
body .antillas-auth-container .legal-link,
body .antillas-auth-container .legal-link p,
body .antillas-auth-container .woocommerce-privacy-policy-text {
    color: #6b7280 !important;
    font-size: 12px !important;
    line-height: 1.6 !important;
}

body .antillas-auth-container .legal-link a,
body .antillas-auth-container .woocommerce-privacy-policy-text a {
    color: var(--e-global-color-primary, #2ecc71) !important;
    text-decoration: underline !important;
    font-weight: 600 !important;
}

/* Enlace "Forgot your password?" */
body .antillas-auth-container .antillas-lost-password a {
    color: var(--e-global-color-primary, #2ecc71) !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    transition: opacity 0.2s ease;
}

body .antillas-auth-container .antillas-lost-password a:hover {
    color: var(--e-global-color-primary, #2ecc71) !important;
    opacity: 0.75;
}

/* "Remember me" label */
body .antillas-auth-container .antillas-remember-label {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    line-height: 1 !important;
    color: #8a8a8a !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
}

/* Custom checkbox */
body .antillas-auth-container input[type="checkbox"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    background: #111111 !important;
    border: 1.5px solid #3a3a3a !important;
    border-radius: 6px !important;
    cursor: pointer !important;
    position: relative !important;
    transition: background-color 0.2s ease, border-color 0.2s ease !important;
    padding: 0 !important;
    margin: 0 !important;
    vertical-align: middle !important;
    flex-shrink: 0 !important;
    align-self: center !important;
}

body .antillas-auth-container input[type="checkbox"]:checked {
    background-color: var(--e-global-color-primary, #2ecc71) !important;
    border-color: var(--e-global-color-primary, #2ecc71) !important;
}

body .antillas-auth-container input[type="checkbox"]:checked::after {
    content: '' !important;
    display: block !important;
    width: 5px !important;
    height: 9px !important;
    border: 2px solid #000000 !important;
    border-top: none !important;
    border-left: none !important;
    position: absolute !important;
    top: 3px !important;
    left: 6px !important;
    transform: rotate(42deg) !important;
    box-sizing: border-box !important;
}

body .antillas-auth-container input[type="checkbox"]:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(46, 204, 113, 0.15) !important;
}

/* Mensajes de error / éxito con tema oscuro dentro del formulario de auth */
body .antillas-auth-container .woocommerce-error,
body .antillas-auth-container .woocommerce-message,
body .antillas-auth-container .woocommerce-info {
    background-color: #1a1a1a !important;
    border: none !important;
    border-radius: 10px !important;
    color: #ffffff !important;
    padding: 14px 18px 14px 22px !important;
    margin-bottom: 20px !important;
    font-size: 14px !important;
    font-family: "Inter", sans-serif !important;
    list-style: none !important;
    box-shadow: none !important;
}

/* Error: borde izquierdo rojo */
body .antillas-auth-container .woocommerce-error {
    border-left: 3px solid #ef4444 !important;
}

/* Éxito: borde izquierdo verde */
body .antillas-auth-container .woocommerce-message {
    border-left: 3px solid #2ecc71 !important;
}

/* Quitar el ícono ":before" que añade WooCommerce por defecto */
body .antillas-auth-container .woocommerce-error::before,
body .antillas-auth-container .woocommerce-message::before,
body .antillas-auth-container .woocommerce-info::before {
    display: none !important;
}

/* Texto dentro de li / p */
body .antillas-auth-container .woocommerce-error li,
body .antillas-auth-container .woocommerce-error p,
body .antillas-auth-container .woocommerce-message li,
body .antillas-auth-container .woocommerce-message p {
    color: #ffffff !important;
    font-size: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    background: none !important;
}

/* ==========================================================================
   Raver Antillas Tweaks: Descargas del Cliente (shortcode raver_woo_downloads)
   La tabla que renderiza myaccount/downloads.php usa las mismas clases
   "shop_table order_details" que la tabla de un pedido puntual (no una
   clase "my_account_downloads" propia como se podria suponer) - hereda
   automaticamente los estilos de la seccion "Vista Detalles Pedido" mas
   arriba en este archivo (padding, colores). Solo hace falta la tarjeta
   contenedora y el boton de descarga, que WooCommerce pinta con su violeta
   default (mismo problema que los links de nombre de producto). */

body .antillas-downloads-container {
    background-color: #111111 !important;
    border: 1px solid #2a2a2a !important;
    padding: 30px !important;
}

body .antillas-downloads-container .woocommerce-MyAccount-downloads-file {
    font-family: "Inter", sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #000000 !important;
    background-color: var(--e-global-color-primary, #2ECC71) !important;
    border: none !important;
    border-radius: 0px !important;
    padding: 10px 20px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    text-decoration: none !important;
    display: inline-block !important;
}

body .antillas-downloads-container .woocommerce-MyAccount-downloads-file:hover {
    background-color: var(--e-global-color-accent, #27AE60) !important;
    color: #000000 !important;
}

/* Estado vacío: "You have not made any downloadable product purchases yet." */
body .antillas-downloads-container p {
    font-family: "Inter", sans-serif !important;
    color: #a0a0a0 !important;
}

/* ==========================================================================
   Raver Antillas Tweaks: Licencias del Cliente (shortcode raver_woo_licencias)
   ========================================================================== */

body .antillas-licenses-container {
    background-color: #111111 !important;
    border: 1px solid #2a2a2a !important;
    padding: 30px !important;
}

body .antillas-licenses-container p {
    font-family: "Inter", sans-serif !important;
    color: #a0a0a0 !important;
}

body .antillas-licenses-container table.antillas-licenses-table {
    width: 100% !important;
    border: none !important;
    border-collapse: collapse !important;
}

body .antillas-licenses-container table.antillas-licenses-table th {
    font-family: "Inter", sans-serif !important;
    border-bottom: 2px solid #2a2a2a !important;
    font-size: 12px !important;
    text-transform: uppercase !important;
    color: #a0a0a0 !important;
    padding: 12px 15px !important;
    text-align: left !important;
}

body .antillas-licenses-container table.antillas-licenses-table td {
    font-family: "Inter", sans-serif !important;
    border-bottom: 1px solid #2a2a2a !important;
    padding: 15px !important;
    font-size: 14px !important;
    color: #ffffff !important;
    vertical-align: middle !important;
}

body .antillas-licenses-container table.antillas-licenses-table code {
    background-color: #1a1a1a !important;
    border: 1px solid #2a2a2a !important;
    color: var(--e-global-color-primary, #2ECC71) !important;
    padding: 4px 8px !important;
    font-size: 13px !important;
    border-radius: 0px !important;
    white-space: nowrap !important;
}

/* Botón secundario/outline: "Deactivate" no es una acción primaria como
   Download o View, y es semi-destructiva (corta el vínculo con la máquina
   activa) - se lo diferencia con un estilo más discreto que el botón
   primario verde sólido, con rojo solo al hacer hover como advertencia. */
body .antillas-licenses-container .antillas-btn-outline {
    font-family: "Inter", sans-serif !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #ffffff !important;
    background-color: transparent !important;
    border: 1px solid #2a2a2a !important;
    border-radius: 0px !important;
    padding: 8px 16px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    cursor: pointer !important;
    transition: border-color 0.2s ease-in-out, color 0.2s ease-in-out;
}

body .antillas-licenses-container .antillas-btn-outline:hover {
    border-color: #ef4444 !important;
    color: #ef4444 !important;
}


