.media-pending { display:flex; flex-direction:column; justify-content:center; align-items:center; gap:10px; background:var(--surface-muted); color:var(--text-muted); aspect-ratio:1; }
.media-pending > svg { width:38px; height:38px; fill:none; stroke:var(--border-strong); stroke-width:1.3; stroke-linecap:round; stroke-linejoin:round; }
.media-pending > span { font-size:12px; font-weight:650; }
.media-pending > small { font-size:10px; color:var(--text-subtle); }
.product-tag.is-draft { background:var(--surface); color:var(--text-muted); border:1px solid var(--border); }
/* Las fotos del catálogo comparten el formato cuadrado de sus maestros. Esta
   especificidad conserva el encuadre también frente a las reglas móviles. */
.product-image-button .product-art.catalog-photo { aspect-ratio:1; }
.product-card .product-title { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; min-height:2.5em; }
.product-card .product-desc { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:3; overflow:hidden; }
.product-gallery { min-width:0; align-self:start; }
.product-gallery > .product-art { aspect-ratio:1; height:auto; max-height:560px; border-radius:8px; overflow:hidden; }
.product-gallery .product-art > img { width:100%; height:100%; object-fit:cover; }
.product-gallery-thumbs { display:flex; gap:10px; margin-top:12px; }
.product-gallery-thumbs button { width:64px; height:64px; padding:2px; border:1px solid var(--border); border-radius:6px; overflow:hidden; }
.product-gallery-thumbs button[aria-pressed="true"] { border:2px solid var(--link); padding:1px; }
.product-gallery-thumbs img { width:100%; height:100%; object-fit:cover; }
.control-product-photo > img { width:100%; height:100%; object-fit:cover; }
.control-product-photo.media-pending,.bag-thumbnail .media-pending { display:grid; place-items:center; gap:0; }
.control-product-photo.media-pending > svg,.bag-thumbnail .media-pending > svg { width:22px; height:22px; }
.control-product-photo.media-pending > span,.control-product-photo.media-pending > small,.bag-thumbnail .media-pending > span,.bag-thumbnail .media-pending > small { display:none; }
.pack-component-row { display:grid; grid-template-columns:44px 1fr; align-items:center; gap:10px; border-bottom:1px solid var(--border); padding:9px 0; }
.pack-component-row > .product-art { width:44px; height:44px; aspect-ratio:1; overflow:hidden; border-radius:5px; }
.pack-component-row .product-art img { width:44px; height:44px; object-fit:cover; }
.pack-component-row .media-pending { gap:0; }
.pack-component-row .media-pending svg { width:20px; height:20px; }
.pack-component-row .media-pending span,.pack-component-row .media-pending small { display:none; }
.pack-components .pack-component-row > span { border:0; padding:0; display:block; font-size:12px; }
.pack-component-row small { display:block; margin-top:3px; color:var(--text-muted); font-size:10px; }
.extra-option .extra-photo { width:36px; height:36px; flex:0 0 36px; border-radius:5px; overflow:hidden; }
.extra-option .extra-photo > img { width:36px; height:36px; object-fit:cover; }
.extra-option .extra-photo svg { width:18px; height:18px; }
.extra-option .extra-photo span,.extra-option .extra-photo small { display:none; }
.product-draft-notice { margin:18px 0 0; padding:14px 16px; border-left:3px solid var(--accent); background:var(--surface-muted); color:var(--text-muted); font-size:12px; line-height:1.6; }
@media (max-width:640px) { .product-gallery > .product-art { max-height:340px; } .extra-option { gap:8px; } }
