/* Tienda (tienda.html): aspecto del diseño nuevo, claro y oscuro, por encima del CSS original de la página.
   Mismos colores que assets/gc.css; fuentes del sistema; sin formas «cyber» (recortes, brillos, rejilla). */
:root{--acid:#23804a;--acid-dim:#1b6a3c;--steel:#ffffff;--steel-2:#f6f7f3;--steel-3:#eef1ea;--edge:#dfe5da;--edge-b:rgba(35,128,74,.35);--text:#14201a;--muted:#5d6c63;--danger:#c0392b;--on-acid:#ffffff;--bgp:#f6f7f3;--sombra:0 1px 2px rgba(20,32,26,.05),0 10px 30px rgba(20,32,26,.07);--fuente:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif}
:root[data-theme="dark"]{--acid:#5cc98a;--acid-dim:#47b276;--steel:#161f1a;--steel-2:#0e1411;--steel-3:#1b2620;--edge:#26322b;--edge-b:rgba(92,201,138,.35);--text:#e6eee8;--muted:#8e9e95;--danger:#ff7d72;--on-acid:#08120c;--bgp:#0e1411;--sombra:0 1px 2px rgba(0,0,0,.35),0 10px 30px rgba(0,0,0,.28)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--acid:#5cc98a;--acid-dim:#47b276;--steel:#161f1a;--steel-2:#0e1411;--steel-3:#1b2620;--edge:#26322b;--edge-b:rgba(92,201,138,.35);--text:#e6eee8;--muted:#8e9e95;--danger:#ff7d72;--on-acid:#08120c;--bgp:#0e1411;--sombra:0 1px 2px rgba(0,0,0,.35),0 10px 30px rgba(0,0,0,.28)}}
body{background:var(--bgp)!important;color:var(--text)!important;font-family:var(--fuente)!important}
body *{font-family:var(--fuente)!important;letter-spacing:normal!important}
body::before,.card-img::after{display:none!important}
*{clip-path:none!important}
.topbar{background:var(--steel-3)!important;border-bottom:1px solid var(--edge)}
.topbar-track{color:var(--text)!important;font-size:12px;animation-duration:70s!important}
.topbar-track span::before{content:"·"!important;color:var(--acid)!important}
header{background:color-mix(in srgb,var(--bgp) 90%,transparent)!important}
.logo{font-weight:800!important}
.logo span{background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--text)}
.logo span:last-child{color:var(--acid)}
.logo-mark{border-radius:10px;background:var(--acid)!important;color:var(--on-acid)!important}
.nav-links a{border-radius:10px;text-transform:none!important;font-size:14px!important;color:var(--muted)!important}
.nav-links a:hover{color:var(--text)!important;background:var(--steel-3)!important}
.hero h1{font-weight:800!important;letter-spacing:-.03em!important;line-height:1.05!important;font-size:clamp(36px,5.5vw,64px)!important}
.hero h1 span{display:inline!important;background:none!important;-webkit-text-fill-color:currentColor!important;color:var(--acid)}
.hero-tag{border-radius:999px;background:color-mix(in srgb,var(--acid) 12%,var(--steel))!important}
.hero p.lead{color:var(--muted)!important}
.stat .num{font-weight:800!important;color:var(--text)!important}
.stat .lbl{text-transform:none!important;font-size:13px!important}
.sec-title{font-weight:800!important;letter-spacing:-.02em!important}
.sec-title .hash{display:none}
.sec-sub{text-transform:none!important;font-size:13px!important}
/* Botones y controles redondeados; texto legible sobre el color de marca */
.btn-primary,.btn-ghost,.card-add,.co-btn,.checkout-btn,.cart-btn,.pill,.var-btn,.upsell-card .add,.card-upsell .up-add,.toast,.lang-btn,.user-btn,.auth-submit,.loc-btn,.hero-tag,.card-badge,.card-coa{border-radius:999px!important}
.btn-primary,.card-add,.cart-btn,.checkout-btn,.co-btn.next,.pill.active,.pill:hover,.var-btn.active,.card-badge.new,.upsell-card .add,.card-upsell .up-add,.toast,.co-stepper .stp.done .n,.co-stepper .stp.active .n,.pay-m.sel .chk,.auth-submit,.loc-btn,.banner.b-ship,.banner.b-ship *{color:var(--on-acid)!important}
.btn-primary:hover,.card-add:hover,.cart-btn:hover,.checkout-btn:hover,.co-btn.next:hover,.auth-submit:hover,.loc-btn:hover{background:var(--acid-dim)!important;box-shadow:none!important;letter-spacing:normal!important}
.btn-ghost{border-color:var(--edge)!important;color:var(--text)!important}
.btn-ghost:hover{border-color:var(--acid)!important;background:var(--steel)!important;color:var(--acid)!important}
.cart-btn .count,.cart-fab .count{background:var(--on-acid)!important;color:var(--acid)!important;border-color:var(--acid)!important}
.var-btn.active{box-shadow:none!important}
.qty-opt{border-radius:12px}
.qty-opt.active{background:color-mix(in srgb,var(--acid) 14%,var(--steel))!important}
/* Tarjetas */
.card,.banner,.locator,.trust-card,.co,.drawer,.pay-m,.co-summary,.pay-box,.legal,.auth,.upsell,.card-upsell,.cart-item-img,.upsell-card,.cart-item-save,.loc-result,.lang-dd{border-radius:16px}
.card{background:var(--steel)!important;box-shadow:var(--sombra)}
.card:hover{box-shadow:var(--sombra)!important}
.card-img{background:#fff!important}
.card-img .emoji{filter:none!important}
.card-brand{background:color-mix(in srgb,var(--steel) 90%,transparent)!important;color:var(--muted)!important;border-radius:999px;border:1px solid var(--edge)}
.card-title a{color:inherit;text-decoration:none}
.card-title a:hover{color:var(--acid);text-decoration:underline}
.card-upsell,.upsell,.loc-result,.trust-ico{background:color-mix(in srgb,var(--acid) 8%,var(--steel))!important;border-color:var(--edge-b)!important}
.cart-item-save{background:color-mix(in srgb,var(--acid) 10%,var(--steel))!important}
.banner.b-main{background:var(--steel)!important;box-shadow:var(--sombra)}
.banner.b-wheel{background:color-mix(in srgb,var(--acid) 14%,var(--steel))!important;color:var(--text)!important}
.banner.b-ship{background:var(--acid)!important}
.banner-eyebrow{text-transform:none!important}
.trust-card{background:var(--steel)!important}
.ship-bar-fill{box-shadow:none!important}
.cart-fab{animation:none!important;box-shadow:var(--sombra)!important;border-radius:50%}
.co-foot{background:var(--steel-3)!important}
.pay-box p,.legal p,.legal li{color:var(--text)!important}
.pay-box .detail{background:var(--steel-3)!important}
.drawer-close,.auth-close,.legal-close{color:var(--text)!important;border-radius:50%}
footer{background:var(--steel-3)!important;border-top:1px solid var(--edge)!important}
.foot-col h5{color:var(--text)!important;text-transform:none!important}
.foot-col a{color:var(--muted)!important}
.foot-col a:hover{color:var(--acid)!important}
.foot-bottom{font-size:12px!important}
/* Portada de la tienda: mosaico de productos en lugar del dibujo */
.hero-visual.mosaico-t{height:auto!important;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.mosaico-t a{display:block;border-radius:16px;overflow:hidden;background:#fff;aspect-ratio:1;border:1px solid var(--edge);transition:transform .2s}
.mosaico-t a:hover{transform:translateY(-3px)}
.mosaico-t img{width:100%;height:100%;object-fit:cover}
/* Plazos de envío por provincia (sin dirección ni servicios de mapas externos) */
.locator{background:var(--steel)!important;border:1px solid var(--edge)!important;box-shadow:var(--sombra)}
.loc-head h3{font-weight:800!important}
.loc-field select{background:var(--steel-2);border:1px solid var(--edge);border-radius:12px;padding:12px;color:var(--text);font-size:16px}
.loc-result{display:block!important;font-size:14px!important}
.loc-result strong{color:var(--acid)!important}
.mapa{position:relative;background:var(--steel-2);border:1px solid var(--edge);border-radius:16px;padding:10px}
.mapa svg{width:100%;height:auto;display:block}
.mapa .tierra{fill:color-mix(in srgb,var(--acid) 16%,var(--steel));stroke:color-mix(in srgb,var(--acid) 45%,var(--steel));stroke-width:1.2}
.mapa .punto{fill:var(--acid);stroke:var(--steel);stroke-width:1.5}
.mapa a:hover .punto,.mapa .punto.activo{fill:#d98a00}
.mapa .etq{font:600 11px var(--fuente);fill:var(--muted)}
.mapa .zona{font:700 12px var(--fuente);fill:var(--muted)}
.mapa .marco{fill:none;stroke:var(--edge);stroke-dasharray:4 4}
/* Botón de tema y aviso de mayoría de edad */
.tema{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:12px;border:1px solid var(--edge);background:var(--steel);color:var(--text);cursor:pointer;font-size:16px}
.tema:hover{border-color:var(--acid)}
.edad{position:fixed;inset:0;z-index:600;display:none;align-items:center;justify-content:center;padding:20px;background:color-mix(in srgb,var(--bgp) 70%,transparent);backdrop-filter:blur(10px)}
.edad.abierta{display:flex}
.edad .caja{max-width:440px;background:var(--steel);border:1px solid var(--edge);border-radius:20px;padding:26px;text-align:center;box-shadow:var(--sombra)}
.edad h2{font-size:22px;margin-bottom:8px}
.edad p{color:var(--muted)}
.edad .btns{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px}
.edad .btns button{padding:12px 20px;border-radius:999px;font-weight:700;border:1px solid var(--edge)}
.edad .btns .si{background:var(--acid);color:var(--on-acid);border-color:var(--acid)}
