/* Tienda: catálogo y ficha de producto (complementa libro/assets/libro.css, que trae el formulario y el pago) */
.td-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:24px}
.td-categoria{font-size:1.35rem;margin:36px 0 16px}
.td-categoria:first-of-type{margin-top:8px}
.td-card{display:flex;flex-direction:column;height:100%;padding:0;overflow:hidden;color:inherit;text-decoration:none;transition:transform .16s,box-shadow .16s}
.td-card:hover{transform:translateY(-3px);text-decoration:none;color:inherit}
.td-card-img{aspect-ratio:4/3;background:var(--bg2);display:flex;align-items:center;justify-content:center;overflow:hidden}
.td-card-img img{width:100%;height:100%;object-fit:contain}
.td-card-body{padding:18px 20px 20px;display:grid;gap:6px;flex:1}
.td-card-body h2{font-size:1.15rem;line-height:1.3;margin:0}
.td-card-body p{margin:0;color:var(--muted);font-size:.9rem}
.td-precio{font-weight:700;color:var(--red);font-size:1.1rem;margin-top:auto}
.td-precio small{color:var(--muted);font-weight:500;font-size:.75rem}
.td-tag{display:inline-block;justify-self:start;padding:3px 10px;border-radius:var(--pill);font-size:.72rem;font-weight:700;letter-spacing:.6px;text-transform:uppercase;background:#fff7ed;color:#9a3412}
.td-tag--agotado{background:#f1f5f9;color:#475569}
.td-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:40px;align-items:start}
.td-hero-img{border-radius:12px;overflow:hidden;background:var(--bg2)}
.td-hero-img img{width:100%;height:auto;display:block}
.td-desc p{margin:0 0 14px}
.td-desc ul{padding-left:20px;margin:0 0 14px}
.td-anterior{text-decoration:line-through;color:var(--muted);font-weight:500;font-size:.9rem;margin-left:6px}
.lb-format.is-disabled{opacity:.55;cursor:not-allowed}
.td-cantidad{max-width:160px}
.td-cupon{display:grid;gap:6px;max-width:260px}
.td-cupon input{text-transform:uppercase}
.td-cupon-nota{font-weight:400;font-size:.78rem;color:var(--muted)}
.td-entrega{margin:18px auto 6px;max-width:520px;text-align:left}
@media (max-width:820px){.td-hero{grid-template-columns:1fr}}
html[data-theme="dark"] .td-tag{background:#431407;color:#fed7aa}
html[data-theme="dark"] .td-tag--agotado{background:#1e293b;color:#cbd5e1}
