/* MKovrolin Theme v2 - shop.css. Только для archive-product / single-product / cart. */

/* ===== Категория: layout ===== */
.rs-archive{padding:24px 0 48px}
.rs-archive__head{margin-bottom:18px}
.rs-archive__title{margin:0 0 8px;font-size:clamp(22px,2.8vw,32px)}
.rs-archive__desc-top{font-size:14px;color:var(--c-muted);max-width:780px;line-height:1.55}
.rs-archive__layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:flex-start}
.rs-archive__main{min-width:0}
.rs-archive__bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--c-border)}
.rs-archive__count{color:var(--c-muted);font-size:14px}
.rs-archive__sort select,.woocommerce-ordering select{padding:8px 12px;border:1px solid var(--c-border);border-radius:var(--r-md);font:inherit;font-size:14px;background:#fff;cursor:pointer}
.rs-archive__filter-toggle{display:none}
.rs-archive__pagination{margin-top:24px;display:flex;justify-content:center}
.rs-archive__empty{padding:48px 24px;text-align:center;background:#fff;border:1px dashed var(--c-border);border-radius:var(--r-lg)}
.rs-archive__seotext{margin-top:48px;padding:24px 0 0;border-top:1px solid var(--c-border)}

/* ===== Сетка в каталоге ===== */
.rs-archive__main .products,.rs-products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:18px;list-style:none;padding:0;margin:0}
.rs-archive__main .products::before,.rs-archive__main .products::after{display:none}
.rs-archive__main .products .product{margin:0!important;padding:0!important;width:auto!important;float:none!important}

/* ===== Фильтры ===== */
.rs-filters{position:sticky;top:14px;background:#fff;border:1px solid var(--c-border);border-radius:var(--r-md);padding:16px}
.rs-filters__title{font-size:16px;margin:0 0 12px;text-transform:uppercase;letter-spacing:.04em}
.rs-filters__close{display:none;position:absolute;top:8px;right:8px;background:transparent;border:0;font-size:24px;cursor:pointer;color:var(--c-muted)}

.rs-filter{border-bottom:1px solid var(--c-border);padding:10px 0}
.rs-filter:last-of-type{border-bottom:0}
.rs-filter>summary{font-weight:600;font-size:14px;cursor:pointer;list-style:none;padding:4px 0;display:flex;justify-content:space-between;align-items:center;color:var(--c-text)}
.rs-filter>summary::-webkit-details-marker{display:none}
.rs-filter>summary::after{content:'+';font-size:18px;color:var(--c-muted);font-weight:400}
.rs-filter[open]>summary::after{content:'−'}
.rs-filter[open]{padding-bottom:14px}

.rs-filter__price{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
.rs-filter__price label{display:flex;flex-direction:column;font-size:11px;color:var(--c-muted)}
.rs-filter__price input{padding:6px 10px;border:1px solid var(--c-border);border-radius:var(--r-sm);font:inherit;font-size:14px;color:var(--c-text);margin-top:2px}

.rs-filter__list{list-style:none;padding:0;margin:8px 0 0;max-height:280px;overflow-y:auto}
.rs-filter__list label{display:flex;align-items:center;gap:8px;padding:5px 2px;font-size:13px;color:var(--c-text);cursor:pointer;line-height:1.3;user-select:none}
.rs-filter__list label:hover{color:var(--c-cta)}
.rs-filter__list input[type="checkbox"]{flex-shrink:0;margin:0;cursor:pointer;accent-color:var(--c-cta)}
.rs-filter__list span{flex:1}
.rs-filter__count{font-size:11px;color:var(--c-muted);font-style:normal}

.rs-filter__showall button{background:transparent;border:0;padding:6px 0;color:var(--c-cta);font-size:13px;cursor:pointer;font-weight:500}
.rs-filter__showall button:hover{text-decoration:underline}

.rs-filters__actions{margin-top:16px;display:flex;flex-direction:column;gap:8px}
.rs-filters__reset{text-align:center;color:var(--c-muted);font-size:13px;text-decoration:underline}
.rs-filters__reset:hover{color:var(--c-cta)}

/* Пагинация WooCommerce */
.woocommerce-pagination ul.page-numbers,.rs-archive__pagination ul.page-numbers{display:flex;list-style:none;padding:0;margin:0;gap:6px;border:0!important}
.woocommerce-pagination ul.page-numbers li{margin:0;border:0!important}
.woocommerce-pagination ul.page-numbers li a,.woocommerce-pagination ul.page-numbers li span{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 10px;border:1px solid var(--c-border);border-radius:var(--r-md);background:#fff;color:var(--c-text);font-weight:500;text-decoration:none}
.woocommerce-pagination ul.page-numbers li a:hover{border-color:var(--c-cta);color:var(--c-cta)}
.woocommerce-pagination ul.page-numbers li span.current{background:var(--c-cta);color:#fff;border-color:var(--c-cta)}

/* ===== Single product ===== */
.rs-product{padding:24px 0 48px}
.rs-product__top{display:grid;grid-template-columns:minmax(0,520px) minmax(0,1fr) minmax(280px,360px);gap:28px;margin-bottom:32px;align-items:start}

.rs-product__gallery{position:relative;display:grid;grid-template-columns:80px minmax(0,1fr);gap:14px;align-items:start}
.rs-product__main{position:relative;background:#F8FAFC;border:1px solid var(--c-border);border-radius:var(--r-md);overflow:hidden;aspect-ratio:1/1}
.rs-product__main img{width:100%;height:100%;object-fit:contain}
.rs-product__main-link{display:block;cursor:zoom-in;width:100%;height:100%}
.rs-product__thumbs{display:flex;flex-direction:column;gap:8px;max-height:520px;overflow-y:auto;padding:2px}
.rs-product__thumb{flex-shrink:0;width:78px;height:78px;background:#F8FAFC;border:2px solid var(--c-border);border-radius:var(--r-sm);overflow:hidden;cursor:pointer;padding:0;transition:border-color .15s}
.rs-product__thumb img{width:100%;height:100%;object-fit:cover}
.rs-product__thumb.is-active{border-color:var(--c-cta)}
.rs-product__sale-circle{position:absolute;top:14px;right:14px;width:54px;height:54px;border-radius:50%;background:#16A34A;color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--font-h);font-weight:700;font-size:15px;letter-spacing:.02em;z-index:2;box-shadow:0 4px 12px rgba(22,163,74,.35)}

.rs-product__summary{display:flex;flex-direction:column;gap:14px}
.rs-product__meta{display:flex;gap:14px;font-size:13px;color:var(--c-muted);align-items:center;flex-wrap:wrap}
.rs-product__sku strong{color:var(--c-text)}
.rs-product__stock{padding:3px 8px;border-radius:4px;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.rs-product__stock--instock{background:#DCFCE7;color:#15803D}
.rs-product__stock--outofstock{background:#FEF3C7;color:#B45309}

.rs-product__title{margin:0;font-size:clamp(22px,2.6vw,30px)}
.rs-product__short{color:var(--c-muted);font-size:15px;line-height:1.6}

.rs-product__priceblock{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:14px 0;border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border)}
.rs-product__price-old{color:var(--c-muted);font-size:16px;text-decoration:line-through}
.rs-product__price-now{font-family:var(--font-h);font-size:32px;font-weight:700;color:var(--c-cta)}
.rs-product__price-unit{font-size:14px;color:var(--c-muted)}

/* Калькулятор */
.rs-calc{background:#F1F5F9;border-radius:var(--r-md);padding:14px}
.rs-calc__title{font-size:14px;margin:0 0 10px;text-transform:uppercase;letter-spacing:.05em;color:var(--c-muted)}
.rs-calc__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rs-calc__row label{display:flex;flex-direction:column;font-size:12px;color:var(--c-muted);font-weight:500}
.rs-calc__row input{margin-top:4px;padding:10px 12px;border:1px solid var(--c-border);border-radius:var(--r-sm);font:inherit;font-size:15px;background:#fff;color:var(--c-text);width:100%;box-sizing:border-box;height:42px}
.rs-calc__result{margin-top:12px;font-size:15px;color:var(--c-text)}
.rs-calc__result strong{color:var(--c-cta);font-family:var(--font-h);font-size:18px}

.rs-product__actions{display:flex;flex-wrap:wrap;gap:10px}
.rs-product__cta-cart{flex:0 0 auto;min-width:180px}

.rs-product__delivery{list-style:none;padding:0;margin:8px 0 0;display:grid;grid-template-columns:1fr;gap:10px;background:#FAFBFC;border:1px solid var(--c-border);border-radius:var(--r-md);padding:14px}
.rs-product__delivery li{display:grid;grid-template-columns:auto auto 1fr;gap:6px 12px;align-items:start;font-size:13px}
.rs-product__delivery li svg{grid-row:1/3;color:var(--c-cta)}
.rs-product__delivery li strong{color:var(--c-text)}
.rs-product__delivery li span{color:var(--c-muted);grid-column:2/4}

/* Tabs */
.rs-product__tabs{margin:32px 0}
.rs-product__tabs-nav{display:flex;gap:0;border-bottom:2px solid var(--c-border);margin-bottom:20px;flex-wrap:wrap}
.rs-product__tabs-nav button{padding:10px 18px;background:transparent;border:0;border-bottom:2px solid transparent;margin-bottom:-2px;font:inherit;font-weight:600;font-size:14px;color:var(--c-muted);cursor:pointer;text-transform:uppercase;letter-spacing:.04em}
.rs-product__tabs-nav button.is-active{color:var(--c-text);border-bottom-color:var(--c-cta)}
.rs-product__tabs-nav button:hover{color:var(--c-text)}
.rs-product__tab{display:none}
.rs-product__tab.is-active{display:block}

/* Specs table */
.rs-specs{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--c-border);border-radius:var(--r-md);overflow:hidden;font-size:14px}
.rs-specs th,.rs-specs td{padding:10px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--c-border)}
.rs-specs th{background:#F8FAFC;color:var(--c-muted);font-weight:500;width:38%}
.rs-specs tr:last-child th,.rs-specs tr:last-child td{border-bottom:0}



/* === H1 + полоска действий === */
.rs-product__title{margin:0 0 10px;font-family:var(--font-h);font-size:clamp(22px,2.4vw,28px);font-weight:700;line-height:1.25;color:var(--c-text)}
.rs-product__actionbar{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:0 0 22px;padding:8px 0 16px;border-bottom:1px solid var(--c-border);font-size:13px}
.rs-product__action{display:inline-flex;align-items:center;gap:6px;background:transparent;border:0;padding:0;cursor:pointer;color:var(--c-muted);font:inherit;font-size:13px;text-decoration:none;transition:color .15s}
.rs-product__action:hover{color:var(--c-cta)}
.rs-product__action svg{flex-shrink:0}
.rs-product__action--wishlist:hover svg{fill:var(--c-cta);stroke:var(--c-cta)}
.rs-product__actionbar-badges{margin-left:auto;display:flex;gap:6px}
.rs-product__actionbar-badges .rs-badges{position:static;flex-direction:row;gap:6px}

/* === Центр: характеристики + описание === */
.rs-product__specs{min-width:0;display:flex;flex-direction:column;gap:14px}
.rs-product__sku-row{font-size:13px;color:var(--c-muted)}
.rs-product__sku-row strong{color:var(--c-text);font-weight:600}
.rs-product__specs-h{margin:0;font-family:var(--font-h);font-size:15px;font-weight:700;color:var(--c-text);text-transform:none;letter-spacing:0}
.rs-product__specs-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;font-size:14px;line-height:1.5}
.rs-product__specs-list li{display:flex;gap:8px;flex-wrap:wrap;color:var(--c-text)}
.rs-product__spec-key{color:var(--c-muted);min-width:140px;flex-shrink:0}
.rs-product__spec-val{color:var(--c-text);font-weight:500}
.rs-product__specs-all{font-size:13px;color:var(--c-link);text-decoration:none;font-weight:500;align-self:flex-start;margin-top:-4px}
.rs-product__specs-all:hover{color:var(--c-cta);text-decoration:underline}
.rs-product__excerpt{font-size:14px;color:var(--c-text);line-height:1.55}
.rs-product__excerpt p{margin:0 0 8px}
.rs-product__excerpt p:last-child{margin-bottom:0}

/* 4 иконки преимуществ */
.rs-product__features{list-style:none;padding:14px;margin:8px 0 0;background:#F8FAFC;border:1px solid var(--c-border);border-radius:var(--r-md);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}
.rs-product__features li{display:grid;grid-template-columns:36px 1fr;gap:6px 10px;align-items:start;font-size:12px;line-height:1.4}
.rs-product__features li .rs-product__feature-icon{grid-row:1/3;width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid var(--c-border);display:flex;align-items:center;justify-content:center;color:var(--c-cta)}
.rs-product__features li strong{color:var(--c-text);font-weight:600;font-size:13px}
.rs-product__features li span{color:var(--c-muted)}

/* === Правая колонка: покупка === */
.rs-product__buy{position:sticky;top:14px;background:#fff;border:1px solid var(--c-border);border-radius:var(--r-md);padding:18px;display:flex;flex-direction:column;gap:14px}
.rs-product__buy .rs-product__priceblock{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;padding:0 0 8px;margin:0;border:0}
.rs-product__buy .rs-product__price-now{font-family:var(--font-h);font-size:30px;font-weight:700;color:var(--c-text)}
.rs-product__buy .rs-product__price-old{color:var(--c-muted);text-decoration:line-through;font-size:14px}
.rs-product__buy .rs-product__price-unit{font-size:13px;color:var(--c-muted)}
.rs-product__stockline{display:flex;align-items:center;gap:8px;font-size:13px}
.rs-product__buy-actions{display:flex;flex-direction:column;gap:8px}
.rs-product__cta-cart{background:var(--c-cta);color:#fff}
.rs-product__cta-1click{background:#1A2332;color:#fff;border:0}
.rs-product__cta-1click:hover{background:#2A3948;color:#fff;text-decoration:none}
.rs-btn--block{display:inline-flex;align-items:center;justify-content:center;width:100%;text-align:center}
.rs-btn--dark{background:#1A2332;color:#fff}
.rs-btn--dark:hover{background:#2A3948;color:#fff}
.rs-product__total{padding:10px 0 0;border-top:1px solid var(--c-border);font-size:14px;color:var(--c-muted);display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.rs-product__total strong{color:var(--c-cta);font-family:var(--font-h);font-size:22px;font-weight:700}

/* Калькулятор внутри правой колонки */
.rs-product__buy .rs-calc{background:#F8FAFC;border:1px solid var(--c-border);border-radius:var(--r-sm);padding:12px;margin:0}
.rs-product__buy .rs-calc__row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0}
.rs-product__buy .rs-calc__row + .rs-calc__row{margin-top:10px}
.rs-product__buy .rs-calc__field{display:flex;flex-direction:column;font-size:12px;color:var(--c-muted);font-weight:500;gap:4px}
.rs-product__buy .rs-calc__field--full{grid-column:1/-1}
.rs-product__buy .rs-calc__field input,.rs-product__buy .rs-calc__field select{padding:10px 12px;border:1px solid var(--c-border);border-radius:var(--r-sm);font:inherit;font-size:15px;background:#fff;color:var(--c-text);width:100%;box-sizing:border-box;height:42px;-moz-appearance:textfield}
.rs-product__buy .rs-calc__field input::-webkit-outer-spin-button,.rs-product__buy .rs-calc__field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.rs-product__buy .rs-calc__field input:focus,.rs-product__buy .rs-calc__field select:focus{outline:0;border-color:var(--c-cta)}

/* === Обзор === */
.rs-product__h2{margin:0 0 14px;font-family:var(--font-h);font-size:clamp(20px,2.2vw,26px);font-weight:700;color:var(--c-text)}
.rs-product__overview{padding:24px 0;border-top:1px solid var(--c-border)}

/* === Все дизайны коллекции (мини-плитки) === */
.rs-shelf--colors{padding:24px 0}
.rs-shelf__track--colors{grid-auto-columns:140px;gap:10px}
.rs-color-tile{display:flex;flex-direction:column;background:#fff;border:1px solid var(--c-border);border-radius:var(--r-sm);overflow:hidden;text-decoration:none;color:inherit;transition:border-color .15s}
.rs-color-tile:hover{border-color:var(--c-cta);text-decoration:none}
.rs-color-tile img{width:100%;aspect-ratio:1/1;object-fit:cover;display:block}
.rs-color-tile__name{padding:6px 8px;font-size:11px;color:var(--c-text);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:32px}

/* === Теги-категории === */
.rs-product__tags{display:flex;flex-wrap:wrap;gap:8px;padding:18px 0;border-top:1px solid var(--c-border);border-bottom:1px solid var(--c-border)}
.rs-product__tag{display:inline-block;padding:5px 12px;background:#F1F5F9;border:1px solid var(--c-border);border-radius:999px;font-size:12px;color:var(--c-text);text-transform:uppercase;letter-spacing:.04em;text-decoration:none;transition:all .15s}
.rs-product__tag:hover{background:var(--c-cta);color:#fff;border-color:var(--c-cta);text-decoration:none}

/* === Полная таблица характеристик === */
.rs-product__specs-full{padding:24px 0}

/* === Отзывы === */
.rs-product__reviews{padding:24px 0;border-top:1px solid var(--c-border)}


/* Cart / Checkout overrides - минимум */
.woocommerce-cart .rs-page__title,.woocommerce-checkout .rs-page__title{margin-bottom:18px}

@media(max-width:1024px){
  .rs-archive__layout{grid-template-columns:1fr}
  .rs-archive__filter-toggle{display:inline-flex}
  .rs-filters{position:fixed;top:0;left:0;right:0;bottom:0;z-index:300;border-radius:0;border:0;overflow-y:auto;display:none;max-width:380px}
  .rs-filters.is-open{display:block}
  .rs-filters__close{display:block}
  body.rs-filters-open{overflow:hidden}
  .rs-product__top{grid-template-columns:minmax(0,1fr) minmax(280px,340px);gap:24px}
  .rs-product__top > .rs-product__gallery{grid-column:1/-1}
  .rs-product__buy{position:static}
  .rs-archive__main .products,.rs-products{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:768px){
  .rs-archive__main .products,.rs-products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px}
  .rs-product__price-now{font-size:26px}
  .rs-product__top{grid-template-columns:1fr}
  .rs-product__gallery{grid-template-columns:1fr}
  .rs-product__thumbs{flex-direction:row;max-height:none;overflow-x:auto;overflow-y:hidden;order:2}
  .rs-product__features{grid-template-columns:1fr}
  .rs-product__actionbar-badges{margin-left:0;width:100%;margin-top:6px}
  .rs-product__buy{position:static}
}
/* === MKOVROLIN v3 layout-fix patch (2026-05-01) === */
/* Цели:
 *  - сетка строго 3 колонки, все карточки одной высоты
 *  - бейджи в углу, не вылезают
 *  - кнопка В корзину не обрезается
 *  - подкатегории как у донора
 *  - SEO-текст внизу длинный из long_seo_description
 */

/* ===== Заголовок категории ===== */
.rs-archive{padding:18px 0 48px}
.rs-archive__head{margin:0 0 16px;padding:0}
.rs-archive__title{margin:0 0 8px;font-family:var(--font-h);font-size:clamp(26px,3vw,38px);font-weight:700;color:var(--c-text);line-height:1.15;text-transform:uppercase;letter-spacing:.01em}
.rs-archive__desc-top{font-size:14px;color:var(--c-muted);max-width:920px;line-height:1.55}

/* ===== Подкатегории (Ковры по форме / Ковры по дизайну / ...) ===== */
.rs-subcats{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 22px;padding:0}
.rs-subcats__link{display:inline-flex;align-items:center;gap:8px;padding:9px 16px;background:#fff;border:1px solid var(--c-border);border-radius:999px;color:var(--c-text);text-decoration:none;font-size:14px;font-weight:500;line-height:1;transition:border-color .15s,background .15s,color .15s}
.rs-subcats__link:hover{border-color:var(--c-cta);color:var(--c-cta);background:#FFF8F8;text-decoration:none}
.rs-subcats__name{display:inline-block}
.rs-subcats__count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;background:#F1F5F9;color:var(--c-muted);border-radius:999px;font-size:12px;font-weight:500;font-style:normal}
.rs-subcats__link:hover .rs-subcats__count{background:#FFE4E4;color:var(--c-cta)}

/* ===== Layout 2-колоночный ===== */
.rs-archive__layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:flex-start}
.rs-archive__main{min-width:0}

/* ===== Тулбар над сеткой ===== */
.rs-archive__bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid var(--c-border)}
.rs-archive__count{color:var(--c-muted);font-size:14px;flex:1 1 auto}
.rs-archive__count p{margin:0}
.rs-archive__sort{flex-shrink:0}
.rs-archive__sort select,.woocommerce-ordering select{padding:8px 12px;border:1px solid var(--c-border);border-radius:var(--r-md);font:inherit;font-size:14px;background:#fff;cursor:pointer}
.rs-archive__filter-toggle{display:none}
.rs-archive__pagination{margin-top:32px;display:flex;justify-content:center}
.rs-archive__empty{padding:48px 24px;text-align:center;background:#fff;border:1px dashed var(--c-border);border-radius:var(--r-lg)}

/* ===== СЕТКА КАТАЛОГА (КРИТИЧНО) ===== */
ul.rs-products{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:18px;
    list-style:none !important;
    padding:0 !important;
    margin:0 !important;
}
ul.rs-products::before,ul.rs-products::after{display:none !important;content:none !important}
ul.rs-products > li.rs-card-li{
    display:flex !important;
    flex-direction:column;
    margin:0 !important;
    padding:0 !important;
    width:auto !important;
    float:none !important;
    list-style:none !important;
    min-height:100%;
}
ul.rs-products > li.rs-card-li::before,ul.rs-products > li.rs-card-li::after{display:none !important;content:none !important}
ul.rs-products > li.rs-card-li > .rs-card{flex:1 1 auto;width:100%}

/* ===== КАРТОЧКА - все одной высоты ===== */
.rs-card{
    background:#fff;
    border:1px solid var(--c-border);
    border-radius:var(--r-md);
    overflow:hidden;
    display:flex !important;
    flex-direction:column;
    height:100%;
    transition:transform .15s,box-shadow .15s,border-color .15s;
    text-decoration:none;
    color:inherit;
    position:relative;
    list-style:none;
}
.rs-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(15,35,50,.08);border-color:var(--c-cta)}
.rs-card__media{display:block;position:relative;background:#F8FAFC;overflow:hidden;flex-shrink:0;aspect-ratio:1/1}
.rs-card__media img{width:100%;height:100%;aspect-ratio:1/1;object-fit:contain;background:#fff;display:block;transition:transform .25s}
.rs-card:hover .rs-card__media img{transform:scale(1.04)}
.rs-card__body{padding:14px;display:flex;flex-direction:column;flex:1 1 auto;gap:6px}
.rs-card__title-link{text-decoration:none;color:inherit;display:block}
.rs-card__title{margin:0;font-family:var(--font-b);font-size:14px;font-weight:600;color:var(--c-text);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px}
.rs-card__title-link:hover .rs-card__title{color:var(--c-cta)}
.rs-card__price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:2px}
.rs-card__price-now{font-family:var(--font-h);font-size:18px;font-weight:700;color:var(--c-text);white-space:nowrap}
.rs-card__price-old{color:var(--c-muted);text-decoration:line-through;font-size:13px;white-space:nowrap}
.rs-card__sku{font-size:11px;color:var(--c-muted);margin:0}
.rs-card__cta{margin-top:auto;display:inline-flex;align-items:center;justify-content:center;width:100%;text-align:center;padding:10px 12px;font-size:13px;font-weight:600;line-height:1.2;letter-spacing:.02em;text-transform:uppercase;border-radius:var(--r-sm);text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* ===== БЕЙДЖИ - в правом верхнем углу, в пределах фото ===== */
.rs-card__media .rs-badges{position:absolute;top:8px;left:8px;right:8px;display:flex;flex-wrap:wrap;gap:4px;z-index:2;pointer-events:none;justify-content:flex-start}
.rs-badges{display:flex;gap:4px;flex-wrap:wrap}
.rs-badge{display:inline-flex;align-items:center;justify-content:center;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:700;line-height:1;text-transform:uppercase;letter-spacing:.04em;color:#fff;white-space:nowrap;box-shadow:0 1px 2px rgba(0,0,0,.1)}
.rs-badge--sale{background:#C8102E}
.rs-badge--new{background:#15803D}
.rs-badge--hit{background:#1A2332}

/* ===== SEO-текст внизу ===== */
.rs-archive__seotext{margin-top:48px;padding:28px 28px 24px;background:#F8FAFC;border:1px solid var(--c-border);border-radius:var(--r-md);font-size:14px;line-height:1.65;color:var(--c-text)}
.rs-archive__seotext h2,.rs-archive__seotext h3{margin:0 0 12px;font-family:var(--font-h);color:var(--c-text)}
.rs-archive__seotext h2{font-size:22px}
.rs-archive__seotext h3{font-size:18px;margin-top:18px}
.rs-archive__seotext p{margin:0 0 12px}
.rs-archive__seotext ul,.rs-archive__seotext ol{margin:0 0 12px 22px;padding:0}
.rs-archive__seotext li{margin:4px 0}

/* ===== Адаптив ===== */
@media(max-width:1024px){
  .rs-archive__layout{grid-template-columns:1fr}
  .rs-archive__filter-toggle{display:inline-flex}
  ul.rs-products{grid-template-columns:repeat(3,minmax(0,1fr)) !important}
}
@media(max-width:768px){
  ul.rs-products{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px}
  .rs-card__title{font-size:13px}
  .rs-card__price-now{font-size:16px}
  .rs-archive__title{font-size:24px}
  .rs-subcats__link{font-size:13px;padding:7px 12px}
}
@media(max-width:480px){
  ul.rs-products{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px}
  .rs-card__body{padding:10px}
  .rs-card__cta{padding:9px 8px;font-size:12px}
}
/* === END layout-fix patch === */

/* === MKOVROLIN shop align-fix - 2026-05-01 === */

/* === SIDEBAR ФИЛЬТРОВ - шире, читаемее === */
.rs-archive__layout{grid-template-columns:280px minmax(0,1fr);gap:28px}
.rs-filters{padding:18px 18px 16px;border-radius:10px}
.rs-filters__title{
    font-size:14px;
    font-weight:700;
    margin:0 0 14px;
    color:var(--c-text);
    text-transform:uppercase;
    letter-spacing:.05em;
    padding-bottom:10px;
    border-bottom:1px solid var(--c-border);
}
.rs-filter{padding:12px 0;border-bottom:1px solid var(--c-border)}
.rs-filter:last-of-type{border-bottom:0}
.rs-filter > summary{
    font-weight:600;
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.04em;
    color:var(--c-text);
    padding:6px 0;
    cursor:pointer;
}
.rs-filter > summary::after{font-size:20px;line-height:1}
.rs-filter__list{margin:10px 0 0;max-height:280px}
.rs-filter__list label{
    padding:7px 2px;
    font-size:14px;
    line-height:1.35;
    gap:10px;
}
.rs-filter__list input[type='checkbox']{
    width:16px;
    height:16px;
    flex-shrink:0;
    accent-color:var(--c-cta);
    cursor:pointer;
}
.rs-filter__list span{flex:1;color:var(--c-text)}
.rs-filter__count{font-size:12px;color:var(--c-muted);margin-left:auto}

/* Поля цены */
.rs-filter__price{margin-top:12px;gap:10px}
.rs-filter__price input{
    width:100%;
    padding:9px 10px;
    border:1px solid var(--c-border);
    border-radius:6px;
    font-size:14px;
}
.rs-filter__price input:focus{outline:none;border-color:var(--c-cta)}

/* Кнопки фильтров */
.rs-filters__actions{margin-top:18px;gap:10px}
.rs-filters__actions .rs-btn--primary{
    padding:11px 16px;
    font-size:14px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.04em;
}
.rs-filters__reset{padding:6px 0;font-size:13px}

/* === H1 категории === */
.rs-archive__title{
    font-family:var(--font-h);
    font-size:clamp(28px,3.4vw,38px);
    font-weight:700;
    margin:0 0 10px;
    line-height:1.15;
    text-transform:none;
    letter-spacing:-.005em;
    color:var(--c-text);
}
.rs-archive__desc-top{font-size:15px;line-height:1.6;color:var(--c-muted);max-width:920px}

/* === ТУЛБАР НАД СЕТКОЙ === */
.rs-archive__bar{padding:12px 0 14px;margin-bottom:18px;font-size:14px}
.rs-archive__count{font-size:14px;color:var(--c-muted)}

/* === Карточка: кнопка В КОРЗИНУ === */
.rs-card__cta{
    margin-top:auto;
    padding:11px 14px;
    font-size:13px;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:.04em;
    text-align:center;
    width:100%;
    white-space:nowrap;
    overflow:visible;
    text-overflow:clip;
    border-radius:6px;
    line-height:1.2;
    box-sizing:border-box;
}

/* === SEO-БЛОК внизу - отступы между h2/h3/p === */
.rs-archive__seotext{
    margin-top:56px;
    padding:32px 36px;
    background:#fff;
    border:1px solid var(--c-border);
    border-radius:12px;
    font-size:15px;
    line-height:1.7;
    color:var(--c-text);
}
.rs-archive__seotext h2{
    font-family:var(--font-h);
    font-size:24px;
    font-weight:700;
    color:var(--c-text);
    margin:36px 0 14px;
    padding-bottom:10px;
    border-bottom:2px solid var(--c-cta);
    line-height:1.25;
}
.rs-archive__seotext h2:first-child{margin-top:0}
.rs-archive__seotext h3{
    font-family:var(--font-h);
    font-size:18px;
    font-weight:700;
    color:var(--c-text);
    margin:24px 0 8px;
    line-height:1.3;
}
.rs-archive__seotext p{margin:0 0 14px;line-height:1.7}
.rs-archive__seotext ul,
.rs-archive__seotext ol{
    margin:10px 0 18px;
    padding-left:24px;
}
.rs-archive__seotext li{margin:6px 0;line-height:1.6}
.rs-archive__seotext strong,
.rs-archive__seotext b{color:var(--c-text);font-weight:700}
.rs-archive__seotext a{color:var(--c-cta);text-decoration:underline}
.rs-archive__seotext a:hover{text-decoration:none}
.rs-archive__seotext table{
    width:100%;
    border-collapse:collapse;
    margin:14px 0 20px;
    background:#fff;
    border:1px solid var(--c-border);
    border-radius:8px;
    overflow:hidden;
    font-size:14px;
}
.rs-archive__seotext table th,
.rs-archive__seotext table td{
    padding:10px 14px;
    text-align:left;
    border-bottom:1px solid var(--c-border);
    vertical-align:top;
}
.rs-archive__seotext table th{
    background:#F8FAFC;
    font-weight:600;
    color:var(--c-text);
    font-size:13px;
    text-transform:uppercase;
    letter-spacing:.03em;
}
.rs-archive__seotext table tr:last-child td{border-bottom:0}
.rs-archive__seotext table tr:nth-child(even) td{background:#FAFBFC}

/* Адаптив: мобилка */
@media(max-width:1024px){
  .rs-archive__layout{grid-template-columns:1fr;gap:18px}
}
@media(max-width:768px){
  .rs-archive__seotext{padding:20px 18px}
  .rs-archive__seotext h2{font-size:20px}
  .rs-archive__seotext h3{font-size:16px}
  .rs-archive__title{font-size:24px}
}


/* === Группы подкатегорий на /category/kovry/ (3 секции) === */
.rs-subcat-groups { display: flex; flex-direction: column; gap: 16px; margin: 8px 0 26px; }
.rs-subcat-group { background: #fff; border: 1px solid var(--c-border); border-radius: var(--r-md); padding: 14px 18px 16px; }
.rs-subcat-group__title { margin: 0 0 10px; font-family: var(--font-h); font-size: 16px; font-weight: 700; color: var(--c-text); letter-spacing: .01em; }
.rs-subcat-group__title a { color: inherit; text-decoration: none; }
.rs-subcat-group__title a:hover { color: var(--c-cta); }
.rs-subcat-group .rs-subcats { margin: 0; }
@media (max-width: 600px) {
    .rs-subcat-group { padding: 12px 14px 14px; }
    .rs-subcat-group__title { font-size: 15px; }
}

/* === Размеры на карточке товара (переключатель чипами) === */
.rs-size-variants { background: #F8FAFC; border: 1px solid var(--c-border); border-radius: var(--r-sm); padding: 12px 14px; margin: 0 0 14px; }
.rs-size-variants__title { font-size: 13px; color: var(--c-muted); margin: 0 0 8px; line-height: 1.3; }
.rs-size-variants__title strong { color: var(--c-text); font-weight: 600; }
.rs-size-variants__list { display: flex; flex-wrap: wrap; gap: 6px; }
.rs-size-chip {
    appearance: none; -webkit-appearance: none;
    cursor: pointer;
    display: inline-flex; flex-direction: column; align-items: center; justify-content: center;
    min-width: 76px; padding: 6px 10px;
    background: #fff; border: 1px solid var(--c-border); border-radius: 6px;
    font: inherit; color: var(--c-text);
    line-height: 1.15;
    transition: border-color .15s, background .15s, color .15s, box-shadow .15s;
}
.rs-size-chip:hover { border-color: var(--c-cta); background: #FFF8F8; }
.rs-size-chip.is-active { border-color: var(--c-cta); background: var(--c-cta); color: #fff; box-shadow: 0 4px 10px rgba(200,16,46,.20); }
.rs-size-chip.is-active .rs-size-chip__pr { color: #fff; }
.rs-size-chip__sz { font-size: 13px; font-weight: 600; }
.rs-size-chip__pr { font-size: 11px; color: var(--c-muted); margin-top: 2px; }

/* === Чипы ширин рулона (рулонные товары) === */
.rs-width-variants { background: #F8FAFC; border: 1px solid var(--c-border); border-radius: var(--r-sm); padding: 12px 14px; margin: 0 0 14px; }
.rs-width-variants__title { font-size: 13px; color: var(--c-muted); margin: 0 0 8px; line-height: 1.3; }
.rs-width-variants__title strong { color: var(--c-text); font-weight: 600; }
.rs-width-variants__list { display: flex; flex-wrap: wrap; gap: 6px; }
.rs-width-chip {
    appearance: none; -webkit-appearance: none;
    cursor: pointer;
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 56px; padding: 8px 14px;
    background: #fff; border: 1px solid var(--c-border); border-radius: 6px;
    font: inherit; color: var(--c-text);
    font-size: 13px; font-weight: 600; line-height: 1.15;
    transition: border-color .15s, background .15s, color .15s, box-shadow .15s;
}
.rs-width-chip:hover { border-color: var(--c-cta); background: #FFF8F8; }
.rs-width-chip.is-active { border-color: var(--c-cta); background: var(--c-cta); color: #fff; box-shadow: 0 4px 10px rgba(200,16,46,.20); }

/* === Sticky cart bar (появляется при скролле) === */
.rs-sticky-cart {
    position: fixed; top: 0; left: 0; right: 0;
    background: #fff;
    border-bottom: 1px solid var(--c-border);
    box-shadow: 0 4px 14px rgba(15,35,50,.08);
    z-index: 90;
    transform: translateY(-110%);
    transition: transform .25s ease;
    will-change: transform;
}
.rs-sticky-cart.is-visible { transform: translateY(0); }
.rs-sticky-cart__inner {
    display: flex; align-items: center; gap: 16px;
    padding: 10px 16px;
}
.rs-sticky-cart__thumb {
    width: 48px; height: 48px; border-radius: 6px; object-fit: cover; flex-shrink: 0; background: #F8FAFC;
}
.rs-sticky-cart__name {
    flex: 1 1 auto; min-width: 0;
    font-size: 14px; font-weight: 600; color: var(--c-text);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.rs-sticky-cart__price {
    font-family: var(--font-h); font-size: 18px; font-weight: 700; color: var(--c-text);
    flex-shrink: 0; white-space: nowrap;
}
.rs-sticky-cart__price .woocommerce-Price-amount { font: inherit; }
.rs-sticky-cart__btn {
    flex-shrink: 0;
    padding: 10px 22px;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .03em;
    border-radius: var(--r-sm);
    background: var(--c-cta); color: #fff;
    text-decoration: none;
    white-space: nowrap;
}
.rs-sticky-cart__btn:hover { background: #B00C26; color: #fff; text-decoration: none; }
@media (max-width: 600px) {
    .rs-sticky-cart__thumb { display: none; }
    .rs-sticky-cart__inner { gap: 10px; padding: 8px 12px; }
    .rs-sticky-cart__name { font-size: 13px; }
    .rs-sticky-cart__price { font-size: 15px; }
    .rs-sticky-cart__btn { padding: 8px 14px; font-size: 12px; }
}

/* === FIX BUTTONS 03.05.2026 === */
/* Кнопки в колонке покупки не должны растягиваться по высоте sticky-блока */
.rs-product__buy{align-items:stretch}
.rs-product__buy-actions{flex:0 0 auto}
.rs-product__buy-actions .rs-btn,
.rs-product__buy-actions .rs-btn--lg{
    flex:0 0 auto;
    height:52px;
    min-height:52px;
    max-height:52px;
    padding:0 24px;
    line-height:1.2;
    width:100%;
    box-sizing:border-box;
}
.rs-product__cta-cart{flex:0 0 auto !important}

/* Кнопка 360 в галерее: вытащить на ширину обеих колонок грида */
.rs-product__gallery > .rs-pano-btn{
    grid-column:1 / -1;
    width:100%;
    margin-top:8px;
    height:48px;
    min-height:48px;
    max-height:48px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    padding:0 18px;
}
@media (max-width: 600px){
    .rs-product__gallery > .rs-pano-btn{
        font-size:13px;
        padding:0 12px;
    }
}

/* Цветовые swatch в фильтре «Цвет» */
.rs-color-swatch{display:inline-block;width:14px;height:14px;border-radius:3px;border:1px solid rgba(0,0,0,.18);box-shadow:0 0 0 1px rgba(255,255,255,.06) inset;flex-shrink:0;vertical-align:middle}
.rs-filter__list label .rs-color-swatch{margin:0}

