/* cm_ui.css — clever-media.ru «iOS 27» (вёрстка 24.10.2026). Исходник: 02_clever-media.ru/Служебное/cm-ios27-restyle-2026-10/build/src/css/*.css, склейка scripts/build_cm_ui.py. Токены --ui-* — в снипете cm_ui_head. */
/* ---- 00_base.css ---- */
/* =====================================================================
   0. ПЕРЕМЕННЫЕ ТЕМЫ И СТАРЫХ РЕСТАЙЛОВ → значения iOS 27
   Тема пишет свои настройки инлайном на <html> (style="--color-btn-bg:…"),
   поэтому переопределяем на html и body с !important (как TB 24.10).
   Старые наборы --cm-* (рестайл ПК 16.09) объявлены в :root внутри @media —
   html:root (0,1,1) их перебивает.
   ===================================================================== */

html, html body{
  --color-btn-bg:#467E1C !important;
  --color-btn-bg-minor-shade:#3B6C17 !important;
  --color-btn-bg-major-shade:#2F5A12 !important;
  --color-btn-bg-half-shade:#8AC247 !important;
  --color-accent-text:#C81E45 !important;
  --color-accent-text-minor-shade:#B8203F !important;
  --color-text-dark:#1b2738 !important;
  --color-text-dark-minor-shade:#3B4656 !important;
  --color-text-dark-major-shade:#5F6B7A !important;
  --color-text-dark-half-shade:#6B7480 !important;
  --font-family:'Open Sans',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;
  --font-family-heading:'Open Sans',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif !important;
}
html:root{
  --cm-ink:var(--ui-ink); --cm-ink-2:var(--ui-ink-2); --cm-ink-3:var(--ui-ink-3);
  --cm-brand:var(--ui-brand); --cm-brand-ink:var(--ui-brand-ink); --cm-brand-soft:rgba(70,126,28,.12);
  --cm-accent:var(--ui-accent); --cm-accent-soft:var(--ui-accent-soft);
  --cm-surface:var(--ui-surface); --cm-surface-2:var(--ui-surface-2);
  --cm-line:var(--ui-line); --cm-line-2:var(--ui-line-2); --cm-press:var(--ui-press);
  --cm-glass:var(--ui-glass); --cm-edge:var(--ui-edge);
  --cm-sh-1:0 0 0 1px var(--ui-line); --cm-sh-2:var(--ui-sh-hover); --cm-sh-3:var(--ui-sh-glass);
  --cmnav-ink:var(--ui-ink); --cmnav-fg-2:var(--ui-ink-2); --cmnav-line:var(--ui-line); --cmnav-line-strong:var(--ui-line-2);
  --ui-font:'Open Sans',system-ui,-apple-system,'Segoe UI',Roboto,Arial,sans-serif;
  --ui-cta-h:44px;
}

/* =====================================================================
   1. БАЗА: фон страницы #F5F6F2 (как в макете), белые карточки на нём
   Белые подложки виджетов в main/aside снимаем (только у виджетов без своего --bg).
   ===================================================================== */
html body{ background:var(--ui-bg); color:var(--ui-ink); -webkit-font-smoothing:antialiased; }
html body .page_layout > :is(main,aside,.page_section_top,.page_section_bottom) .layout[class*="widget-type_"]:not([style*="--bg:"]),
html body .page_layout > :is(main,aside,.page_section_top,.page_section_bottom) .layout[class*="widget-type_"]:not([style*="--bg:"]) > .layout__content{
  background-color:transparent;
}
html body :focus-visible{ outline:2px solid var(--ui-brand); outline-offset:2px; }
::selection{ background:rgba(70,126,28,.18); }

/* Заголовки страниц: H1 36/800 (ПК), 26/800 (мобайл), без капса */
html body .layout[class*="widget-type_"] h1.heading,
html body .layout[class*="widget-type_"] h1.page-headding,
html body .layout[class*="widget-type_"] .collection-toolbar h1,
html body .cm-ui-h1{
  margin:0; font-family:var(--ui-font); font-size:36px; line-height:1.1; font-weight:800;
  letter-spacing:-.02em; color:var(--ui-ink); text-transform:none; text-wrap:balance;
}
html body .layout[class*="widget-type_"] :is(h2.heading,.special-products__title,.heading.special-products__title){
  font-family:var(--ui-font); font-weight:800; letter-spacing:-.015em; color:var(--ui-ink); text-transform:none;
}
@media (max-width:767.98px){
  html body .layout[class*="widget-type_"] h1.heading,
  html body .layout[class*="widget-type_"] h1.page-headding,
  html body .layout[class*="widget-type_"] .collection-toolbar h1,
  html body .cm-ui-h1{ font-size:26px; line-height:1.15; }
}
/* H1 инфостраниц (page.liquid): обёртка .cm-ui-h1-layout */
html body .cm-ui-h1-layout > .layout__content{ padding-top:6px; padding-bottom:18px; }
html body .page_layout > main > .layout:not([class*="widget-type_"]),
html body .page_layout > main > .layout:not([class*="widget-type_"]) > .layout__content{ background:transparent; }

/* Ссылки внутри текстов — зелёный бренда, без «малинового» */
html body .layout[class*="widget-type_"] .static-text a:not(.button):not([class*="btn"]){ color:var(--ui-brand-ink); }
html body .layout[class*="widget-type_"] .static-text a:not(.button):not([class*="btn"]):hover{ color:var(--ui-deep); }

/* =====================================================================
   2. КНОПКИ — пилюли на токенах (CTA #467E1C, вторичная — белая с кромкой)
   ===================================================================== */
html body{ --controls-btn-border-radius:999px; }
html body main .button:not(.button_only-icon):not(.button_size-s):not(.favorites_btn):not(.pagination-link):not(.pagination-span):not(.add-cart-counter__controls-btn):not(.add-cart-counter__detail),
html body aside .button:not(.button_only-icon):not(.button_size-s):not(.favorites_btn),
html body footer .button:not(.button_only-icon):not(.button_size-s){
  border-radius:var(--ui-r-pill); font-weight:700; letter-spacing:0; text-transform:none;
}
html body main .button.button_second,
html body footer .button.button_second{
  background:var(--ui-surface); color:var(--ui-ink); border:0; box-shadow:inset 0 0 0 1px var(--ui-line-2);
}
html body main .button.button_second:hover{ background:var(--ui-surface-2); color:var(--ui-ink); }
/* поля форм: r12, кромка, фокус зелёным кольцом */
html body main .form-control:not(select),
html body footer .form-control{
  border-radius:var(--ui-r-ctl); border:1px solid var(--ui-line-2); background:var(--ui-surface); color:var(--ui-ink);
}
html body main .form-control:focus,
html body footer .form-control:focus{ border-color:var(--ui-brand); box-shadow:0 0 0 4px rgba(70,126,28,.14); }

/* =====================================================================
   3. ДОСТУПНОСТЬ
   ===================================================================== */
@media (prefers-reduced-motion:reduce){
  html body .layout[class*="widget-type_"] *, html body header *, .cm-ui-scrim{ transition-duration:1ms !important; }
  html body .layout[class*="widget-type_"] .product-preview:hover .product-preview__photo img{ transform:none !important; }
}
@media (prefers-reduced-transparency:reduce){
  html body header .header-mobile-panel,
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"],
  html body .layout[class*="widget-type_"] .splide__arrow,
  html body .layout[class*="widget-type_"] .favorites_btn{ -webkit-backdrop-filter:none !important; backdrop-filter:none !important; }
}
/* ---- 10_header.css ---- */
/* =====================================================================
   10. ПОЛОСА «Бесплатная доставка» (ПК; на мобайле виджет скрыт темой)
   Светлый бренд-тинт вместо #8AC247, текст #2F5A12, прогресс — 3 px снизу.
   ===================================================================== */
html body header > .layout[class*="widget-type_"][class*="simple_text_2_35a2"]{
  background:#EAF3E0; -webkit-backdrop-filter:none; backdrop-filter:none;
  box-shadow:inset 0 -1px 0 rgba(70,126,28,.14);
}
html body header #sv-fs-root #sv-fs-message,
html body header #sv-fs-root #sv-fs-message a{ color:var(--ui-deep); font-size:13.5px; font-weight:600; letter-spacing:0; }
html body header #sv-fs-root #sv-fs-fill{ background:transparent; box-shadow:inset 0 -3px 0 var(--ui-brand-light); }

/* =====================================================================
   11. ШАПКА ПК (≥768): стекло .88, hairline после прокрутки, поиск-капсула
   ===================================================================== */
@media (min-width:768px){
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"]{
    box-shadow:none; -webkit-backdrop-filter:var(--ui-blur); backdrop-filter:var(--ui-blur);
  }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"]::before{ background:var(--ui-glass); }
  html body header{ transition:box-shadow var(--ui-dur) var(--ui-ease); }
  html.cm-ui-scrolled body header{ box-shadow:0 1px 0 var(--ui-edge); }

  /* поиск: капсула 46 на surface-2 с кромкой, кнопка — зелёный кружок 36 внутри */
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__search form.header__search-form{
    height:46px; padding:0 5px 0 0; background:var(--ui-surface-2); box-shadow:inset 0 0 0 1px var(--ui-line-2); overflow:visible;
  }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__search form.header__search-form:focus-within{
    background:#fff; box-shadow:inset 0 0 0 1.5px var(--ui-brand), 0 0 0 4px rgba(70,126,28,.14);
  }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__search input.header__search-field{
    height:44px; padding:0 8px 0 20px; font-size:15px; font-weight:500; color:var(--ui-ink);
  }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__search input.header__search-field::placeholder{ color:var(--ui-ink-2); opacity:1; }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__search .header__search-form .header__search-btn{
    flex:none; width:36px; min-width:36px; height:36px; padding:0; border-radius:50%;
    background:var(--ui-brand); color:#fff; font-size:17px; display:grid; place-items:center; box-shadow:inset 0 1px 0 rgba(255,255,255,.22);
  }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__search .header__search-form .header__search-btn:hover{ background:var(--ui-brand-h); color:#fff; }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__search .header__search-form .header__search-btn .icon{ color:#fff; }

  /* иконки — кружки 44, корзина — пилюля с суммой */
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__buttons a.header__control-btn{ min-width:44px; height:44px; }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__buttons a.header__cart{
    padding:0 16px 0 12px; margin-left:4px; background:rgba(70,126,28,.12); color:var(--ui-deep);
  }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__buttons a.header__cart:hover{ background:rgba(70,126,28,.18); color:var(--ui-deep); }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__buttons a.header__cart .header__control-text{
    color:var(--ui-deep); font-size:15px; font-weight:800;
  }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__buttons .header__control-bage{ background-color:var(--ui-sale); }
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__buttons .header__control-bage.cm-ui-zero{ display:none; }
  /* контактная строка — вторичный текст */
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__contact-item,
  html body .layout[class*="widget-type_"][class*="widget_v4_header_2"] .sv-header__contact-item a{ color:var(--ui-ink-2); font-size:13px; }
}

/* =====================================================================
   12. МОБИЛЬНАЯ ШАПКА (<768): липкое стекло 60 px, лого 40, кромка после прокрутки.
   Пока открыт бургер темы или шторка каталога (html.cm-menu-lock) — шапка не липкая
   и без z-index, чтобы их fixed-слои (1019/1040) не запирались в её контексте.
   ===================================================================== */
@media (max-width:767.98px){
  html:not(.cm-menu-lock) body header:not(:has(.header.is-show-mobile)):not(:has(.header.is-show)){
    position:sticky; top:0; z-index:990;
  }
  html body header > .layout[class*="widget-type_"][class*="widget_v4_header_2"],
  html body header > .layout[class*="widget-type_"][class*="widget_v4_header_2"] > .layout__content,
  html body header > .layout[class*="widget-type_"][class*="widget_v4_header_2"] > .layout__content > .layout__content{ background:transparent !important; }
  html body header .layout[class*="widget-type_"][class*="widget_v4_header_2"] .header-mobile-panel{
    background:var(--ui-glass); -webkit-backdrop-filter:var(--ui-blur); backdrop-filter:var(--ui-blur);
    box-shadow:0 1px 0 transparent; transition:box-shadow var(--ui-dur) var(--ui-ease);
  }
  html.cm-ui-scrolled body header .layout[class*="widget-type_"][class*="widget_v4_header_2"] .header-mobile-panel{ box-shadow:0 1px 0 var(--ui-edge); }
  html body header .layout[class*="widget-type_"][class*="widget_v4_header_2"] .header-mobile-panel__content{ height:60px; min-height:0; padding:0 6px; }
  html body header .layout[class*="widget-type_"][class*="widget_v4_header_2"] .header-mobile-panel__logo img{ height:40px; width:auto; max-height:none; }
  html body header .layout[class*="widget-type_"][class*="widget_v4_header_2"] .header-mobile-panel__show-menu-btn,
  html body header .layout[class*="widget-type_"][class*="widget_v4_header_2"] .header__mobile-cart{
    width:44px; min-width:44px; height:44px; padding:0; border-radius:50%; background:transparent; color:var(--ui-ink);
    display:grid; place-items:center;
  }
  html body header .layout[class*="widget-type_"][class*="widget_v4_header_2"] .header__control-bage{
    background:var(--ui-brand); color:#fff; font-weight:700; box-shadow:0 0 0 2px #fff;
  }
  html body header .layout[class*="widget-type_"][class*="widget_v4_header_2"] .header__control-bage.cart-empty,
  html body header .layout[class*="widget-type_"][class*="widget_v4_header_2"] .header__control-bage.cm-ui-zero{ display:none; }

  /* видимый поиск под шапкой (виджет search_form): одна капсула, кнопка-кружок внутри */
  html body .layout[class*="widget-type_"][class*="search_form_1"]{ background:transparent; }
  html body .layout[class*="widget-type_"][class*="search_form_1"] .search-form__form{ position:relative; display:block; padding:6px 16px 4px; }
  html body .layout[class*="widget-type_"][class*="search_form_1"] .search-form__field{
    width:100%; height:44px !important; padding:0 52px 0 18px; border:0 !important; border-radius:999px !important;
    background:#fff !important; box-shadow:inset 0 0 0 1px var(--ui-line-2) !important; font-size:16px !important; color:var(--ui-ink);
  }
  html body .layout[class*="widget-type_"][class*="search_form_1"] .search-form__field::placeholder{ color:var(--ui-ink-2); opacity:1; }
  html body .layout[class*="widget-type_"][class*="search_form_1"] .search-form__field:focus{ box-shadow:inset 0 0 0 1.5px var(--ui-brand), 0 0 0 3px rgba(70,126,28,.14) !important; }
  html body .layout[class*="widget-type_"][class*="search_form_1"] .search-form__submit-btn{
    position:absolute; right:20px; top:10px; width:36px !important; min-width:36px; height:36px !important; padding:0;
    border-radius:50% !important; background:var(--ui-brand); color:#fff; display:grid; place-items:center;
  }
  html body .layout[class*="widget-type_"][class*="search_form_1"] .search-form__submit-btn .icon{ font-size:18px; color:#fff; }
}

/* 768–1100: тема перестраивает шапку сама — только цвета/формы (липкость не включаем) */
/* ---- 20_nav.css ---- */
/* =====================================================================
   20. НИЖНЯЯ КАПСУЛА (мобайл): стекло .84, кромка 1px, «Каталог» — prominent
   (стекло и кромка уже приходят алиасами --cmnav-* из cm_ui_head)
   ===================================================================== */
@media (max-width:767.98px){
  html body [data-fixed-panels="bottom"] .layout[class*="bottom_navigation_bar"] .navigation-bar{
    box-shadow:var(--ui-sh-glass), inset 0 0 0 1px var(--ui-edge);
  }
  html body [data-fixed-panels="bottom"] .layout[class*="bottom_navigation_bar"] .navigation-bar__item{ color:var(--ui-body); font-weight:600; }
  html body [data-fixed-panels="bottom"] .layout[class*="bottom_navigation_bar"] .navigation-bar__item.navigation-bar__item-catalog,
  html body [data-fixed-panels="bottom"] .layout[class*="bottom_navigation_bar"] .navigation-bar__item.is-active{
    background-color:rgba(70,126,28,.14); color:var(--ui-deep); font-weight:800;
  }
  html body [data-fixed-panels="bottom"] .layout[class*="bottom_navigation_bar"] .navigation-bar__item.navigation-bar__item-catalog .navigation-bar__icon{ color:var(--ui-brand); }
  html body [data-fixed-panels="bottom"] .layout[class*="bottom_navigation_bar"] .navigation-bar__bage{ background:var(--ui-brand); color:#fff; }

  /* «Наверх» при капсуле не нужна: перекрывала «В корзину» плиток и закреплённую кнопку (P0) */
  html body .layout[class*="widget-type_"][class*="button_on_top"] .btn-on-top,
  html body button.btn-on-top.js-go-top-page{ display:none !important; }

  /* PWA/пуш/промокод-плашки — над закреплённой кнопкой покупки карточки/корзины, а не поверх неё (P0) */
  html.pc-card-ready body #cm-pwa-banner,
  html.pc-card-ready body #cm-push-card,
  html.pc-card-ready body #cm-reward,
  html body:has(.pc-sticky:not(.is-off)) #cm-pwa-banner,
  html body:has(.pc-sticky:not(.is-off)) #cm-push-card,
  html body:has(.pc-sticky:not(.is-off)) #cm-reward{
    bottom:calc(var(--sv-navbar-h,78px) + 88px + env(safe-area-inset-bottom,0px)) !important;
  }
  html body:has(.product__buy-btn-area.is-fixed) #cm-pwa-banner,
  html body:has(.product__buy-btn-area.is-fixed) #cm-push-card{ bottom:calc(var(--fixed-panels-bottom-offset,144px) + 12px) !important; }
}
/* PWA-плашки — r20 и стекло, кнопки — пилюли бренда */
html body #cm-pwa-banner, html body #cm-push-card{
  border:0 !important; border-radius:20px !important; background:rgba(255,255,255,.96) !important;
  box-shadow:0 0 0 1px var(--ui-edge), var(--ui-sh-glass) !important;
}
html body #cm-pwa-banner button, html body #cm-push-card button{ border-radius:999px; }

/* «Наверх» на ПК — стеклянный кружок 44 */
@media (min-width:768px){
  html body .layout[class*="widget-type_"][class*="button_on_top"] .btn-on-top{
    width:44px; height:44px; border:0; border-radius:50%; color:var(--ui-ink); font-size:18px;
    background:var(--ui-glass-2); -webkit-backdrop-filter:var(--ui-blur); backdrop-filter:var(--ui-blur);
    box-shadow:0 0 0 1px var(--ui-edge), var(--ui-sh-glass);
  }
}

/* =====================================================================
   21. ХЛЕБНЫЕ КРОШКИ: «›» вместо «/» и «_», 13.5 px, тап-зона выше
   ===================================================================== */
html body .layout[class*="widget-type_"][class*="breadcrumbs_1"] .breadcrumb-wrapper ul > *:not(:last-child)::after{
  content:"›"; opacity:1; margin:0 8px; color:var(--ui-ink-3); font-size:16px; line-height:1; font-family:var(--ui-font); vertical-align:baseline;
}
html body .layout[class*="widget-type_"][class*="breadcrumbs_1"] .breadcrumb-wrapper ul li,
html body .layout[class*="widget-type_"][class*="breadcrumbs_1"] .breadcrumb-wrapper ul li a{ font-size:13.5px; line-height:24px; color:var(--ui-ink-2); }
html body .layout[class*="widget-type_"][class*="breadcrumbs_1"] .breadcrumb-wrapper ul li{ display:inline-flex; align-items:center; vertical-align:middle; min-height:36px; }
html body .layout[class*="widget-type_"][class*="breadcrumbs_1"] .breadcrumb-wrapper ul li a{ display:inline-block; padding:6px 0; }
html body .layout[class*="widget-type_"][class*="breadcrumbs_1"] .breadcrumb-wrapper ul li a:hover{ color:var(--ui-ink); }
html body .layout[class*="widget-type_"][class*="breadcrumbs_1"] .breadcrumb-wrapper ul li .breadcrumb-page{ color:var(--ui-ink); font-weight:600; }
@media (max-width:767.98px){
  html body .layout[class*="widget-type_"][class*="breadcrumbs_1"] .breadcrumb-wrapper ul li,
  html body .layout[class*="widget-type_"][class*="breadcrumbs_1"] .breadcrumb-wrapper ul li a{ font-size:13px; }
  html body .layout[class*="widget-type_"][class*="breadcrumbs_1"] > .layout__content{ padding-top:4px; padding-bottom:4px; }
}

/* =====================================================================
   22. КАРУСЕЛИ: стрелки — стеклянные/белые кружки, точки — зона 24 px
   ===================================================================== */
html body .layout[class*="widget-type_"] .splide__arrow{
  width:44px; height:44px; border-radius:50%; opacity:1; color:var(--ui-ink);
  background:var(--ui-glass-2); -webkit-backdrop-filter:var(--ui-blur); backdrop-filter:var(--ui-blur);
  box-shadow:0 0 0 1px var(--ui-edge), var(--ui-sh-glass);
}
html body .layout[class*="widget-type_"] .splide__arrow:disabled{ opacity:.35; }
html body .layout[class*="widget-type_"] .splide__arrow .splide__arrow-icon{ color:var(--ui-ink); font-size:20px; }
html body .layout[class*="widget-type_"] .special-products__slider-arrow,
html body .layout[class*="widget-type_"] .collections__slider-arrow{
  width:40px; min-width:40px; height:40px; min-height:40px; padding:0; border:0; border-radius:50%;
  background:var(--ui-surface); color:var(--ui-ink); box-shadow:inset 0 0 0 1px var(--ui-line-2); opacity:1;
}
html body .layout[class*="widget-type_"] .special-products__slider-arrow:not(.is-disabled):hover,
html body .layout[class*="widget-type_"] .collections__slider-arrow:not(.is-disabled):hover{ background:var(--ui-surface); color:var(--ui-ink); box-shadow:inset 0 0 0 1px rgba(27,39,56,.3); transform:none; }
html body .layout[class*="widget-type_"] .special-products__slider-arrow.is-disabled{ opacity:.35; }
/* точки: визуально 7 px, тап-зона 24×24 */
html body .layout[class*="widget-type_"] .splide__pagination{ gap:0; }
html body .layout[class*="widget-type_"] .splide__pagination li{ display:inline-flex; margin:0; line-height:0; }
html body .layout[class*="widget-type_"] .splide__pagination__page{
  position:relative; width:7px; height:7px; margin:8.5px; border-radius:999px; opacity:1; transform:none;
  background:rgba(27,39,56,.3); transition:width var(--ui-dur) var(--ui-ease), background-color var(--ui-dur);
}
html body .layout[class*="widget-type_"] .splide__pagination__page::after{ content:""; position:absolute; inset:-8.5px; }
html body .layout[class*="widget-type_"] .splide__pagination__page.is-active{ width:22px; background:var(--ui-ink); transform:none; }
/* на мобайле стрелки каруселей не нужны — листают свайпом */
@media (max-width:767.98px){
  html body .layout[class*="widget-type_"] .special-products__head .special-products__slider-controls{ display:none !important; }
}
/* ---- 30_tile.css ---- */
/* =====================================================================
   30. ПЛИТКА ТОВАРА — одна для листингов, каруселей, поиска, «Вы смотрели»
   (виджеты темы .product-preview). r20, кромка без тени, обложка на #F3F4EF,
   ≤2 стикеров r8, без пустого рейтинга, цена 20/800, промокод одной строкой,
   кнопка-пилюля 44 #467E1C, низ плитки выровнен (margin-top:auto).
   Карточка товара и корзина (pc_*) — свои классы, не затронуты.
   ===================================================================== */
html body .layout[class*="widget-type_"] .product-preview{
  display:flex; flex-direction:column; height:100%; box-sizing:border-box;
  padding:10px 10px 12px; border:0 !important; border-radius:var(--ui-r-card) !important;
  background:var(--ui-surface); box-shadow:0 0 0 1px var(--ui-line); text-align:left;
  transition:box-shadow var(--ui-dur) var(--ui-ease);
}
@media (hover:hover){
  html body .layout[class*="widget-type_"] .product-preview:hover{ box-shadow:0 0 0 1px var(--ui-line), var(--ui-sh-hover); }
}
html body .layout[class*="widget-type_"] .product-preview .product-preview__content{
  display:flex; flex-direction:column; flex:1 1 auto; height:100%; gap:0; padding:0;
}
/* обложка: r14 на #F3F4EF, книга целиком (contain), место резервирует пропорция темы */
html body .layout[class*="widget-type_"] .product-preview .product-preview__area-photo{ margin:0 0 10px; }
html body .layout[class*="widget-type_"] .product-preview .product-preview__photo{ position:relative; margin:0 !important; border-radius:14px; overflow:hidden; }
html body .layout[class*="widget-type_"] .product-preview .product-preview__photo .img-ratio,
html body .layout[class*="widget-type_"] .product-preview .product-preview__photo .img-ratio__inner{ border-radius:14px; background:var(--ui-cover); }
html body .layout[class*="widget-type_"] .product-preview .product-preview__photo img{
  object-fit:contain; border-radius:0 !important; transition:transform 500ms var(--ui-ease);
}
@media (hover:hover){
  html body .layout[class*="widget-type_"] .product-preview:hover .product-preview__photo img{ transform:scale(1.03); }
}
html body .layout[class*="widget-type_"] .product-preview .product-preview__available{ display:none; }
html body .layout[class*="widget-type_"] .product-preview .product-preview__area-sku{ display:none; }

/* стикеры: максимум 2 (скидка + Хит/Новинка/Предзаказ), r8, 12/700 */
html body .layout[class*="widget-type_"] .product-preview .stickers{
  top:8px; left:8px; right:52px; display:flex; flex-wrap:wrap; gap:4px; z-index:2;
}
html body .layout[class*="widget-type_"] .product-preview .stickers .sticker{
  height:22px; margin:0; padding:0 8px; border-radius:var(--ui-r-tag); box-shadow:none;
  display:inline-flex; align-items:center; font:700 12px/1 var(--ui-font); letter-spacing:0; text-transform:none;
}
html body .layout[class*="widget-type_"] .product-preview .stickers .sticker:not(.sticker-sale) ~ .sticker:not(.sticker-sale){ display:none; }
html body .layout[class*="widget-type_"] .product-preview .stickers .sticker.sticker-sale{ order:2; background:var(--ui-sale); color:#fff; }
html body .layout[class*="widget-type_"] .product-preview .stickers .sticker.sticker-sale:empty{ display:none; }
html body .layout[class*="widget-type_"] .product-preview .stickers .sticker.sticker-hit,
html body .layout[class*="widget-type_"] .product-preview .stickers .sticker[data-sticker-title="ХИТ"]{ background:var(--ui-brand); color:#fff; }
html body .layout[class*="widget-type_"] .product-preview .stickers .sticker.sticker-new,
html body .layout[class*="widget-type_"] .product-preview .stickers .sticker[data-sticker-title="Новинка"]{ background:var(--ui-brand-soft); color:var(--ui-ink); }
html body .layout[class*="widget-type_"] .product-preview .stickers .sticker.sticker-preorder{ background:#fff; color:var(--ui-ink); box-shadow:inset 0 0 0 1px var(--ui-line-2); }

/* избранное — белый кружок 36 на обложке */
html body .layout[class*="widget-type_"] .product-preview .favorites_btn,
html body .layout[class*="widget-type_"] .product-preview .favorites_btn:hover{
  top:8px; right:8px; width:36px; min-width:36px; height:36px; padding:0; border:0; border-radius:50%;
  background:rgba(255,255,255,.92); box-shadow:0 0 0 1px var(--ui-line); color:var(--ui-ink-2); z-index:2;
  display:grid; place-items:center; font-size:17px;
}
html body .layout[class*="widget-type_"] .product-preview .favorites_btn::before{ display:none; }
html body .layout[class*="widget-type_"] .product-preview .favorites_btn.favorites-added,
html body .layout[class*="widget-type_"] .product-preview .favorites_btn .icon-favorites-f{ color:var(--ui-sale); }

/* название: 14.5/600, 2 строки */
html body .layout[class*="widget-type_"] .product-preview .product-preview__area-title{ order:1; margin:0; padding:0 2px; }
html body .layout[class*="widget-type_"] .product-preview .product-preview__title{ margin:0; padding:0; text-align:left; }
html body .layout[class*="widget-type_"] .product-preview .product-preview__title a{
  font-size:14.5px; line-height:1.35; font-weight:600; color:var(--ui-ink); text-decoration:none;
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; min-height:2.7em;
}
html body .layout[class*="widget-type_"] .product-preview:not(.is-touch):hover .product-preview__title a{ color:var(--ui-brand-ink); }
/* рейтинг: при 0 отзывов не показываем; заполненные звёзды — #F5B301 */
html body .layout[class*="widget-type_"] .product-preview .product-preview__area-rating{ order:2; margin:4px 0 0; padding:0 2px; }
html body .layout[class*="widget-type_"] .product-preview .product-preview__area-rating:not(:has(.is-active)){ display:none; }
html body .layout[class*="widget-type_"] .product-preview .product-preview__rating-star{ font-size:12px; margin-right:1px; }
html body .layout[class*="widget-type_"] .product-preview .product-preview__rating-star.is-active{ color:var(--ui-star); }
html body .layout[class*="widget-type_"] .product-preview .product-preview__rating-star:not(.is-active){ color:rgba(27,39,56,.18); }
html body .layout[class*="widget-type_"] .product-preview .product-preview__reviews-count{ font-size:12.5px; color:var(--ui-ink-3); }
html body .layout[class*="widget-type_"] .product-preview .product-preview__area-description,
html body .layout[class*="widget-type_"] .product-preview .product-preview__area-variants{ order:3; }

/* низ: цена → промокод → кнопка, всегда у нижнего края плитки */
html body .layout[class*="widget-type_"] .product-preview .product-preview__area-bottom{
  order:4; margin-top:auto; padding:8px 2px 0; display:flex; flex-direction:column; align-items:stretch; gap:8px;
}
html body .layout[class*="widget-type_"] .product-preview .product-preview__area-bottom > .product-preview__price,
html body .layout[class*="widget-type_"] .product-preview .product-preview__area-bottom > .product-preview__price-range{
  margin:0; flex-direction:row-reverse; justify-content:flex-end; align-items:baseline; gap:2px 8px; flex-wrap:wrap; text-align:left;
}
html body .layout[class*="widget-type_"] .product-preview .product-preview__area-bottom > .product-preview__price{ display:flex; }
html body .layout[class*="widget-type_"][style*="--hide-variants:true"] .product-preview .product-preview__area-bottom > .product-preview__price{ display:none; }
html body .layout[class*="widget-type_"] .product-preview .product-preview__price-cur{
  font-size:20px; font-weight:800; letter-spacing:-.01em; color:var(--ui-ink); white-space:nowrap; font-variant-numeric:tabular-nums;
}
html body .layout[class*="widget-type_"] .product-preview .product-preview__price-old{ font-size:13px; font-weight:400; color:var(--ui-ink-3); white-space:nowrap; }
/* промокод — одна строка, жёлтая плашка r8 */
html body .layout[class*="widget-type_"] .product-preview .coupon-label{
  align-self:flex-start; max-width:100%; box-sizing:border-box; height:24px; margin:0; padding:0 8px;
  display:inline-flex; align-items:center; gap:2px; border-radius:var(--ui-r-tag);
  background:var(--ui-promo-bg); color:var(--ui-promo-fg); font-size:12px; font-weight:600; line-height:1;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
html body .layout[class*="widget-type_"] .product-preview .coupon-label .coupon-label__icon,
html body .layout[class*="widget-type_"] .product-preview .coupon-label .coupon-label__text{ text-transform:none; letter-spacing:0; font-weight:700; color:inherit; }
/* кнопки */
html body .layout[class*="widget-type_"] .product-preview .product-preview__controls{ position:static; width:100%; margin:0; padding:0; box-shadow:none; background:transparent; }
html body .layout[class*="widget-type_"] .product-preview .add-cart-counter__btn{
  width:100%; height:var(--ui-cta-h); min-height:0; padding:0 14px; border:0; border-radius:var(--ui-r-pill);
  background:var(--ui-brand); color:#fff; font:700 15px/1 var(--ui-font); gap:8px;
  display:flex; align-items:center; justify-content:center; box-shadow:inset 0 1px 0 rgba(255,255,255,.22);
  transition:background-color var(--ui-dur-fast) linear;
}
html body .layout[class*="widget-type_"] .product-preview .add-cart-counter__btn:hover{ background:var(--ui-brand-h); color:#fff; }
html body .layout[class*="widget-type_"] .product-preview .add-cart-counter__btn .add-cart-counter__btn-label{ position:static; width:auto; height:auto; clip:auto; overflow:visible; }
html body .layout[class*="widget-type_"] .product-preview .add-cart-counter__btn .button__icon{ order:-1; font-size:17px; margin:0; color:#fff; }
html body .layout[class*="widget-type_"] .product-preview .add-cart-counter__controls{
  height:var(--ui-cta-h); border-radius:var(--ui-r-pill); overflow:hidden; background:var(--ui-brand-soft); box-shadow:none;
}
html body .layout[class*="widget-type_"] .product-preview .add-cart-counter__controls-btn{
  width:44px; min-width:44px; height:var(--ui-cta-h); padding:0; border:0; border-radius:0; background:transparent; color:var(--ui-deep); font-size:20px; font-weight:700;
}
html body .layout[class*="widget-type_"] .product-preview .add-cart-counter__detail{
  height:var(--ui-cta-h); border:0; border-radius:0; background:transparent; color:var(--ui-deep); font-size:13px; font-weight:700; padding:0 4px;
}
html body .layout[class*="widget-type_"] .product-preview .product-preview__preorder-btn,
html body .layout[class*="widget-type_"] .product-preview .product-preview__detail-btn,
html body .layout[class*="widget-type_"] .product-preview .product-preview__detail-select-btn,
html body .layout[class*="widget-type_"] .product-preview .product-preview__not-available{
  min-height:var(--ui-cta-h); border-radius:var(--ui-r-pill) !important; font-size:15px; font-weight:700;
}
html body .layout[class*="widget-type_"] .product-preview .product-preview__preorder-btn{
  background:#fff !important; color:var(--ui-deep) !important; border:0 !important; box-shadow:inset 0 0 0 1.5px var(--ui-brand) !important;
}
html body .layout[class*="widget-type_"] .product-preview .product-preview__preorder-btn:hover{ background:var(--ui-brand-soft) !important; color:var(--ui-deep) !important; }
/* ховер-панель кнопок в каруселях (special_products_15/related): не выезжает, всегда в ряду */
html body .layout[class*="widget-type_"] .product-preview .product-preview__controls::before{ display:none; }

/* мобайл: плитка компактнее (как в макете) */
@media (max-width:767.98px){
  html body .layout[class*="widget-type_"] .product-preview{ padding:8px 8px 10px; border-radius:18px !important; }
  html body .layout[class*="widget-type_"] .product-preview .product-preview__title a{ font-size:13.5px; }
  html body .layout[class*="widget-type_"] .product-preview .product-preview__price-cur{ font-size:18px; }
  html body .layout[class*="widget-type_"] .product-preview .product-preview__price-old{ font-size:12px; }
  html body .layout[class*="widget-type_"] .product-preview .add-cart-counter__btn{ font-size:14px; padding:0 10px; }
  html body .layout[class*="widget-type_"] .product-preview .add-cart-counter__btn .button__icon{ display:none; }
  html body .layout[class*="widget-type_"] .product-preview .favorites_btn,
  html body .layout[class*="widget-type_"] .product-preview .favorites_btn:hover{ width:32px; min-width:32px; height:32px; top:6px; right:6px; font-size:15px; }
  html body .layout[class*="widget-type_"] .product-preview .stickers{ top:6px; left:6px; right:42px; }
  html body .layout[class*="widget-type_"] .product-preview .stickers .sticker{ height:20px; padding:0 6px; font-size:11px; }
  html body .layout[class*="widget-type_"] .product-preview .coupon-label{ font-size:11px; height:22px; padding:0 6px; }
  html body .layout[class*="widget-type_"] .product-preview .product-preview__area-bottom{ gap:6px; }
}
/* сетка листинга — воздух */
html body .layout[class*="widget-type_"] .catalog-list{ gap:20px 16px; }
@media (max-width:767.98px){ html body .layout[class*="widget-type_"] .catalog-list{ gap:10px; } }

/* =====================================================================
   31. RetailRocket «Читатели выбирают» / «С этой книгой покупают» / «Интересное…» (P0)
   Разметка чужая (рендерит JS RR) — только CSS по .rr-widget .rr-item*.
   Специфичность (0,3,2)+ выше правил RR .rr-widget[data-s] … (0,3,0).
   ===================================================================== */
html body .rr-widget[data-s] .rr-block-top{ padding:0 0 16px; gap:16px; }
html body .rr-widget[data-s] .rr-widget__title{
  font:800 28px/1.15 var(--ui-font); letter-spacing:-.015em; color:var(--ui-ink); text-transform:none;
}
html body .rr-widget[data-s] .rr-slider-arrow{ gap:8px; column-gap:8px; }
html body .rr-widget[data-s] .rr-arrow{
  width:40px; height:40px; border-radius:50%; display:grid; place-items:center; background:var(--ui-surface);
  box-shadow:inset 0 0 0 1px var(--ui-line-2); color:var(--ui-ink); cursor:pointer;
}
html body .rr-widget[data-s] .rr-arrow svg{ stroke:var(--ui-ink); width:18px; height:18px; }
html body .rr-widget[data-s] .rr-slider-arrow .swiper-button-disabled{ opacity:.35; }
html body .rr-widget[data-s] .rr-swiper-wrapper{ align-items:stretch; }
html body .rr-widget[data-s] .rr-swiper-slide{ height:auto; display:flex; }
html body .rr-widget[data-s] .rr-item{
  display:flex; flex-direction:column; gap:8px; width:100%; box-sizing:border-box;
  padding:10px 10px 12px; border:0; border-radius:var(--ui-r-card); background:var(--ui-surface);
  box-shadow:0 0 0 1px var(--ui-line); text-align:left;
}
html body .rr-widget[data-s] .rr-item__image{
  padding:0; border-radius:14px; overflow:hidden; background:var(--ui-cover); aspect-ratio:4/5;
  display:flex; align-items:center; justify-content:center;
}
html body .rr-widget[data-s] .rr-item__image a{ display:flex; width:100%; height:100%; align-items:center; justify-content:center; }
html body .rr-widget[data-s] .rr-item__image img{ width:100%; height:100%; max-height:none; object-fit:contain; }
html body .rr-widget[data-s] .rr-labels{ top:18px; left:18px; display:flex; gap:4px; flex-wrap:wrap; }
html body .rr-widget[data-s] .rr-label-param,
html body .rr-widget[data-s] .rr-discount{
  height:22px; margin:0; padding:0 8px; border-radius:var(--ui-r-tag); display:inline-flex; align-items:center;
  font:700 12px/1 var(--ui-font); color:#fff;
}
html body .rr-widget[data-s] .rr-label-param{ background:var(--ui-brand); }
html body .rr-widget[data-s] .rr-discount{ order:2; background:var(--ui-sale); }
html body .rr-widget[data-s] .rr-btn-favorite{
  top:18px; right:18px; width:36px; height:36px; z-index:2; background:rgba(255,255,255,.92); box-shadow:0 0 0 1px var(--ui-line);
}
html body .rr-widget[data-s] .rr-btn-favorite svg{ stroke:var(--ui-ink-2); }
html body .rr-widget[data-s] .rr-btn-favorite.active svg{ stroke:var(--ui-sale); fill:var(--ui-sale); }
html body .rr-widget[data-s] .rr-item__name-block{ padding:0 2px; }
html body .rr-widget[data-s] .rr-item__title{
  height:auto; min-height:2.7em; font:600 14.5px/1.35 var(--ui-font); color:var(--ui-ink);
  -webkit-line-clamp:2; text-align:left;
}
/* рейтинг RR всегда из 5 пустых звёзд + «(N)» — шум, не показываем */
html body .rr-widget[data-s] .rr-item-rating{ display:none; }
html body .rr-widget[data-s] .rr-item__block-price{
  margin-top:auto; padding:0 2px; display:flex; flex-direction:row-reverse; justify-content:flex-end; align-items:baseline; gap:2px 8px; flex-wrap:wrap;
}
html body .rr-widget[data-s] .rr-item__price{ font:800 20px/1.2 var(--ui-font); letter-spacing:-.01em; color:var(--ui-ink); white-space:nowrap; }
html body .rr-widget[data-s] .rr-item__old-price{ font-size:13px; color:var(--ui-ink-3); white-space:nowrap; }
html body .rr-widget[data-s] .rr-item__coupon-label{ height:auto; min-height:0; margin:0 2px; }
html body .rr-widget[data-s] .rr-item__coupon-label:not(:has(.rr-item__coupon-label-text)){ display:none; }
html body .rr-widget[data-s] .rr-item__coupon-label-text{
  height:24px; padding:0 8px; border-radius:var(--ui-r-tag); background:var(--ui-promo-bg); color:var(--ui-promo-fg);
  font:600 12px/24px var(--ui-font); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%;
}
html body .rr-widget[data-s] .rr-item__actions{ padding:0; }
html body .rr-widget[data-s] .rr-item__actions .rr-item__actions-buy,
html body .rr-widget[data-s] .rr-item__actions .rr-item__actions-buy-count{
  height:44px; border-radius:var(--ui-r-pill); background:var(--ui-brand); font:700 15px/1 var(--ui-font); color:#fff;
}
html body .rr-widget[data-s] .rr-item__actions .rr-item__actions-buy.active{ display:flex; align-items:center; justify-content:center; gap:8px; }
html body .rr-widget[data-s] .rr-item__actions .rr-item__actions-buy:hover,
html body .rr-widget[data-s] .rr-count-btn:hover,
html body .rr-widget[data-s] .rr-count:hover{ background:var(--ui-brand-h); }
html body .rr-widget[data-s] .rr-item__actions .rr-item__actions-buy-count{ overflow:hidden; }
html body .rr-widget[data-s] .rr-btn-minus{ border-radius:999px 0 0 999px; border-right-color:rgba(255,255,255,.3); }
html body .rr-widget[data-s] .rr-btn-plus{ border-radius:0 999px 999px 0; border-left-color:rgba(255,255,255,.3); }
html body .rr-widget[data-s] .rr-count{ align-items:center; justify-content:center; font-size:12px; line-height:1.2; }
html body .rr-widget[data-s] .swiper-pagination-bullet{ width:7px; height:7px; margin:0 8px; background:rgba(27,39,56,.3); position:relative; }
html body .rr-widget[data-s] .swiper-pagination-bullet::after{ content:""; position:absolute; inset:-8px; }
html body .rr-widget[data-s] .swiper-pagination-bullet.swiper-pagination-bullet-active{ background:var(--ui-ink); width:22px; border-radius:999px; }
@media (max-width:767.98px){
  html body .rr-widget[data-s] .rr-widget__title{ font-size:22px; }
  html body .rr-widget[data-s] .rr-item{ padding:8px 8px 10px; border-radius:18px; }
  html body .rr-widget[data-s] .rr-labels{ top:14px; left:14px; }
  html body .rr-widget[data-s] .rr-btn-favorite{ top:14px; right:14px; width:32px; height:32px; }
  html body .rr-widget[data-s] .rr-item__title{ font-size:13.5px; }
  html body .rr-widget[data-s] .rr-item__price{ font-size:18px; }
  html body .rr-widget[data-s] .rr-item__actions .rr-item__actions-buy,
  html body .rr-widget[data-s] .rr-item__actions .rr-item__actions-buy-count{ height:40px; font-size:14px; }
  html body .rr-widget[data-s] .rr-item__actions .rr-item__actions-buy .rr-cart-icon{ display:none; }
  html body .rr-widget[data-s] .rr-item__coupon-label-text{ font-size:11px; height:22px; line-height:22px; }
}
/* ---- 40_catalog.css ---- */
/* =====================================================================
   40. КАТАЛОГ: H1, чипсы подкатегорий, сортировка-сегменты, фильтры, пагинация
   (collection.liquid и 56 system-template — одни и те же виджеты)
   ===================================================================== */
html body .layout[class*="widget-type_"][class*="collection_sort_1"] .collection-toolbar{ align-items:center; gap:14px 16px; flex-wrap:wrap; margin:0; }
html body .layout[class*="widget-type_"][class*="collection_sort_1"] > .layout__content{ padding-top:6px; padding-bottom:10px; }

/* сортировка: на ПК — сегмент-капсула (строит cm_ui_js из select; select остаётся для формы) */
html body .layout[class*="widget-type_"][class*="collection_sort_1"] .collection-sort.cm-ui-has-seg .select-wrapper{
  position:absolute !important; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap;
}
.cm-ui-seg{ display:flex; gap:4px; padding:4px; border-radius:999px; background:rgba(27,39,56,.06); overflow-x:auto; scrollbar-width:none; max-width:100%; }
.cm-ui-seg::-webkit-scrollbar{ display:none; }
.cm-ui-seg button{
  height:36px; padding:0 16px; border:0; border-radius:999px; background:transparent; cursor:pointer; white-space:nowrap;
  font:600 14.5px/1 var(--ui-font); color:var(--ui-body); transition:background-color var(--ui-dur-fast), color var(--ui-dur-fast);
}
.cm-ui-seg button:hover{ color:var(--ui-ink); }
.cm-ui-seg button[aria-pressed="true"]{ background:#fff; color:var(--ui-ink); font-weight:800; box-shadow:0 1px 3px rgba(27,39,56,.14); }
/* селект сортировки на мобайле — белая пилюля с кромкой */
html body .layout[class*="widget-type_"][class*="collection_sort_1"] .select-wrapper{ border-radius:999px; background:#fff; box-shadow:inset 0 0 0 1px var(--ui-line-2); }
html body .layout[class*="widget-type_"][class*="collection_sort_1"] .select-wrapper select.form-control{
  height:44px; padding:0 40px 0 18px; border:0; border-radius:999px; background:transparent; font-size:14.5px; font-weight:700; color:var(--ui-ink); box-shadow:none;
}

/* чипсы подкатегорий (seo_filters): белые пилюли 40 с кромкой */
html body .layout[class*="widget-type_"][class*="seo_filters_1"] > .layout__content{ padding-top:0; padding-bottom:14px; }
html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chips{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chip{
  display:inline-flex; align-items:center; height:40px; margin:0; padding:0; border:0; border-radius:999px;
  background:#fff; box-shadow:inset 0 0 0 1px var(--ui-line-2);
}
html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chip.hidden-filter{ display:none; }
html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chip a{
  display:inline-flex; align-items:center; height:40px; padding:0 16px; color:var(--ui-ink); font-size:14.5px; font-weight:600; line-height:1; white-space:nowrap; text-decoration:none;
}
html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chip:hover{ background:#fff; box-shadow:inset 0 0 0 1px rgba(27,39,56,.3); }
html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chip.is-active,
html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chip.active{ background:var(--ui-ink); box-shadow:none; }
html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chip.is-active a,
html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chip.active a{ color:#fff; }
html body .layout[class*="widget-type_"][class*="seo_filters_1"] .toggle-filters-button{ display:inline-flex; align-items:center; height:40px; }
html body .layout[class*="widget-type_"][class*="seo_filters_1"] .toggle-filters-button a{
  display:inline-flex; align-items:center; height:40px; padding:0 6px; color:var(--ui-brand-ink); font-size:14.5px; font-weight:700; text-decoration:none; background:transparent;
}
@media (max-width:767.98px){
  /* мобайл: одна строка с горизонтальной прокруткой, без «Показать ещё» */
  html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chips{
    flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; margin:0 -15px; padding:2px 15px; scroll-snap-type:x proximity; scroll-padding-inline:15px;
  }
  html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chips::-webkit-scrollbar{ display:none; }
  html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chip,
  html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chip.hidden-filter{ display:inline-flex; flex:none; height:36px; scroll-snap-align:start; }
  html body .layout[class*="widget-type_"][class*="seo_filters_1"] .seo-chip a{ height:36px; padding:0 14px; font-size:14px; }
  html body .layout[class*="widget-type_"][class*="seo_filters_1"] .toggle-filters-button{ display:none; }
}

/* промо-баннер коллекции: r20; cm_ui_js переносит его после первого ряда товаров */
html body .layout[class*="widget-type_"][class*="page_banner_3"] .banner-list__item-image,
html body .layout[class*="widget-type_"][class*="page_banner_3"] .banner-list__item-image img{ border-radius:20px; overflow:hidden; display:block; }
.cm-ui-banner-slot{ grid-column:1 / -1; display:block; min-width:0; }
.cm-ui-banner-slot a, .cm-ui-banner-slot img{ display:block; width:100%; height:auto; border-radius:20px; }
.cm-ui-banner-slot picture{ display:block; }
html body .layout[class*="widget-type_"][class*="page_banner_3"].cm-ui-moved{ display:none !important; }
@media (max-width:767.98px){
  .cm-ui-banner-slot a, .cm-ui-banner-slot img{ border-radius:18px; }
}

/* =====================================================================
   41. ФИЛЬТРЫ ПК: панель r20 без рамки и тени, строки 40, чекбокс 20 r6
   ===================================================================== */
@media (min-width:768px){
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter{
    border:0; border-radius:20px; background:#fff; box-shadow:0 0 0 1px var(--ui-line); overflow:visible;
  }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter__head{ padding:16px 18px 10px; border-bottom:0; }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter__head-title.heading{ font:800 18px/1.2 var(--ui-font); color:var(--ui-ink); letter-spacing:-.01em; }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-item{ margin:0 18px; padding:6px 0; border-bottom:0; border-top:1px solid var(--ui-line); }
}
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-item__head{ padding:10px 0; border-radius:0; background:transparent; }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-item__name,
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-item__name .text{ padding:0; font:800 15px/1.3 var(--ui-font); color:var(--ui-ink); background:transparent; }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-item__name:hover{ background:transparent; }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-item__content{ padding:0 0 10px; }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-option{ display:flex; align-items:center; min-height:40px; cursor:pointer; }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-option__content{ display:flex; align-items:center; gap:10px; width:100%; min-height:40px; }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-option__btn{
  width:20px; min-width:20px; height:20px; margin:0; border:1.5px solid rgba(27,39,56,.3); border-radius:6px; background:#fff;
}
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-option__field:checked + .filter-option__content .filter-option__btn{ background:var(--ui-brand); border-color:var(--ui-brand); color:#fff; }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-option__label{ font-size:14.5px; color:var(--ui-ink); }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-option .count{ margin-left:auto; font-size:12.5px; color:var(--ui-ink-3); }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-range__field,
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-item__search-field{
  height:42px; border:0; border-radius:12px; background:var(--ui-surface-2); box-shadow:none; font-size:15px; font-weight:500; color:var(--ui-ink);
}
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-range .noUi-target{ height:4px; border:0; border-radius:999px; background:rgba(27,39,56,.12); box-shadow:none; }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-range .noUi-connect{ background:var(--ui-brand); }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-range .noUi-handle{ border:0; background:transparent; box-shadow:none; }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-range .noUi-handle::before{
  width:22px; height:22px; border:0; border-radius:50%; background:#fff; box-shadow:0 0 0 1px rgba(27,39,56,.14), 0 3px 8px rgba(27,39,56,.22);
}
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter__controls{
  position:sticky; bottom:0; z-index:2; padding:12px 18px 16px; border-top:1px solid var(--ui-line); background:#fff; border-radius:0 0 20px 20px;
}
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter__controls .button{
  width:100%; height:48px; border:0; border-radius:999px; background:var(--ui-ink); color:#fff; font:700 15px/1 var(--ui-font); box-shadow:none;
}
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter__controls .button:hover{ background:#2c3a4f; }
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter__reset-btn{
  height:40px; border:0; border-radius:999px; background:transparent; color:var(--ui-brand-ink); font-weight:800; font-size:14px;
}
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .reveal-button,
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] [class*="show-more"]{ color:var(--ui-brand-ink); font-weight:700; }
/* пустой фильтр цены (min = max, например пластинки) */
html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter-item_price.cm-ui-flat{ display:none; }

/* =====================================================================
   42. МОБИЛЬНЫЙ ФИЛЬТР: шторка снизу r28 (штатная форма темы .filter.is-show-mobile)
   ===================================================================== */
@media (max-width:767.98px){
  /* кнопка «Фильтры» — графитовая капсула с подписью */
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .show-mobile-filter-btn{
    height:44px; width:auto; min-width:0; padding:0 18px; gap:8px; border:0; border-radius:999px; background:var(--ui-ink); color:#fff;
    display:inline-flex; align-items:center; font:700 14.5px/1 var(--ui-font);
  }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .show-mobile-filter-btn::after{ content:"Фильтры"; }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .show-mobile-filter-btn .icon{ font-size:17px; color:#fff; }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .show-mobile-filter-btn__bage{ background:var(--ui-brand-light); color:var(--ui-strip-ink); }

  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] form.filter{
    top:auto !important; bottom:0; left:0 !important; right:0; width:100% !important; height:auto !important; max-height:88dvh;
    display:flex; flex-direction:column; border-radius:28px 28px 0 0; background:#fff; overflow:hidden;
    transform:translateY(105%); transition:transform 420ms cubic-bezier(.32,.72,0,1); z-index:1045 !important;
    box-shadow:0 -10px 40px -10px rgba(27,39,56,.3);
  }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] form.filter.is-show-mobile{ transform:none; }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] form.filter .filter__content{
    flex:1 1 auto; min-height:0; overflow-y:auto; overscroll-behavior:contain; padding:0 20px; height:auto;
  }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] form.filter .filter__head{
    position:sticky; top:0; z-index:3; display:flex; align-items:center; justify-content:space-between;
    margin:0 -20px; padding:22px 12px 8px 20px; background:#fff; border:0;
  }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] form.filter .filter__head::before{
    content:""; position:absolute; left:50%; top:8px; width:40px; height:5px; margin-left:-20px; border-radius:9px; background:rgba(27,39,56,.2);
  }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] form.filter .filter__head-title.heading{ font:800 20px/1.2 var(--ui-font); color:var(--ui-ink); }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] .filter__hide-mobile-filter-btn{
    position:static; width:44px; height:44px; min-width:44px; padding:0; border:0; border-radius:50%;
    background:var(--ui-surface-2); color:var(--ui-ink); display:grid; place-items:center;
  }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] form.filter .filter-item{ margin:0; padding:4px 0; border:0; border-top:1px solid var(--ui-line); }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] form.filter .filter__controls{
    position:static; flex:none; margin:0; padding:12px 16px calc(16px + env(safe-area-inset-bottom,0px)); border-top:1px solid var(--ui-line); border-radius:0; background:#fff;
  }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] form.filter .filter__controls .button{
    height:52px; background:var(--ui-brand); font:800 15.5px/1 var(--ui-font);
  }
  html body .layout[class*="widget-type_"][class*="sidebar_filter_3"] form.filter .filter__controls .button:hover{ background:var(--ui-brand-h); }
}
.cm-ui-scrim{ position:fixed; inset:0; z-index:1044; background:rgba(27,39,56,.38); opacity:0; pointer-events:none; transition:opacity 300ms ease; }
.cm-ui-scrim.is-on{ opacity:1; pointer-events:auto; }
@media (min-width:768px){ .cm-ui-scrim{ display:none; } }

/* =====================================================================
   43. «Показать ещё» и пагинация — кружки 44, текущая графитом
   ===================================================================== */
html body .layout[class*="widget-type_"][class*="infinity_products_button_1"] .infinity-products-controls__btn{
  height:48px; min-height:48px; padding:0 28px; border:0; border-radius:999px; background:#fff; box-shadow:inset 0 0 0 1px var(--ui-line-2);
  color:var(--ui-ink); font:700 15px/48px var(--ui-font); text-decoration:none;
}
html body .layout[class*="widget-type_"][class*="infinity_products_button_1"] .infinity-products-controls__btn:hover{ background:#fff; box-shadow:inset 0 0 0 1px rgba(27,39,56,.3); }
html body .layout[class*="widget-type_"][class*="pagination_2"] .pagination{ gap:6px; }
html body .layout[class*="widget-type_"][class*="pagination_2"] .pagination-items{ display:flex; gap:6px; }
html body .layout[class*="widget-type_"][class*="pagination_2"] .pagination-link,
html body .layout[class*="widget-type_"][class*="pagination_2"] .pagination-span{
  min-width:44px; width:auto; height:44px; margin:0; padding:0 12px; border:0; border-radius:999px; background:#fff;
  box-shadow:inset 0 0 0 1px var(--ui-line-2); color:var(--ui-ink); font:700 15px/44px var(--ui-font);
}
html body .layout[class*="widget-type_"][class*="pagination_2"] .pagination-link:hover{ background:#fff; box-shadow:inset 0 0 0 1px rgba(27,39,56,.3); }
html body .layout[class*="widget-type_"][class*="pagination_2"] .pagination-span.disabled{ background:var(--ui-ink) !important; color:#fff !important; box-shadow:none; opacity:1; }
html body .layout[class*="widget-type_"][class*="pagination_2"] .pagination-next,
html body .layout[class*="widget-type_"][class*="pagination_2"] .pagination-prev{
  width:44px; min-width:44px; height:44px; padding:0; border:0; border-radius:50%; background:#fff; box-shadow:inset 0 0 0 1px var(--ui-line-2); color:var(--ui-ink);
}
html body .layout[class*="widget-type_"][class*="pagination_2"] .pagination-next:hover,
html body .layout[class*="widget-type_"][class*="pagination_2"] .pagination-prev:hover{ background:var(--ui-ink); color:#fff; }
html body .layout[class*="widget-type_"][class*="pagination_2"] .pagination-void{ min-width:24px; line-height:44px; color:var(--ui-ink-3); }

/* =====================================================================
   44. SEO-текст коллекции: карточка r24, свёрнут до 4 строк (весь текст в DOM)
   (свёртка .seo-desc-collapse уже есть в теме — только оформление и высота)
   ===================================================================== */
html body .layout[class*="widget-type_"][class*="collection_description"] > .layout__content{ padding-top:20px; }
html body .layout[class*="widget-type_"][class*="collection_description"] .static-text{
  padding:28px 32px; border-radius:24px; background:#fff; box-shadow:0 0 0 1px var(--ui-line); color:var(--ui-body); font-size:16px; line-height:1.65;
}
html body .layout[class*="widget-type_"][class*="collection_description"] .static-text :is(h2,h3){ color:var(--ui-ink); font-weight:800; letter-spacing:-.01em; margin-top:0; }
html body .layout[class*="widget-type_"][class*="collection_description"] .static-text h2{ font-size:24px; line-height:1.25; margin-bottom:10px; }
html body .layout[class*="widget-type_"][class*="collection_description"] .static-text h3{ font-size:18px; margin:18px 0 8px; }
html body .layout[class*="widget-type_"][class*="collection_description"] .seo-desc-block__inner{ max-width:72ch; }
html body .layout[class*="widget-type_"][class*="collection_description"] .seo-desc-toggle{
  display:inline-flex; align-items:center; gap:6px; height:40px; margin-top:12px; padding:0 16px; border:0; border-radius:999px;
  background:#fff; box-shadow:inset 0 0 0 1px var(--ui-line-2); color:var(--ui-ink); font:700 14px/1 var(--ui-font); cursor:pointer;
}
html body .layout[class*="widget-type_"][class*="collection_description"] .seo-desc-toggle:hover{ box-shadow:inset 0 0 0 1px rgba(27,39,56,.3); }
@media (max-width:767.98px){
  html body .layout[class*="widget-type_"][class*="collection_description"] .static-text{ padding:20px 18px; border-radius:20px; font-size:15px; }
  html body .layout[class*="widget-type_"][class*="collection_description"] .static-text h2{ font-size:20px; }
}
.cm-ui-only-pc{ display:block; } .cm-ui-only-m{ display:none; }
@media (max-width:767.98px){ .cm-ui-only-pc{ display:none; } .cm-ui-only-m{ display:block; } }

/* 24.10 (правка владельца): сетка листинга как в макете — 4 колонки на ≥1280, 3 на 1024–1279 */
@media (min-width:1280px){
  html body .layout[class*="widget-type_"][class*="catalog_1"] .catalog-list.grid-list{grid-template-columns:repeat(4,minmax(0,1fr))!important}
}
@media (min-width:1024px) and (max-width:1279.98px){
  html body .layout[class*="widget-type_"][class*="catalog_1"] .catalog-list.grid-list{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
/* ---- 50_pages.css ---- */
/* =====================================================================
   50. ПОИСК: без пустой левой колонки 330 px (P0), заголовок 36/800
   ===================================================================== */
@media (min-width:768px){
  html body .page_layout.page_layout_normal_left:not(:has(> aside .layout)) > aside{ display:none; }
  html body .page_layout.page_layout_normal_left:not(:has(> aside .layout)) > main{ grid-column:2 / -2; }
}
html body[data-theme-template="search"] .layout[class*="widget-type_"][class*="page_title_1"] h1.page-headding span{ color:var(--ui-ink-2); font-weight:700; }
html body[data-theme-template="search"] .layout[class*="widget-type_"][class*="page_title_1"] > .layout__content{ padding-bottom:16px; }
/* поиск: 4 колонки на ПК */
@media (min-width:1101px){
  html body[data-theme-template="search"] .layout[class*="widget-type_"][class*="catalog_1"] .catalog-list{ grid-template-columns:repeat(4,minmax(0,1fr)); }
}
/* пустой результат */
html body .layout[class*="widget-type_"] .empty-catalog-message{
  padding:28px; border-radius:20px; background:#fff; box-shadow:0 0 0 1px var(--ui-line); color:var(--ui-ink-2); font-size:15.5px;
}

/* =====================================================================
   51. БЛОГ: лента карточками r20, рубрики — чипсы-пилюли, без CAPS
   ===================================================================== */
html body .layout[class*="widget-type_"][class*="blog_2"] .tagcloud{ display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 4px; }
html body .layout[class*="widget-type_"][class*="blog_2"] .tagcloud a.button{
  height:40px; min-height:0; margin:0; padding:0 16px; border:0; border-radius:999px; background:#fff; color:var(--ui-ink);
  box-shadow:inset 0 0 0 1px var(--ui-line-2); font:600 14.5px/40px var(--ui-font); text-transform:none;
}
html body .layout[class*="widget-type_"][class*="blog_2"] .tagcloud a.button:hover,
html body .layout[class*="widget-type_"][class*="blog_2"] .tagcloud a.button.is-active,
html body .layout[class*="widget-type_"][class*="blog_2"] .tagcloud a.button.active{ background:var(--ui-brand-soft); color:var(--ui-a712-ink); box-shadow:none; }
html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list{ gap:20px; align-items:stretch; }
html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list__item{
  display:flex; flex-direction:column; gap:8px; margin:0; padding:0 0 18px; border-radius:20px; overflow:hidden;
  background:#fff; box-shadow:0 0 0 1px var(--ui-line); transition:box-shadow var(--ui-dur) var(--ui-ease);
}
@media (hover:hover){ html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list__item:hover{ box-shadow:0 0 0 1px var(--ui-line), var(--ui-sh-hover); } }
html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list__item-photo{ margin:0 0 6px; border-radius:0; }
html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list__item-photo img{ object-fit:cover; }
html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list__item > :not(.blog-list__item-photo){ padding:0 18px; }
html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list__item-title a{
  font:800 17px/1.3 var(--ui-font); color:var(--ui-ink); text-decoration:none; text-transform:none;
}
html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list__item-title a:hover{ color:var(--ui-brand-ink); }
html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list__item-description{
  font-size:14.5px; line-height:1.5; color:var(--ui-ink-2); display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list__item-tag-list{ margin-top:auto; display:flex; flex-wrap:wrap; gap:6px; }
html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list__item-tag{
  display:inline-flex; align-items:center; height:28px; padding:0 10px; border-radius:8px; background:var(--ui-surface-2);
  color:var(--ui-body); font-size:12.5px; font-weight:700; text-decoration:none;
}
@media (max-width:767.98px){
  html body .layout[class*="widget-type_"][class*="blog_2"] .tagcloud{ flex-wrap:nowrap; overflow-x:auto; scrollbar-width:none; margin:12px -15px 0; padding:0 15px; }
  html body .layout[class*="widget-type_"][class*="blog_2"] .tagcloud a.button{ flex:none; height:36px; line-height:36px; font-size:14px; }
  html body .layout[class*="widget-type_"][class*="blog_2"] .blog-list{ gap:14px; }
}

/* =====================================================================
   52. СТАТЬЯ: колонка 760, H1 40/800, обложки и картинки r20, текст 18/1.65
   ===================================================================== */
html body .layout[class*="widget-type_"] .article{ max-width:760px; margin:0 auto; }
html body .layout[class*="widget-type_"] .article > h1.heading{ font-size:40px; line-height:1.12; letter-spacing:-.025em; margin:8px 0 22px; }
html body .layout[class*="widget-type_"] .article-content.static-text{ font-size:18px; line-height:1.65; color:var(--ui-body); }
html body .layout[class*="widget-type_"] .article-content.static-text :is(h2,h3){ color:var(--ui-ink); font-weight:800; letter-spacing:-.015em; line-height:1.2; margin:1.6em 0 .5em; text-transform:none; }
html body .layout[class*="widget-type_"] .article-content.static-text h2{ font-size:28px; }
html body .layout[class*="widget-type_"] .article-content.static-text h3{ font-size:21px; }
html body .layout[class*="widget-type_"] .article-content.static-text img{ max-width:100%; height:auto; border-radius:20px; }
html body .layout[class*="widget-type_"] .article-content.static-text blockquote{ margin:1.2em 0; padding:16px 20px; border:0; border-radius:16px; background:var(--ui-brand-soft); color:var(--ui-ink); }
html body .layout[class*="widget-type_"] .article-content.static-text a:not([class]){ color:var(--ui-brand-ink); text-decoration:underline; text-underline-offset:3px; text-decoration-thickness:1px; }
/* оглавление-карточка, если редактор поставил список-якоря (ul/ol из ссылок #…) */
html body .layout[class*="widget-type_"] .article-content.static-text :is(ul,ol):has(> li > a[href^="#"]){
  padding:16px 18px 16px 36px; border-radius:20px; background:#fff; box-shadow:0 0 0 1px var(--ui-line); font-size:15.5px;
}
@media (max-width:767.98px){
  html body .layout[class*="widget-type_"] .article > h1.heading{ font-size:28px; line-height:1.15; }
  html body .layout[class*="widget-type_"] .article-content.static-text{ font-size:17px; }
  html body .layout[class*="widget-type_"] .article-content.static-text h2{ font-size:23px; }
  html body .layout[class*="widget-type_"] .article-content.static-text img{ border-radius:16px; }
}

/* =====================================================================
   53. ИНФОСТРАНИЦЫ (доставка/оплата, контакты, об издательстве): карточки r20/r24,
   одно семейство плашек, без цветной полосы слева. Вёрстка .dp/.dcard (09.2026) не ломаем.
   ===================================================================== */
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text{ color:var(--ui-body); }
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text :is(.dcard,.card,.discount-card,.two-col > div,.contact-card,.ccard,[class*="contact"] > div){
  border:0 !important; border-left:0 !important; border-radius:24px !important; background:#fff !important; box-shadow:0 0 0 1px var(--ui-line) !important;
}
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text .free-ship{
  border:0 !important; border-radius:24px !important; background:var(--ui-deep) !important; color:#fff !important; box-shadow:none !important;
}
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text .free-ship :is(.free-ship-title,.free-ship-sub,div){ color:#fff !important; }
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text .free-ship .free-ship-icon{ background:rgba(255,255,255,.14) !important; border-radius:16px !important; color:#fff !important; }
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text .free-ship svg{ color:#fff; stroke:currentColor; }
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text .promo-notice{
  border:0 !important; border-radius:16px !important; background:var(--ui-promo-bg) !important; color:var(--ui-promo-fg) !important;
}
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text :is(.info-note,.pvz-item,.step,.drow){ border-radius:16px; }
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text .info-note{ background:var(--ui-surface-2) !important; border:0 !important; }
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text .sec-title{ font-size:20px; font-weight:800; color:var(--ui-ink); letter-spacing:-.01em; }
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text :is(h2,h3){ color:var(--ui-ink); font-weight:800; letter-spacing:-.01em; text-transform:none; }
/* любые карточки с цветной полосой слева (контакты 09.2026) — без полосы */
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text [style*="border-left"]{ border-left:0 !important; }
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text a[href^="tel:"],
html body .layout[class*="widget-type_"][class*="page_content_1"] .static-text a[href^="mailto:"]{ color:var(--ui-brand-ink); font-weight:700; }

/* =====================================================================
   54. 404 (page_404.liquid): иллюстрация, поиск-капсула, «На главную», разделы
   ===================================================================== */
.cm-ui-404{ display:flex; flex-direction:column; align-items:center; text-align:center; max-width:480px; margin:0 auto; padding:48px 0 56px; }
.cm-ui-404__ill{ width:176px; height:176px; border-radius:50%; background:var(--ui-brand-soft); display:grid; place-items:center; margin-bottom:22px; }
.cm-ui-404__ill b{ font:800 56px/1 var(--ui-font); letter-spacing:-.03em; color:var(--ui-brand-ink); }
.cm-ui-404 h1.cm-ui-h1{ margin:0 0 8px; }
.cm-ui-404 p{ margin:0 0 22px; font-size:15.5px; line-height:1.55; color:var(--ui-ink-2); }
.cm-ui-404__search{ position:relative; width:100%; margin:0 0 12px; }
.cm-ui-404__search input{
  width:100%; box-sizing:border-box; height:48px; padding:0 56px 0 20px; border:0; border-radius:999px; background:#fff;
  box-shadow:inset 0 0 0 1px var(--ui-line-2); font:500 16px/1 var(--ui-font); color:var(--ui-ink); outline:0;
}
.cm-ui-404__search input:focus{ box-shadow:inset 0 0 0 1.5px var(--ui-brand), 0 0 0 4px rgba(70,126,28,.14); }
.cm-ui-404__search button{ position:absolute; right:6px; top:6px; width:36px; height:36px; border:0; border-radius:50%; background:var(--ui-brand); color:#fff; display:grid; place-items:center; cursor:pointer; }
.cm-ui-404__search button svg{ width:18px; height:18px; }
a.cm-ui-404__home, a.cm-ui-404__home:visited{
  display:flex; align-items:center; justify-content:center; width:100%; height:52px; margin:0 0 22px; border-radius:999px;
  background:var(--ui-brand); color:#fff; font:800 15.5px/1 var(--ui-font); text-decoration:none; box-shadow:inset 0 1px 0 rgba(255,255,255,.22);
}
a.cm-ui-404__home:hover{ background:var(--ui-brand-h); color:#fff; }
.cm-ui-404__chips{ display:flex; flex-wrap:wrap; justify-content:center; gap:8px; }
.cm-ui-404__chips a{
  display:inline-flex; align-items:center; height:40px; padding:0 16px; border-radius:999px; background:#fff; box-shadow:inset 0 0 0 1px var(--ui-line-2);
  color:var(--ui-ink); font:700 14px/1 var(--ui-font); text-decoration:none;
}
.cm-ui-404__chips a:hover{ box-shadow:inset 0 0 0 1px rgba(27,39,56,.3); color:var(--ui-ink); }
/* RR-карусели 404 — в контейнере, не вылезают за край */
html body[data-theme-template="page_404"] main .rr-widget,
html body[data-theme-template="page_404"] .page_layout > main > div:not(.layout){ max-width:1320px; margin-left:auto; margin-right:auto; padding-left:var(--layout-side-padding,40px); padding-right:var(--layout-side-padding,40px); box-sizing:border-box; overflow:hidden; }
@media (max-width:767.98px){
  .cm-ui-404{ padding:28px 0 36px; }
  .cm-ui-404__ill{ width:140px; height:140px; }
  html body[data-theme-template="page_404"] main .rr-widget,
  html body[data-theme-template="page_404"] .page_layout > main > div:not(.layout){ padding-left:15px; padding-right:15px; }
}

/* =====================================================================
   55. КАРТОЧКА ТОВАРА и КОРЗИНА (pc_card / pc_cart 23.10) — только цвета.
   Алиасы --pc-* уже в cm_ui_head; здесь — «С этой книгой покупают»/«Посмотрите также» (RR) берут плитку из 31.
   ===================================================================== */

/* 24.10 (правка владельца): галочка согласия в формах подписки/обратной связи — видна в обоих состояниях */
html body .layout[class*="widget-type_"][class*="feedback"] .agree__btn{width:22px!important;height:22px!important;min-width:22px;border:2px solid currentColor!important;border-radius:6px!important;background:transparent!important;color:transparent!important;display:inline-flex!important;align-items:center;justify-content:center;font-size:14px}
html body .layout[class*="widget-type_"][class*="feedback"] .agree__field:checked+.agree__content .agree__btn{background:var(--ui-brand)!important;border-color:var(--ui-brand)!important;color:#fff!important}
/* ---- 55_pdp.css ---- */
/* =====================================================================
   55. КАРТОЧКА ТОВАРА (pc_card 23.10 — эталон, не перерисовываем): только цвета окружения.
   Характеристики: ссылки зелёным без подчёркивания (было малиновым подчёркнутым); стикеры — цвета iOS 27.
   ===================================================================== */
html body .layout[class*="widget-type_"][class*="product_4"] .product__property-value a,
html body .layout[class*="widget-type_"][class*="product_4"] .product__property-value .property-link{ color:var(--ui-brand-ink); text-decoration:none; }
html body .layout[class*="widget-type_"][class*="product_4"] .product__property-value a:hover{ text-decoration:underline; text-underline-offset:3px; }
html body .layout[class*="widget-type_"] .product .stickers .sticker{ border-radius:var(--ui-r-tag); box-shadow:none; font-weight:700; }
html body .layout[class*="widget-type_"] .product .stickers .sticker.sticker-new{ background:var(--ui-brand-soft); color:var(--ui-ink); }
html body .layout[class*="widget-type_"] .product .stickers .sticker.sticker-hit{ background:var(--ui-brand); color:#fff; }
html body .layout[class*="widget-type_"] .product .stickers .sticker.sticker-sale{ background:var(--ui-sale); color:#fff; }
/* ---- 60_footer.css ---- */
/* =====================================================================
   60. ФУТЕР: белый, одна hairline, 5 колонок (Каталог · Покупателям · О нас · Правовая · Связаться)
   Колонку «Каталог» вставляет cm_ui_js из <template>; ссылки остальных колонок — как в админке.
   ===================================================================== */
html body footer .layout[class*="widget-type_"][class*="widget_v4_delimeters"]{ display:none; }
html body footer > .layout[class*="widget-type_"][class*="footer_18"]{ background:#fff; box-shadow:0 -1px 0 var(--ui-line); margin-top:56px; }
html body footer > .layout[class*="widget-type_"][class*="footer_18"] > .layout__content{ background:transparent; }
html body .layout[class*="widget-type_"][class*="footer_18"] .footer-top{ border-top:0; }
html body .layout[class*="widget-type_"][class*="footer_18"] .menu-title{
  margin:0 0 12px; font:800 15px/1.3 var(--ui-font); letter-spacing:-.005em; color:var(--ui-ink); text-transform:none;
}
html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-menu .menu-item a.menu-link,
html body .layout[class*="widget-type_"][class*="footer_18"] .menu-link{
  display:block; margin:0; padding:5px 0; font-size:14.5px; line-height:1.45; font-weight:400; color:var(--ui-body); text-decoration:none;
}
html body .layout[class*="widget-type_"][class*="footer_18"] .menu-link:hover{ color:var(--ui-brand-ink); }
html body .layout[class*="widget-type_"][class*="footer_18"] .menu-link.link-current{ color:var(--ui-ink); font-weight:600; }
html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-social .title,
html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-social .title *{
  font-family:var(--ui-font) !important; font-style:normal !important; font-size:15px !important; font-weight:800 !important; color:var(--ui-ink) !important;
}
html body .layout[class*="widget-type_"][class*="footer_18"] .social-items{ display:flex; gap:8px; margin-top:10px; }
html body .layout[class*="widget-type_"][class*="footer_18"] .social-img-item{ margin:0; }
html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-social .social-img-item .icon-link{
  width:44px; height:44px; border-radius:50%; display:grid; place-items:center; background:var(--ui-bg); box-shadow:none; color:var(--ui-ink); font-size:18px;
}
html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-social .social-img-item .icon-link:hover{ background:var(--ui-brand-soft); color:var(--ui-deep); }
html body .layout[class*="widget-type_"][class*="footer_18"] .footer__phone a,
html body .layout[class*="widget-type_"][class*="footer_18"] .footer__phone-value{ font:800 18px/1.3 var(--ui-font); color:var(--ui-ink); text-decoration:none; font-variant-numeric:tabular-nums; }
html body .layout[class*="widget-type_"][class*="footer_18"] .phone-info,
html body .layout[class*="widget-type_"][class*="footer_18"] .phone-info *{ font-family:var(--ui-font) !important; font-style:normal !important; font-size:13.5px !important; color:var(--ui-ink-2) !important; text-align:left !important; }
html body .layout[class*="widget-type_"][class*="footer_18"] .footer-bottom{ border-top:1px solid var(--ui-line); padding:18px 0 8px; align-items:center; gap:16px; }
html body .layout[class*="widget-type_"][class*="footer_18"] .footer__logo img{ max-height:44px; width:auto; }
html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-pay{ display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-pay .pay-img-item{
  height:36px; margin:0; padding:0 12px; border-radius:999px; background:var(--ui-bg); display:grid; place-items:center;
}
html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-pay .pay-img-item img{ height:18px !important; max-height:18px; width:auto; max-width:72px; border-radius:0; }
html body .layout[class*="widget-type_"][class*="footer_4"]{ background:#fff; }
html body .layout[class*="widget-type_"][class*="footer_4"] > .layout__content{ background:transparent; padding-bottom:24px; }
html body .layout[class*="widget-type_"][class*="footer_4"] :is(.footer_copyright-1,.footer_copyright-2,p,span){ color:var(--ui-ink-2); font-size:13.5px; }
/* наша колонка «Каталог» */
.cm-ui-ftcat .menu-link{ white-space:nowrap; }
@media (min-width:768px){
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer-top{
    display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:32px; padding:44px 0 32px; align-items:start;
  }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-menu{ display:contents; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-menu .menu-item{ width:auto; margin:0; padding:0; order:1; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-sidebar{ order:2; grid-column:-2 / -1; grid-row:1; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-menu .menu-item{ grid-row:1; grid-column:auto; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-sidebar{ width:auto; margin:0; padding:0; display:flex; flex-direction:column-reverse; gap:20px; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .menu-show-submenu-btn{ display:none; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer-bottom{ display:flex; justify-content:space-between; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-pay{ margin-left:auto; max-width:none; }
}
@media (min-width:768px) and (max-width:1100px){
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer-top{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-menu .menu-item,
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-sidebar{ grid-row:auto; grid-column:auto; }
}
@media (max-width:767.98px){
  html body footer > .layout[class*="widget-type_"][class*="footer_18"]{ margin-top:32px; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer-wrap{ padding-top:8px; }
  /* «Каталог» — открытые чипсы */
  html body .layout[class*="widget-type_"][class*="footer_18"] .cm-ui-ftcat{ padding:14px 0 18px; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .cm-ui-ftcat .menu-title{ font-size:15.5px; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .cm-ui-ftcat .cm-ui-ftlist{ display:flex; flex-wrap:wrap; gap:8px; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .cm-ui-ftcat .menu-link{
    display:inline-flex; align-items:center; height:36px; padding:0 14px; border-radius:999px; background:#fff; box-shadow:inset 0 0 0 1px var(--ui-line-2);
    font-size:13.5px; font-weight:600; color:var(--ui-ink);
  }
  /* аккордеоны темы — строки 52 с hairline */
  html body .layout[class*="widget-type_"][class*="footer_18"] .menu-item:not(.cm-ui-ftcat){ border-top:1px solid var(--ui-line); }
  html body .layout[class*="widget-type_"][class*="footer_18"] .menu-item:not(.cm-ui-ftcat) .menu-title{ min-height:52px; margin:0; display:flex; align-items:center; font-size:15.5px; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-sidebar{ padding-top:16px; border-top:1px solid var(--ui-line); }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer-bottom{ border-top:0; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer__logo img{ max-height:36px; }
  html body .layout[class*="widget-type_"][class*="footer_18"] .footer__area-pay .pay-img-item{ height:32px; padding:0 10px; }
  html body .layout[class*="widget-type_"][class*="footer_4"] > .layout__content{ padding-bottom:calc(var(--sv-navbar-h,90px) + 16px); }
}
