.tienda{--t-fondo:var(--color-fondo,#fff);--t-superficie:var(--color-superficie,#f6f6f4);--t-texto:var(--color-texto,#1c1c1c);--t-suave:var(--color-texto-suave,#4a4a4a);--t-primario:var(--color-primario,#14532d);--t-primario-texto:var(--color-primario-texto,#fff);--t-borde:var(--color-borde,#8a8a8a);--t-exito:var(--color-exito,#166534);--t-error:var(--color-error,#b91c1c);--t-radio:var(--radio,10px);--t-ancho:var(--ancho-maximo,1120px);color:var(--t-texto);max-width:var(--t-ancho);font-family:var(--fuente-texto,system-ui, sans-serif);margin:0 auto;padding:16px;line-height:1.5}.tienda *,.tienda :before,.tienda :after{box-sizing:border-box}.tienda h1{font-family:var(--fuente-titulos,inherit);font-size:var(--texto-h1,clamp(1.75rem, 5vw, 2.5rem));margin:0 0 16px;line-height:1.15}.tienda h2{font-family:var(--fuente-titulos,inherit);font-size:var(--texto-h2,1.35rem);margin:24px 0 12px}.tienda a{color:var(--t-primario)}.tienda :focus-visible{outline:3px solid var(--t-primario);outline-offset:2px}.tienda .solo-lector{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.tienda .boton{border:2px solid var(--t-primario);border-radius:var(--t-radio);background:var(--t-primario);min-height:48px;color:var(--t-primario-texto);font:inherit;cursor:pointer;justify-content:center;align-items:center;gap:8px;padding:12px 20px;font-weight:700;text-decoration:none;display:inline-flex}.tienda .boton[disabled]{opacity:.55;cursor:not-allowed}.tienda .boton-secundario{color:var(--t-primario);background:0 0}.tienda .boton-ancho{width:100%}.tienda .enlace-boton{min-height:44px;color:var(--t-primario);font:inherit;cursor:pointer;background:0 0;border:0;padding:8px 0;text-decoration:underline}.tienda .grilla{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid}@media (width>=720px){.tienda .grilla{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}.tienda .tarjeta{color:inherit;flex-direction:column;gap:8px;text-decoration:none;display:flex}.tienda .tarjeta-foto{aspect-ratio:1;background:var(--t-superficie);border-radius:var(--t-radio);width:100%;overflow:hidden}.tienda .tarjeta-foto img{object-fit:cover;width:100%;height:100%;display:block}.tienda .tarjeta-nombre{font-size:1.05rem;font-weight:700;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.tienda .tarjeta:hover .tarjeta-nombre{text-decoration-color:currentColor}.tienda .precio{font-size:1.1rem;font-weight:700}.tienda .oferta-tienda{border-left:4px solid var(--t-primario);background:var(--t-superficie);margin:8px 0 0;padding:8px 12px;font-weight:600}.tienda .tarjeta .oferta-tienda{padding:4px 8px;font-size:.9rem}.tienda .etiqueta-agotado{border:1px solid var(--t-texto);border-radius:999px;align-self:flex-start;padding:2px 8px;font-size:.85rem}.tienda .producto{grid-template-columns:minmax(0,1fr);gap:24px;display:grid}@media (width>=900px){.tienda .producto{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);align-items:start}}.tienda .galeria-principal{aspect-ratio:1;background:var(--t-superficie);border-radius:var(--t-radio);overflow:hidden}.tienda .galeria-principal img{object-fit:cover;width:100%;height:100%;display:block}.tienda .miniaturas{gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex;overflow-x:auto}.tienda .miniaturas button{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:8px;flex:none;width:72px;height:72px;padding:0;overflow:hidden}.tienda .miniaturas button[aria-pressed=true]{border-color:var(--t-primario)}.tienda .miniaturas img{object-fit:cover;width:100%;height:100%;display:block}.tienda fieldset{border:0;margin:0 0 16px;padding:0}.tienda legend{margin-bottom:8px;font-weight:700}.tienda .opciones{gap:8px;display:grid}.tienda .opcion{border:1px solid var(--t-borde);border-radius:var(--t-radio);cursor:pointer;align-items:center;gap:10px;min-height:48px;padding:10px 12px;display:flex}.tienda .opcion:has(input:checked){border:2px solid var(--t-primario)}.tienda .opcion:has(input:disabled){opacity:.6;cursor:not-allowed}.tienda .opcion input{width:20px;height:20px;accent-color:var(--t-primario)}.tienda .descripcion p{margin:0 0 12px}.tienda .campo{gap:6px;margin-bottom:14px;display:grid}.tienda .campo label{font-weight:600}.tienda .campo input,.tienda .campo textarea,.tienda .campo select{border:1px solid var(--t-borde);border-radius:var(--t-radio);background:var(--t-fondo);width:100%;min-height:48px;color:var(--t-texto);font:inherit;padding:10px 12px}.tienda .campo [aria-invalid=true]{border:2px solid var(--t-error)}.tienda .campo-error{color:var(--t-error);font-size:.95rem}.tienda .campo-ayuda{color:var(--t-suave);font-size:.95rem}.tienda .autorizacion{align-items:flex-start;gap:10px;display:flex}.tienda .autorizacion input{width:22px;height:22px;accent-color:var(--t-primario);flex:none;margin-top:2px}.tienda .cantidad{width:96px}.tienda .compra{gap:24px;display:grid}@media (width>=900px){.tienda .compra{grid-template-columns:1.2fr 1fr;align-items:start}}.tienda .caja{background:var(--t-superficie);border-radius:var(--t-radio);padding:16px}.tienda .renglones{gap:12px;margin:0;padding:0;list-style:none;display:grid}.tienda .renglon{grid-template-columns:64px 1fr;align-items:start;gap:12px;display:grid}.tienda .renglon img{object-fit:cover;background:var(--t-fondo);border-radius:8px;width:64px;height:64px}.tienda .renglon-acciones{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.tienda .totales{grid-template-columns:1fr auto;gap:4px 12px;margin:16px 0 0;display:grid}.tienda .totales dd{text-align:right;margin:0}.tienda .total{font-size:1.2rem;font-weight:700}.tienda .aviso{border-radius:var(--t-radio);border:2px solid var(--t-texto);margin:0 0 16px;padding:12px 14px}.tienda .aviso-error{border-color:var(--t-error);color:var(--t-error)}.tienda .aviso-exito{border-color:var(--t-exito);color:var(--t-exito)}.tienda .instrucciones{white-space:pre-wrap;background:var(--t-fondo);border:1px dashed var(--t-borde);border-radius:var(--t-radio);margin:8px 0;padding:12px;font-family:inherit}.tienda .estado{border:2px solid;border-radius:999px;padding:4px 10px;font-weight:700;display:inline-block}
