/*
 Theme Name:   Astra Child
 Theme URI:    https://taller.bullsandbears.school/
 Description:  Theme child de Astra para Bulls and Bears School. Permite sobreescribir templates de WooCommerce sin perder cambios al actualizar Astra.
 Author:       Bulls and Bears School
 Author URI:   https://taller.bullsandbears.school/
 Template:     astra
 Version:      1.1.0
 License:      GNU General Public License v2 or later
 License URI:  https://www.gnu.org/licenses/gpl-2.0.html
 Text Domain:  astra-child
*/


/* ============================================================
 * PAGINAS WOOCOMMERCE - REDEFINICION DE VARIABLES ASTRA
 * Estrategia: cambiar las variables CSS que Astra usa para
 * pintar fondos claros, solo en paginas WooCommerce.
 * ============================================================ */

body.woocommerce-page,
body.woocommerce {
    /* Variables principales de color */
    --ast-global-color-2: #F9FAFB;  /* Titulos: blanco brillante */
    --ast-global-color-3: #E5E7EB;  /* Texto cuerpo: blanco suave */
    --ast-global-color-7: rgba(255, 255, 255, 0.08); /* Bordes sutiles */
    --ast-border-color: rgba(255, 255, 255, 0.08);
    --ast-global-color-secondary: rgba(255, 255, 255, 0.03);

    /* Variables que Astra usa para fondos claros - reemplazadas */
    --ast-global-dark-lfs: rgba(255, 255, 255, 0.05);
    --ast-wc-container-head-bg-color: rgba(255, 255, 255, 0.05);
    --ast-widget-bg-color: rgba(255, 255, 255, 0.03);
    --ast-comment-inputs-background: rgba(255, 255, 255, 0.05);
    --ast-title-layout-bg: rgba(255, 255, 255, 0.05);
    --ast-code-block-background: rgba(255, 255, 255, 0.05);
}


/* ============================================================
 * TITULO DEL PRODUCTO Y BREADCRUMBS
 * ============================================================ */

body.woocommerce-page .product_title,
body.woocommerce-page h1.entry-title {
    color: #F9FAFB;
    font-weight: 700;
}

body.woocommerce-page .woocommerce-breadcrumb,
body.woocommerce-page .woocommerce-breadcrumb a {
    color: #9CA3AF;
}

body.woocommerce-page .woocommerce-breadcrumb a:hover {
    color: #5AA7FF;
}

body.woocommerce-page .single-product-category a {
    color: #5AA7FF;
    text-decoration: none;
}


/* ============================================================
 * PRECIO DESTACADO
 * ============================================================ */

body.woocommerce-page p.price,
body.woocommerce-page .woocommerce-Price-amount {
    color: #EFB810;
    font-size: 28px;
    font-weight: 700;
}

body.woocommerce-page p.price .woocommerce-Price-currencySymbol {
    color: #EFB810;
}


/* ============================================================
 * DESCRIPCION CORTA
 * ============================================================ */

body.woocommerce-page .woocommerce-product-details__short-description,
body.woocommerce-page .woocommerce-product-details__short-description p {
    color: #E5E7EB;
    line-height: 1.7;
}


/* ============================================================
 * STOCK / DISPONIBILIDAD
 * ============================================================ */

body.woocommerce-page .ast-stock-detail,
body.woocommerce-page .ast-stock-avail {
    color: #9CA3AF;
}

body.woocommerce-page .stock.in-stock {
    color: #3DDC84;
    font-weight: 600;
}


/* ============================================================
 * CANTIDAD INPUT
 * ============================================================ */

body.woocommerce-page .quantity input.qty {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #F9FAFB;
    border-radius: 8px;
    padding: 10px;
}


/* ============================================================
 * BOTON ANADIR AL CARRITO Y BOTONES PRINCIPALES
 * ============================================================ */

body.woocommerce-page .single_add_to_cart_button,
body.woocommerce-page button.button.alt,
body.woocommerce-page .woocommerce-button.button,
body.woocommerce-page .checkout-button.button,
body.woocommerce-page .wc-proceed-to-checkout .checkout-button {
    background: #2F80ED;
    color: #FFFFFF;
    font-weight: 600;
    padding: 14px 32px;
    border-radius: 18px;
    border: none;
    box-shadow: 0 8px 20px rgba(47, 128, 237, 0.25);
    transition: all 0.2s ease;
}

body.woocommerce-page .single_add_to_cart_button:hover,
body.woocommerce-page button.button.alt:hover,
body.woocommerce-page .woocommerce-button.button:hover,
body.woocommerce-page .checkout-button.button:hover,
body.woocommerce-page .wc-proceed-to-checkout .checkout-button:hover {
    background: #1E60C7;
    box-shadow: 0 10px 25px rgba(47, 128, 237, 0.4);
    transform: translateY(-1px);
    color: #FFFFFF;
}


/* ============================================================
 * META DEL PRODUCTO (SKU, Categoria, Etiquetas)
 * ============================================================ */

body.woocommerce-page .product_meta {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    padding-top: 20px;
    margin-top: 20px;
    color: #9CA3AF;
}

body.woocommerce-page .product_meta span {
    display: block;
    margin-bottom: 8px;
    color: #9CA3AF;
}

body.woocommerce-page .product_meta a {
    color: #5AA7FF;
    text-decoration: none;
}

body.woocommerce-page .product_meta a:hover {
    color: #2F80ED;
}

body.woocommerce-page .sku {
    color: #E5E7EB;
}


/* ============================================================
 * TABS (Descripcion, Informacion adicional, etc.)
 * ============================================================ */

body.woocommerce-page .woocommerce-tabs ul.tabs {
    border-bottom: 1px solid rgba(255, 255, 255, 0.10);
    padding: 0;
    margin-bottom: 20px;
}

body.woocommerce-page .woocommerce-tabs ul.tabs li {
    background: transparent;
    border: none;
    border-bottom: 2px solid transparent;
    margin: 0 5px 0 0;
    border-radius: 0;
}

body.woocommerce-page .woocommerce-tabs ul.tabs li.active {
    background: transparent;
    border-bottom-color: #2F80ED;
}

body.woocommerce-page .woocommerce-tabs ul.tabs li a {
    color: #9CA3AF;
    font-weight: 600;
    padding: 12px 20px;
}

body.woocommerce-page .woocommerce-tabs ul.tabs li.active a,
body.woocommerce-page .woocommerce-tabs ul.tabs li:hover a {
    color: #F9FAFB;
}

body.woocommerce-page .woocommerce-Tabs-panel,
body.woocommerce-page .woocommerce-Tabs-panel p,
body.woocommerce-page .woocommerce-Tabs-panel li {
    color: #E5E7EB;
    line-height: 1.7;
}

body.woocommerce-page .woocommerce-Tabs-panel h2,
body.woocommerce-page .woocommerce-Tabs-panel h3,
body.woocommerce-page .woocommerce-Tabs-panel h4 {
    color: #F9FAFB;
    margin-top: 25px;
    margin-bottom: 12px;
}

body.woocommerce-page .woocommerce-Tabs-panel strong {
    color: #F9FAFB;
}


/* ============================================================
 * NOTICES / AVISOS DE WOOCOMMERCE
 * ============================================================ */

body.woocommerce-page .woocommerce-message,
body.woocommerce-page .woocommerce-info,
body.woocommerce-page .woocommerce-notice {
    background: rgba(47, 128, 237, 0.10);
    color: #E5E7EB;
    border-left: 4px solid #2F80ED;
    padding: 14px 20px;
    border-radius: 8px;
}

body.woocommerce-page .woocommerce-message a,
body.woocommerce-page .woocommerce-info a {
    color: #5AA7FF;
    font-weight: 600;
}

body.woocommerce-page .woocommerce-error {
    background: rgba(220, 38, 38, 0.10);
    color: #FCA5A5;
    border-left: 4px solid #DC2626;
    padding: 14px 20px;
    border-radius: 8px;
}


/* ============================================================
 * GALERIA DE IMAGENES DEL PRODUCTO
 * ============================================================ */

body.woocommerce-page .woocommerce-product-gallery img {
    border-radius: 12px;
}


/* ============================================================
 * TABLAS DE WOOCOMMERCE (carrito, totales, mi cuenta)
 * ============================================================ */

body.woocommerce-page table.shop_table {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    color: #E5E7EB;
}

body.woocommerce-page table.shop_table th {
    color: #F9FAFB;
    font-weight: 700;
    padding: 14px;
}

body.woocommerce-page table.shop_table td {
    color: #E5E7EB;
    border-color: rgba(255, 255, 255, 0.05);
    padding: 14px;
}

body.woocommerce-page table.shop_table a {
    color: #5AA7FF;
    text-decoration: none;
}

body.woocommerce-page table.shop_table a:hover {
    color: #2F80ED;
}


/* ============================================================
 * CARRITO ESPECIFICO - HEADERS Y TOTAL
 * ============================================================ */

body.woocommerce-cart table.shop_table thead th,
body.woocommerce-cart table.shop_table_responsive thead th {
    color: #F9FAFB;
    border-bottom: 1px solid rgba(255, 255, 255, 0.10);
}

body.woocommerce-cart .cart_totals,
body.woocommerce-cart .cart-collaterals .cart_totals {
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 12px;
    overflow: hidden;
}

body.woocommerce-cart .cart_totals h2,
body.woocommerce-cart .cart-collaterals .cart_totals > h2,
body.woocommerce-cart .cart-collaterals .cross-sells > h2 {
    color: #F9FAFB;
    font-weight: 700;
    border-bottom: 1px solid rgba(255, 255, 255, 0.10);
}

body.woocommerce-cart .cart_totals table .order-total .woocommerce-Price-amount {
    color: #EFB810;
    font-size: 22px;
    font-weight: 700;
}

body.woocommerce-cart .coupon label {
    color: #E5E7EB;
}

body.woocommerce-cart .coupon input[type="text"] {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #F9FAFB;
    border-radius: 8px;
    padding: 10px 14px;
}

body.woocommerce-cart table.shop_table img {
    border-radius: 8px;
    max-width: 80px;
}

body.woocommerce-cart table.shop_table .product-remove a.remove {
    color: #FCA5A5;
    background: rgba(220, 38, 38, 0.15);
    border-radius: 50%;
    width: 26px;
    height: 26px;
    line-height: 24px;
    display: inline-block;
    text-align: center;
    font-weight: 700;
    text-decoration: none;
}

body.woocommerce-cart table.shop_table .product-remove a.remove:hover {
    background: #DC2626;
    color: #FFFFFF;
}


/* ============================================================
 * PAGINA "MI CUENTA"
 * ============================================================ */

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

body.woocommerce-account .woocommerce-MyAccount-navigation li {
    background: rgba(255, 255, 255, 0.03);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 8px;
    margin-bottom: 8px;
    padding: 0;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li a {
    color: #E5E7EB;
    display: block;
    padding: 12px 18px;
    text-decoration: none;
    transition: all 0.2s ease;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active {
    background: rgba(47, 128, 237, 0.15);
    border-color: #2F80ED;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
body.woocommerce-account .woocommerce-MyAccount-navigation li:hover a {
    color: #F9FAFB;
}


/* ============================================================
 * FORMULARIOS DE CHECKOUT Y ACCOUNT
 * ============================================================ */

body.woocommerce-page form .form-row label {
    color: #E5E7EB;
    font-weight: 500;
}

body.woocommerce-page form .form-row input,
body.woocommerce-page form .form-row textarea,
body.woocommerce-page form .form-row select,
body.woocommerce-page form input[type="text"],
body.woocommerce-page form input[type="email"],
body.woocommerce-page form input[type="tel"],
body.woocommerce-page form input[type="password"] {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #F9FAFB;
    border-radius: 8px;
    padding: 12px 14px;
}

body.woocommerce-page form .form-row input:focus,
body.woocommerce-page form .form-row textarea:focus,
body.woocommerce-page form .form-row select:focus {
    border-color: #2F80ED;
    background: rgba(255, 255, 255, 0.08);
    outline: none;
}

body.woocommerce-page .select2-container--default .select2-selection--single {
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: #F9FAFB;
    border-radius: 8px;
    height: 44px;
    padding: 8px;
}

body.woocommerce-page .select2-container--default .select2-selection--single .select2-selection__rendered {
    color: #F9FAFB;
    line-height: 28px;
}


/* ============================================================
 * METODOS DE PAGO EN CHECKOUT
 * ============================================================ */

body.woocommerce-checkout #payment {
    background: rgba(255, 255, 255, 0.03);
    border-radius: 12px;
    padding: 20px;
}

body.woocommerce-checkout #payment ul.payment_methods {
    background: transparent;
    border: none;
    padding: 0;
}

body.woocommerce-checkout #payment ul.payment_methods li {
    color: #E5E7EB;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    padding: 12px 0;
}

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

body.woocommerce-checkout #payment ul.payment_methods li label {
    color: #F9FAFB;
    font-weight: 600;
}

body.woocommerce-checkout #payment .payment_box {
    background: rgba(47, 128, 237, 0.08);
    color: #E5E7EB;
    border-radius: 8px;
    padding: 14px;
    margin-top: 8px;
}


/* ============================================================
 * PAGINA TIENDA / CATALOGO
 * ============================================================ */

body.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
    color: #F9FAFB;
}

body.woocommerce-page ul.products li.product .price {
    color: #EFB810;
}

body.woocommerce-page .woocommerce-result-count,
body.woocommerce-page .woocommerce-ordering select {
    color: #9CA3AF;
}


/* ============================================================
 * BOTON "VOLVER A LA TIENDA" Y BOTONES SECUNDARIOS
 * ============================================================ */

body.woocommerce-page .return-to-shop .button,
body.woocommerce-page .button.wc-backward {
    background: rgba(255, 255, 255, 0.05);
    color: #E5E7EB;
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 18px;
    padding: 12px 24px;
}

body.woocommerce-page .return-to-shop .button:hover {
    background: rgba(255, 255, 255, 0.10);
    color: #F9FAFB;
}


/* ============================================================
 * FIX V1.1 - TITULOS H1/H2/H3 EN CARRITO Y CHECKOUT
 * Razon: los selectores anteriores cubrian solo .product_title
 * y dejaban los titulos de carrito/checkout/secciones con el
 * color por defecto de Astra (gris fantasmal sobre fondo oscuro).
 * ============================================================ */

/* Titulos H1 de paginas WooCommerce (Carrito, Checkout, Mi Cuenta, Tienda) */
body.woocommerce-page h1.entry-title,
body.woocommerce-page .page-title,
body.woocommerce-cart h1.entry-title,
body.woocommerce-cart .page-title,
body.woocommerce-checkout h1.entry-title,
body.woocommerce-checkout .page-title,
body.woocommerce-account h1.entry-title,
body.woocommerce-account .page-title,
body.archive.woocommerce h1.entry-title,
body.archive.woocommerce .page-title {
    color: #F9FAFB !important;
    font-weight: 700;
}

/* Titulos H2 dentro de bloques WC (Total del carrito, Productos relacionados, etc.) */
body.woocommerce-page .cart_totals h2,
body.woocommerce-page .cross-sells h2,
body.woocommerce-page .upsells h2,
body.woocommerce-page .related h2,
body.woocommerce-page .woocommerce > h2 {
    color: #F9FAFB !important;
    font-weight: 700;
}

/* Titulos H3 de secciones del checkout (Detalles de facturacion, Tu pedido) */
body.woocommerce-checkout h3,
body.woocommerce-checkout #order_review_heading,
body.woocommerce-checkout .woocommerce-billing-fields > h3,
body.woocommerce-checkout .woocommerce-shipping-fields > h3,
body.woocommerce-checkout .woocommerce-additional-fields > h3 {
    color: #F9FAFB !important;
    font-weight: 700;
    border-bottom: 1px solid rgba(255, 255, 255, 0.10);
    padding-bottom: 10px;
    margin-bottom: 20px;
}

/* Filas internas de la tabla "Total del carrito" - Subtotal, IVA, Envio */
body.woocommerce-cart .cart_totals table th,
body.woocommerce-cart .cart_totals table td,
body.woocommerce-cart .cart_totals .cart-subtotal th,
body.woocommerce-cart .cart_totals .cart-subtotal td,
body.woocommerce-cart .cart_totals .order-total th,
body.woocommerce-cart .cart_totals .order-total td {
    color: #E5E7EB !important;
}

body.woocommerce-cart .cart_totals .order-total th {
    color: #F9FAFB !important;
    font-weight: 700;
}

/* Tabla "Tu pedido" en checkout - filas y totales */
body.woocommerce-checkout table.shop_table th,
body.woocommerce-checkout table.shop_table td {
    color: #E5E7EB !important;
}

body.woocommerce-checkout table.shop_table tfoot th,
body.woocommerce-checkout table.shop_table tfoot .order-total th {
    color: #F9FAFB !important;
    font-weight: 700;
}

/* Texto descriptivo del producto (parrafo bajo el precio) */
body.woocommerce-page .woocommerce-product-details__short-description {
    color: #E5E7EB !important;
}

body.woocommerce-page .woocommerce-product-details__short-description p {
    color: #E5E7EB !important;
    line-height: 1.7;
}

/* Texto generico dentro de paginas WC que pueda quedar en gris por defecto */
body.woocommerce-page .woocommerce-info,
body.woocommerce-page .cart-empty,
body.woocommerce-page .return-to-shop {
    color: #E5E7EB;
}

/* Aviso de cupon en checkout (?Tienes un cupon?) - mejorar contraste */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
    background: rgba(47, 128, 237, 0.10);
    color: #E5E7EB !important;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a {
    color: #5AA7FF !important;
    font-weight: 600;
}

/* ============================================================
 * FIX V1.2 - OCULTAR ICONOS DE NOTICES WOOCOMMERCE
 * Razon: la fuente de iconos de WooCommerce no carga bien
 * y muestra cuadrados vacios. El color de fondo + texto ya
 * comunica el tipo de aviso (azul=info, verde=exito, rojo=error).
 * Estetica mas limpia y moderna sin iconos.
 * ============================================================ */

body.woocommerce-page .woocommerce-message::before,
body.woocommerce-page .woocommerce-info::before,
body.woocommerce-page .woocommerce-error::before,
body.woocommerce-page .woocommerce-noreviews::before,
body.woocommerce-page p.no-comments::before {
    display: none !important;
}