/**
 * Tienda (ABGC_Vitrina): bloque de la causa, vitrina [abgc_tienda], campos de
 * la ficha del producto y desglose «llega a la causa». Maqueta c1, c2 y c3.
 * Todo vive bajo .abgc-tv: no toca nada del tema ni de WooCommerce.
 */
.abgc-tv{
 --tv-az:var(--abgc-az,#0056A6);--tv-az-d:var(--abgc-az-d,#003d75);--tv-rojo:var(--abgc-rojo,#DC3545);
 --tv-oro:#F5B72E;--tv-oro-claro:#FFF6DD;--tv-linea:var(--abgc-linea,#e3e8ef);--tv-tx:var(--abgc-tx,#22303F);
 --tv-tx2:var(--abgc-tx2,#5E6E7E);--tv-crema:#FBF7EE;
 color:var(--tv-tx);
}
.abgc-tv *,.abgc-tv *::before,.abgc-tv *::after{box-sizing:border-box}
.abgc-tv [hidden]{display:none!important}
.abgc-tv-causa{border-top:1px solid var(--tv-linea);scroll-margin-top:90px}
.abgc-tv-eb{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--tv-rojo);margin:0 0 6px}
.abgc-tv-h2{font-family:var(--abgc-disp,inherit);font-weight:700;text-transform:uppercase;font-size:clamp(26px,4vw,40px);line-height:1.05;margin:0 0 10px;color:var(--tv-az-d)}
.abgc-tv-h2 em{font-family:'Playfair Display',Georgia,serif;font-style:italic;text-transform:none;font-weight:600;color:var(--tv-rojo)}
.abgc-tv-ayuda{margin:0 0 18px;color:var(--tv-tx2);max-width:64ch}
.abgc-tv-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.abgc-tv-prod{border:1px solid var(--tv-linea);border-radius:16px;background:#fff;overflow:hidden;display:grid;grid-template-rows:auto 1fr;min-width:0;transition:transform .15s,box-shadow .15s}
.abgc-tv-prod:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(5,42,94,.12)}
.abgc-tv-arte{display:grid;place-items:center;aspect-ratio:1/1;background:#FDF4E8;overflow:hidden;position:relative;text-decoration:none!important}
.abgc-tv-arte::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 30%,rgba(255,255,255,.55) 45%,transparent 60%) no-repeat;background-size:60% 100%;background-position:-120% 0;pointer-events:none}
.abgc-tv-prod:hover .abgc-tv-arte::after{animation:abgc-brillo .9s ease-out}
.abgc-tv-arte img{width:100%;height:100%;object-fit:cover;display:block}
/* Arte sin foto, como el prototipo (c2): huevito del color del tema, libro con rayas y diario rojo. */
.abgc-tv-huevo{display:block;width:58%;aspect-ratio:3/4;border-radius:50% 50% 46% 46%/60% 60% 40% 40%;background:radial-gradient(circle at 35% 30%,#fff 0 6%,transparent 7%),repeating-linear-gradient(-30deg,#F5B72E 0 14px,#F8C95A 14px 28px);box-shadow:inset -10px -14px 0 rgba(0,0,0,.08),0 10px 18px rgba(5,42,94,.15);position:relative}
.abgc-tv-huevo-az{background:radial-gradient(circle at 35% 30%,#fff 0 6%,transparent 7%),repeating-linear-gradient(-30deg,#0B4EA2 0 14px,#2B6BC0 14px 28px)}
.abgc-tv-huevo-rj{background:radial-gradient(circle at 35% 30%,#fff 0 6%,transparent 7%),repeating-linear-gradient(-30deg,#DE3B3E 0 14px,#E86164 14px 28px)}
.abgc-tv-prod:hover .abgc-tv-huevo,.abgc-tv-huevo.abgc-tv-vivo{animation:abgc-bamboleo 1s ease-in-out infinite;transform-origin:50% 90%}
/* En el celular no hay «hover»: el huevito de la tarjeta se bambolea solo, como al pasar el mouse (DEC-80). */
@media (hover:none){.abgc-tv-prod .abgc-tv-huevo{animation:abgc-bamboleo 1s ease-in-out infinite;transform-origin:50% 90%}}
/* Movimiento del prototipo (c2, c3): mismos keyframes y tiempos. abgc-bamboleo es el mismo de coleccion.css (c10/c11). */
@keyframes abgc-bamboleo{0%,100%{transform:rotate(0)}20%{transform:rotate(-6deg)}40%{transform:rotate(5deg)}60%{transform:rotate(-3deg)}80%{transform:rotate(2deg)}}
@keyframes abgc-brillo{0%{background-position:-120% 0}100%{background-position:220% 0}}
.abgc-tv-ph{display:grid;place-items:center;max-width:100%;font-family:var(--abgc-disp,'Anton','Impact','Arial Narrow',sans-serif);font-weight:400;font-size:22px;text-transform:uppercase;text-align:center;padding:10px;border-radius:10px;line-height:1.05}
.abgc-tv-ph-libro{width:70%;aspect-ratio:4/3;background:repeating-linear-gradient(45deg,#fff 0 10px,#F0F4F9 10px 20px);color:#0B4EA2;border-bottom:1px solid #E2E9F2}
.abgc-tv-ph-diario{width:62%;aspect-ratio:3/4;background:linear-gradient(135deg,#B32E31,#DE3B3E);color:#fff}
.abgc-tv-cinta{position:absolute;top:10px;left:10px;z-index:1;background:#DE3B3E;color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:2px 9px;line-height:1.5}
.abgc-tv-det{font-size:12.5px;color:var(--tv-tx2)}
.abgc-tv-cb{padding:10px 12px 12px;display:flex;flex-direction:column;gap:4px;min-width:0}
.abgc-tv-tipo{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--tv-tx2)}
.abgc-tv-nom{font-size:15px;line-height:1.3;margin:0;font-weight:700}
.abgc-tv-nom a{color:inherit;text-decoration:none}
.abgc-tv-nom a:hover{text-decoration:underline}
.abgc-tv-precio{font-weight:700;font-size:17px;font-variant-numeric:tabular-nums}
.abgc-tv-precio small{font-weight:500;font-size:12px;color:var(--tv-tx2)}
.abgc-tv-llega{margin:0;font-size:13px;color:#7A5300;background:var(--tv-oro-claro);border-radius:8px;padding:3px 8px;align-self:flex-start}
.abgc-tv-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:40px;margin-top:auto;padding:10px 18px;border-radius:999px;border:1.5px solid var(--tv-rojo);background:var(--tv-rojo);color:#fff!important;text-decoration:none!important;cursor:pointer;font:inherit;font-weight:700;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;line-height:1.2}
.abgc-tv-btn-azul{background:var(--tv-az);border-color:var(--tv-az)}
.abgc-tv-btn-azul:hover{background:var(--tv-az-d);border-color:var(--tv-az-d)}
.abgc-tv-btn:hover{background:#b02a37;border-color:#b02a37}
.abgc-tv-btn-linea{background:#fff;color:var(--tv-az)!important;border-color:var(--tv-az)}
.abgc-tv-btn-linea:hover{background:#EEF4FB;border-color:var(--tv-az)}
.abgc-tv-btn:focus-visible,.abgc-tv-chip:focus-visible{outline:2px solid var(--tv-rojo);outline-offset:2px}
.abgc-tv-filtros{display:block;margin:0 0 14px}
.abgc-tv-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.abgc-tv-chip{display:inline-flex;align-items:center;min-height:34px;padding:5px 12px;border-radius:999px;border:1px solid var(--tv-linea);background:#fff;color:var(--tv-tx)!important;text-decoration:none!important;font-size:12.5px;font-weight:600;line-height:1.2}
.abgc-tv-chip[aria-current="true"],.abgc-tv-chip-sel.es-activo{background:var(--tv-az);border-color:var(--tv-az);color:#fff!important}
/* «Por causa ▾»: el <select> con forma de chip. */
.abgc-tv-chip-sel{position:relative;padding:0}
.abgc-tv-chip-sel select{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:inherit;font:inherit;font-size:12.5px;font-weight:600;padding:5px 26px 5px 12px;min-height:32px;max-width:220px;field-sizing:content;cursor:pointer;text-overflow:ellipsis}
.abgc-tv-chip-sel::after{content:"";position:absolute;right:11px;top:50%;margin-top:-2px;border:4px solid transparent;border-top-color:currentColor;pointer-events:none}
.abgc-tv-chip-sel select option{color:var(--tv-tx);background:#fff}
.abgc-tv-chips .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.abgc-tv-porcausa{display:inline-flex;gap:6px;align-items:center;margin:0}
.abgc-tv-filtros>*{min-width:0;max-width:100%}
.abgc-tv-campos select{min-height:44px;border:1px solid #8C98A4;border-radius:10px;padding:6px 10px;font:inherit;background:#fff;color:var(--tv-tx)}
.abgc-tv-porcausa .abgc-tv-btn{margin-top:0;min-height:40px}
.abgc-tv-vacio{color:var(--tv-tx2)}
.abgc-tv-campos{display:grid;gap:8px;margin:0 0 14px;max-width:440px}
.abgc-tv-lbl{font-weight:700;margin:0}
/* Sin uso desde 2.39.4 (DEC-89: sin montos al público). */
.abgc-tv-llega{margin:0;font-weight:700;color:var(--tv-az);font-size:15px}
.abgc-tv-llega[hidden]{display:none}
.abgc-tv-campos select{width:100%}
.abgc-tv-aviso{margin:0;padding:11px 14px;border-radius:10px;background:#FDF4E8;border:1px solid #F5B72E;color:var(--tv-tx);font-size:13.5px}
.abgc-tv-aviso-az{background:#EEF4FC;border-color:#C6DCF3;font-size:13px}
/* «También lo quiero impreso» (c19). */
.abgc-tv-addon{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:2px solid var(--tv-az);border-radius:14px;padding:12px 14px;background:#F5F9FE;cursor:pointer}
.abgc-tv-addon b{display:block;font-weight:700}
.abgc-tv-addon-txt{display:block;font-size:13px;color:var(--tv-tx2)}
.abgc-tv-addon input{width:20px;height:20px;accent-color:var(--tv-az)}
/* «Cada ₡3.000 en productos = 1 código» (c3). */
.abgc-tv-pill{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:2px 9px;font-size:11.5px;font-weight:700;background:#FDF4E8;color:#8A5A10;flex-basis:100%;order:9}
.abgc-tv-pill{flex-wrap:wrap;column-gap:8px;row-gap:2px;line-height:1.35;padding:5px 12px;border-radius:12px}
.abgc-tv-pill a.abgc-tv-pill-a{color:var(--az,#0B4EA2);font-weight:800;text-decoration:none;white-space:nowrap}
.abgc-tv-pill a.abgc-tv-pill-a:hover,.abgc-tv-pill a.abgc-tv-pill-a:focus-visible{text-decoration:underline}
/* Promoción (c1, c2): solo con un sorteo abierto. */
.abgc-tv-promo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);border:1px solid var(--tv-linea);border-radius:12px;overflow:hidden;margin-top:14px;background:#fff}
.abgc-tv-promo>div{padding:14px 16px;display:grid;gap:8px;justify-items:start;align-content:start}
.abgc-tv-promo>div+div{border-left:1px solid var(--tv-linea)}
.abgc-tv-promo.abgc-tv-promo-una{grid-template-columns:minmax(0,1fr)}
.abgc-tv-promo p{margin:0}
.abgc-tv-promo .abgc-tv-eb{display:flex;align-items:center;gap:8px;margin:0}
.abgc-tv-promo .abgc-tv-eb::before{content:"";width:22px;height:2px;background:currentColor}
.abgc-tv-promo-pie{font-size:12.5px;color:var(--tv-tx2);margin:6px 0 0}
@media (max-width:720px){.abgc-tv-promo{grid-template-columns:minmax(0,1fr)}.abgc-tv-promo>div+div{border-left:0;border-top:1px solid var(--tv-linea)}}
.abgc-tv-fila-llega td{font-size:14px;color:#5C3F00;background:#FFF6DD}
.abgc-tv-total-bloque{margin:16px auto;padding:10px 12px;border-radius:10px;background:#FFF6DD;border:1px solid #F1D48A;color:#5C3F00;max-width:1120px}
/* Regla del prototipo: con «reducir movimiento», nada se mueve. */
@media (prefers-reduced-motion:reduce){.abgc-tv *,.abgc-tv *::after,.abgc-tv-prod,.abgc-tv-huevo{animation:none!important;transition:none!important}.abgc-tv-prod:hover{transform:none}}
