/* Минималистичный стиль с вертикальной лентой товаров, вдохновлённый Chintamani */
body { margin: 0; font-family: system-ui, sans-serif; color:#333; background:#fafafa; }
header { padding:1rem; text-align:center; background:#fff; box-shadow:0 1px 2px rgba(0,0,0,.1); }
header h1 { margin:0; font-size:2rem; letter-spacing:2px; }
header a { text-decoration:none; color:#222; }
.tagline { margin:0; font-size:.9rem; color:#777; }

.gallery { display:flex; flex-direction:column; gap:1rem; padding:1rem; }
.product-card { display:flex; align-items:center; gap:1rem; background:#fff; padding:.5rem; border-radius:8px; overflow:hidden; box-shadow:0 1px 3px rgba(0,0,0,.1); }
.product-card img { width:80px; height:80px; object-fit:cover; border-radius:8px; }
.product-card h2 { margin:0; font-size:1.1rem; }
.badge { background:#333; color:#fff; font-size:.7rem; padding:0 .4rem; border-radius:4px; margin-left:.5rem; }

.product-detail { padding:1rem; }
.media-viewer { display:flex; flex-direction:column; gap:1rem; }
.media-viewer img, .media-viewer video { width:100%; max-height:90vh; object-fit:contain; border-radius:8px; background:#000; }

.back-link { display:block; text-align:center; margin:2rem 0; text-decoration:none; color:#555; }

/* Фильтры и цена */
.filters { display:flex; gap:.5rem; flex-wrap:wrap; padding:1rem; }
.filters select, .filters button { padding:.4rem .6rem; font-size:.9rem; border:1px solid #ccc; border-radius:6px; background:#fff; }
.filters button { cursor:pointer; }

/* Галерея и карточки товаров */
.gallery { display:grid; gap:1rem; padding:1rem; }

/* Mobile — одна карточка на строку */
@media(max-width:767px){
    .gallery { grid-template-columns:1fr; }
}

/* Desktop — сетка */
@media(min-width:768px){
    .gallery { grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); }
}

.product-card { display:flex; flex-direction:column; background:#fff; border-radius:8px; overflow:hidden; box-shadow:0 1px 3px rgba(0,0,0,.1); }
.product-card img { width:100%; height:auto; object-fit:cover; }
.product-card .info { padding:0.8rem 1rem; display:flex; flex-direction:column; gap:0.3rem; }
.style { font-size:0.8rem; text-transform:uppercase; color:#777; margin:0; }
.name { margin:0; font-size:1.1rem; }
.price { font-weight:bold; }
.btn-buy { align-self:flex-start; margin-top:0.4rem; padding:0.4rem 1rem; background:#222; color:#fff; text-decoration:none; border-radius:4px; font-size:0.85rem; }
