/* Porttaita – carrito lateral */
.pt-sc{position:fixed;inset:0 0 0 auto;width:min(92vw,420px);height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#fff;color:var(--pt-texto)}
.pt-sc[open]{display:flex;flex-direction:column;animation:pt-sc-entrar .22s ease-out}
.pt-sc::backdrop{background:rgba(20,18,15,.55)}
@keyframes pt-sc-entrar{from{transform:translateX(24px);opacity:.6}to{transform:none;opacity:1}}
@media (prefers-reduced-motion:reduce){.pt-sc[open]{animation:none}}
.pt-sc__cabecera{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--pt-borde)}
.pt-sc__titulo{margin:0;font-size:19px;font-weight:800}
.pt-sc__cerrar{width:44px;height:44px;padding:0;border:0;border-radius:50%;background:var(--pt-suave);color:var(--pt-texto);font-size:26px;line-height:1;cursor:pointer}
.pt-sc__aviso{margin:0;padding:10px 16px;background:#e7f4e1;color:#1f4d12;font-weight:700}
.pt-sc__aviso[hidden]{display:none}
.pt-sc__contenido{display:flex;flex:1;flex-direction:column;min-height:0}
.pt-sc__cargando,.pt-sc__vacio{margin:auto;padding:32px 16px;text-align:center}
.pt-sc__vacio p{margin:0 0 16px}

.pt-progreso{padding:12px 16px;background:var(--pt-suave)}
.pt-progreso__txt{margin:0 0 8px;font-size:15px;font-weight:700}
.pt-progreso__barra{height:8px;border-radius:999px;background:#fff;overflow:hidden}
.pt-progreso__barra span{display:block;height:100%;border-radius:inherit;background:var(--pt-principal);transition:width .4s}
.pt-progreso.is-logrado .pt-progreso__barra span{background:var(--pt-acento)}

.pt-sc__items{flex:1;margin:0;padding:8px 16px;overflow:auto;list-style:none}
.pt-sc__item{display:grid;grid-template-columns:72px minmax(0,1fr);gap:12px;padding:12px 0;border-bottom:1px solid var(--pt-borde);transition:opacity .2s}
.pt-sc__item.is-cargando{opacity:.5;pointer-events:none}
.pt-sc__img img{display:block;width:72px;height:72px;border-radius:10px;object-fit:cover}
.pt-sc__info{display:grid;gap:4px;min-width:0}
.pt-sc__nombre{color:inherit;font-weight:700;line-height:1.3;text-decoration:none}
.pt-sc__variante dl{margin:0;font-size:14px}
.pt-sc__variante dt,.pt-sc__variante dd{display:inline;margin:0}
.pt-sc__variante dd p{display:inline;margin:0}
.pt-sc__variante dd::after{content:"";display:block}
.pt-sc__fila{display:flex;align-items:center;justify-content:space-between;gap:8px}
.pt-qty{display:inline-flex;align-items:center;border:1px solid var(--pt-borde);border-radius:999px}
.pt-qty button{width:40px;height:40px;padding:0;border:0;background:none;color:var(--pt-texto);font-size:20px;line-height:1;cursor:pointer}
.pt-qty button[disabled]{opacity:.35;cursor:not-allowed}
.pt-qty__num{min-width:24px;text-align:center;font-weight:700}
.pt-sc__precio{font-weight:800}
.pt-sc__quitar{justify-self:start;font-size:14px;color:inherit}

.pt-sc__pie{display:grid;gap:10px;padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--pt-borde);box-shadow:0 -6px 16px rgba(0,0,0,.04)}
.pt-sc__ahorro{margin:0;font-weight:700;color:#1f4d12}
.pt-sc__subtotal{display:flex;justify-content:space-between;margin:0;font-size:17px}
.pt-sc__ver{justify-self:center;font-size:15px}
.pt-sc__pie .pt-confianza--logos .pt-confianza__logos{justify-content:center}
.pt-aviso-carrito{margin:8px 0}
