﻿/*
Theme Name: UA Minimal
Theme URI: https://uniformactivities.com
Author: Uniform Activities
Description: Minimal theme inspired by clean fashion retail. WooCommerce compatible.
Version: 2.3.1
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 8.0
License: GNU General Public License v2 or later
Text Domain: ua-minimal
*/

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600&display=swap');

/* ============================================================ RESET */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
    --white:#ffffff;--off-white:#f9f9f7;--black:#0a0a0a;
    --g100:#f4f4f2;--g200:#ebebea;--g400:#c4c4c0;--g600:#888884;
    --border:#e6e6e2;--brand-red:#cc1212;--font:'Inter',system-ui,sans-serif;
    --maxw:1440px;--hh:60px;--r:4px;
    --ease:cubic-bezier(.25,.1,.25,1);--eout:cubic-bezier(0,0,.2,1);
}
html{font-size:16px;-webkit-font-smoothing:antialiased}
body{font-family:var(--font);color:var(--black);background:var(--white);line-height:1.55}
a{color:inherit;text-decoration:none}
a:hover{opacity:.65}
img{display:block;max-width:100%;height:auto}
ul{list-style:none}

/* Mantener legible la pestaña persistente que reabre Complianz. */
#cmplz-manage-consent .cmplz-manage-consent{
    bottom:0 !important;
    animation:none !important;
}

/* ============================================================ HEADER */
.site-header{
    position:sticky;top:0;z-index:900;height:var(--hh);
    background:rgba(255,255,255,.95);
    backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
    border-bottom:1px solid var(--border);
    transition:box-shadow .3s var(--ease);
}
.site-header.scrolled{box-shadow:0 4px 24px rgba(0,0,0,.07)}
.header-inner{
    max-width:var(--maxw);margin:0 auto;height:100%;
    display:grid;grid-template-columns:1fr auto 1fr;
    align-items:center;padding:0 2rem;
}
/* nav left */
.header-nav-left{display:flex;gap:2rem}
.header-nav-left a,.header-actions a{
    font-size:.68rem;font-weight:500;letter-spacing:.12em;
    text-transform:uppercase;color:var(--black);
    display:flex;align-items:center;gap:.35rem;
    transition:opacity .2s;position:relative;
}
.header-nav-left a::after,.header-actions a::after{
    content:'';position:absolute;bottom:-2px;left:0;
    width:0;height:1px;background:var(--black);
    transition:width .28s var(--eout);
}
.header-nav-left a:hover,.header-actions a:hover{opacity:1}
.header-nav-left a:hover::after,.header-actions a:hover::after{width:100%}
/* logo */
.site-branding{display:flex;justify-content:center}
.site-branding a{display:flex;align-items:center;transition:opacity .2s}
.site-branding a:hover{opacity:.7}
.site-branding img{height:38px;width:auto}
.site-title-text{font-size:.82rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase}
/* actions */
.header-actions{display:flex;justify-content:flex-end;gap:1.5rem;align-items:center}
.header-actions a{gap:.4rem}
.header-actions svg{display:block;flex-shrink:0}
.header-cart{position:relative}
.header-lang{
    display:flex;align-items:center;justify-content:center;
    padding:.22rem;border:1px solid var(--border);border-radius:999px;background:var(--white);
}
.header-lang .ua-lang-switcher{position:relative}
.header-lang .ua-lang-switcher[open]{z-index:20}
.header-lang .ua-lang-switcher__summary{
    list-style:none;display:inline-flex;align-items:center;gap:.55rem;cursor:pointer;
    padding:.28rem .65rem .28rem .48rem;border-radius:999px;user-select:none;
    font-size:.54rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
    color:var(--g600);background:transparent;border:1px solid transparent;text-decoration:none;
}
.header-lang .ua-lang-switcher__summary::-webkit-details-marker{display:none}
.header-lang .ua-lang-switcher__summary:hover{background:var(--g100);color:var(--black)}
.header-lang .ua-lang-switcher[open] .ua-lang-switcher__summary{background:var(--black);color:var(--white)}
.header-lang .ua-lang-switcher__summary::after,
.header-lang .ua-lang-switcher__link::after{content:none !important;display:none !important}
.ua-lang-switcher__current{display:inline-flex;align-items:center;gap:.35rem;white-space:nowrap}
.ua-lang-switcher__chevron{width:.65rem;height:.4rem;flex-shrink:0;transition:transform .2s var(--ease)}
.ua-lang-switcher[open] .ua-lang-switcher__chevron{transform:rotate(180deg)}
.ua-lang-switcher__menu{
    position:absolute;top:calc(100% + .45rem);right:0;min-width:100%;width:100%;
    display:none;flex-direction:column;gap:.2rem;padding:.35rem;border:1px solid var(--border);
    border-radius:.9rem;background:var(--white);box-shadow:0 18px 50px rgba(0,0,0,.08);
}
.ua-lang-switcher[open] .ua-lang-switcher__menu{display:flex}
.header-lang .ua-lang-switcher__link{
    display:inline-flex;align-items:center;gap:.45rem;width:100%;
    padding:.42rem .5rem;border-radius:.65rem;
    font-size:.54rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
    color:var(--g600);background:transparent;border:1px solid transparent;text-decoration:none;
    transition:background .2s var(--ease),color .2s var(--ease),border-color .2s var(--ease),transform .15s var(--ease);
}
.header-lang .ua-lang-switcher__link:hover{opacity:1;background:var(--g100);color:var(--black)}
.header-lang .ua-lang-switcher__link.is-active{background:var(--black);color:var(--white)}
.ua-flag-icon{display:block;width:1.05rem;height:auto;border-radius:999px;overflow:hidden;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.cart-count{
    position:absolute;top:-8px;right:-10px;
    background:var(--black);color:var(--white);
    font-size:.55rem;font-weight:600;border-radius:50%;
    min-width:16px;height:16px;padding:0 3px;
    display:flex;align-items:center;justify-content:center;
}
@media (max-width:600px){
    .header-actions a span{display:none}
    .header-actions{gap:1.1rem}
}

/* ============================================================ HOMEPAGE — HERO PRODUCTS */
/* Stage: full-bleed beach background */
.hero-stage{
    position:relative;
    width:100%;
    min-height:calc(100vh - var(--hh));
    display:flex;
    align-items:center;
    justify-content:center;
    padding:2.75rem 2rem;
    background:#bfe3ea url('assets/beach-bg.jpg') center center / cover no-repeat;
    background-attachment:fixed;
}
/* soft veil so white cards + text stay legible over the photo */
.hero-stage::before{
    content:'';
    position:absolute;inset:0;
    background:linear-gradient(180deg,rgba(255,255,255,.10) 0%,rgba(255,255,255,.28) 100%);
    pointer-events:none;z-index:0;
}

.hero-products{
    position:relative;z-index:1;
    display:grid;
    gap:1.6rem;
    width:100%;
    max-width:var(--maxw);
    margin:0 auto;
    height:min(760px, calc(100vh - var(--hh) - 5.5rem));
}
/* layout según cantidad de productos */
.hero-count-1{grid-template-columns:minmax(0,460px);justify-content:center}
.hero-count-2{grid-template-columns:repeat(2,1fr)}
.hero-count-3{grid-template-columns:repeat(3,1fr)}
.hero-count-4{grid-template-columns:repeat(2,1fr)}
.hero-count-5,.hero-count-6{grid-template-columns:repeat(3,1fr)}

/* the floating "rectangles" (garment cards) */
.hero-product{
    display:flex;
    flex-direction:column;
    height:100%;
    background:rgba(255,255,255,.94);
    -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);
    border-radius:10px;
    overflow:hidden;
    box-shadow:0 14px 44px rgba(20,40,60,.22);
    transition:transform .32s var(--eout),box-shadow .32s var(--eout);
}
.hero-product:hover{
    transform:translateY(-7px);
    box-shadow:0 22px 60px rgba(20,40,60,.30);
}

.hero-product-media{
    position:relative;
    display:block;
    flex:1;
    overflow:hidden;
    background:var(--g100);
    min-height:0;
}
.hero-product-media img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center top;
    transition:transform .7s var(--eout);
}
.hero-product:hover .hero-product-media img{transform:scale(1.05)}
.hero-product-media:hover{opacity:1}

.hero-badge{
    position:absolute;top:1.1rem;left:1.1rem;
    background:var(--black);color:var(--white);
    font-size:.55rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;
    padding:.35rem .7rem;z-index:2;border-radius:2px;
}

/* info block */
.hero-product-info{
    flex-shrink:0;
    padding:1.35rem 1.4rem 1.6rem;
    text-align:center;
    background:transparent;
    border-top:1px solid var(--border);
}
.hero-product-name{
    font-size:.72rem;font-weight:500;letter-spacing:.08em;
    text-transform:uppercase;line-height:1.4;margin-bottom:.45rem;
}
.hero-product-name a:hover{opacity:.6}
.hero-product-price{
    font-size:.8rem;color:var(--g600);margin-bottom:1rem;
}
.hero-product-price .woocommerce-Price-amount{font-size:inherit}
.hero-product-price del{opacity:.5;margin-right:.4rem}
.hero-product-price ins{text-decoration:none}

/* add to cart — always visible, prominent */
.hero-add-btn{
    display:inline-block;
    width:100%;
    max-width:280px;
    padding:.9rem 1.5rem;
    background:var(--black);color:var(--white);
    font-size:.65rem;font-weight:600;letter-spacing:.18em;
    text-transform:uppercase;text-align:center;
    border-radius:2px;
    transition:background .2s var(--ease),transform .15s var(--ease);
}
.hero-add-btn:hover{background:#2a2a2a;opacity:1;transform:translateY(-1px)}
.hero-add-btn.added{background:#2a7a4a}
.hero-add-btn.loading{opacity:.6;pointer-events:none}
.hero-add-btn--buy-now{background:var(--g100);color:var(--black);border:1px solid var(--border)}
.hero-add-btn--buy-now:hover{background:var(--white);transform:translateY(-1px)}
.hero-add-btn.is-soldout{background:var(--white);color:var(--g600);border:1px solid var(--border)}
.hero-add-btn.is-soldout:hover{background:var(--g100);transform:none}

.ua-buy-now-button{
    display:inline-flex;align-items:center;justify-content:center;
    margin-top:.85rem;margin-left:.7rem;padding:1rem 2.2rem;
    background:var(--g100) !important;color:var(--black) !important;
    border:1px solid var(--border) !important;border-radius:2px !important;
    font-size:.68rem !important;font-weight:600 !important;letter-spacing:.15em !important;
    text-transform:uppercase !important;transition:background .2s var(--ease),transform .15s var(--ease);
}
.ua-buy-now-button:hover{background:var(--white) !important;transform:translateY(-1px)}

/* out of stock — keep image at full quality, only the badge/button signal it */
.hero-badge--out{background:var(--g600)}

/* ============================================================ INNER PAGES */
.site-main{max-width:var(--maxw);margin:0 auto;padding:3rem 2rem}

/* ============================================================ WOOCOMMERCE ARCHIVE */
.woocommerce ul.products{
    display:grid !important;grid-template-columns:repeat(4,1fr) !important;
    gap:1.5rem !important;margin:0 !important;padding:0 !important;background:transparent !important;
}
.woocommerce ul.products li.product{
    background:var(--white) !important;margin:0 !important;padding:0 !important;
    float:none !important;width:auto !important;border:none !important;
    border-radius:var(--r) !important;overflow:hidden !important;position:relative;
}
.woocommerce ul.products li.product a img{
    aspect-ratio:3/4;object-fit:cover;
    transition:transform .5s var(--eout) !important;
}
.woocommerce ul.products li.product:hover a img{transform:scale(1.04) !important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
    font-family:var(--font) !important;font-size:.7rem !important;font-weight:500 !important;
    letter-spacing:.06em !important;text-transform:uppercase !important;
    padding:.8rem .75rem .2rem !important;color:var(--black) !important;
}
.woocommerce ul.products li.product .price{
    font-size:.75rem !important;padding:0 .75rem .75rem !important;color:var(--g600) !important;
}
.woocommerce ul.products li.product .button{
    position:absolute !important;bottom:0 !important;left:0 !important;right:0 !important;
    width:100% !important;margin:0 !important;padding:.85rem !important;
    background:rgba(10,10,10,.9) !important;color:var(--white) !important;
    border-radius:0 !important;font-family:var(--font) !important;
    font-size:.58rem !important;font-weight:600 !important;letter-spacing:.16em !important;
    text-transform:uppercase !important;text-align:center !important;border:none !important;
    cursor:pointer !important;opacity:0 !important;transform:translateY(4px) !important;
    transition:opacity .25s var(--eout),transform .25s var(--eout) !important;
}
.woocommerce ul.products li.product:hover .button{opacity:1 !important;transform:translateY(0) !important}
.woocommerce ul.products li.product .onsale{
    background:var(--black) !important;color:var(--white) !important;
    border-radius:0 !important;font-size:.52rem !important;font-weight:600 !important;
    letter-spacing:.1em !important;text-transform:uppercase !important;
    padding:.3rem .55rem !important;min-height:auto !important;min-width:auto !important;
    line-height:1 !important;top:.75rem !important;left:.75rem !important;
}

/* single product — estilo HERO, foto unica del hero, una sola seccion, sin bordes */
.single-product .site-main{max-width:1140px;margin:0 auto;padding:2.6rem 2rem 4rem}
.woocommerce div.product{
    position:relative;
    display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);
    gap:2.4rem;align-items:start;
}
.woocommerce div.product span.onsale{
    position:absolute;top:1rem;left:1rem;z-index:3;margin:0;
    background:var(--black) !important;color:var(--white) !important;border-radius:999px !important;
    font-size:.55rem !important;font-weight:600 !important;letter-spacing:.14em !important;
    text-transform:uppercase !important;padding:.4rem .8rem !important;min-height:0 !important;line-height:1 !important;
}

/* foto unica del hero, tipo tarjeta limpia sin bordes */
.ua-product-media{position:sticky;top:calc(var(--hh) + 1.5rem)}
.ua-product-media__frame{
    border-radius:20px;overflow:hidden;background:var(--g100);
    box-shadow:0 30px 70px rgba(20,40,60,.12);
}
.ua-product-media__frame img{
    width:100%;height:100%;aspect-ratio:4/5;object-fit:cover;object-position:center top;display:block;
}

/* resumen: panel limpio, sin bordes ni caja */
.woocommerce div.product div.summary{
    width:100% !important;float:none !important;margin:0 !important;
    background:transparent;border:none;border-radius:0;padding:.25rem 0 0;box-shadow:none;
}
/* resumen en dos columnas: info (nombre/precio/descripcion) | compra (talla/cantidad/botones) */
.ua-summary-grid{
    display:grid;grid-template-columns:minmax(0,1.05fr) minmax(230px,.85fr);
    gap:2.2rem;align-items:start;
}
.ua-summary-info{min-width:0}
.ua-summary-buy{min-width:0;position:sticky;top:calc(var(--hh) + 1.5rem)}
.woocommerce div.product .product_title{
    font-size:2rem !important;font-weight:600 !important;line-height:1.1 !important;
    letter-spacing:-.02em !important;text-transform:none !important;margin:0 0 .75rem !important;
}
.woocommerce div.product p.price{
    display:flex;align-items:baseline;gap:.7rem;flex-wrap:wrap;
    font-size:1.35rem !important;font-weight:600 !important;color:var(--black) !important;
    margin:0 0 1.5rem !important;padding:0;border:none;
}
.woocommerce div.product p.price del{font-size:.9rem;opacity:.4;color:var(--g600);font-weight:500}
.woocommerce div.product p.price ins{text-decoration:none}
.woocommerce div.product p.price .ua-tax-note,
.woocommerce div.product p.price small{font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--g600);font-weight:500}

/* descripcion mas aireada, sin comprimir */
.woocommerce div.product .woocommerce-product-details__short-description{
    font-size:.9rem;line-height:1.8;color:#4a4844;margin:0 0 1.6rem;
}
.woocommerce div.product .woocommerce-product-details__short-description p{margin:0}
/* specs como tarjetas visuales sin bordes */
.woocommerce div.product .woocommerce-product-details__short-description ul{
    list-style:none;margin:1.4rem 0 0;padding:0;
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;
}
.woocommerce div.product .woocommerce-product-details__short-description li{
    display:flex;flex-direction:column;gap:.35rem;
    background:var(--g100);border-radius:16px;padding:.85rem .95rem;
    font-size:.56rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--g600);
}
.woocommerce div.product .woocommerce-product-details__short-description li strong,
.woocommerce div.product .woocommerce-product-details__short-description li a{
    color:var(--black);font-weight:600;font-size:.82rem;letter-spacing:0;text-transform:none;
    white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}
/* Model en fila completa (debajo de talla y altura) con el @ de Instagram completo */
.woocommerce div.product .woocommerce-product-details__short-description li:first-child{
    grid-column:1 / -1;order:2;
}
.woocommerce div.product .woocommerce-product-details__short-description li:not(:first-child){order:1}
.woocommerce div.product .woocommerce-product-details__short-description li:first-child a,
.woocommerce div.product .woocommerce-product-details__short-description li:first-child strong{
    white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word;
}

/* seleccion moderna, sin dropdown */
.woocommerce div.product form.cart{display:grid;gap:1.2rem;margin:0 !important}
.woocommerce div.product form.cart .variations{margin:0 !important;display:grid;gap:.6rem}
.woocommerce div.product form.cart .variations tbody,
.woocommerce div.product form.cart .variations tr{display:block}
.woocommerce div.product form.cart .variations th,
.woocommerce div.product form.cart .variations td{padding:0 !important;display:block;width:100%}
.woocommerce div.product form.cart .variations label{
    display:block;font-size:.6rem;font-weight:700;letter-spacing:.2em;
    text-transform:uppercase;color:var(--g600);margin:0 0 .7rem;
}
/* swatches de talla (reemplazan al dropdown) */
.ua-select-hidden{position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0;opacity:0;pointer-events:none}
.ua-swatches{display:flex;flex-wrap:wrap;gap:.55rem}
.ua-swatch{
    min-width:3.2rem;padding:.75rem .95rem;border-radius:14px;cursor:pointer;
    background:var(--g100);color:var(--black);border:none;
    font-family:var(--font);font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
    transition:background .18s var(--ease),color .18s var(--ease),transform .12s var(--ease);
}
.ua-swatch:hover{background:var(--g200);transform:translateY(-1px)}
.ua-swatch.is-active{background:var(--black);color:var(--white)}
.ua-swatch.is-disabled{opacity:.32;cursor:not-allowed;text-decoration:line-through}
.ua-swatch.is-disabled:hover{background:var(--g100);transform:none}
.woocommerce div.product form.cart .reset_variations{
    display:inline-block;margin-top:.3rem;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--g600);
}
.woocommerce div.product form.cart .woocommerce-variation-price{margin:.2rem 0 0;font-size:1.05rem;font-weight:600}
.woocommerce div.product form.cart .quantity{display:inline-flex}
.woocommerce div.product form.cart .quantity .qty{
    width:96px;background:var(--g100);border:none;border-radius:14px;padding:.9rem .6rem;
    font-size:.85rem;text-align:center;color:var(--black);
}
.woocommerce div.product form.cart .single_variation_wrap{display:grid;gap:1rem}
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart{display:flex;gap:.7rem;align-items:stretch;flex-wrap:wrap}
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart .quantity{flex:0 0 auto}

/* botones tipo pill, sin bordes */
.woocommerce .single_add_to_cart_button,
.woocommerce div.product .ua-buy-now-button{
    width:100%;min-height:52px;
    display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;
    border-radius:999px !important;font-size:.64rem !important;font-weight:700 !important;
    letter-spacing:.18em !important;text-transform:uppercase !important;padding:.95rem 1.3rem !important;
    border:none !important;
    transition:background .2s var(--ease),color .2s var(--ease),transform .15s var(--ease) !important;
}
.woocommerce .single_add_to_cart_button{background:var(--black) !important;color:var(--white) !important}
.woocommerce .single_add_to_cart_button:hover{background:#2a2a2a !important;transform:translateY(-1px)}
.woocommerce div.product form.cart .woocommerce-variation-add-to-cart .single_add_to_cart_button{width:auto;flex:1 1 auto}
.woocommerce div.product .ua-buy-now-button{
    margin:.7rem 0 0;background:var(--g100) !important;color:var(--black) !important;
}
.woocommerce div.product .ua-buy-now-button:hover{background:var(--g200) !important;opacity:1;transform:translateY(-1px)}

/* meta discreto, sin borde superior duro */
.woocommerce div.product .product_meta{
    margin-top:1.6rem;padding-top:0;border:none;
    font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--g600);line-height:2;
}
.woocommerce div.product .product_meta > span{display:block}
.woocommerce div.product .product_meta a{color:var(--black)}

/* una sola seccion: sin tabs, upsells ni recomendados */
.woocommerce div.product .woocommerce-tabs,
.woocommerce div.product .related.products,
.woocommerce div.product .upsells.products{display:none !important}

@media (max-width:1080px){
    .ua-summary-grid{grid-template-columns:1fr;gap:1.4rem}
    .ua-summary-buy{position:static}
}
@media (max-width:980px){
    .single-product .site-main{padding:1.4rem 1rem 2.5rem}
    .woocommerce div.product{grid-template-columns:1fr;gap:1.6rem}
    .ua-product-media{position:static}
    .ua-product-media__frame img{aspect-ratio:1/1}
    .woocommerce div.product .product_title{font-size:1.55rem !important}
}

/* cart/checkout */
.ua-cart-shell{
    display:grid;grid-template-columns:minmax(0,1fr);gap:1.25rem;
    max-width:var(--maxw);margin:0 auto;padding:1rem 0 0;
}
.woocommerce-cart .site-main > article > :not(.ua-cart-shell),
.woocommerce-checkout .site-main > article > :not(.ua-checkout-shell){display:none !important}
.woocommerce-cart .site-main > article{margin:0;padding:0}
.woocommerce-cart .site-main > article > h1:first-of-type{display:none}
.woocommerce-checkout .site-main > article{margin:0;padding:0}
.woocommerce-checkout .site-main > article > h1:first-of-type{display:none}
.ua-cart-hero{
    display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;
    padding:1.35rem 0 1rem;border-bottom:1px solid var(--border);
}
.ua-cart-kicker{
    font-size:.58rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;
    color:var(--g600);margin-bottom:.35rem;
}
.ua-cart-title{
    font-size:2rem;line-height:1.05;letter-spacing:-.03em;text-transform:none;
    margin-bottom:.35rem;
}
.ua-cart-copy{font-size:.88rem;color:var(--g600);max-width:46rem}
.ua-cart-actions{display:flex;flex-wrap:wrap;gap:.65rem;justify-content:flex-end}
.ua-lang-switcher{display:flex;align-items:center;gap:.2rem}
.ua-lang-switcher__label{display:none}
.ua-lang-switcher__link{display:inline-flex;align-items:center;gap:.35rem}
.ua-cart-link{
    display:inline-flex;align-items:center;justify-content:center;
    padding:.9rem 1.75rem;border:1px solid var(--border);border-radius:999px;
    font-size:.66rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;
    transition:background .2s var(--ease),transform .15s var(--ease),border-color .2s var(--ease);
}
.ua-cart-link:hover{background:var(--g100);transform:translateY(-1px);opacity:1}
.ua-cart-link--primary{background:var(--black);color:var(--white);border-color:var(--black)}
.ua-cart-link--primary:hover{background:#2a2a2a;color:var(--white)}
/* Botón "Imprimir / PDF" en la confirmación: reset del <button> + icono */
.ua-print-order{gap:.5rem;background:none;color:var(--black);cursor:pointer;font-family:inherit;line-height:1;white-space:nowrap}
/* Tamaño del icono fijado con !important y dimensiones explícitas para que no lo
   agranden estilos de terceros (Elementor/ElementsKit) en staging/producción. */
.ua-print-icon{width:15px !important;height:15px !important;flex:0 0 15px !important}
/* Acciones de la confirmación/seguimiento algo más compactas que el hero del carrito */
.ua-order-received .ua-cart-actions .ua-cart-link,
.ua-track-order .ua-cart-actions .ua-cart-link{padding:.72rem 1.4rem;font-size:.62rem}
/* Elementos que solo aparecen al imprimir (cabecera de marca del recibo) */
.ua-print-only{display:none}
.ua-cart-panel{
    background:var(--white);border:1px solid var(--border);border-radius:8px;
    box-shadow:0 18px 50px rgba(0,0,0,.04);padding:1.25rem 1.25rem 1rem;
}
.ua-cart-panel .woocommerce{display:block}
.ua-cart-panel .woocommerce .woocommerce-notices-wrapper{margin-bottom:1rem}
.ua-cart-panel .woocommerce-cart-form{
    margin-bottom:1.5rem;padding-bottom:1.25rem;border-bottom:1px solid var(--border);
}
.ua-cart-panel .woocommerce-cart-form table.shop_table{
    width:100%;border-collapse:separate;border-spacing:0 0.75rem;background:transparent;
}
.ua-cart-panel .woocommerce-cart-form table.shop_table thead th{
    border-bottom:1px solid var(--border);padding:.75rem .5rem;font-size:.58rem;
    letter-spacing:.16em;text-transform:uppercase;color:var(--g600);font-weight:600;
}
.ua-cart-panel .woocommerce-cart-form table.shop_table tbody td{
    padding:1rem .5rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border);
    vertical-align:middle;background:#fff;
}
.ua-cart-panel .woocommerce-cart-form table.shop_table tbody tr:first-child td{border-top:1px solid var(--border)}
.ua-cart-panel .woocommerce-cart-form .product-remove a{
    display:inline-flex;align-items:center;justify-content:center;
    width:2rem;height:2rem;border:1px solid var(--border);border-radius:999px;
    color:var(--g600);font-size:1rem;line-height:1;text-decoration:none;
}
.ua-cart-panel .woocommerce-cart-form .product-name a{font-weight:600}
.ua-cart-panel .woocommerce-cart-form .product-thumbnail img{
    width:72px;height:92px;object-fit:cover;border-radius:6px;border:1px solid var(--border)
}
.ua-cart-panel .woocommerce-cart-form .quantity .qty{
    width:72px;border:1px solid var(--border);border-radius:4px;padding:.55rem .6rem;
}
.ua-cart-panel .woocommerce-cart-form .actions{
    display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end;align-items:center;margin-top:1rem;
}
.ua-cart-panel .woocommerce-cart-form .button,
.ua-cart-panel .woocommerce .checkout-button,
.ua-cart-panel .woocommerce #place_order{
    background:var(--black) !important;color:var(--white) !important;border:1px solid var(--black) !important;
    border-radius:999px !important;font-size:.66rem !important;font-weight:600 !important;
    letter-spacing:.16em !important;text-transform:uppercase !important;padding:.95rem 1.75rem !important;
}
.ua-cart-panel .woocommerce-cart-form .button:hover,
.ua-cart-panel .woocommerce .checkout-button:hover,
.ua-cart-panel .woocommerce #place_order:hover{background:#2a2a2a !important}
.ua-cart-panel .woocommerce .coupon{
    display:flex;flex-wrap:wrap;gap:.65rem;align-items:center;
}
.ua-cart-panel .woocommerce .coupon #coupon_code{
    min-width:220px;border:1px solid var(--border);border-radius:4px;padding:.85rem .9rem;
}
.ua-cart-panel .cart-collaterals{
    display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);gap:1.25rem;align-items:start;
}
.ua-cart-panel .cart_totals{
    background:var(--off-white);border:1px solid var(--border);border-radius:8px;padding:1rem 1rem 1.15rem;
}
.ua-cart-panel .cart_totals h2{
    font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--g600);margin-bottom:1rem;
}
.ua-cart-panel .cart_totals table{margin-bottom:1rem}
.ua-cart-panel .cart_totals th,
.ua-cart-panel .cart_totals td{
    padding:.75rem 0;border-bottom:1px solid var(--border);font-size:.84rem;
}
.ua-cart-panel .cart_totals tr:last-child th,
.ua-cart-panel .cart_totals tr:last-child td{border-bottom:none}
.ua-cart-panel .cart_totals .woocommerce-shipping-methods,
.ua-cart-panel .cart_totals .shipping-calculator-button{font-size:.84rem}
.ua-cart-panel .cart_totals .wc-proceed-to-checkout{padding:0;margin-top:1rem}
.ua-cart-panel .cart_totals .checkout-button{display:flex;justify-content:center;width:100%}
.ua-cart-panel .woocommerce .woocommerce-shipping-destination,
.ua-cart-panel .woocommerce .shipping-calculator-form{font-size:.84rem;color:var(--g600)}
.ua-cart-panel .woocommerce .woocommerce-shipping-destination{margin-bottom:.75rem}
/* Menos aire arriba en carrito/checkout que en el resto del sitio */
.woocommerce-checkout .site-main,
.woocommerce-cart .site-main{padding-top:1rem}
.ua-checkout-shell{
    display:grid;grid-template-columns:minmax(0,1fr);gap:.9rem;
    max-width:var(--maxw);margin:0 auto;padding:.25rem 0 0;
}
.ua-checkout-hero{
    display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;
    padding:.5rem 0 .85rem;border-bottom:1px solid var(--border);
}
.ua-checkout-panel p,
.ua-checkout-panel li,
.ua-checkout-panel label,
.ua-checkout-panel .form-row,
.ua-checkout-panel .woocommerce-info,
.ua-checkout-panel .woocommerce-error,
.ua-checkout-panel .woocommerce-message{font-size:.88rem}
.ua-checkout-panel .woocommerce .shop_table,
.ua-checkout-panel .woocommerce .woocommerce-checkout-review-order-table{margin-bottom:0}
.ua-checkout-panel .woocommerce .select2-container{width:100% !important}
.ua-checkout-panel .woocommerce .woocommerce-shipping-totals td,
.ua-checkout-panel .woocommerce .cart-subtotal td,
.ua-checkout-panel .woocommerce .order-total td{font-weight:600}
.ua-checkout-panel .woocommerce .payment_box{background:rgba(255,255,255,.6);border:1px solid var(--border);border-radius:6px;padding:.85rem}
/* Avisos y barra de cupón: neutralizar el acento azul/icono default de WooCommerce */
.ua-checkout-panel .woocommerce-info,
.ua-checkout-panel .woocommerce-message,
.ua-checkout-panel .woocommerce-notices-wrapper .woocommerce-info{
    background:var(--g100);border:1px solid var(--border);border-top:1px solid var(--border);
    border-radius:var(--r-card);padding:.65rem 1rem;color:var(--g600);font-size:.78rem;margin-bottom:.9rem;
}
.ua-checkout-panel .woocommerce-info::before,
.ua-checkout-panel .woocommerce-message::before{display:none}
.ua-checkout-panel .woocommerce-info a,
.ua-checkout-panel .woocommerce-message a{color:var(--black);text-decoration:underline;font-weight:600}
.ua-checkout-panel .checkout_coupon{
    border:1px solid var(--border);border-radius:var(--r-card);padding:1.25rem;margin-bottom:1.25rem;
}
.ua-checkout-panel .woocommerce{display:block}
/* Checkout en UNA sola columna: primero todos los datos y debajo el resumen del
   pedido, para que el usuario complete el formulario de arriba a abajo sin saltar
   entre columnas. */
.ua-checkout-panel .woocommerce-checkout{
    display:block;
}
.ua-checkout-panel .woocommerce-billing-fields,
.ua-checkout-panel .woocommerce-shipping-fields,
.ua-checkout-panel .woocommerce-additional-fields,
.ua-checkout-panel #order_review,
.ua-checkout-panel .woocommerce-checkout-review-order{
    background:var(--white);border:1px solid var(--border);border-radius:var(--r-card);padding:1.25rem;
}
/* Campos en 2 columnas para comprimir el alto: pares lado a lado, el resto full */
.ua-checkout-panel .woocommerce-billing-fields__field-wrapper,
.ua-checkout-panel .woocommerce-shipping-fields__field-wrapper{
    display:grid;grid-template-columns:1fr 1fr;column-gap:1rem;
}
.ua-checkout-panel .woocommerce-billing-fields__field-wrapper > .form-row,
.ua-checkout-panel .woocommerce-shipping-fields__field-wrapper > .form-row{grid-column:1 / -1}
.ua-checkout-panel #billing_first_name_field,
.ua-checkout-panel #shipping_first_name_field,
.ua-checkout-panel #billing_city_field,
.ua-checkout-panel #shipping_city_field,
.ua-checkout-panel #billing_postcode_field,
.ua-checkout-panel #shipping_postcode_field{grid-column:1}
.ua-checkout-panel #billing_last_name_field,
.ua-checkout-panel #shipping_last_name_field,
.ua-checkout-panel #billing_state_field,
.ua-checkout-panel #shipping_state_field,
.ua-checkout-panel #billing_phone_field{grid-column:2}
/* Colocación explícita: datos a la izquierda, "Tu pedido" (heading + review) a la
   derecha. Sin esto el auto-flow del grid manda #order_review a la fila 2 de la
   columna 1 (debajo del formulario) y la columna derecha queda vacía. */
.ua-checkout-panel #customer_details{grid-column:1;grid-row:1 / span 2}
/* Datos del cliente en UNA sola columna, apilados (facturación → envío → notas).
   La compresión viene del emparejado de campos dentro de cada bloque, no de partir
   en dos — así nunca queda una columna vacía cuando el envío está oculto. */
.ua-checkout-panel #customer_details{display:block}
.ua-checkout-panel #customer_details .col-1,
.ua-checkout-panel #customer_details .col-2{
    width:100% !important;float:none !important;margin:0 0 1rem;padding:0;
}
.ua-checkout-panel #customer_details .col-2:last-child{margin-bottom:0}
/* "¿Enviar a una dirección diferente?" con el mismo tono que los headings de sección */
.ua-checkout-panel #ship-to-different-address{
    font-size:.62rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;
    color:var(--g600);display:flex;align-items:center;gap:.5rem;margin:0 0 .75rem;
}
.ua-checkout-panel #ship-to-different-address input{margin:0;accent-color:var(--black)}
.ua-checkout-panel .woocommerce-additional-fields{margin-top:1rem}
.ua-checkout-panel .woocommerce-additional-fields h3{margin-bottom:.6rem}
.ua-checkout-panel #order_review_heading{margin-top:1.75rem}
.ua-checkout-panel #order_review{
    margin-top:0;
}
.ua-checkout-panel .woocommerce-billing-fields h3,
.ua-checkout-panel .woocommerce-shipping-fields h3,
.ua-checkout-panel .woocommerce-additional-fields h3,
.ua-checkout-panel #order_review_heading{
    font-size:.62rem;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--g600);margin-bottom:1.1rem;
}
.ua-checkout-panel .form-row label{font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--g600)}
.ua-checkout-panel .form-row{margin-bottom:.6rem;padding:0}
/* WC pone float + width 47% en form-row-first/last; nuestro grid ya empareja */
.ua-checkout-panel .form-row-first,
.ua-checkout-panel .form-row-last{width:100% !important;float:none !important}
.ua-checkout-panel .woocommerce-input-wrapper{display:block;width:100%}
.ua-checkout-panel input.input-text,
.ua-checkout-panel textarea,
.ua-checkout-panel select:not(.select2-hidden-accessible){
    width:100% !important;box-sizing:border-box;
    border:1px solid var(--border) !important;border-radius:var(--r);padding:.58rem .75rem;
    background:var(--white);color:var(--black);
    font-family:var(--font);font-size:.85rem;line-height:1.3;
    box-shadow:none !important;outline:none;transition:border-color .18s var(--ease);
}
.ua-checkout-panel textarea{min-height:70px}
.ua-checkout-panel input.input-text::placeholder,
.ua-checkout-panel textarea::placeholder{color:var(--g400);opacity:1}
.ua-checkout-panel input.input-text:focus,
.ua-checkout-panel textarea:focus,
.ua-checkout-panel select:focus{border-color:var(--black) !important}
/* Validación de WC: sin bordes rojos/verdes chillones; solo un rojo suave si es inválido */
.ua-checkout-panel .form-row.woocommerce-validated input.input-text,
.ua-checkout-panel .form-row.woocommerce-validated select,
.ua-checkout-panel .form-row.woocommerce-validated .select2-selection{border-color:var(--border) !important}
.ua-checkout-panel .form-row.woocommerce-invalid input.input-text,
.ua-checkout-panel .form-row.woocommerce-invalid select,
.ua-checkout-panel .form-row.woocommerce-invalid .select2-selection{border-color:#cf8a80 !important}
.ua-checkout-panel .required{color:var(--g600);text-decoration:none}
/* Ítem del resumen: foto (fondo gris) + nombre del producto padre + talle */
.ua-review-item{display:flex;align-items:center;gap:.7rem}
.ua-review-thumb{
    width:44px;height:56px;object-fit:cover;object-position:center top;
    border-radius:calc(var(--r-card) - 4px);background:var(--g100);flex-shrink:0;
}
.ua-review-text{display:flex;flex-direction:column;gap:.3rem;min-width:0}
.ua-review-name{font-weight:600;color:var(--black)}
.ua-review-name:hover{opacity:.7}
/* Talle que se va a comprar, como pill en el rojo del logo (igual que el carrito React) */
.ua-review-variation{
    align-self:flex-start;font-size:.6rem;font-weight:700;letter-spacing:.08em;
    text-transform:uppercase;color:#cc1212;background:rgba(204,18,18,.1);
    border-radius:var(--r-pill);padding:.2rem .55rem;line-height:1.2;
}
/* El talle ya se muestra en el nombre; ocultamos el <dl> por defecto de WC
   en la tabla del resumen para no duplicarlo. */
.ua-checkout-panel .woocommerce-checkout-review-order-table .product-name dl.variation,
.ua-order-panel .woocommerce-table--order-details .product-name dl.variation{display:none}
.ua-checkout-panel .select2-container .select2-selection--single{
    height:auto;border:1px solid var(--border);border-radius:var(--r);padding:.6rem .75rem;
}
.ua-checkout-panel .woocommerce-checkout-review-order-table th,
.ua-checkout-panel .woocommerce-checkout-review-order-table td{
    border-bottom:1px solid var(--border);padding:.85rem 0;font-size:.86rem;
}
.ua-checkout-panel .woocommerce-checkout-review-order-table tfoot th,
.ua-checkout-panel .woocommerce-checkout-review-order-table tfoot td{font-weight:600}
/* Total del pedido enfatizado, como el subtotal de la CartPage React */
.ua-checkout-panel .woocommerce-checkout-review-order-table tfoot .order-total th{
    font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--g600);
}
.ua-checkout-panel .woocommerce-checkout-review-order-table tfoot .order-total td{
    font-size:1.15rem;font-weight:600;letter-spacing:-.02em;
}
.ua-checkout-panel .woocommerce-checkout-payment,
.ua-checkout-panel #payment{
    margin-top:1rem;border:1px solid var(--border);border-radius:var(--r-card);padding:1.2rem;
    background:var(--off-white) !important;
}
.ua-checkout-panel .woocommerce-checkout-payment ul.payment_methods{
    border-bottom:1px solid var(--border);padding-bottom:.85rem;margin-bottom:.85rem;
}
.ua-checkout-panel #payment ul.payment_methods li label{font-size:.85rem;font-weight:600}
.ua-checkout-panel #payment ul.payment_methods li input[type="radio"]{accent-color:var(--black)}
/* Caja del método de pago: gris del sistema, no el lila default de WC */
.ua-checkout-panel #payment div.payment_box{
    background:var(--g100) !important;color:var(--g600);font-size:.8rem;line-height:1.55;
    border:none;border-radius:var(--r);padding:.85rem;
}
.ua-checkout-panel #payment div.payment_box::before{
    border:1em solid var(--g100);border-right-color:transparent;border-left-color:transparent;border-top-color:transparent;
}
.ua-checkout-panel .woocommerce-privacy-policy-text p{font-size:.72rem;color:var(--g600);line-height:1.6}
.ua-checkout-panel .woocommerce-checkout-payment .place-order{padding:0}

/* Contrato común para gateways: WooCommerce reemplaza #payment por AJAX y cada
   plugin puede añadir iconos, campos, iframes o botones con medidas propias. */
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment{
    width:100% !important;max-width:none !important;box-sizing:border-box;
    margin-top:1rem;padding:1.2rem;border:1px solid var(--border);border-radius:var(--r-card);
    background:var(--off-white) !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare) form.checkout > :where(div,section),
.ua-checkout-bare > .woocommerce > :where(div,section){
    width:100% !important;max-width:none !important;box-sizing:border-box;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment *{box-sizing:border-box}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment ul.payment_methods{
    display:grid;gap:.65rem;margin:0 0 .9rem !important;padding:0 0 .9rem !important;
    border-bottom:1px solid var(--border);list-style:none;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment ul.payment_methods > li.wc_payment_method{
    display:grid;grid-template-columns:1.1rem minmax(0,1fr);align-items:start;
    gap:0 .7rem;width:100%;min-width:0;margin:0 !important;padding:.9rem;
    background:var(--white);border:1px solid var(--border);border-radius:var(--r);
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment ul.payment_methods > li.wc_payment_method > input[type="radio"]{
    grid-column:1;margin:.2rem 0 0 !important;width:1rem;height:1rem;accent-color:var(--black);
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment ul.payment_methods > li.wc_payment_method > label{
    grid-column:2;display:flex !important;flex-wrap:wrap;align-items:center;justify-content:space-between;
    gap:.35rem .75rem;min-width:0;margin:0 !important;font-size:.85rem;font-weight:600;line-height:1.4;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment ul.payment_methods > li.wc_payment_method > label img{
    float:none !important;width:auto !important;max-width:min(100%,180px) !important;
    max-height:30px !important;margin:0 !important;object-fit:contain;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment div.payment_box{
    grid-column:1 / -1;width:100% !important;max-width:none !important;min-width:0;
    margin:.8rem 0 0 !important;overflow-wrap:anywhere;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment div.payment_box :where(iframe,object,embed,video,canvas){
    display:block;width:100% !important;max-width:100% !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment div.payment_box > :where(div,section,fieldset){
    width:100% !important;max-width:100% !important;min-width:0;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment div.payment_box :where(input:not([type="radio"]):not([type="checkbox"]),select,textarea,button){max-width:100% !important}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .place-order,
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .form-row{
    float:none !important;width:100% !important;max-width:none !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .wc_payment_method > .ppcp-messages{
    grid-column:1 / -1;width:100%;max-width:none;margin:.8rem 0 0;padding:.85rem;
    background:var(--white);border:1px solid var(--border);border-radius:var(--r);
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .wc_payment_method > .ppcp-messages > *{
    margin-inline:auto !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .wc_payment_method > .ppc-button-wrapper{
    grid-column:1 / -1;width:100% !important;max-width:420px !important;margin:.8rem auto 0 !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .wc_payment_method > .ppc-button-wrapper [id^="ppc-button-"]{
    width:100% !important;max-width:100% !important;margin:0 !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_box.payment_method_stripe{
    padding:1rem !important;background:var(--g100) !important;border:1px solid var(--border) !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe .testmode-info{
    margin:0 0 .9rem;padding:.8rem .9rem;background:var(--white);border:1px solid var(--border);
    border-left:3px solid #635bff;border-radius:var(--r);color:var(--g600);font-size:.75rem;line-height:1.55;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe .testmode-info strong{
    color:var(--black);font-weight:600;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe .testmode-info a{
    color:var(--black);font-weight:600;text-underline-offset:2px;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe .wc-saved-payment-methods{
    margin:0 0 .75rem !important;padding:0 !important;border:0 !important;list-style:none;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe .wc-saved-payment-methods li{
    display:flex;align-items:center;gap:.55rem;margin:0 !important;padding:.7rem .8rem;
    background:var(--white);border:1px solid var(--border);border-radius:var(--r);
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe #wc-stripe-upe-form{
    width:100%;margin:0 !important;padding:0 !important;border:0 !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe .wc-stripe-upe-element{
    width:100%;min-width:0;padding:.8rem;background:var(--white);
    border:1px solid var(--border);border-radius:var(--r);
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_box.payment_method_stripe > fieldset:last-of-type{
    margin:.75rem 0 0;padding:.75rem .85rem;background:var(--white);
    border:1px solid var(--border);border-radius:var(--r);
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe .woocommerce-SavedPaymentMethods-saveNew{
    grid-template-columns:1rem minmax(0,1fr);align-items:start;gap:.55rem;
    margin:0 !important;padding:0 !important;font-size:.78rem;line-height:1.45;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe .woocommerce-SavedPaymentMethods-saveNew:not([style*="display: none"]):not([style*="display:none"]){
    display:grid !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe .woocommerce-SavedPaymentMethods-saveNew > input{
    grid-column:1;grid-row:1;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe .woocommerce-SavedPaymentMethods-saveNew > label{
    grid-column:2;grid-row:1;display:block !important;width:auto !important;min-width:0;
}
:is(.ua-checkout-panel,.ua-checkout-bare,.woocommerce-order-pay) #payment .payment_method_stripe :where(.woocommerce-SavedPaymentMethods-tokenInput,#wc-stripe-new-payment-method){
    width:1rem !important;height:1rem;margin:.1rem 0 0 !important;accent-color:var(--black);
}
.woocommerce-cart table.cart th,
.woocommerce-checkout table.shop_table th{
    font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;
    font-weight:600;border-bottom:1px solid var(--border);padding:1rem 0;
}
.woocommerce #place_order,.woocommerce .checkout-button{
    width:100% !important;text-align:center !important;
    background:var(--black) !important;color:var(--white) !important;
    border-radius:999px !important;font-size:.68rem !important;font-weight:600 !important;
    letter-spacing:.15em !important;text-transform:uppercase !important;
    padding:1rem 2.75rem !important;transition:background .2s var(--ease) !important;
}
.woocommerce #place_order:hover,.woocommerce .checkout-button:hover{background:#2a2a2a !important}
.woocommerce .woocommerce-breadcrumb{
    font-size:.6rem;letter-spacing:.1em;color:var(--g600);
    text-transform:uppercase;margin-bottom:2rem;padding-top:1.5rem;
}

/* Checkout refinado: la misma superficie funciona dentro del iframe bare y
   en order-pay / order-received servidos como páginas nativas. */
:is(.ua-checkout-panel,.ua-checkout-bare) .woocommerce-billing-fields,
:is(.ua-checkout-panel,.ua-checkout-bare) .woocommerce-shipping-fields,
:is(.ua-checkout-panel,.ua-checkout-bare) .woocommerce-additional-fields,
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-order-summary-card,
.woocommerce-order-pay form#order_review,
.ua-order-panel .woocommerce-order-details,
.ua-order-panel .woocommerce-customer-details{
    background:var(--white);border:1px solid var(--border);border-radius:8px;
    padding:1.35rem;box-shadow:0 10px 30px rgba(20,24,28,.035);
}
.ua-checkout-panel{
    border-color:transparent;box-shadow:none;background:transparent;padding:0;
}
.ua-checkout-bare{font-family:var(--font);color:var(--black)}
.ua-checkout-bare > .woocommerce{display:block;padding:.1rem}
/* En los bloques plegables, el control queda fuera del panel con borde. */
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-separated-collapse,
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-order-summary-card{
    padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;
}
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-order-summary-card{
    margin-top:1rem;
}
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-separated-collapse > .ua-collapse-heading,
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-order-summary-card > .ua-collapse-heading{
    margin:0 0 .6rem !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-order-summary-card > #order_review_heading{
    margin-top:0 !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-separated-collapse > :not(.ua-collapse-heading),
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-order-summary-content{
    background:var(--white);border:1px solid var(--border);border-radius:8px;
    padding:1.35rem;box-shadow:0 10px 30px rgba(20,24,28,.035);
}
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-order-summary-content > table{margin:0}
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-contact-delivery-content > .woocommerce-shipping-fields,
:is(.ua-checkout-panel,.ua-checkout-bare) .ua-contact-delivery-content > .woocommerce-additional-fields{
    margin:1rem 0 0;padding:1rem 0 0;border:0;border-top:1px solid var(--border);
    border-radius:0;background:transparent;box-shadow:none;
}
:is(.ua-checkout-panel,.ua-checkout-bare) .form-row label{
    display:block;margin-bottom:.38rem;color:#4f4f4b;font-size:.72rem;
    font-weight:600;letter-spacing:0;text-transform:none;
}
:is(.ua-checkout-panel,.ua-checkout-bare) .form-row{margin-bottom:.85rem;padding:0}
:is(.ua-checkout-panel,.ua-checkout-bare) input.input-text,
:is(.ua-checkout-panel,.ua-checkout-bare) textarea,
:is(.ua-checkout-panel,.ua-checkout-bare) select:not(.select2-hidden-accessible){
    min-height:48px;width:100% !important;border:1px solid #d9d9d4 !important;
    border-radius:8px;padding:.72rem .85rem;background:#fbfbfa;color:var(--black);
    font-family:var(--font);font-size:.9rem;line-height:1.35;box-shadow:none !important;
    outline:none;transition:border-color .18s var(--ease),background .18s var(--ease),box-shadow .18s var(--ease);
}
:is(.ua-checkout-panel,.ua-checkout-bare) textarea{min-height:96px;resize:vertical}
:is(.ua-checkout-panel,.ua-checkout-bare) input.input-text:hover,
:is(.ua-checkout-panel,.ua-checkout-bare) textarea:hover,
:is(.ua-checkout-panel,.ua-checkout-bare) select:not(.select2-hidden-accessible):hover{
    border-color:#bdbdb7 !important;background:var(--white);
}
:is(.ua-checkout-panel,.ua-checkout-bare) input.input-text:focus,
:is(.ua-checkout-panel,.ua-checkout-bare) textarea:focus,
:is(.ua-checkout-panel,.ua-checkout-bare) select:focus,
:is(.ua-checkout-panel,.ua-checkout-bare) .select2-container--focus .select2-selection{
    border-color:var(--black) !important;background:var(--white);
    box-shadow:0 0 0 3px rgba(10,10,10,.08) !important;
}
:is(.ua-checkout-panel,.ua-checkout-bare) .select2-container .select2-selection--single{
    min-height:48px;border:1px solid #d9d9d4;border-radius:8px;background:#fbfbfa;
    padding:.72rem .85rem;
}
:is(.ua-checkout-panel,.ua-checkout-bare) .select2-container .select2-selection__rendered{
    padding:0;line-height:1.35;
}
:is(.ua-checkout-panel,.ua-checkout-bare) .select2-container .select2-selection__arrow{
    top:50%;right:.5rem;transform:translateY(-50%);
}
:is(.ua-checkout-panel,.ua-checkout-bare) .form-row.woocommerce-invalid input.input-text,
:is(.ua-checkout-panel,.ua-checkout-bare) .form-row.woocommerce-invalid select,
:is(.ua-checkout-panel,.ua-checkout-bare) .form-row.woocommerce-invalid .select2-selection{
    border-color:#b95c50 !important;background:#fffafa;
    box-shadow:0 0 0 3px rgba(185,92,80,.08) !important;
}

/* Encabezados de acordeón accesibles; el total, el pago, los errores y la
   acción principal quedan siempre fuera del contenido colapsable. */
.ua-collapse-heading,
.ua-order-pay-heading{
    margin:-.45rem -.45rem .15rem !important;font-size:inherit !important;letter-spacing:0 !important;
    text-transform:none !important;
}
.ua-collapse-toggle{
    width:100%;min-height:46px;display:flex;align-items:center;justify-content:space-between;
    gap:1rem;margin:0;padding:.65rem .75rem;background:var(--g100);border:1px solid transparent;
    border-radius:6px;color:var(--black);font:inherit;text-align:left;cursor:pointer;
    transition:background .18s var(--ease),border-color .18s var(--ease);
}
.ua-collapse-toggle:hover{background:var(--g200);border-color:#dcdcd7}
.ua-collapse-title{font-size:.76rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}
.ua-collapse-meta{display:inline-flex;align-items:center;gap:.65rem;flex-shrink:0}
.ua-collapse-action{font-size:.64rem;font-weight:700;letter-spacing:.03em;color:#555551}
.ua-collapse-icon{
    width:24px;height:24px;border:1px solid #c7c7c1;border-radius:50%;position:relative;
    background:var(--white);transition:transform .2s var(--ease),border-color .18s var(--ease);
}
.ua-collapse-icon::after{
    content:"";width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;
    position:absolute;top:7px;left:8px;transform:rotate(45deg);
}
.ua-collapse-toggle[aria-expanded="true"] .ua-collapse-icon{transform:rotate(180deg)}
.ua-collapse-toggle:focus-visible{outline:2px solid var(--black);outline-offset:6px;border-radius:2px}
:is(.ua-checkout-panel,.ua-checkout-bare) :is(.ua-separated-collapse,.ua-order-summary-card) > .ua-collapse-heading .ua-collapse-toggle{
    background:var(--brand-red);border-color:var(--brand-red);color:var(--white);
}
:is(.ua-checkout-panel,.ua-checkout-bare) :is(.ua-separated-collapse,.ua-order-summary-card) > .ua-collapse-heading .ua-collapse-toggle:hover{
    background:#ad0f0f;border-color:#ad0f0f;
}
:is(.ua-checkout-panel,.ua-checkout-bare) :is(.ua-separated-collapse,.ua-order-summary-card) > .ua-collapse-heading .ua-collapse-action{
    color:rgba(255,255,255,.9);
}
:is(.ua-checkout-panel,.ua-checkout-bare) :is(.ua-separated-collapse,.ua-order-summary-card) > .ua-collapse-heading .ua-collapse-icon{
    border-color:rgba(255,255,255,.65);background:rgba(255,255,255,.12);
}
.ua-collapse-heading + :not([hidden]),
.ua-order-pay-heading + :not([hidden]){margin-top:1rem}
.ua-collapse-toggle + [hidden],
.ua-collapse-heading ~ [hidden]{display:none !important}
.is-collapsed{box-shadow:none !important}
.is-collapsed.ua-order-panel{box-shadow:none}
.ua-order-summary-card.is-collapsed .woocommerce-checkout-review-order-table tfoot tr:first-child th,
.ua-order-summary-card.is-collapsed .woocommerce-checkout-review-order-table tfoot tr:first-child td{border-top:0}
/* El resumen y el pago son pasos visuales distintos, pero permanecen dentro
   del mismo form nativo para que checkout AJAX y Stripe conserven su ciclo. */
:is(.ua-checkout-panel,.ua-checkout-bare) #order_review.has-ua-summary-card{
    padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;
}
:is(.ua-checkout-panel,.ua-checkout-bare) #order_review.has-ua-summary-card #payment{
    margin-top:1rem;background:var(--off-white) !important;
    box-shadow:0 10px 30px rgba(20,24,28,.035);
}
.woocommerce-order-pay form#order_review{display:block}
.woocommerce-order-pay form#order_review #payment{margin-top:1rem}
.woocommerce-order-pay form#order_review.has-ua-order-pay-card{
    padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;
}
.woocommerce-order-pay .ua-order-pay-summary-card,
.ua-order-panel .ua-order-collapse{
    padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;
}
.woocommerce-order-pay .ua-order-pay-heading,
.ua-order-panel .ua-order-collapse > .ua-collapse-heading{
    margin:0 0 .6rem !important;
}
.woocommerce-order-pay .ua-order-pay-summary-content,
.ua-order-panel .ua-order-section-content{
    min-width:0;background:var(--white);border:1px solid var(--border);border-radius:8px;
    padding:1.35rem;box-shadow:0 10px 30px rgba(20,24,28,.035);
}
.woocommerce-order-pay .ua-order-pay-summary-content > table{margin:0}
.woocommerce-order-pay .ua-order-pay-heading .ua-collapse-toggle,
.ua-order-panel .ua-order-collapse > .ua-collapse-heading .ua-collapse-toggle{
    background:var(--brand-red);border-color:var(--brand-red);color:var(--white);
}
.woocommerce-order-pay .ua-order-pay-heading .ua-collapse-toggle:hover,
.ua-order-panel .ua-order-collapse > .ua-collapse-heading .ua-collapse-toggle:hover{
    background:#ad0f0f;border-color:#ad0f0f;
}
.woocommerce-order-pay .ua-order-pay-heading :is(.ua-collapse-action),
.ua-order-panel .ua-order-collapse > .ua-collapse-heading .ua-collapse-action{color:rgba(255,255,255,.9)}
.woocommerce-order-pay .ua-order-pay-heading .ua-collapse-icon,
.ua-order-panel .ua-order-collapse > .ua-collapse-heading .ua-collapse-icon{
    border-color:rgba(255,255,255,.65);background:rgba(255,255,255,.12);
}

/* Densidad moderada: 13-14 px solo en metadatos y tablas. Los controles
    conservan un tamaño mayor para lectura, tacto y zoom móvil. */
:is(.ua-checkout-panel,.ua-checkout-bare) .woocommerce-checkout-review-order-table th,
:is(.ua-checkout-panel,.ua-checkout-bare) .woocommerce-checkout-review-order-table td,
.woocommerce-order-pay form#order_review .shop_table th,
.woocommerce-order-pay form#order_review .shop_table td{font-size:.8rem}
:is(.ua-checkout-panel,.ua-checkout-bare) #payment div.payment_box,
:is(.ua-checkout-panel,.ua-checkout-bare) .woocommerce-privacy-policy-text p{font-size:.75rem}
:is(.ua-checkout-panel,.ua-checkout-bare) input.input-text,
:is(.ua-checkout-panel,.ua-checkout-bare) textarea,
:is(.ua-checkout-panel,.ua-checkout-bare) select:not(.select2-hidden-accessible){font-size:.875rem}

@media(max-width:768px){
    :is(.ua-checkout-panel,.ua-checkout-bare) .woocommerce-billing-fields,
    :is(.ua-checkout-panel,.ua-checkout-bare) .woocommerce-shipping-fields,
    :is(.ua-checkout-panel,.ua-checkout-bare) .woocommerce-additional-fields,
    :is(.ua-checkout-panel,.ua-checkout-bare) .ua-order-summary-card,
    .woocommerce-order-pay form#order_review,
    .ua-order-panel .woocommerce-order-details,
    .ua-order-panel .woocommerce-customer-details{padding:1rem}
    :is(.ua-checkout-panel,.ua-checkout-bare) .ua-separated-collapse > :not(.ua-collapse-heading),
    :is(.ua-checkout-panel,.ua-checkout-bare) .ua-order-summary-content{padding:1rem}
    .ua-collapse-heading,.ua-order-pay-heading{margin:-.35rem -.35rem .15rem !important}
    :is(.ua-checkout-panel,.ua-checkout-bare) .ua-separated-collapse > .ua-collapse-heading,
    :is(.ua-checkout-panel,.ua-checkout-bare) .ua-order-summary-card > .ua-collapse-heading{margin:0 0 .5rem !important}
    .ua-collapse-title{font-size:.7rem}
    :is(.ua-checkout-panel,.ua-checkout-bare) input.input-text,
    :is(.ua-checkout-panel,.ua-checkout-bare) textarea,
    :is(.ua-checkout-panel,.ua-checkout-bare) select:not(.select2-hidden-accessible){font-size:1rem}
}

/* ============================================================ ORDER RECEIVED (gracias) */
/* Hero de confirmación: icono de check + texto a la izquierda, acciones a la derecha */
.ua-order-received__hero{
    display:flex;justify-content:space-between;align-items:flex-end;gap:1rem;
    padding:.5rem 0 .85rem;border-bottom:1px solid var(--border);
}
.ua-order-received__left{display:flex;flex-direction:column}
.ua-order-check-icon{margin-bottom:.9rem}
.ua-order-check-svg{display:block;width:48px;height:48px}
.ua-order-kicker{color:#15803d !important}
/* Panel: hereda el checkout. Aquí ajustamos bloques propios de la confirmación. */
.ua-order-panel .woocommerce-order{display:flex;flex-direction:column;gap:1.75rem}
/* Aviso "pedido recibido" */
.ua-order-panel .woocommerce-thankyou-order-received,
.ua-order-panel .woocommerce-notice--success{
    background:#15803d;border:1px solid #15803d;border-radius:var(--r-card);
    padding:1rem 1.25rem;font-size:.9rem;font-weight:600;color:var(--white);margin:0;
}
/* Resumen del pedido (nº, fecha, total, método de pago) como tiles */
.ua-order-panel ul.order_details{
    list-style:none;margin:0;padding:0;display:grid;
    grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:1px;
    background:var(--border);border:1px solid var(--border);border-radius:var(--r-card);overflow:hidden;
}
.ua-order-panel ul.order_details::before,
.ua-order-panel ul.order_details::after{content:none;display:none}
.ua-order-panel ul.order_details li{
    min-width:0;background:var(--white);padding:1rem 1.15rem;margin:0;border:0;
    display:flex;flex-direction:column;gap:.35rem;
    font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;color:var(--g600);font-weight:600;
}
.ua-order-panel ul.order_details li strong{
    max-width:100%;font-size:.95rem;line-height:1.4;letter-spacing:normal;text-transform:none;
    color:var(--black);font-weight:600;overflow-wrap:anywhere;word-break:break-word;
}
.ua-order-panel .woocommerce-bacs-bank-details{min-width:0}
.ua-order-panel .woocommerce-bacs-bank-details > p{margin:.35rem 0;line-height:1.65}
.ua-order-panel .wc-bacs-bank-details-account-name{margin:1.25rem 0 .75rem;font-size:1rem;overflow-wrap:anywhere}
/* Títulos de sección (Detalles del pedido / Direcciones) */
.ua-order-panel h2,
.ua-order-panel .woocommerce-column__title{
    font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--g600);
    font-weight:600;margin:0 0 .85rem;
}
/* Tabla de artículos del pedido */
.ua-order-panel .woocommerce-table--order-details{width:100%;border-collapse:collapse}
.ua-order-panel .woocommerce-table--order-details th,
.ua-order-panel .woocommerce-table--order-details td{
    min-width:0;border-bottom:1px solid var(--border);padding:.85rem .35rem;font-size:.86rem;
    text-align:left;overflow-wrap:anywhere;
}
.ua-order-panel .woocommerce-table--order-details th:first-child,
.ua-order-panel .woocommerce-table--order-details td:first-child{padding-left:0}
.ua-order-panel .woocommerce-table--order-details th:last-child,
.ua-order-panel .woocommerce-table--order-details td:last-child{padding-right:0;text-align:right}
.ua-order-panel .woocommerce-table--order-details tfoot th,
.ua-order-panel .woocommerce-table--order-details tfoot td{font-weight:600}
.ua-order-panel .woocommerce-table--order-details tfoot .order-total th{
    font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--g600);
}
.ua-order-panel .woocommerce-table--order-details tfoot .order-total td{
    font-size:1.15rem;font-weight:600;letter-spacing:-.02em;
}
/* Talle/atributos del artículo comprado (order-received usa wc-item-meta) */
.ua-order-panel .wc-item-meta{list-style:none;margin:.4rem 0 0;padding:0;font-size:.75rem;color:var(--g600)}
.ua-order-panel .wc-item-meta li{margin:0;display:flex;gap:.35rem}
.ua-order-panel .wc-item-meta strong{font-weight:600;color:var(--black)}
/* Direcciones de facturación/envío */
.ua-order-panel .woocommerce-columns--addresses{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:0;
}
.ua-order-panel .woocommerce-columns--addresses::before,
.ua-order-panel .woocommerce-columns--addresses::after{content:none;display:none}
.ua-order-panel .woocommerce-columns--addresses > .woocommerce-column{
    float:none;width:100% !important;min-width:0;margin:0;padding:0;
}
.ua-order-panel .woocommerce-customer-details address{
    width:100%;min-width:0;margin:0;background:var(--g100);
    border:0;border-radius:8px;padding:1rem 1.15rem;
    font-style:normal;font-size:.85rem;line-height:1.6;color:#595955;overflow-wrap:anywhere;
}
@media(max-width:768px){
    .ua-order-panel .ua-order-section-content,
    .woocommerce-order-pay .ua-order-pay-summary-content{padding:1rem}
    .ua-order-panel .woocommerce-columns--addresses{grid-template-columns:minmax(0,1fr)}
}
/* Verificación de email (pantalla previa al pedido cuando no se identifica al
   comprador: sesión cerrada / otro dispositivo / pasado el periodo de gracia) */
.ua-verify-email{max-width:440px;margin:1rem auto;display:flex;flex-direction:column;gap:1rem}
.ua-verify-email__kicker{
    font-size:.62rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--g600);margin:0;
}
.ua-verify-email__title{font-size:1.15rem;font-weight:600;letter-spacing:-.01em;color:var(--black);margin:0}
.ua-verify-email__intro{font-size:.85rem;line-height:1.6;color:var(--g600);margin:0}
.ua-verify-email__form{display:flex;flex-direction:column;gap:1rem;margin:0}
.ua-verify-email__row{display:flex;flex-direction:column;gap:.4rem;margin:0}
.ua-verify-email__row label{
    font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--g600);
}
.ua-verify-email__row .required{color:#cc1212}
.ua-verify-email__form .input-text{
    width:100%;border:1px solid var(--border);border-radius:var(--r);padding:.7rem .8rem;
    font-size:.9rem;font-family:inherit;background:var(--white);color:var(--black);
}
.ua-verify-email__form .input-text:focus{outline:none;border-color:var(--black)}
.ua-verify-email__btn{
    display:block;width:100%;background:var(--black) !important;color:var(--white) !important;
    border:1px solid var(--black) !important;border-radius:999px !important;
    font-size:.68rem !important;font-weight:600 !important;letter-spacing:.15em !important;
    text-transform:uppercase !important;padding:.95rem 2rem !important;cursor:pointer;
    transition:background .2s var(--ease) !important;
}
.ua-verify-email__btn:hover{background:#2a2a2a !important}


/* ─── Formulario de seguimiento de pedido ─────────────────────────────────── */
.ua-track-form{max-width:480px;margin:0 auto;display:flex;flex-direction:column;gap:1rem}
.ua-track-form__intro{font-size:.85rem;line-height:1.6;color:var(--g600);margin:0}
.ua-track-form__row{display:flex;flex-direction:column;gap:.4rem;margin:0}
.ua-track-form__row label{
    font-size:.6rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--g600)
}
.ua-track-form .input-text{
    width:100%;border:1px solid var(--border);border-radius:var(--r);padding:.7rem .8rem;
    font-size:.9rem;font-family:inherit;background:var(--white);color:var(--black)
}
.ua-track-form .input-text:focus{outline:none;border-color:var(--black)}
.ua-track-form .clear{display:none}
.ua-track-form__btn{
    display:block;width:100%;background:var(--black) !important;color:var(--white) !important;
    border:1px solid var(--black) !important;border-radius:999px !important;
    font-size:.68rem !important;font-weight:600 !important;letter-spacing:.15em !important;
    text-transform:uppercase !important;padding:.95rem 2rem !important;cursor:pointer;
    transition:background .2s var(--ease) !important
}
.ua-track-form__btn:hover{background:#2a2a2a !important}

/* ─── Bloque de ayuda: aviso de actualizaciones + contacto ────────────────── */
.ua-order-help{
    margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid var(--border);
    display:flex;flex-direction:column;gap:1rem
}
.ua-order-help__note{
    font-size:.8rem;line-height:1.6;color:var(--g600);margin:0;
    background:var(--g100);border-radius:var(--r-card);padding:.9rem 1.1rem
}
.ua-order-help__contact{display:flex;flex-direction:column;gap:.5rem}
.ua-order-help__label{
    font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--g600)
}
.ua-order-help__link{
    font-size:.85rem;font-weight:600;color:var(--black);text-decoration:none;width:fit-content
}
.ua-order-help__link:hover{color:#cc1212}

/* Cabecera de marca visible solo en el PDF/impresión del recibo */
.ua-order-print-head{
    font-size:.8rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;
    color:#000;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid #000;
}

/* ============================================================ IMPRESIÓN / PDF
   Al imprimir o "Guardar como PDF" la página de confirmación, dejamos solo el
   detalle del pedido como un recibo limpio: sin cabecera/pie del sitio, sin
   botones ni chrome, en blanco y negro apto para papel. */
@media print{
    /* Ocultar todo lo que no sea el pedido */
    .site-header,.site-footer,.ua-splash,#wpadminbar,
    .ua-checkout-hero .ua-cart-actions,.ua-lang-switcher{display:none !important}
    /* Mostrar la cabecera de marca del recibo */
    .ua-print-only{display:block !important}
    /* Quitar márgenes/sombras/bordes del contenedor para aprovechar el papel */
    body{background:#fff !important}
    .site-main{padding:0 !important;margin:0 !important}
    .ua-checkout-shell{gap:1.25rem !important}
    .ua-checkout-hero{padding:0 !important;border:none !important}
    .ua-cart-panel,.ua-order-panel{
        border:none !important;box-shadow:none !important;padding:0 !important;margin:0 !important;background:#fff !important;
    }
    .ua-order-panel .woocommerce-order{gap:1.1rem !important}
    /* Texto/enlaces en negro plano, sin subrayados de navegación */
    .ua-order-panel a{color:#000 !important;text-decoration:none !important}
    .ua-cart-title{font-size:1.4rem !important}
    /* Evitar cortes de página a mitad de bloque */
    .ua-order-panel ul.order_details,
    .ua-order-panel .woocommerce-table--order-details,
    .ua-order-panel .woocommerce-customer-details address{page-break-inside:avoid}
}

/* ============================================================ FOOTER */
.site-footer{
    background:var(--g100);border-top:1px solid var(--border);
    margin-top:5rem;padding:3.5rem 2rem 2rem;
}
.footer-inner{
    max-width:var(--maxw);margin:0 auto 2.5rem;
    display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem;
}
.footer-brand .footer-logo{font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;margin-bottom:.75rem}
.footer-brand p{font-size:.75rem;color:var(--g600);line-height:1.7;max-width:240px}
.footer-col h4{font-size:.58rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;margin-bottom:1.1rem}
.footer-col ul li{margin-bottom:.55rem}
.footer-col ul li a{font-size:.73rem;color:var(--g600);transition:color .18s}
.footer-col ul li a:hover{color:var(--black);opacity:1}
.footer-bottom{
    max-width:var(--maxw);margin:0 auto;padding-top:1.5rem;border-top:1px solid var(--border);
    display:flex;justify-content:space-between;align-items:center;
    font-size:.58rem;color:var(--g600);letter-spacing:.1em;text-transform:uppercase;
}

/* ============================================================ RESPONSIVE */
@media(max-width:1200px){
    .footer-inner{grid-template-columns:1fr 1fr 1fr}
    .footer-brand{grid-column:1/-1}
    .woocommerce ul.products{grid-template-columns:repeat(3,1fr) !important}
}
@media(max-width:900px){
    .hero-products{height:auto}
    .hero-count-3,.hero-count-5,.hero-count-6{grid-template-columns:repeat(2,1fr)}
    .header-lang .ua-lang-switcher__summary{padding:.28rem .5rem}
    .ua-lang-switcher__current span{display:none}
    .ua-lang-switcher__menu{right:0;left:auto;min-width:100%;width:100%}
    .hero-product{height:auto}
    .hero-product-media{aspect-ratio:3/4;flex:none}
}
@media(max-width:768px){
    .header-inner{padding:0 1rem}
    .header-nav-left{gap:0}
    .header-nav-left a{font-size:.62rem}
    .hero-stage{padding:1.5rem 1rem;background-attachment:scroll}
    .woocommerce ul.products{grid-template-columns:repeat(2,1fr) !important;gap:.75rem !important}
    .footer-inner{grid-template-columns:1fr 1fr;gap:1.5rem}
    .footer-brand{grid-column:1/-1}
    .footer-bottom{flex-direction:column;gap:.5rem;text-align:center}
    .site-main{padding:2rem 1rem}
    .ua-cart-hero{flex-direction:column;align-items:flex-start}
    .ua-cart-actions{justify-content:flex-start;width:100%}
    .header-actions{gap:.85rem}
    .ua-cart-panel{padding:1rem}
    .ua-cart-panel .cart-collaterals{grid-template-columns:1fr}
    .ua-checkout-hero{flex-direction:column;align-items:flex-start}
    .ua-cart-panel .coupon{flex-direction:column;align-items:stretch}
    .ua-cart-panel .coupon #coupon_code{min-width:0;width:100%}
}
@media(max-width:560px){
    .hero-products,.hero-count-1,.hero-count-2,.hero-count-3,
    .hero-count-4,.hero-count-5,.hero-count-6{grid-template-columns:1fr;justify-content:stretch}
    .hero-product{height:auto}
    .hero-product-media{aspect-ratio:4/5;flex:none}
    .hero-product-info{padding:1.25rem 1rem 1.6rem}
    .ua-cart-title{font-size:1.65rem}
    .ua-cart-panel table,
    .ua-cart-panel thead,
    .ua-cart-panel tbody,
    .ua-cart-panel th,
    .ua-cart-panel td,
    .ua-cart-panel tr{display:block}
    .ua-cart-panel .woocommerce-cart-form thead{display:none}
    .ua-cart-panel .woocommerce-cart-form tbody tr{padding:.85rem 0;border-bottom:1px solid var(--border)}
    .ua-cart-panel .woocommerce-cart-form tbody td{border:none;padding:.35rem 0}
    .ua-cart-panel .woocommerce-cart-form tbody td.product-thumbnail{padding-top:.6rem}
    .ua-cart-panel .woocommerce-cart-form tbody td.product-remove{position:absolute;right:0;top:.85rem}
}

