/* ============================================================
   TourGuide.do — WooCommerce overrides
   Fix de contraste en botones de carrito, checkout y mi-cuenta
   ============================================================ */

:root {
    --tg-brand:    #c2da1c;
    --tg-primary:  #ff6b35;
    --tg-primary-dk: #e85a25;
    --tg-dark:     #1B1F1C;
    --tg-text:     #334155;
    --tg-light:    #f8fafc;
    --tg-border:   #e2e8f0;
    --tg-success:  #16a34a;
    --tg-error:    #dc2626;
}

/* ── BOTONES DE WOOCOMMERCE — Texto BLANCO sobre fondo naranja ─────────── */

/* Botón principal "Proceed to Checkout" del bloque Cart */
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button,
.wc-block-cart__submit-container .wc-block-cart__submit-button,
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button,
.wp-block-woocommerce-checkout-actions-block .wc-block-components-button {
    background-color: var(--tg-primary) !important;
    background:       var(--tg-primary) !important;
    color:            #ffffff !important;
    border:           0 !important;
    border-radius:    50px !important;
    padding:          14px 32px !important;
    font-weight:      700 !important;
    font-size:        1rem !important;
    text-transform:   none !important;
    letter-spacing:   normal !important;
    box-shadow:       0 4px 12px rgba(255, 107, 53, .25) !important;
    transition:       all .25s ease !important;
    line-height:      1.2 !important;
    min-height:       50px !important;
    display:          inline-flex !important;
    align-items:      center !important;
    justify-content: center !important;
    width:            100% !important;
    text-decoration:  none !important;
    cursor:           pointer !important;
}

/* Texto interno del botón (a veces WC usa span anidados) */
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button > span,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button .wc-block-components-button__text,
.wc-block-cart__submit-button > span,
.wc-block-cart__submit-button .wc-block-components-button__text,
.wc-block-components-checkout-place-order-button > span,
.wc-block-components-checkout-place-order-button .wc-block-components-button__text {
    color: #ffffff !important;
    font-weight: 700 !important;
    text-shadow: none !important;
}

/* Hover state */
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button:hover,
.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
    background-color: var(--tg-primary-dk) !important;
    color:            #ffffff !important;
    transform:        translateY(-2px) !important;
    box-shadow:       0 6px 18px rgba(255, 107, 53, .35) !important;
}

/* Botones secundarios (Apply coupon, Update cart, Add to cart) */
.woocommerce button.button:not(.wc-block-cart__submit-button):not(.wc-block-components-checkout-place-order-button),
.woocommerce a.button.alt,
.woocommerce input.button,
.wc-block-components-totals-coupon button {
    background-color: var(--tg-dark) !important;
    color:            #ffffff !important;
    border:           0 !important;
    border-radius:    50px !important;
    padding:          10px 20px !important;
    font-weight:      600 !important;
    text-transform:   none !important;
    transition:       all .2s ease !important;
}

.woocommerce button.button:hover,
.woocommerce a.button.alt:hover,
.woocommerce input.button:hover {
    background-color: #2a2f2b !important;
    color:            #ffffff !important;
}

/* Add to cart en single product */
.woocommerce .single-product div.product form.cart .button,
.wp-block-add-to-cart-form button,
.wc-block-components-product-button button {
    background-color: var(--tg-primary) !important;
    color:            #ffffff !important;
    border-radius:    50px !important;
    padding:          14px 28px !important;
    font-weight:      700 !important;
    border:           0 !important;
    box-shadow:       0 4px 12px rgba(255, 107, 53, .2) !important;
}

.woocommerce .single-product div.product form.cart .button:hover {
    background-color: var(--tg-primary-dk) !important;
}

/* ── MENSAJES Y NOTIFICACIONES ─────────────────────────────────────────── */
.woocommerce-message,
.wc-block-components-notice-banner.is-success {
    border-top-color: var(--tg-success) !important;
    background:       #f0fdf4 !important;
    color:            #1a4731 !important;
}

.woocommerce-info,
.wc-block-components-notice-banner.is-info {
    border-top-color: var(--tg-primary) !important;
    background:       #fff7ed !important;
    color:            #7c2d12 !important;
}

.woocommerce-error,
.wc-block-components-notice-banner.is-error {
    border-top-color: var(--tg-error) !important;
    background:       #fef2f2 !important;
    color:            #7f1d1d !important;
}

/* ── INPUTS (carrito y checkout) ──────────────────────────────────────── */
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.wc-block-components-text-input input,
.wc-block-components-checkbox__input + .wc-block-components-checkbox__mark + label,
.wc-block-components-totals-coupon__input input {
    border:        2px solid var(--tg-border) !important;
    border-radius: 8px !important;
    padding:       12px 14px !important;
    transition:    border-color .2s !important;
    font-size:     .95rem !important;
}

.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.wc-block-components-text-input input:focus {
    border-color: var(--tg-primary) !important;
    outline:      0 !important;
    box-shadow:   0 0 0 3px rgba(255, 107, 53, .15) !important;
}

/* ── PRECIOS ─────────────────────────────────────────────────────────── */
.woocommerce span.price,
.woocommerce-Price-amount,
.wc-block-components-product-price__value,
.wc-block-components-totals-item__value {
    color:       var(--tg-dark) !important;
    font-weight: 700 !important;
}

.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
    color:       var(--tg-primary) !important;
    font-size:   1.5rem !important;
}

/* ── HEADER DEL CART/CHECKOUT ─────────────────────────────────────────── */
.wc-block-cart__main h2,
.wc-block-checkout__main h2,
.wc-block-cart-items__header,
.wc-block-components-totals-wrapper h3,
.cart_totals h2 {
    color:        var(--tg-dark) !important;
    font-weight:  700 !important;
}

/* ── TABLA DE CARRITO ─────────────────────────────────────────────────── */
.woocommerce-cart-form table.shop_table {
    border:        1px solid var(--tg-border) !important;
    border-radius: 12px !important;
    overflow:      hidden !important;
}

.woocommerce-cart-form table.shop_table th {
    background:    var(--tg-light) !important;
    color:         var(--tg-dark) !important;
    font-weight:   700 !important;
}

/* ── CART TOTALS BOX ──────────────────────────────────────────────────── */
.cart_totals,
.wc-block-cart__sidebar,
.wp-block-woocommerce-cart-order-summary-block {
    background:    #fff !important;
    border:        1px solid var(--tg-border) !important;
    border-radius: 12px !important;
    padding:       24px !important;
    box-shadow:    0 4px 16px rgba(0,0,0,.04) !important;
}

/* ── CHECKBOX BOX (cupón) ─────────────────────────────────────────────── */
.wc-block-components-totals-coupon__button {
    background-color: var(--tg-dark) !important;
    color:            #fff !important;
    border-radius:    8px !important;
    padding:          10px 18px !important;
    font-weight:      600 !important;
    border:           0 !important;
}

/* ── TÍTULOS DE FORMULARIO CHECKOUT ────────────────────────────────────── */
.wc-block-checkout__form .wc-block-components-checkout-step__title,
.wc-block-components-title {
    color:       var(--tg-dark) !important;
    font-weight: 700 !important;
}

/* ── LINK "Add coupons" ────────────────────────────────────────────────── */
.wc-block-components-totals-coupon-link {
    color:           var(--tg-primary) !important;
    text-decoration: none !important;
    font-weight:     600 !important;
}

.wc-block-components-totals-coupon-link:hover {
    color:           var(--tg-primary-dk) !important;
    text-decoration: underline !important;
}

/* ── My Account ───────────────────────────────────────────────────────── */
.woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-MyAccount-navigation ul li a:hover {
    background-color: var(--tg-primary) !important;
    color:            #fff !important;
}

/* ── RADIO buttons (shipping, payment) ────────────────────────────────── */
.wc-block-components-radio-control__option {
    border:        1px solid var(--tg-border) !important;
    border-radius: 8px !important;
    padding:       12px 14px !important;
    margin:        8px 0 !important;
}

.wc-block-components-radio-control__option--checked {
    border-color: var(--tg-primary) !important;
    background:   #fff7ed !important;
}

/* ── FIX: visibilidad por defecto de TODO botón con clase wc ──────────── */
button.wc-block-components-button[disabled] {
    opacity: .5;
    cursor:  not-allowed;
}

/* Asegurar que NUNCA un botón quede invisible (texto color = bg color) */
.wc-block-components-button,
button.wc-block-components-button,
a.wc-block-components-button,
.wp-block-button .wp-element-button {
    color: inherit;
}

.wc-block-components-button.contained,
button.wc-block-components-button.contained,
.wp-block-woocommerce-proceed-to-checkout-block .wc-block-components-button.contained {
    background-color: var(--tg-primary) !important;
    color:            #ffffff !important;
}
