/* /pm/css/tokens.css */
/* PikeMaster v2.5 — токены. Имена — как в :root движка kastoria-laravel
   (resources/css/vendor/entry.css: --bg-*, --ink-*, --border-*, --text-*, --leading-*, --space-*, --r-*, --shadow-*),
   значения — по замерам макетов design-2026-10/out/*.png (см. design-spec.md §2). Пересадка в форк = замена значений. */

/* Inter со своего сервера (ТЗ §8): variable 100–900, подмножества cyrillic/latin (+ext). */
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter-cyrillic-ext.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter-cyrillic-v2.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+20B4,U+2116}
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter-latin-ext.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20B3,U+20B5-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Inter";font-style:normal;font-weight:100 900;font-display:swap;src:url(../fonts/inter-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  /* --- цвет (палитра v2.5: proposal-v2/_body.html, блок «Палітра»; замеры — design-spec §2.1) --- */
  --bg-base:#FFFFFF;
  --bg-surface:#F5F5F7;          /* второй фон: подвал, плитки моб., сводка заказа */
  --bg-card:#FAFAFA;             /* фон карточки на мобильном (17-mobile-v6, замер ≈#FAFAFA) */
  --bg-header:#0B0B0C;           /* шапка (замер #0D0C0D, 03-category-v5 y 0–103) */
  --bg-field-dark:#1E1E22;       /* поле поиска в шапке, активная «пилюля» */
  --ink-primary:#1D1D1F;
  --ink-strong:#0F1111;          /* текст на жёлтой кнопке (_head.html .btns .yel) */
  --ink-title:#3A3A3C;           /* названия товаров в сетке (замер #3D3E43…#535660) */
  --ink-muted:#6E6E73;           /* подписи */
  --ink-soft:#86868B;            /* тип товара, SEO-текст, ссылки подвала (замер #87888D/#8B8C91) */
  --ink-faint:#A1A1A6;           /* старая цена, «нет», крошки (замер #9799A2…#A8ACB4) */
  --ink-on-dark:#FFFFFF;
  --border-soft:#E5E5EA;
  --border-strong:#1D1D1F;       /* контурные кнопки, выбранный чип/доставка */
  --sticker-bg:#EB0005;          /* наклейки NEW2026/NEW2027/SALE: цвет образца Никиты 05.11 #2767, белый текст 4.63:1 (AA) */
  --sale-bg:#E0322B;             /* ПК-26: плашка скидки, белые цифры 4.51:1 (AA); --accent #EB512C с белым — 3.65 */
  --accent:#EB512C;              /* печать: логотип, точка типа, скидка, бейдж корзины */
  --buy:#FFD814;                 /* «Купити», «Оформити», «Підтвердити» */
  --buy-hover:#F7CA00;
  --order:#15873A;               /* ПК-10 (Никита 28.10 #2006): «Оформити замовлення» зелёная; белый текст 4.61:1 (WCAG AA) — #1DB23F даёт 2.8 */
  --order-hover:#11702F;           /* гипотеза: на макетах нет hover — значение Amazon-подобное, спросить */
  --preorder:#F39C33;            /* «Під замовлення» */
  --preorder-hover:#E68A1F;      /* гипотеза */
  --transit:#5AA9F0;             /* «В дорозі» (просьба клиента 23.10, в макетах нет): текст #0F1111, контраст ≈7,5 */
  --transit-hover:#3F97E6;       /* гипотеза */
  --success:#1DB23F;             /* значок «В наявності» */
  --focus:#0A66FF;               /* гипотеза: фокус-кольцо на макетах не нарисовано */

  /* --- шрифт --- */
  --font-body:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",system-ui,sans-serif;
  --fw-light:300; --fw-regular:400; --fw-medium:500; --fw-semibold:600;
  --tracking-caps:.08em;         /* названия товаров капсом (brief §1) */
  --tracking-menu:.12em;         /* меню шапки, подпись логотипа */
  --tracking-logo:.06em;
  --tracking-display:-.01em;

  /* Кегли: замер высоты заглавных в макете / 0.727 × k (k=1.406 для 1024→1440). design-spec §2.3 */
  --text-2xs:.625rem;   /* 10  подпись логотипа «ПРОФЕСІЙНІ СНАСТІ…» */
  --text-xs:.8125rem;   /* 13  крошки, ссылки подвала */
  --text-sm:.9375rem;   /* 15  тип товара, меню шапки, таблица */
  --text-base:1.0625rem;/* 17  основной текст на товаре, кнопка md */
  --text-md:1.1875rem;  /* 19  название карточки, пункт фильтра, вкладка, SEO-текст */
  --text-lg:1.3125rem;  /* 21  цена в карточке, кнопка lg */
  --text-xl:1.75rem;    /* 28  заголовок фильтра, H2 «Опис», шаг оформления, лого-слово */
  --text-2xl:2.0625rem; /* 33  заголовок секции, SEO H2 */
  --text-3xl:2.5rem;    /* 40  цена на товаре, «Ваше замовлення» */
  --text-4xl:3rem;      /* 48  название товара */
  --text-hero:clamp(2.25rem,1.2rem + 3vw,3.375rem); /* 54 H1 категории; на 390 → 36 */

  --leading-tight:1.1; --leading-snug:1.25; --leading-base:1.45; --leading-relax:1.6;

  /* --- отступы: шаг 8 (brief §1) --- */
  --space-1:.5rem; --space-2:1rem; --space-3:1.5rem; --space-4:2rem; --space-5:2.5rem;
  --space-6:3rem; --space-8:4rem; --space-10:5rem; --space-12:6rem; --space-16:8rem;

  /* --- радиусы --- */
  --r-xs:2px;
  --r-btn:6px;          /* кнопки: замер 3–4 px макета → ~5–6. «Полностью круглые» = 999px (вопрос клиенту) */
  --r-sm:4px;           /* поля ввода (16-checkout-preorder-v3 x78–468 y325–367) */
  --r-md:8px;           /* чипы моделей, карточки доставки */
  --r-lg:12px;          /* плитки/карточки на мобильном, панель меню каталога (brief §1: 12) */
  --r-pill:999px;

  /* --- тени: brief §1 «без теней»; исключение — всплывающие слои (меню телефона, мега-меню) --- */
  --shadow-pop:0 8px 30px rgba(0,0,0,.2);   /* _head.html .pdd .menu: 0 2mm 8mm rgba(0,0,0,.2) */
  --shadow-sheet:0 -8px 30px rgba(0,0,0,.18);
  --scrim:rgba(0,0,0,.55);                  /* затемнение под корзиной (06-cart-v5, фон → ≈#252526) */

  /* --- контейнер и сетка --- */
  --container-max:1440px;
  --container-pad:clamp(1rem,5vw,4.5rem);   /* 72 на 1440 → контент 1296 (замер 49–975 ×1.406 ≈ 1302) */
  --grid-gap:1rem;       /* шаг колонок категории 184 px макета → 259; текст карточки шире фото (225 > 218), значит карточка ≈235 + зазор ≈24 */

  /* --- шапка (правка клиента: полоса «поуже вдвое», подбор «по живому») --- */
  --hdr-top:32px;       /* верхняя строка: «Працюємо без вихідних» / язык / телефон / мессенджеры / корзина */
  --hdr-main:72px;      /* логотип + меню + поиск */
  --hdr-logo:52px;
  --hdr-fade:32px;      /* размытый переход в белое (spacex.com) */
  --hdr-dark:calc(var(--hdr-top) + var(--hdr-main));
  --hdr-m-row:58px;     /* мобильная строка шапки (17-mobile-v6 x260: тёмная y≈90–134 → ≈43–50 css; 52 — чтобы цели касания 44 */
  --hdr-m-fade:24px;
  --hdr-m-strip:28px;   /* ПК-34: строка своего текста инфополосы над мобильной шапкой */

  /* --- кнопки --- */
  --btn-h-lg:52px; --btn-h-md:44px; --btn-h-sm:36px;

  /* --- движение --- */
  --ease-out:cubic-bezier(.16,1,.3,1);
  --dur-fast:.15s; --dur-base:.25s; --dur-slow:.45s;

  --z-header:200; --z-drop:300; --z-drawer:400; --z-sheet:500;
}

/* Вариант «как на макете v2.5» — только для сравнения с PNG (высокая полоса). */
.hdr-as-mockup{--hdr-top:50px;--hdr-main:95px;--hdr-logo:86px;--hdr-fade:53px}

@media (max-width:767.98px){
  :root{--grid-gap:.625rem}
}
/* /pm/css/components.css */
/* PikeMaster v2.5 — эталоны компонентов. BEM, без Tailwind (в движке его нет: vite.config.js «без Tailwind»).
   Значения — из tokens.css; координаты макетов — в комментариях и design-spec.md. */

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-base);color:var(--ink-primary);background:var(--bg-base);-webkit-font-smoothing:antialiased;text-rendering:geometricPrecision} /* без него Chromium на Linux округляет ширину букв: «Конт акти» (проверка staging 25.10) */
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.container{width:100%;max-width:var(--container-max);margin-inline:auto;padding-inline:var(--container-pad)}
.icon{width:1.25em;height:1.25em;flex:none;display:block}
.icon--stroke{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}

/* =========================================================================
   BRAND (логотип): печать + слово. 11-logo-round-chosen.png; шапка 03-category-v5 x61–275 y38–100
   ========================================================================= */
.brand{display:inline-flex;align-items:center;gap:calc(var(--hdr-logo) * .2);color:var(--ink-on-dark)}
.brand picture{display:flex;flex:none}
.brand__seal{width:var(--hdr-logo);height:var(--hdr-logo);border-radius:50%;flex:none}
.brand__text{display:flex;flex-direction:column;gap:.15em;line-height:1}
/* Никита 04.11 (#2693–2697): слово как в инвойсе, плотнее и жирнее; размер подобран так, чтобы ширина слова в шапке не менялась.
   Никита 05.11 (#2775–2777): «чуть уменьшить толщину букв», «что то между этими и первым вариантом» — было 400, стало 600, теперь 500 */
.brand__name{font-weight:var(--fw-medium);font-size:calc(var(--hdr-logo) * .33);letter-spacing:var(--tracking-logo)}
.brand__tag{font-weight:var(--fw-medium);font-size:max(9px,calc(var(--hdr-logo) * .118));letter-spacing:.16em;text-transform:uppercase;opacity:.72}
.brand--light{color:var(--ink-primary)}
/* шапка на компьютере: «PIKEMASTER» крупнее (правка Никиты 28.10) — по ширине строки «Професійні снасті з Японії» */
.site-header__main .brand__name,.site-header__co .brand__name{font-size:calc(var(--hdr-logo) * .495)} /* ПК-16 (Никита 28.10 #2030): и в шапке оформления заказа */

/* =========================================================================
   HEADER DESKTOP  (03-category-v5 y0–141; товар 14-product-v7 y0–155; главная 12-home-v7 y0–230)
   Полоса: сплошная --bg-header до --hdr-dark, затем мягкий переход в белый за --hdr-fade.
   ========================================================================= */
.site-header{position:relative;z-index:var(--z-header);color:var(--ink-on-dark);
  background:linear-gradient(to bottom,
    var(--bg-header) 0,
    var(--bg-header) var(--hdr-dark),
    rgb(11 11 12 / .86) calc(var(--hdr-dark) + var(--hdr-fade) * .15),
    rgb(11 11 12 / .62) calc(var(--hdr-dark) + var(--hdr-fade) * .32),
    rgb(11 11 12 / .36) calc(var(--hdr-dark) + var(--hdr-fade) * .5),
    rgb(11 11 12 / .15) calc(var(--hdr-dark) + var(--hdr-fade) * .7),
    rgb(11 11 12 / .04) calc(var(--hdr-dark) + var(--hdr-fade) * .87),
    rgb(255 255 255 / 0) calc(var(--hdr-dark) + var(--hdr-fade)));
  padding-bottom:var(--hdr-fade)}
.site-header--flat{--hdr-fade:0px} /* выключатель перехода (правка клиента «с возможностью отключить») */
.site-header__top{height:var(--hdr-top);display:flex;align-items:center;justify-content:space-between;font-size:var(--text-sm);gap:var(--space-3)}
.site-header__note{color:var(--ink-on-dark);opacity:.92;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* ПК-34: свой текст инфополосы на телефоне — строкой над шапкой (на компьютере он в .site-header__note) */
.site-header__strip{display:none}
.site-header__tools{display:flex;align-items:center;gap:var(--space-3)}
.site-header__main{height:var(--hdr-main);display:flex;align-items:center;gap:var(--space-4)}
.site-header__main .nav-main{margin-inline:auto} /* меню по центру между логотипом и поиском (03-category-v5: центр меню x≈732 при центре свободного места ≈724) */
.site-header__mobile{display:none}

/* язык UA | RU */
.lang-switch{display:flex;align-items:center;gap:.6em;font-size:var(--text-sm);font-weight:var(--fw-medium)}
.lang-switch__sep{width:1px;height:1em;background:currentColor;opacity:.35}
.lang-switch__item{opacity:.6;transition:opacity var(--dur-fast)}
.lang-switch__item[aria-current="true"]{opacity:1}
.lang-switch__item:hover{opacity:1}
.lang-switch--light{color:var(--ink-muted)}
.lang-switch--light .lang-switch__item[aria-current="true"]{color:var(--ink-primary)}

/* телефон с выпадашкой из 4 действий (правка круга 2, п.4; _head.html .pdd) */
.contact-drop{position:relative}
.contact-drop__toggle{display:inline-flex;align-items:center;gap:.35em;font-size:var(--text-sm);font-variant-numeric:tabular-nums;white-space:nowrap}
.contact-drop__toggle .icon{width:.9em;height:.9em;transition:transform var(--dur-fast)}
.contact-drop.is-open .contact-drop__toggle .icon{transform:rotate(180deg)}
.contact-drop__panel{position:absolute;right:0;top:calc(100% + 10px);width:340px;background:#fff;color:var(--ink-primary);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);padding:4px 0;z-index:var(--z-drop);
  opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity var(--dur-fast),transform var(--dur-fast),visibility 0s var(--dur-fast)}
.contact-drop.is-open .contact-drop__panel{opacity:1;visibility:visible;transform:none;transition:opacity var(--dur-fast),transform var(--dur-fast)}
.action-list{list-style:none;margin:0;padding:0}
.action-list__item+.action-list__item{border-top:1px solid var(--border-soft)}
.action-list__link{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 16px;font-size:var(--text-base)}
.action-list__link:hover{background:var(--bg-surface)}
.action-list__link .icon{width:22px;height:22px}
.action-list__label{font-weight:var(--fw-medium)}
.action-list__meta{margin-left:auto;white-space:nowrap;color:var(--ink-muted);font-size:var(--text-sm);font-variant-numeric:tabular-nums}

/* иконки мессенджеров и корзины в шапке (03-category-v5 x851/879/906/933, 15–16 px → 22) */
.hdr-icons{display:flex;align-items:center;gap:var(--space-2)}
.hdr-icon{display:inline-grid;place-items:center;width:28px;height:28px;color:inherit;position:relative}
.hdr-icon .icon{width:22px;height:22px}
.count-badge{position:absolute;top:-3px;right:-8px;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--accent);color:#fff;font-size:12px;font-weight:var(--fw-semibold);line-height:20px;text-align:center;font-variant-numeric:tabular-nums}

/* главное меню (x334–707, капс с разрядкой) */
.nav-main{display:flex;gap:var(--space-5)}
.nav-main__link{position:relative;font-size:.875rem;font-weight:var(--fw-medium);letter-spacing:.1em;text-transform:uppercase;padding:8px 0}
.nav-main__link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform var(--dur-base) var(--ease-out)}
.nav-main__link:hover::after,.nav-main__link[aria-expanded="true"]::after{transform:scaleX(1)}

/* поиск (x754–966 y50–85 → 298×49, фон #1E1E22) */
.search{display:flex;align-items:center;gap:12px;width:300px;height:48px;padding:0 16px;background:var(--bg-field-dark);border:1px solid #2C2C31;border-radius:var(--r-btn);color:#fff}
.search .icon{width:24px;height:24px;opacity:.9}
.search__input{flex:1;min-width:0;background:none;border:0;color:#fff;font:inherit;font-size:var(--text-base);outline:0}
.search__input::placeholder{color:#8E8E93}
.search:focus-within{border-color:#5A5A60}

/* =========================================================================
   ПК-37 (Никита 29.10 #2202, #2187; владелец #2183, #2188): чёрная полоса сверху, ниже светло-серая строка —
   «бутерброд» · логотип (без плашки — ПК-40) · «Каталог ▾ Бренди ▾» по центру · светлый поиск справа. Без перехода в белое.
   ========================================================================= */
.site-header--bar{--hdr-fade:0px;--bar-bg:#EFEFEF;color:var(--ink-primary);padding-bottom:0;
  background:linear-gradient(to bottom,var(--bg-header) 0,var(--bg-header) var(--hdr-top),var(--bar-bg) var(--hdr-top))}
.site-header--bar .site-header__top{color:var(--ink-on-dark)}
.site-header__pay{white-space:nowrap;opacity:.92;transition:opacity var(--dur-fast)}
.site-header__pay:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}
.site-header__burger{margin-left:-4px}
.site-header--bar .site-header__main{gap:var(--space-3)}
/* ПК-40 (Никита 31.10 #2238–2239 «не будет этого чёрного квадрата? лого на сером фоне, чёрные буквы»): без тёмной плашки */
.site-header--bar .site-header__main .brand{color:var(--ink-primary)}
.site-header--bar .nav-main{gap:var(--space-4);align-items:center}
.site-header--bar .nav-main__link{display:inline-flex;align-items:center;gap:.3em;font-size:1.0625rem;font-weight:var(--fw-medium);letter-spacing:0;text-transform:none}
.nav-main__link .icon{width:.85em;height:.85em;transition:transform var(--dur-fast)}
.nav-main__link[aria-expanded="true"] .icon{transform:rotate(180deg)}
.site-header--bar .search{background:#fff;border-color:#D9D9DC;color:var(--ink-primary)}
.site-header--bar .search__input{color:var(--ink-primary)}
.site-header--bar .search:focus-within{border-color:var(--ink-muted)}

/* «Бренди ▾»: выпадашка под пунктом меню */
.nav-drop{position:relative}
.brands-drop{position:absolute;left:50%;top:calc(100% + 14px);z-index:var(--z-drop);width:min(640px,calc(100vw - 32px));transform:translateX(-50%);
  background:#fff;color:var(--ink-primary);border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.18);padding:var(--space-3);
  opacity:0;visibility:hidden;transition:opacity var(--dur-fast),visibility 0s var(--dur-fast)}
.brands-drop::before{content:"";position:absolute;left:0;right:0;top:-14px;height:14px} /* мост для мыши между пунктом и панелью */
.nav-drop.is-open .brands-drop{opacity:1;visibility:visible;transition:opacity var(--dur-fast)}
.brands-drop__logos{list-style:none;margin:0 0 var(--space-2);padding:0 0 var(--space-2);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;border-bottom:1px solid var(--border-soft)}
.brands-drop__logos a{display:grid;place-items:center;height:56px;padding:6px;border-radius:8px}
.brands-drop__logos a:hover{background:var(--bg-surface)}
.brands-drop__logos picture{display:contents}
.brands-drop__logos source{display:none}
.brands-drop__logos img{max-width:100%;max-height:40px;width:auto;height:auto;object-fit:contain}
.brands-drop__list{list-style:none;margin:0;padding:0;columns:3;column-gap:var(--space-3)}
.brands-drop__list a{display:block;padding:5px 0;font-size:var(--text-base);color:var(--ink-soft);break-inside:avoid}
.brands-drop__list a:hover{color:var(--ink-primary)}
.brands-drop__all{display:inline-block;margin-top:var(--space-2);padding:6px 0;font-weight:var(--fw-medium)}
.brands-drop__all:hover{text-decoration:underline;text-underline-offset:3px}

/* =========================================================================
   HEADER MOBILE (17-mobile-v6, 10-mobile-2-v5): бургер · логотип · поиск · корзина
   ========================================================================= */
@media (max-width:1023.98px){
  .site-header{--hdr-dark:var(--hdr-m-row);--hdr-fade:var(--hdr-m-fade);--hdr-logo:42px}
  .site-header__top,.site-header__main{display:none}
  .site-header--strip{--hdr-dark:calc(var(--hdr-m-row) + var(--hdr-m-strip))}
  /* длинный текст переносится, а не обрезается (Codex 30.10): высоту полосы proto.js кладёт в --hdr-m-strip,
     чтобы тёмный фон шапки дотягивался до её низа (min-height числом: от переменной полоса не сжалась бы обратно); без JS — 28px из tokens.css */
  .site-header__strip{display:block;box-sizing:border-box;min-height:28px;margin:0;padding:6px 16px;line-height:16px;text-align:center;font-size:var(--text-xs);color:var(--ink-on-dark);opacity:.92;overflow-wrap:anywhere;border-bottom:1px solid rgb(255 255 255 / .08)}
  /* значки — жёстко 44px (цель касания), без зазоров: у значка 9px воздуха с каждой стороны, поэтому строка выходит
     за поля контейнера на 9px и края рисунков совпадают с краем контента. Логотип ужимается под остаток ширины:
     печать 32→42, слово 13→17px на 320→414; подпись не шире слова (contain) — переносится в две ровные строки.
     Без этого в Safari (WebKit) слово налезало на поиск на 320–414 (замер 26.10: на 375 uk на 16px), а в Chromium
     значки сжимались до 26–34px.
     ПК-44 (Никита 31.10 #2248–2249 «лого чуть выделить, увеличить на 10–15%», Сергий «добро»): от 390px логотип на 12% крупнее
     (печать 39→44, на 414+ 42→47; слово 16→18, 17→19), к 340px прибавка сходит на нет — до поиска остаётся ≥5px; 320 — как было */
  /* ПК-69 (Никита 02.11 #2416–2417 «лого все таки еще нужно увеличить», скрин телефона): логотип ещё на 15%.
     Места в строке не было (5–8px до поиска), поэтому значки 44→40px в ширину (высота 44), рисунок бургера остаётся
     на линии контента, справа значки ближе к краю; строка шапки 52→58px (tokens.css). */
  .site-header__mobile{display:flex;align-items:center;height:var(--hdr-m-row);margin-left:-7px;margin-right:-13px}
  .site-header__mobile .brand{margin-right:auto;min-width:0;gap:calc(var(--hdr-logo) * .16);--hdr-logo:clamp(37px,calc(20vw - 28px),54px)}
  .site-header__mobile .brand__name{font-size:clamp(15.6px,calc(9.4vw - 15.37px),24.1px)}
  .site-header__mobile .brand__tag{font-size:clamp(8.2px,calc(3.8vw - 5.4px),9.6px);letter-spacing:.02em;text-wrap:balance;contain:inline-size}
  .site-header__mobile .hdr-icon{flex:none;width:40px;height:44px}
  @media (max-width:429.98px){.site-header__mobile .hdr-icon{width:38px}}
  .site-header__mobile .hdr-icon .icon{width:26px;height:26px}
  /* значок корзины не вылезает за край экрана (арбитр 03.11: ширина страницы 363 при 360) */
  .site-header__mobile .count-badge{right:-2px}
}
@media (max-width:1023.98px){
  /* ПК-37 на телефоне: чёрная только строка инфополосы (если она есть), строка шапки — светлая, лого без плашки (ПК-40) */
  .site-header--bar{background:linear-gradient(to bottom,var(--bg-header) 0,var(--bg-header) var(--bar-dark,0px),var(--bar-bg) var(--bar-dark,0px))}
  .site-header--bar.site-header--strip{--bar-dark:var(--hdr-m-strip)}
  .site-header--bar .site-header__burger{display:none}
  .site-header--bar .site-header__mobile .brand{color:var(--ink-primary)}
  .site-header.is-search .site-header__main>.site-header__burger{display:none}
}
@media (max-width:359.98px){
  .site-header__mobile{margin-inline:-7px}
  .site-header__mobile .hdr-icon{width:36px;height:40px}
}

/* мобильное меню: на весь экран, аккордеон (10-mobile-2-v5, левый экран) */
.m-menu{position:fixed;inset:0;z-index:var(--z-drawer);background:#fff;display:flex;flex-direction:column;transform:translateX(-100%);transition:transform var(--dur-base) var(--ease-out);visibility:hidden}
.m-menu.is-open{transform:none;visibility:visible}
.m-menu__head{flex:none;display:flex;align-items:center;justify-content:space-between;height:calc(var(--hdr-m-row) + var(--hdr-m-fade));padding:0 var(--container-pad) var(--hdr-m-fade);
  background:linear-gradient(var(--bg-header) 0,var(--bg-header) var(--hdr-m-row),rgb(255 255 255 / 0) 100%);color:#fff;--hdr-logo:48px}
.m-menu__head .brand__name{font-size:21.9px}
.m-menu__head .brand__tag{font-size:8.6px;letter-spacing:.02em;text-wrap:balance}
.m-menu__body{flex:1;overflow-y:auto;padding:0 var(--container-pad) var(--space-4)}
.acc{border-bottom:1px solid var(--border-soft)}
.acc__head{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;font-size:var(--text-lg);font-weight:var(--fw-regular);text-align:left}
.acc__head .icon{width:20px;height:20px;color:var(--ink-muted);transition:transform var(--dur-fast)}
.acc__head[aria-expanded="true"] .icon{transform:rotate(90deg)}
.acc__list{list-style:none;margin:0;padding:0 0 12px 20px;display:none}
.acc__head[aria-expanded="true"]+.acc__list{display:block}
.acc__list a{display:block;padding:4px 0;font-size:var(--text-base);color:var(--ink-muted)}
.m-menu__links{list-style:none;margin:var(--space-3) 0 0;padding:0}
.m-menu__links a{display:block;padding:9px 0;font-size:var(--text-base);color:var(--ink-muted)}
.m-menu__foot{display:flex;align-items:center;justify-content:space-between;margin-top:var(--space-4);gap:12px;flex-wrap:wrap}
.m-menu__foot .contact-drop__toggle{color:var(--ink-primary);font-size:var(--text-base)}
.m-menu__msg{display:flex;gap:12px}.m-menu__msg .icon{width:28px;height:28px} /* 10-mobile-2-v5 x330–465 y810–840: иконки ≈30 css */
.m-menu__msg{display:flex;gap:4px;color:var(--ink-primary)}

/* нижняя шторка действий телефона (_head.html .pmb .sheet) */
.scrim{position:fixed;inset:0;background:var(--scrim);z-index:calc(var(--z-sheet) - 1);opacity:0;visibility:hidden;transition:opacity var(--dur-base)}
.scrim.is-open{opacity:1;visibility:visible}
.action-sheet{position:fixed;left:0;right:0;bottom:0;z-index:var(--z-sheet);background:#fff;border-radius:16px 16px 0 0;padding:8px 0 calc(12px + env(safe-area-inset-bottom));box-shadow:var(--shadow-sheet);transform:translateY(100%);transition:transform var(--dur-base) var(--ease-out);visibility:hidden}
.action-sheet.is-open{transform:none;visibility:visible}
.action-sheet__grab{width:36px;height:4px;border-radius:2px;background:#C7C7CC;margin:0 auto 8px}
.action-sheet__cancel{display:block;width:calc(100% - 32px);margin:8px 16px 0;min-height:48px;border-radius:var(--r-md);background:var(--bg-surface);color:var(--ink-muted);font-size:var(--text-base)}

/* =========================================================================
   BUTTONS (v2.5 «как на Amazon»): yel = главная, org = под заказ, outline = вторичная
   lg 52 (14-product-v7 x663–956 y394–431) · md 44 («Показати ще» 538–684×1228–1259) · sm 36 (таблица 816–947×641–667)
   ========================================================================= */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:var(--btn-h-md);padding:0 24px;border-radius:var(--r-btn);border:1px solid transparent;
  font-size:var(--text-base);font-weight:var(--fw-regular);line-height:1;white-space:nowrap;text-align:center;
  transition:background-color var(--dur-fast),border-color var(--dur-fast),color var(--dur-fast),box-shadow var(--dur-fast)}
.btn--lg{height:var(--btn-h-lg);font-size:1.125rem;padding:0 32px} /* 18: текст кнопок на 14-product-v7 / 06-cart-v5 мельче, чем 21 из замера высоты заглавных */
.btn--sm{height:var(--btn-h-sm);font-size:var(--text-sm);padding:0 16px}
.btn--block{display:flex;width:100%}
.btn--buy{background:var(--buy);color:var(--ink-strong)}
.btn--buy:hover{background:var(--buy-hover)}
.btn--order{background:var(--order);color:#fff}
.btn--order:hover{background:var(--order-hover)}
.btn--preorder{background:var(--preorder);color:var(--ink-strong)} /* ТЗ Р21: #0F1111 (контраст 8,67); в макете белый — 2,18 */
.btn--preorder:hover{background:var(--preorder-hover)}
.btn--transit{background:var(--transit);color:var(--ink-strong)}
.btn--transit:hover{background:var(--transit-hover)}
.btn--outline{background:#fff;border-color:var(--border-strong);color:var(--ink-primary)}
.btn--outline:hover{background:var(--bg-surface)}
.btn--ghost{background:var(--bg-surface);color:var(--ink-muted)}
.btn:disabled,.btn[aria-disabled="true"]{opacity:.45;pointer-events:none}
.btn.is-loading{color:transparent;position:relative;pointer-events:none}
.btn.is-loading::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;border:2px solid var(--ink-strong);border-right-color:transparent;animation:spin .7s linear infinite}
.btn--preorder.is-loading::after,.btn--transit.is-loading::after{border-color:var(--ink-strong);border-right-color:transparent}
@keyframes spin{to{transform:rotate(360deg)}}
.btn-round .btn{border-radius:var(--r-pill)} /* «полностью круглые как у Amazon» — одна настройка */

/* количество (14-product-v7 x541–653 y394–431 → 157×52) */
.qty{display:inline-flex;align-items:center;height:var(--btn-h-lg);border:1px solid var(--border-soft);border-radius:var(--r-btn);font-variant-numeric:tabular-nums}
.qty__btn{width:48px;height:100%;display:grid;place-items:center;font-size:var(--text-lg);color:var(--ink-primary)}
.qty__btn:disabled{color:var(--ink-faint)}
.qty__val{width:52px;height:100%;text-align:center;font:inherit;font-size:var(--text-md);border:0;border-inline:1px solid var(--border-soft);background:none;color:var(--ink-primary)}
.qty--sm{height:var(--btn-h-md)}
.qty--sm .qty__btn{width:40px}.qty--sm .qty__val{width:40px}

/* =========================================================================
   BADGES / STATUS
   ========================================================================= */
.type-dot{display:inline-flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--ink-soft)}
.type-dot::before{content:"";width:9px;height:9px;border-radius:50%;background:var(--accent);flex:none}
.discount{color:var(--accent);font-variant-numeric:tabular-nums}
/* ПК-26 (Никита 28.10 #2096): скидка заметной красной плашкой с белыми цифрами — на карточках, в списках и на товаре */
.discount{display:inline-block;align-self:center;padding:.15em .45em;border-radius:6px;background:var(--sale-bg);color:#fff;font-weight:var(--fw-semibold,600);line-height:1.2;letter-spacing:.01em}
.discount:empty,.discount[hidden]{display:none}
.stock{display:inline-flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--ink-muted)}
.stock--in::before{content:"";width:14px;height:14px;border-radius:50%;flex:none;background:var(--success) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.2l2.3 2.3 4.7-5' fill='none' stroke='%23fff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat}
.stock--preorder::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--preorder);flex:none}
.stock--transit::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--transit);flex:none}
.stock--out,.stock--eol{color:var(--ink-faint)}

/* =========================================================================
   PRODUCT CARD (сетка категории 03-category-v5: 4 кол., картинка 155 px макета → 218; тип/название/цены y526–604)
   Статусы: in · sale · preorder · out · eol (eol — ТЗ §5, на макетах нет). Модификатор --buy — карточка с кнопкой (сетка приманки 15-lure-v8 y614–809).
   ========================================================================= */
.pgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));column-gap:var(--grid-gap);row-gap:var(--space-5)}
.pgrid--6{grid-template-columns:repeat(6,minmax(0,1fr));column-gap:var(--space-3)}
@media (max-width:1023.98px){.pgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.pgrid--6{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:767.98px){.pgrid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:var(--grid-gap)}.pgrid--6{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:8px}}

.pcard{position:relative;display:flex;flex-direction:column;min-width:0}
.pcard__media{position:relative;display:block;aspect-ratio:1/1;overflow:hidden;background:#fff}
/* Наклейки в верхнем левом углу фото (Никита 05.11 #2762, образец #2767); несколько — столбиком */
.stickers{position:absolute;top:8px;left:8px;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:4px;pointer-events:none}
.sticker{display:block;padding:4px 7px;border-radius:5px;background:var(--sticker-bg);color:#fff;font-size:13px;font-weight:800;line-height:1;white-space:nowrap}
.pcard__media img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform var(--dur-slow) var(--ease-out)}
@media (hover:hover){.pcard:hover .pcard__media img{transform:scale(1.03)}}
.pcard__body{flex:1;display:flex;flex-direction:column;padding-top:var(--space-2)}
.pcard__type{margin-bottom:6px}
.pcard__title{margin:0 0 10px;font-size:var(--text-base);font-weight:var(--fw-regular);line-height:var(--leading-snug);letter-spacing:.03em;text-transform:uppercase;color:var(--ink-title);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pcard__title a::after{content:"";position:absolute;inset:0} /* вся карточка кликабельна */
.pcard__old{font-size:var(--text-sm);color:var(--ink-faint);text-decoration:line-through;font-variant-numeric:tabular-nums;line-height:1.3}
.pcard__price{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 12px;font-size:var(--text-md);font-weight:var(--fw-medium);line-height:1.3;font-variant-numeric:tabular-nums;color:var(--ink-primary)}
.pcard__price .discount{font-size:var(--text-base);font-weight:var(--fw-regular)}
.pcard__price>span{white-space:nowrap}
.pcard__status{margin-top:4px}
.pcard__actions{position:relative;z-index:1;margin-top:auto;padding-top:var(--space-2)}
.pcard--out .pcard__media img,.pcard--eol .pcard__media img{filter:grayscale(1);opacity:.4} /* _head.html .gray */
.pcard--out .pcard__price,.pcard--eol .pcard__price{color:var(--ink-faint)}
.pcard--out .pcard__title,.pcard--eol .pcard__title{color:var(--ink-soft)}

/* мобильная карточка: фон #FAFAFA, скругление 12, название 2 строки (17-mobile-v6, левый экран) */
@media (max-width:767.98px){
  .pcard{background:var(--bg-card);border:1px solid #F0F0F2;border-radius:var(--r-lg);padding:10px 10px 12px}
  .pcard__media{background:transparent}
  .stickers{top:0;left:0;gap:3px}
  .sticker{padding:3px 5px;font-size:11px}
  .pcard__type{font-size:12px;margin-bottom:2px}
  .pcard__title{font-size:13px;letter-spacing:.04em;margin-bottom:6px}
  .pcard__price{font-size:15px;gap:0 8px;flex-wrap:wrap}
  .pcard__price .discount{font-size:13px}
  .pcard__old{font-size:12px}
  .pcard .stock{font-size:12px}
  .pcard__actions .btn{height:var(--btn-h-md);font-size:12px;padding:0 4px;width:100%;white-space:normal;line-height:1.1} /* 44 px — а не 27 как на макете (касание) */
}

/* =========================================================================
   SECTION TILE (главная 12-home-v7: 6 плиток x72–945, картинка y240–320, подпись y333–346; моб. 3 в ряд на #F5F5F7)
   ========================================================================= */
.tiles{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:var(--space-3)}
.tile{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}
.tile__media{width:100%;aspect-ratio:5/3;display:grid;place-items:center}
.tile__media img{max-width:100%;max-height:100%;object-fit:contain;mix-blend-mode:multiply;transition:transform var(--dur-slow) var(--ease-out)}
.tile__label{font-size:var(--text-base);color:var(--ink-muted);line-height:var(--leading-snug)}
@media (hover:hover){.tile:hover .tile__media img{transform:translateY(-4px)}.tile:hover .tile__label{color:var(--ink-primary)}}
@media (max-width:767.98px){
  .tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .tile{background:var(--bg-surface);border-radius:var(--r-lg);padding:10px 6px 12px;gap:6px}
  .tile{padding:6px 6px 14px}
  .tile__media{aspect-ratio:1/1}
  .tile__media{overflow:hidden;border-radius:8px}
  /* Никита 03.11 #2550–2551: «Фото категорий масштабировать поменьше без обрезов» — фото целиком, без cover и scale */
  .tile__media img{width:100%;height:100%;object-fit:contain}
  .tile__label{font-size:13px;color:var(--ink-primary)}
}

/* =========================================================================
   LURE COLOR SWATCHES (15-lure-v8: кружки 42 px шаг 49.5 → 59/70; выбранный кольцо 55 → 77; «+3» 46 → 65)
   ========================================================================= */
.swatches{display:flex;flex-wrap:wrap;gap:11px;align-items:center;list-style:none;margin:0;padding:6px}
.swatch{width:58px;height:58px;border-radius:50%;overflow:hidden;background:var(--bg-surface);position:relative;display:block}
.swatch img{width:100%;height:100%;object-fit:cover}
.swatch[aria-pressed="true"]{box-shadow:0 0 0 5px #fff,0 0 0 7px var(--ink-primary)}
.swatch--out img{filter:grayscale(1);opacity:.4}
.swatch--pre::after{content:"";position:absolute;right:4px;top:4px;width:9px;height:9px;border-radius:50%;background:var(--preorder);border:2px solid #fff}
.swatch--transit::after{content:"";position:absolute;right:4px;top:4px;width:9px;height:9px;border-radius:50%;background:var(--transit);border:2px solid #fff}
.swatch--more{display:grid;place-items:center;font-size:var(--text-base);color:var(--ink-muted)}

/* =========================================================================
   FOOTER (12-home-v7 y1417–1584; 03-category-v5 y1456–1595). Фон #F5F5F7, линия сверху.
   ========================================================================= */
.site-footer{background:var(--bg-surface);border-top:1px solid var(--border-soft);color:var(--ink-muted);font-size:var(--text-sm)}
.site-footer__grid{display:grid;grid-template-columns:382fr 191fr 224fr 506fr; /* границы колонок 12-home-v7: x48/320/456/615/975 */padding-block:var(--space-3) var(--space-6)}
.site-footer__col{padding-inline:var(--space-5)}
.site-footer__col:first-child{padding-left:0}
.site-footer__col+.site-footer__col{border-left:1px solid var(--border-soft)}
.site-footer__brand{--hdr-logo:72px}
.site-footer__copy{margin-top:var(--space-4);color:var(--ink-muted);font-size:var(--text-sm)}
.site-footer__title{margin:0 0 2px;font-size:1rem;font-weight:var(--fw-semibold);color:var(--ink-primary)}
.site-footer__list{list-style:none;margin:0;padding:0}
.site-footer__list a{display:inline-block;padding:0;line-height:1.3;font-size:.875rem;color:var(--ink-soft)}
.site-footer__list a:hover{color:var(--ink-primary)}
.site-footer__contact{display:grid;grid-template-columns:1fr auto;gap:var(--space-2) var(--space-4);align-items:start}
.site-footer__phone{white-space:nowrap;font-size:var(--text-md);color:var(--ink-primary);font-variant-numeric:tabular-nums}
.site-footer__social-title{color:var(--ink-soft);padding-left:var(--space-3);border-left:1px solid var(--border-soft)}
.site-footer__icons{grid-column:1/-1;display:flex;gap:var(--space-3);color:var(--ink-primary)}
.site-footer__icons a{display:grid;place-items:center;width:40px;height:40px}
.site-footer__icons .icon{width:30px;height:30px}
/* разделитель «·» стоит в промежутке слева от элемента; у элемента в начале строки он за левым краем и обрезается overflow — перенос не начинается с «·» */
.site-footer__pay{grid-column:1/-1;display:flex;flex-wrap:wrap;column-gap:1.2em;row-gap:4px;overflow:hidden;margin-top:var(--space-2);font-size:.78rem;color:var(--ink-soft)}
.site-footer__pay span{position:relative;white-space:nowrap}
.site-footer__pay span+span::before{content:"·";position:absolute;left:-1.2em;width:1.2em;text-align:center}
.site-footer__credit{margin:calc(-1 * var(--space-3)) auto 0;padding-bottom:var(--space-3);font-size:.78rem;color:var(--ink-soft)}
.site-footer__credit span{white-space:nowrap}
.site-footer__credit a{color:inherit;text-decoration:underline;text-underline-offset:2px}
.site-footer__credit a:hover{color:var(--ink-primary)}
@media (max-width:1023.98px){
  .site-footer__grid{grid-template-columns:1fr 1fr;row-gap:var(--space-4)}
  .site-footer__col{padding-inline:0}
  .site-footer__col+.site-footer__col{border-left:0}
  .site-footer__col:first-child,.site-footer__col:last-child{grid-column:1/-1}
}
@media (max-width:767.98px){
  .site-footer__brand{--hdr-logo:56px}
  .site-footer__list a{padding:6px 0;font-size:var(--text-base)} /* 44-px цели касания на мобильном */
  .site-footer__contact{grid-template-columns:1fr}
  .site-footer__social-title{padding-left:0;border-left:0}
  .site-footer__icons{flex-wrap:wrap;gap:8px}
  .site-footer__icons a{width:44px;height:44px}
}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}

/* карточка цвета приманки (15-lure-v8 сетка y614–809): фото 4:3, номер цвета 500, кнопка ~49 px → lg */
.pcard--swatch .pcard__media{aspect-ratio:4/3}
.pcard--swatch .pcard__title{font-size:var(--text-md);font-weight:var(--fw-medium);letter-spacing:0;margin-bottom:4px;color:var(--ink-primary)}
.pcard--swatch.pcard--out .pcard__title{color:var(--ink-primary)}
.pcard--swatch .pcard__status{font-size:var(--text-base)}
@media (min-width:768px){.pcard--swatch .pcard__actions .btn{height:var(--btn-h-lg);font-size:var(--text-base)}}

/* 1024–1279: шапка и подвал не влезают в 4 колонки / 300 px поиска (проверено overflow.py на 1024) */
@media (min-width:1024px) and (max-width:1279.98px){
  .nav-main{gap:var(--space-3)}
  .search{width:200px}
  .site-footer__grid{grid-template-columns:1fr 1fr 1fr;row-gap:var(--space-4)}
  .site-footer__grid>.site-footer__col:last-child{grid-column:1/-1;border-left:0;padding-left:0;border-top:1px solid var(--border-soft);padding-top:var(--space-3)}
}

/* Светлая шапка — «тёмная шапка» выключена в админке (ТЗ §9 «Отключается настройкой», body.pm-hdr-light) */
.pm-hdr-light .site-header{background:var(--bg-base);color:var(--ink-primary);padding-bottom:0;border-bottom:1px solid var(--border-soft)}
.pm-hdr-light .site-header .brand,.pm-hdr-light .site-header__note,.pm-hdr-light .site-header__strip{color:var(--ink-primary)}
.pm-hdr-light .site-header__strip{border-bottom-color:var(--border-soft)}
.pm-hdr-light .site-header .lang-switch{color:var(--ink-muted)}
.pm-hdr-light .site-header .lang-switch__item[aria-current="true"]{color:var(--ink-primary)}
.pm-hdr-light .site-header .search{background:var(--bg-surface);border-color:var(--border-soft)}
.pm-hdr-light .site-header .search__input{color:var(--ink-primary)}
.pm-hdr-light .m-menu__head{background:var(--bg-base);color:var(--ink-primary);border-bottom:1px solid var(--border-soft)}
/* ПК-37 в светлом режиме: верхняя полоса тоже светлая (логотип без плашки — ПК-40) */
.pm-hdr-light .site-header--bar .site-header__top{color:var(--ink-primary)}
.pm-hdr-light .site-header--bar .search{background:var(--bg-surface)}
/* Шапка оформления (FE-01, FE-14; макет 13-checkout): лого слева, справа телефон | «Працюємо без вихідних»; без меню и поиска */
.site-header--checkout{--hdr-dark:var(--hdr-main)}
.site-header__co{height:var(--hdr-main);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}
.site-header__co-tools{display:flex;align-items:center;gap:var(--space-3);font-size:var(--text-sm)}
.site-header__co-sep{width:1px;height:18px;background:currentColor;opacity:.35}
.site-header__co-phone{display:none;font-size:var(--text-sm);font-variant-numeric:tabular-nums;white-space:nowrap;color:inherit}
@media (max-width:1023.98px){
  .site-header--checkout{--hdr-dark:var(--hdr-m-row)}
  .site-header__co{height:var(--hdr-m-row);--hdr-logo:48px}
  .site-header__co .brand__name{font-size:21.9px}
  .site-header__co .brand__tag{font-size:8.6px;letter-spacing:.02em}
  .site-header__co-tools{display:none}
  .site-header__co-phone{display:block;min-height:44px;padding-inline:4px}
}
/* Телефон в шапке оформления раздвигал страницу: 417 при 390 (арбитр 03.11). Номер в две строки, логотип прежний */
@media (max-width:459.98px){
  .site-header__co{gap:var(--space-2)}
  .site-header__co-phone{white-space:normal;max-width:5.8em;text-align:right;line-height:1.2;flex:none}
}
@media (max-width:339.98px){
  .site-header__co{--hdr-logo:40px}
  .site-header__co .brand__name{font-size:17.65px}
}
.pm-hdr-light .site-header--checkout .site-header__co-phone,.pm-hdr-light .site-header--checkout .contact-drop__toggle{color:var(--ink-primary)}
/* /pm/css/pm.css */
/* Страницы витрины Pikemaster (категория, товар, 404) поверх tokens.css + components.css из frontend-proto. */
body{display:flex;flex-direction:column;min-height:100vh} /* подвал прижат к низу на коротких страницах (404, пустая корзина) */
.pm-main{flex:1 0 auto;min-height:50vh;padding-bottom:var(--space-8)}
.crumbs{margin:var(--space-3) 0 var(--space-2);font-size:var(--text-xs);color:var(--ink-faint)}
.crumbs__list{display:flex;flex-wrap:wrap;gap:4px 0;list-style:none;margin:0;padding:0}
.crumbs a{color:var(--ink-faint);text-decoration:none}
.crumbs a:hover{color:var(--ink-primary)}
.crumbs__item:not(:last-child)::after{content:"/";margin:0 8px;color:var(--ink-faint)}
.crumbs span{color:var(--ink-muted)}
.pm-h1{font-size:var(--text-hero);font-weight:var(--fw-light);letter-spacing:var(--tracking-display);line-height:var(--leading-tight);margin:0 0 var(--space-1)}
.pm-count{font-size:var(--text-sm);color:var(--ink-soft);margin:0 0 var(--space-3)}
.pm-h2{font-size:var(--text-xl);font-weight:var(--fw-light);margin:0 0 var(--space-2)}
.pm-muted{color:var(--ink-muted)}
.pm-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 var(--space-3);padding:0}
.pm-chip{display:inline-flex;align-items:center;height:36px;padding:0 14px;border:1px solid var(--border-soft);border-radius:var(--r-pill);font-size:var(--text-sm);color:var(--ink-primary);text-decoration:none;background:#fff}
.pm-chip:hover{border-color:var(--border-strong)}
.pm-chip.is-active{background:var(--bg-field-dark);border-color:var(--bg-field-dark);color:#fff}
.pm-sortbar{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin:0 0 var(--space-2);font-size:var(--text-sm)}
.pm-empty{padding:var(--space-6) 0;color:var(--ink-muted)}
.pm-pager{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin:var(--space-5) 0;list-style:none;padding:0}
/* w11 (макет v2.5, 03-category-v5): цифры без рамок, текущая — акцентным красным, стрелки — тем же текстом; зона касания 40×40 */
.pm-pager a,.pm-pager span{display:inline-grid;place-items:center;min-width:36px;height:40px;padding:0 6px;border:0;border-radius:var(--r-btn);color:var(--ink-muted);text-decoration:none;font-size:var(--text-md);font-weight:var(--fw-regular);line-height:1}
.pm-pager a:hover{color:var(--ink-primary)}
.pm-pager a:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.pm-pager [aria-current]{color:var(--accent);font-weight:var(--fw-medium)}
.pm-pager .pm-pager__nav{color:var(--ink-primary);font-size:var(--text-lg)}
.pm-seo{margin-top:var(--space-8);color:var(--ink-soft);font-size:var(--text-base);line-height:var(--leading-relax)}
.pm-text{line-height:var(--leading-relax);font-size:var(--text-base);overflow-wrap:anywhere}
/* ПК-14 (Никита 28.10 #2026): описание товара — по ширине, с переносами по языку страницы (lang uk/ru), чтобы не было «рек» пробелов */
.pm-section .pm-text :is(p,li){text-align:justify;hyphens:auto;-webkit-hyphens:auto}
.pm-text img,.pm-text iframe,.pm-seo img{max-width:100%;height:auto}
.pm-text table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}
.pm-text td,.pm-text th{border:1px solid var(--border-soft);padding:4px 8px}
.pm-404{padding:var(--space-10) 0;text-align:center}
.pm-404 .pm-h1{margin-bottom:var(--space-2)}

/* товар */
.pm-pgrid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);margin-bottom:var(--space-5)}
@media (min-width:1024px){.pm-pgrid{grid-template-columns:minmax(0,.76fr) minmax(0,1fr);gap:var(--space-8)}} /* Никита 04.11 #2710–2711: окно главного фото меньше на 15–20 % */
.pm-gallery__main{position:relative;background:#fff;border:1px solid var(--border-soft);border-radius:var(--r-lg);overflow:hidden;aspect-ratio:1/1;display:grid;place-items:center} /* ПК-25 (Никита 28.10 #2090): поля по бокам фото белые, рамка тонкой линией */
/* picture — на всю рамку: иначе фото меньше рамки (408×485 у Daiwa 24 Certate) оставалось своего размера (правка Никиты 28.10);
   absolute — height:100% в рамке с aspect-ratio не разрешается, и высокое фото вылезало за рамку и обрезалось */
.pm-gallery__main picture{position:absolute;inset:0;display:block}
.pm-gallery__main img{width:100%;height:100%;object-fit:contain}
.pm-gallery__main .pm-gallery__mono{position:absolute;right:12px;bottom:12px;width:130px;height:auto;z-index:1;pointer-events:none}
.pm-gallery__main .pm-gallery__mono[hidden]{display:none}
.pm-gallery__main .stickers{top:12px;left:12px;gap:6px}
.pm-gallery__main .sticker{padding:7px 12px;border-radius:8px;font-size:18px}
.pm-gallery--out .pm-gallery__main .pm-gallery__mono{filter:none;opacity:1}
@media (max-width:767.98px){.pm-gallery__main .pm-gallery__mono{right:8px;bottom:8px;width:104px}.pm-gallery__main .stickers{top:8px;left:8px}.pm-gallery__main .sticker{padding:5px 9px;border-radius:6px;font-size:15px}}
.pm-gallery__thumbs{display:flex;gap:8px;list-style:none;margin:var(--space-2) 0 0;padding:0;overflow-x:auto}
.pm-gallery__thumbs li{flex:none;width:76px;height:76px;border:1px solid var(--border-soft);border-radius:var(--r-md);overflow:hidden;background:#fff}
.pm-gallery__thumbs img{width:100%;height:100%;object-fit:contain}
.pm-gallery__thumbs a{display:block;width:100%;height:100%;cursor:pointer}
.pm-gallery__thumbs li:has(a.is-active){outline:2px solid var(--ink-primary);outline-offset:-2px} /* ПК-20: какая миниатюра сейчас большая */
/* ПК-49 и ПК-51 (Никита 31.10 #2264–2271 «размер текста названия можно чуть уменьшить?», «чуть уменьшаем»): было 48px на компьютере и 28px на телефоне,
   сейчас 35px на 1440 (36px — потолок, с ~1540px) и 22px на 390; тег H1 тот же */
.pm-title{font-size:clamp(1.375rem,1rem + 1.3vw,2.25rem);font-weight:var(--fw-light);text-transform:uppercase;letter-spacing:var(--tracking-caps);line-height:var(--leading-snug);margin:6px 0 var(--space-1);overflow-wrap:anywhere}
/* ПК-51 (Никита 31.10 #2270–2271 «чуть уменьшаем… на некоторых товарах он сильно большой»): длинные названия — ступенью меньше и плотнее */
.pm-title--long{font-size:clamp(1.25rem,.9rem + .9vw,1.75rem);letter-spacing:.04em}
.pm-title--xlong{font-size:clamp(1.125rem,.8rem + .75vw,1.5rem);letter-spacing:.03em}
.pm-title__type{display:block;font-size:var(--text-md);text-transform:none;letter-spacing:normal;color:var(--ink-muted);line-height:1.3;margin-bottom:2px} /* ПК-24: слово-тип мелко над моделью */
.pm-jdm{display:inline-flex;align-items:center;gap:6px;margin-left:16px;font-size:var(--text-sm);color:var(--ink-muted)}
.pm-jdm::before{content:"";width:14px;height:14px;border-radius:50%;flex:none;background:radial-gradient(circle,#bc002d 0 34%,#fff 38%);box-shadow:inset 0 0 0 1px var(--border-soft)} /* ПК-06: «Японський ринок» рядом с наличием, кружок-флаг */
.pm-brand{margin:0 0 var(--space-1);font-size:var(--text-sm)}
.pm-brand__link{color:var(--ink-primary);text-decoration:underline;text-decoration-color:var(--border-soft);text-underline-offset:3px}
.pm-brand__link:hover{text-decoration-color:currentColor}
.pm-price{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px;margin:var(--space-2) 0}
.pm-price__now{font-size:var(--text-3xl);font-weight:var(--fw-regular);font-variant-numeric:tabular-nums}
.pm-price__old{font-size:var(--text-lg);color:var(--ink-faint);text-decoration:line-through}
.pm-current{margin:0 0 var(--space-2);font-size:var(--text-sm)}
.pm-chips-title{margin:var(--space-2) 0 6px;font-size:var(--text-sm);color:var(--ink-muted)}
.pm-mchips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 var(--space-2);padding:0}
.pm-mchip{position:relative;display:inline-flex;flex-direction:column;justify-content:center;min-height:48px;padding:6px 12px;border:1px solid var(--border-soft);border-radius:var(--r-md);color:var(--ink-primary);text-decoration:none;font-size:var(--text-sm);line-height:1.25;background:#fff}
.pm-mchip:hover{border-color:var(--ink-muted)}
.pm-mchip.is-active{border-color:var(--border-strong);box-shadow:inset 0 0 0 1px var(--border-strong)}
.pm-mchip--out_of_stock,.pm-mchip--discontinued{color:var(--ink-faint);border-style:dashed}
.pm-mchip--preorder{border-color:var(--preorder)}
.pm-mchip--in_transit{border-color:var(--transit)}
.pm-mchip__price{font-size:var(--text-xs);color:var(--ink-muted)}
.pm-mchip__old{font-size:var(--text-xs);color:var(--ink-faint)}
.pm-buyrow{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:var(--space-3)}
/* ПК-48: «Купити» над моделями — отступ до чипов */
.pm-buyrow+.pm-chips-wrap{margin-top:var(--space-3)}
.pm-tabs{display:flex;gap:var(--space-3);overflow-x:auto;border-bottom:1px solid var(--border-soft);margin:var(--space-4) 0 var(--space-3);font-size:var(--text-md)}
.pm-tabs a{flex:none;padding:12px 0;color:var(--ink-muted);text-decoration:none;border-bottom:2px solid transparent}
.pm-tabs a:hover,.pm-tabs a[aria-current]{color:var(--ink-primary);border-bottom-color:var(--ink-primary)}
.pm-section{margin:var(--space-5) 0;min-width:0}
.pm-two{display:grid;grid-template-columns:minmax(0,1fr);gap:0 var(--space-8)}
@media (min-width:1024px){.pm-two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}
.pm-table-wrap{position:relative;overflow-x:auto;-webkit-overflow-scrolling:touch}
/* ПК-09 (Никита 28.10 #2002): таблица по содержимому — «Купити» сразу за ценой, а не у правого края широкого экрана */
.pm-models{width:auto;min-width:min(100%,560px);border-collapse:collapse;font-size:var(--text-sm);font-variant-numeric:tabular-nums}
.pm-models th{text-align:left;font-weight:var(--fw-medium);color:var(--ink-muted);padding:10px 12px;border-bottom:1px solid var(--border-soft);white-space:nowrap}
.pm-models td{padding:10px 12px;border-bottom:1px solid var(--border-soft);vertical-align:middle}
.pm-models td a{color:var(--ink-primary);text-decoration:none}
.pm-models__row.is-active{background:var(--bg-surface)}
.pm-models__row--out_of_stock td,.pm-models__row--discontinued td{color:var(--ink-faint)}
.pm-models__row--out_of_stock td a,.pm-models__row--discontinued td a{color:var(--ink-soft)}
.pm-models__price{white-space:nowrap}
.pm-models__price s{color:var(--ink-faint);margin-right:6px}
.pm-models__buy{text-align:left;white-space:nowrap}
.pm-models__out{font-size:var(--text-xs);margin-right:8px}
/* ПК-33: свой текст вместо «Немає в наявності» («Чекаємо за 2 тижні») — новая информация, виден на любой ширине */
.pm-models__out.pm-models__note{display:inline-block;max-width:180px;white-space:normal;vertical-align:middle;line-height:1.25;color:var(--ink-soft)}
/* ПК-58 (Никита 02.11 #2348–2349, скрин 22 Stella): «в версии с компа расширить эту кнопку» — «Купити» (и «В дорозі» / «Під замовлення» в том же столбце) шире */
.pm-models__buy .btn--buy,.pm-models__buy .btn--transit,.pm-models__buy .btn--preorder{min-width:160px}
/* ПК-59 (#2350–2351): «размер текста моделей на 1-2 пункта увеличить» — название модели 15 → 17px */
.pm-models td:first-child{font-size:var(--text-base)}
/* Никита 03.11 #2554–2558: «чтоб не в 2 строчки название модели а в одну»; портретный телефон — см. pages-a.css (FE-16) */
@media (min-width:1024px){.pm-models td:first-child{white-space:nowrap}}
/* ПК-03 (#1959): телефон горизонтально (~844 px) — все колонки видны, таблица шире экрана; столбец с кнопкой закреплён справа.
   До 1440 px (03.11): название модели в одну строку расширяет таблицу, столбцы ужимаются, чтобы кнопка не закрывала цену и не уходила за край */
@media (max-width:1439.98px){
 .pm-models__buy{position:sticky;right:0;background:#fff;box-shadow:-8px 0 8px -8px rgba(15,17,17,.25)}
 .pm-models__row.is-active .pm-models__buy{background:var(--bg-surface)}
 .pm-models__out{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap} /* статус и так виден: серая строка + «Повідомити» */
 .pm-models__out.pm-models__note{position:static;display:block;width:auto;height:auto;overflow:visible;clip:auto;margin:0 0 4px;max-width:150px;white-space:normal}
}
@media (min-width:1200px){.pm-models__buy{box-shadow:none}}
@media (min-width:768px) and (max-width:1279.98px){.pm-models__price s{display:block;margin:0;font-size:12px}}
@media (min-width:768px) and (max-width:1199.98px){
 .pm-models__buy .btn{white-space:normal;line-height:1.15;height:auto;min-height:38px;padding-inline:10px;max-width:140px}
 .pm-models__buy .btn--buy,.pm-models__buy .btn--transit,.pm-models__buy .btn--preorder{min-width:120px}
 .pm-models th,.pm-models td{padding-inline:9px}
}
.pm-specs{margin:0}
.pm-specs__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--border-soft);font-size:var(--text-sm)}
.pm-specs__row[hidden]{display:none}
@media (min-width:768px){.pm-phone-only{display:none}} /* ПК-81: столбцы таблицы моделей на телефоне скрыты, там они строками */
.pm-specs dt{color:var(--ink-muted)}.pm-specs dd{margin:0}
.pm-video{position:relative;aspect-ratio:16/9;border-radius:var(--r-lg);overflow:hidden;background:#000}
.pm-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.pm-review{padding:var(--space-2) 0;border-bottom:1px solid var(--border-soft)}
.pm-review__head{margin:0 0 6px;font-size:var(--text-sm)}
.pm-review__body{line-height:var(--leading-base);overflow-wrap:anywhere}
.pm-review__reply{margin:var(--space-2) 0 0 var(--space-3);padding-left:var(--space-2);border-left:2px solid var(--border-soft)}
/* ПК-31: «Залишити відгук» — форма раскрывается под списком отзывов */
.pm-rvform{margin-top:var(--space-3)}
.pm-rvform>summary{list-style:none;cursor:pointer;width:max-content}
.pm-rvform>summary::-webkit-details-marker{display:none}
.pm-rvform[open]>summary{margin-bottom:var(--space-2)}
.pm-rvform__form{max-width:560px}
.pm-rvform__note{margin:0;font-size:var(--text-xs)}
.pm-rvform__form .btn{justify-self:start}
.pm-rvform__form .pmc-msg:empty{display:none}
@media (max-width:767px){
 .pm-models th:nth-child(n+2):not(:nth-last-child(-n+2)),.pm-models td:nth-child(n+2):not(:nth-last-child(-n+2)){display:none}
 .pm-models td,.pm-models th{padding:10px 6px}
 .pm-models__buy .btn{padding-inline:10px}
 .pm-buyrow .btn--lg{flex:1}
}
.pm-cat-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin-bottom:var(--space-2)}
.pm-cat-head .pm-h1{margin:0}.pm-cat-head .pm-count{margin:0}
.pm-text--above{margin-bottom:var(--space-3);color:var(--ink-muted)}
/* /pm/css/cart.css */
/* Корзина, оформление, «Дякуємо», «Повідомити про наявність» (этап 2, поток C).
   Макеты: 06-cart-v5 (панель ≈510), 16-checkout-preorder-v3, 10-mobile-2-v5 экраны 2–3. Токены — tokens.css. */

/* ---------- панель корзины ---------- */
.pmc-scrim{position:fixed;inset:0;background:var(--scrim);z-index:calc(var(--z-sheet) + 1);opacity:0;visibility:hidden;transition:opacity var(--dur-base)}
.pmc-panel{position:fixed;top:0;right:0;bottom:0;width:min(510px,100%);background:var(--bg-base);z-index:calc(var(--z-sheet) + 2);display:flex;flex-direction:column;
  transform:translateX(100%);transition:transform var(--dur-base);box-shadow:var(--shadow-pop);outline:none}
.pmc-open .pmc-scrim:not(.pmc-scrim--n){opacity:1;visibility:visible}
.pmc-open .pmc-panel{transform:none}
.pmc-panel__head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid var(--border-soft)}
.pmc-panel__title{font-size:var(--text-md);font-weight:var(--fw-medium);margin:0}
.pmc-x{width:44px;height:44px;display:grid;place-items:center;margin-right:-10px;color:var(--ink-primary);background:none;border:0;cursor:pointer}
.pmc-x .icon{width:22px;height:22px}
.pmc-panel__body{flex:1;overflow:auto;display:flex;flex-direction:column}
.pmc-panel__body .pmc-lines{flex:1;padding:0 24px}
.pmc-panel__body .pmc-foot{position:sticky;bottom:0;background:var(--bg-base);padding:16px 24px 24px;border-top:1px solid var(--border-soft)}
.pmc-loading,.pmc-error{padding:24px;color:var(--ink-muted)}

/* ---------- строки корзины ---------- */
.pmc-lines{list-style:none;margin:0;padding:0}
.pmc-line{display:grid;grid-template-columns:100px 1fr auto;gap:16px;padding:20px 0;border-bottom:1px solid var(--border-soft)}
.pmc-line:last-child{border-bottom:0}
.pmc-line__media img{width:100px;height:100px;object-fit:contain;background:var(--bg-card);border-radius:var(--r-sm)}
.pmc-line__body{min-width:0}
.pmc-line__title{display:block;color:var(--ink-primary);text-decoration:none;text-transform:uppercase;letter-spacing:var(--tracking-caps);font-size:var(--text-xs);font-weight:var(--fw-medium);line-height:var(--leading-snug)}
.pmc-line__title:hover{text-decoration:underline}
.pmc-line__meta{margin:6px 0 0;font-size:var(--text-xs);color:var(--ink-muted)}
.pmc-line__pre{margin:6px 0 0;font-size:var(--text-xs);color:#B85C00}
.pmc-line__transit{margin:6px 0 0;font-size:var(--text-xs);color:#1F6FB8}
.pmc-line__warn{margin:6px 0 0;font-size:var(--text-xs);color:var(--accent)}
.pmc-line__row{display:flex;align-items:center;gap:16px;margin-top:12px}
.pmc-line__price{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.pmc-line__price b{display:block;font-weight:var(--fw-medium)}
.pmc-line__old{display:block;color:var(--ink-faint);font-size:var(--text-xs);margin-top:2px}
/* ПК-22: скидка от суммы/группы под ценой позиции — новая цена, зачёркнутая до скидки (.pmc-line__old), подпись */
.pmc-line__disc{display:block;color:var(--accent);font-size:var(--text-xs);margin-top:2px}
.pmc-line--gone .pmc-line__media{opacity:.45}
.pmc-link{background:none;border:0;padding:0;color:var(--ink-muted);font:inherit;font-size:var(--text-xs);text-decoration:underline;cursor:pointer}
.pmc-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-variant-numeric:tabular-nums}
.pmc-row--disc span:last-child{color:var(--accent)}
.pmc-row--total{font-size:var(--text-md);padding-top:10px}
.pmc-row--total b{font-weight:var(--fw-semibold)}
.pmc-row--muted{color:var(--ink-muted);font-size:var(--text-sm)}
.pmc-hint{margin:4px 0 0;font-size:var(--text-xs);color:var(--ink-muted)}
.pmc-foot .btn{margin-top:12px}
.pmc-empty{padding:32px 24px;text-align:center}
.pmc-empty__title{font-size:var(--text-md);margin:0 0 8px}

/* ---------- страница корзины ---------- */
.pmc-page{max-width:880px;padding-top:var(--space-4)}
.pmc-page__title{font-size:var(--text-xl);font-weight:var(--fw-light);margin:0 0 var(--space-2)}
.pmc-page .pmc-foot{max-width:420px;margin-left:auto;padding-top:16px}

/* ---------- поля ---------- */
.pmc-field{display:flex;flex-direction:column;gap:6px;font-size:var(--text-xs);color:var(--ink-muted)}
.pmc-field input,.pmc-field select,.pmc-field textarea{font:inherit;font-size:var(--text-base);color:var(--ink-primary);height:46px;padding:0 12px;border:1px solid var(--border-soft);border-radius:var(--r-sm);background:#fff;width:100%;box-sizing:border-box}
.pmc-field textarea{height:auto;padding:10px 12px;resize:vertical}
.pmc-field input:focus,.pmc-field select:focus,.pmc-field textarea:focus{outline:2px solid var(--focus);outline-offset:0;border-color:transparent}
.pmc-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}

/* ---------- «Повідомити» ---------- */
.pmc-scrim--n{z-index:calc(var(--z-sheet) + 3)}
.pmn-open .pmc-scrim--n{opacity:1;visibility:visible}
.pmc-modal{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%) scale(.98);width:min(440px,calc(100% - 32px));background:#fff;border-radius:var(--r-lg);padding:28px 24px 24px;
  z-index:calc(var(--z-sheet) + 4);opacity:0;visibility:hidden;transition:opacity var(--dur-base),transform var(--dur-base);outline:none;box-sizing:border-box}
.pmn-open .pmc-modal{opacity:1;visibility:visible;transform:translate(-50%,-50%)}
.pmc-modal .pmc-x{position:absolute;top:8px;right:16px}
.pmc-modal__title{font-size:var(--text-md);font-weight:var(--fw-medium);margin:0 32px 8px 0}
.pmc-modal__text{margin:0 0 16px;color:var(--ink-muted);font-size:var(--text-sm)}
.pmc-form{display:grid;gap:12px}
.pmc-msg{margin:0;font-size:var(--text-sm);min-height:1.2em}
/* выбор канала «Telegram / Email» (ADM-05) — две карточки в ряд, как способы доставки в оформлении */
.pmn-ch{border:0;margin:0;padding:0;min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
.pmn-ch__legend{grid-column:1/-1;padding:0;margin:0 0 6px;font-size:var(--text-xs);color:var(--ink-muted)}
.pmn-ch__opt{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;height:46px;padding:0 8px;border:1px solid var(--border-soft);border-radius:var(--r-sm);cursor:pointer;font-size:var(--text-base);color:var(--ink-primary);white-space:nowrap}
/* ПК-08: «Email / Телефон» в одну строку и на узком телефоне */
@media (max-width:419.98px){.pmn-ch__opt{font-size:var(--text-sm)}}
.pmn-ch__opt:has(input:checked){border-color:var(--border-strong);box-shadow:inset 0 0 0 1px var(--border-strong)}
.pmn-ch__opt:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px}
.pmn-ch__opt input{position:absolute;opacity:0;pointer-events:none}
.pmn-mail{display:grid;gap:12px}
.pmn-mail[hidden],.pmn-tg[hidden],.pmc-form[hidden]{display:none}
.pmn-tg .pmc-modal__text{color:var(--ink-primary)}

/* ---------- оформление ---------- */
.pmco{padding-top:var(--space-4)}
.pmco__title{font-size:var(--text-xl);font-weight:var(--fw-light);margin:0 0 var(--space-2)}
.pmco__grid{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:48px;align-items:start}
.pmco-pre{border:1px solid var(--preorder);border-radius:var(--r-md);padding:14px 18px;margin:0 0 var(--space-3);background:#FFF7EC}
.pmco-pre p{margin:2px 0}
.pmco-pre__head{font-weight:var(--fw-medium);color:#B85C00}
/* ПК-62: мелкая подпись внизу блока «Товар під замовлення» */
.pmco-pre p.pmco-pre__note{margin-top:8px;font-size:var(--text-xs);color:var(--ink-muted)}
.pmco-pre--transit{border-color:var(--transit);background:#EEF6FE}
.pmco-pre--transit .pmco-pre__head{color:#1F6FB8}
.pmco-transit{margin:var(--space-2) 0;padding:12px 16px;border:1px solid var(--transit);border-radius:var(--r-md);background:#EEF6FE}
.pmco-step{margin-bottom:var(--space-4)}
.pmco-step__title{display:flex;align-items:center;gap:12px;font-size:var(--text-lg);font-weight:var(--fw-regular);margin:0 0 var(--space-2)}
.pmco-step__n{width:32px;height:32px;border-radius:50%;border:1px solid var(--border-strong);display:grid;place-items:center;font-size:var(--text-sm)}
.pmco-fields{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}
.pmco-fields[hidden]{display:none}
.pmco-wide{grid-column:1/-1;margin-top:14px}
.pmco-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
.pmco-card{position:relative;display:flex;flex-direction:column;gap:2px;padding:14px 16px;border:1px solid var(--border-soft);border-radius:var(--r-md);cursor:pointer}
.pmco-card:has(input:checked){border-color:var(--border-strong);box-shadow:inset 0 0 0 1px var(--border-strong)}
.pmco-card input{position:absolute;opacity:0}
.pmco-card__title{font-weight:var(--fw-medium);color:var(--ink-primary)}
.pmco-card__note{font-size:var(--text-xs);color:var(--ink-muted)}
.pmco-card:has(input:focus-visible){outline:2px solid var(--focus)}
.pmco-pays{display:grid;gap:10px}
.pmco-pay{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid var(--border-soft);border-radius:var(--r-md);cursor:pointer}
.pmco-pay[hidden]{display:none}
/* ПК-46: «Як з Вами зв'язатися?» — четыре варианта плитками 2×2 */
.pmco-contact{border:0;margin:16px 0 0;padding:0;min-width:0}
.pmco-contact__title{padding:0;margin:0 0 6px;font-size:var(--text-xs);color:var(--ink-muted)}
.pmco-contact__opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pmco-contact__opt{display:flex;gap:10px;align-items:center;min-height:46px;padding:8px 12px;border:1px solid var(--border-soft);border-radius:var(--r-sm);cursor:pointer;font-size:var(--text-sm);color:var(--ink-primary)}
.pmco-contact__opt:has(input:checked){border-color:var(--border-strong)}
.pmco-contact__opt input{accent-color:#000;width:18px;height:18px;margin:0;flex:none}
.pmco-pay:has(input:checked){border-color:var(--border-strong)}
.pmco-pay input{accent-color:#000;width:18px;height:18px;margin:2px 0 0;flex:none}
.pmco-pay__title{display:block;color:var(--ink-primary)}
.pmco-pay__note{display:block;font-size:var(--text-xs);color:var(--ink-muted);margin-top:2px}
.pmco-city{position:relative}
.pmco-suggest{position:absolute;left:0;right:0;top:100%;z-index:5;list-style:none;margin:2px 0 0;padding:4px 0;background:#fff;border:1px solid var(--border-soft);border-radius:var(--r-sm);box-shadow:var(--shadow-pop);max-height:260px;overflow:auto}
.pmco-suggest button{display:block;width:100%;text-align:left;background:none;border:0;padding:8px 12px;font:inherit;font-size:var(--text-sm);color:var(--ink-primary);cursor:pointer}
.pmco-suggest button:hover{background:var(--bg-surface)}
.pmco-sum{background:var(--bg-surface);border-radius:var(--r-lg);padding:24px;position:sticky;top:24px}
.pmco-sum__title{font-size:var(--text-lg);font-weight:var(--fw-regular);margin:0 0 12px}
.pmco-sum__note{font-size:var(--text-xs);color:var(--ink-muted);margin:10px 0 0;text-align:center}
.pmco-items{list-style:none;margin:0 0 8px;padding:0}
.pmco-item{display:grid;grid-template-columns:64px 1fr auto;gap:12px;padding:12px 0;border-bottom:1px solid var(--border-soft)}
.pmco-item--noimg{grid-template-columns:1fr auto}
.pmco-item img{width:64px;height:64px;object-fit:contain;background:#fff;border-radius:var(--r-sm)}
.pmco-item__name{margin:0;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-caps);font-weight:var(--fw-medium)}
.pmco-item__meta{margin:4px 0 0;font-size:var(--text-xs);color:var(--ink-muted)}
.pmco-item__price{white-space:nowrap;font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;text-align:right}
.pmco-item__price b{display:block;font-weight:inherit}
.pmco-item__price s{display:block;font-size:var(--text-xs);font-weight:var(--fw-regular);color:var(--ink-faint)}
.pmco-item__disc{margin:4px 0 0;font-size:var(--text-xs);color:var(--accent)}
.pmco-item.is-gone{opacity:.6}
.pmco-msg{color:var(--accent);font-size:var(--text-sm);margin:8px 0 0;min-height:0}
.pmco-msg:empty{display:none}
.pmco-submit{margin-top:14px}
.pmco-toggle,.pmco-sticky{display:none}

/* ---------- «Дякуємо» ---------- */
.pmok{max-width:720px;padding-top:var(--space-4)}
.pmok__title{font-size:var(--text-xl);font-weight:var(--fw-light);margin:0 0 8px}
.pmok__box{background:var(--bg-surface);border-radius:var(--r-lg);padding:20px 24px;margin:var(--space-3) 0}
.pmok__dl{display:grid;grid-template-columns:auto 1fr;gap:6px 16px;margin:16px 0 0;font-size:var(--text-sm)}
.pmok__dl dt{color:var(--ink-muted)}.pmok__dl dd{margin:0}

/* ---------- телефон ---------- */
@media (max-width:1023px){
  .pmco__grid{grid-template-columns:1fr;gap:24px}
  .pmco-sum{position:static}
}
@media (max-width:767px){
  .pmc-line{grid-template-columns:80px 1fr;gap:12px}
  .pmc-line__media img{width:80px;height:80px}
  .pmc-line__price{grid-column:2;text-align:left}
  .pmc-line__price b,.pmc-line__old{display:inline;margin-right:8px}
  .pmc-page{padding-top:var(--space-2)}
  .pmc-page .pmc-foot{max-width:none}
  .pmco-fields,.pmco-cards{grid-template-columns:1fr}
  .pmco-toggle{display:flex;align-items:center;gap:6px;width:100%;padding:14px 16px;margin-bottom:var(--space-2);border:1px solid var(--border-soft);border-radius:var(--r-md);background:var(--bg-surface);font:inherit;color:var(--ink-primary);cursor:pointer}
  .pmco-toggle span[aria-hidden]{margin-left:auto}
  .pmco-sum{order:-1;display:none}
  .pmco-sum.is-open{display:block}
  .pmco-sum .pmco-submit,.pmco-sum .pmco-sum__note{display:none}
  .pmco-sticky{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:var(--z-drawer);align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--border-soft);box-shadow:var(--shadow-sheet)}
  .pmco-sticky__label{color:var(--ink-muted);font-size:var(--text-sm)}
  .pmco{padding-bottom:90px}
  .pmco-msg{position:static}
}
/* /pm/css/pages-a.css */
/* Этап 2, поток A: главная, мега-меню, фильтры, посадочные, сетка цветов, липкая покупка (поверх pm.css). */

/* «Немає в наявності» на карточке товара: фото ч/б и бледное, цена серая (FE-13) */
.pm-gallery--out .pm-gallery__main img,.pm-gallery--allout .pm-gallery__thumbs img{filter:grayscale(1);opacity:.45}
.pm-price--out .pm-price__now,.pm-price--out .pm-stickybuy__price{color:var(--ink-faint)}

/* кружки цветов и сетка цветов приманки (макет 15-lure-v8, FE-15) */
.pm-swlabel{margin:var(--space-2) 0 6px;font-size:var(--text-md)}
.pm-swlabel strong{font-weight:var(--fw-regular)}
.pm-swatches{padding:6px 0;margin:0 0 var(--space-2)}
/* ПК-21: размеры приманки вкладками (как на старом сайте); вид — как чипы моделей, выбранный — чёрный */
.pm-sizetabs{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0 0 var(--space-2);padding:0}
.pm-sizetab{display:inline-flex;align-items:center;justify-content:center;min-width:56px;min-height:44px;padding:0 14px;border:1px solid var(--border-soft);border-radius:var(--r-md);color:var(--ink-primary);text-decoration:none;font-size:var(--text-md);font-variant-numeric:tabular-nums}
.pm-sizetab:hover{border-color:var(--ink-muted)}
.pm-sizetab[aria-current="true"]{background:#121212;border-color:#121212;color:#fff}
#colors .pm-sizetabs{margin-bottom:var(--space-3)}
.pm-swatches .swatch{text-decoration:none}
.pm-swatches .swatch picture,.pm-swatches .swatch img{display:block;width:100%;height:100%;object-fit:cover}
.swatch[aria-current="true"]{box-shadow:0 0 0 3px #fff,0 0 0 5px var(--ink-primary)}
.pm-colors{margin-bottom:var(--space-4)}
.pcard--swatch .pcard__media picture,.pcard--swatch .pcard__media img{display:block;width:100%;height:100%}
.pcard--swatch .pcard__actions .btn{width:100%}
.pcard--swatch.is-active{outline:2px solid var(--ink-primary);outline-offset:4px;border-radius:var(--r-md)}
.pcard--swatch .pcard__old{margin-right:6px}
/* ПК-39 (Никита 31.10 #2243): подпись цвета с моделью — целиком, без «…»: иначе на телефоне видна только модель, а цвета нет */
.pcard--swatch .pcard__title{display:block;-webkit-line-clamp:unset;overflow:visible;overflow-wrap:anywhere}
@media (max-width:767.98px){.pcard--swatch .pcard__title{font-size:var(--text-sm);line-height:1.3}}

/* таблица моделей на телефоне — строка не шире экрана (FE-16) */
@media (max-width:767px){
 .pm-models__out{display:none}
 .pm-models__out.pm-models__note{display:block;max-width:118px;font-size:11px}
 .pm-models__buy .btn{height:auto;min-height:38px;max-width:118px;padding:4px 8px;font-size:12px;line-height:1.15;white-space:normal}
 /* ПК-02 (Никита 28.10 #1957): «Купити» такая же большая, как «Повідомити про наявність» — во всю ширину столбца, 2 строки высоты */
 .pm-models__buy .btn{width:100%;min-width:104px;min-height:46px}
 /* ПК-57 (Никита 02.11 #2346–2347, скрин): «Слово Купити немного увеличить» — 12 → 15px, как на компьютере */
 .pm-models__buy .btn--buy{font-size:var(--text-sm)}
 /* ПК-58/59 на телефоне: кнопка — по ширине столбца, как раньше; название модели 15 → 16px (столбец узкий) */
 .pm-models__buy .btn--buy,.pm-models__buy .btn--transit,.pm-models__buy .btn--preorder{min-width:104px}
 .pm-models td:first-child{font-size:1rem}
 .pm-models td:first-child{overflow-wrap:anywhere;width:45%}
 .pm-models__price s{display:block;margin:0;font-size:11px}
 .pm-table-wrap{overflow-x:visible}
}

/* телефон: цена и «Купити» внизу экрана (макет 17-mobile) */
.pm-stickybuy{display:none}
@media (max-width:767px){
 .pm-stickybuy{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--border-soft);box-shadow:0 -6px 20px rgba(0,0,0,.06)}
 .pm-stickybuy__price{flex:none;font-size:var(--text-2xl);font-variant-numeric:tabular-nums;white-space:nowrap}
 .pm-stickybuy .btn{flex:1;min-width:0;white-space:normal;line-height:1.15}
 body:has(.pm-stickybuy){padding-bottom:76px}
}

/* «Каталог»: выпадающее меню компьютера (макет 13-menu-v3, FE-10) */
.mega{display:none}
@media (min-width:1024px){
 .mega{position:absolute;left:0;right:0;z-index:60;padding:0 var(--space-3)}
 .mega.is-open{display:block}
 .mega__scrim{position:absolute;left:0;right:0;top:0;height:100vh;background:rgba(15,17,17,.35);z-index:-1} /* ПК-37: затемнение под шапкой, пункты меню остаются под мышкой */
 .mega__panel{color:var(--ink-primary);max-width:1400px;margin:0 auto;background:#fff;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.18);padding:var(--space-3) var(--space-4) var(--space-2)}
 .mega__cols{display:grid;grid-template-columns:repeat(var(--cols,6),minmax(0,1fr));gap:0}
 .mega__col{display:flex;flex-direction:column;padding:0 var(--space-2);border-left:1px solid var(--border-soft)}
 .mega__col:first-child{border-left:0;padding-left:0}
 .mega__img{display:grid;place-items:center;height:110px;margin-bottom:var(--space-2)}
 .mega__img img{max-width:160px;max-height:110px;width:auto;height:auto;object-fit:contain;mix-blend-mode:multiply}
 .mega__title{font-size:23px;font-weight:var(--fw-regular);color:var(--ink-primary);text-decoration:none;margin:0 0 var(--space-2)}
 .mega__list{list-style:none;margin:0 0 var(--space-2);padding:0}
 .mega__list a{display:block;padding:5px 0;font-size:18px;color:var(--ink-soft);text-decoration:none}
 .mega__list a:hover,.mega__title:hover{color:var(--ink-primary)}
 .mega__all{margin-top:auto;padding:8px 0;font-size:18px;color:var(--ink-faint);text-decoration:none}
 .mega__all:hover{color:var(--ink-primary)}
 .mega__brands{display:flex;flex-wrap:wrap;align-items:center;gap:8px 48px;margin-top:var(--space-2);padding:var(--space-2) 0 var(--space-1);border-top:1px solid var(--border-soft);font-size:18px}
 .mega__brands strong{font-weight:var(--fw-medium)}
 .mega__brands a{color:var(--ink-muted);text-decoration:none}
 .mega__brands a:hover{color:var(--ink-primary)}
 .site-header{position:relative}
}
/* 1024–1279: «Мультиплікаторні» не влезало в колонку (снимок ПК-37 на 1024) */
@media (min-width:1024px) and (max-width:1279.98px){.mega__title{font-size:20px}.mega__list a,.mega__all{font-size:16px}}

/* главная (12-home-v7; телефон — 17-mobile экран 1) */
.pm-home__tiles{margin:var(--space-3) 0 var(--space-4)}
/* ПК-41 (Никита 31.10 #2240–2241 «этой полосы с категориями не будет же?»; макеты шапки #2173, #2194, #2202 — сразу «Топ продажу»):
   на компьютере разделы открываются из «Каталог ▾» и «бутерброда» в шапке, полосу на главной не показываем; на телефоне остаётся */
@media (min-width:1024px){.pm-home__tiles{display:none}.pm-home__tiles+.pm-home__block{margin-top:var(--space-4)}}
.pm-home__tiles .tile__media{overflow:hidden;position:relative}
/* picture — flex поверх рамки 5:3: в grid max-height 100% не вычисляется, квадратное фото вылезало и обрезалось */
.pm-home__tiles .tile__media picture{display:flex;align-items:center;justify-content:center;position:absolute;inset:0}
.pm-home__tiles .tile__media img{width:auto;height:auto;max-width:100%;max-height:100%}
/* ПК-01: подразделы плитки — карточка под плиткой; крайние плитки ряда прижаты к краю, чтобы не вылезать за экран */
.tile-wrap{position:relative;display:flex;flex-direction:column}
.tile-wrap>.tile{flex:1}
.tile__drop{position:absolute;top:calc(100% + 6px);left:50%;z-index:30;width:max(100%,230px);transform:translateX(-50%);padding:10px 16px 12px;background:#fff;color:var(--ink-primary);text-align:left;
  border-radius:12px;box-shadow:0 16px 48px rgba(0,0,0,.16);opacity:0;visibility:hidden;transition:opacity var(--dur-fast),visibility 0s var(--dur-fast)}
.tile__drop::before{content:"";position:absolute;left:0;right:0;top:-8px;height:8px} /* мост для мыши */
.tile-wrap.is-open .tile__drop{opacity:1;visibility:visible;transition:opacity var(--dur-fast)} /* открывает JS: мышь, касание, фокус клавиатуры */
.tile__drop ul{list-style:none;margin:0;padding:0}
.tile__drop li a{display:block;padding:6px 0;font-size:var(--text-base);color:var(--ink-soft)}
.tile__drop li a:hover{color:var(--ink-primary)}
.tile__all{display:block;margin-top:4px;padding:8px 0 2px;border-top:1px solid var(--border-soft);font-weight:var(--fw-medium)}
.tile-wrap:first-child .tile__drop{left:0;transform:none}
.tile-wrap:last-child .tile__drop{left:auto;right:0;transform:none}
@media (hover:hover){.tile-wrap.is-open .tile .tile__media img{transform:translateY(-4px)}.tile-wrap.is-open .tile__label{color:var(--ink-primary)}}
@media (max-width:767.98px){
 .tile__drop{width:min(240px,calc(100vw - 32px))}
 .tile-wrap:nth-child(3n+1) .tile__drop{left:0;right:auto;transform:none}
 .tile-wrap:nth-child(3n+2) .tile__drop{left:50%;right:auto;transform:translateX(-50%)}
 .tile-wrap:nth-child(3n) .tile__drop{left:auto;right:0;transform:none}
 .tile__drop li a{padding:9px 0;font-size:15px} /* цель касания ≈ 40 px */
 .tile-wrap.is-open>.tile{outline:2px solid var(--ink-primary);outline-offset:-2px}
}
.pm-home__block{margin-bottom:var(--space-5)}
/* ПК-19: полки главной — 5 в ряд от 1280 px; уже — ровный ряд без «хвоста»: 4 / 3 / 2×2 */
.pm-home__block .pgrid{grid-template-columns:repeat(5,minmax(0,1fr));column-gap:var(--space-3)}
@media (max-width:1279.98px){.pm-home__block .pgrid{grid-template-columns:repeat(4,minmax(0,1fr))}.pm-home__block .pgrid>:nth-child(n+5){display:none}}
@media (max-width:1023.98px){.pm-home__block .pgrid{grid-template-columns:repeat(3,minmax(0,1fr))}.pm-home__block .pgrid>:nth-child(n+4){display:none}}
@media (max-width:767.98px){.pm-home__block .pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.pm-home__block .pgrid>:nth-child(4){display:flex}.pm-home__block .pgrid>:nth-child(3):last-child{display:none}} /* полка из 3 товаров на телефоне — 2, без одинокой карточки */
.pm-home__head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:var(--space-3)}
.pm-home__h2{margin:0;font-size:var(--text-2xl);font-weight:var(--fw-regular);color:var(--ink-primary)}
.pm-home__all{display:inline-flex;align-items:center;gap:4px;font-size:var(--text-sm);color:var(--ink-muted);text-decoration:none;white-space:nowrap}
.pm-home__all:hover{color:var(--ink-primary)}
.pm-home__all .icon{width:1em;height:1em}
.pm-home__brands{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:var(--space-3);align-items:center;padding:var(--space-3) 0}
.pm-home__brand{display:grid;place-items:center;height:56px;color:var(--ink-muted);text-decoration:none;font-size:var(--text-md)}
.pm-home__brand picture,.pm-brandhead__logo picture,.pm-fbrands__tile picture{display:contents}
.pm-home__brand source,.pm-brandhead__logo source,.pm-fbrands__tile source{display:none}
.pm-home__brand img{max-width:100%;max-height:48px;width:auto;height:auto;object-fit:contain;mix-blend-mode:multiply;filter:grayscale(1);opacity:.85}
.pm-home__brand:hover img{filter:none;opacity:1}
.pm-home__adv{border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);margin-bottom:var(--space-5)}
.pm-home__advgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
.pm-adv{display:flex;align-items:center;gap:16px;padding:var(--space-3) var(--space-3);color:var(--ink-muted);text-decoration:none;font-size:var(--text-sm);line-height:1.35;border-left:1px solid var(--border-soft)}
.pm-adv:first-child{border-left:0;padding-left:0}
a.pm-adv:hover{color:var(--ink-primary)}
.pm-adv__icon{flex:none;width:40px;height:40px;color:var(--ink-primary)}
.pm-insta{display:grid;grid-template-columns:240px 1fr;gap:var(--space-4);align-items:start;margin-bottom:var(--space-4)}
.pm-insta--empty{grid-template-columns:1fr}
.pm-insta__handle{margin:4px 0 var(--space-3);font-size:var(--text-lg);color:var(--ink-faint)}
.pm-insta__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}
.pm-insta__post{display:block;aspect-ratio:3/4;overflow:hidden;border-radius:6px;background:var(--bg-surface)}
.pm-insta__post img{width:100%;height:100%;object-fit:cover}
.pm-home__seo{display:flex;align-items:flex-start;gap:var(--space-4);padding:var(--space-3) 0 var(--space-4)}
.pm-home__seo .pm-text{flex:1;min-width:0;font-size:var(--text-sm);color:var(--ink-muted)}
.pm-more:not(.is-open){display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.pm-more:not(.is-open) p{display:inline;margin:0}
.pm-more p{margin:0 0 .8em}
.pm-home__more{flex:none}
.pm-more--block:not(.is-open){display:block;-webkit-line-clamp:unset;max-height:9.5em;-webkit-mask-image:linear-gradient(#000 55%,transparent);mask-image:linear-gradient(#000 55%,transparent)}
.pm-more--block:not(.is-open) p{display:block;margin:0 0 .8em}
.pm-seo__more{margin-top:var(--space-2)}
/* FE-01 п.3: «Показати ще» над нумерацией */
.pm-loadmore{display:flex;justify-content:center;margin-top:var(--space-5)}
.pm-loadmore .btn{min-width:220px}
.pm-loadmore .btn[aria-busy=true]{opacity:.6;pointer-events:none}
.pm-pager+.pm-loadmore{margin-top:var(--space-3)}
.pm-pager .pm-pager__gap{min-width:24px;padding:0;border:0;color:var(--ink-muted)}
.pm-brandhead{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-3);padding:var(--space-4);background:var(--bg-surface);border-radius:var(--r-card,12px)}
.pm-brandhead__logo{flex:none;width:200px;padding-right:var(--space-4);border-right:1px solid var(--border-soft)}
.pm-brandhead__logo img{display:block;max-width:100%;max-height:72px;width:auto;height:auto;margin:0 auto;mix-blend-mode:multiply}
.pm-brandhead__body{display:flex;flex-direction:column;gap:4px;min-width:0}
.pm-brandhead__body .pm-h1{margin:0}
@media (max-width:599.98px){.pm-pager{gap:4px}.pm-pager a,.pm-pager span{min-width:34px;padding:0 6px}.pm-pager .pm-pager__jump{display:none}}
@media (max-width:599.98px){.pm-brandhead{flex-direction:column;align-items:flex-start;gap:var(--space-2);padding:var(--space-3)}.pm-brandhead__logo{width:140px;padding:0 0 var(--space-2);border-right:0;border-bottom:1px solid var(--border-soft)}.pm-brandhead__logo img{margin:0}}
@media (max-width:1023.98px){
 .pm-home__brands{grid-template-columns:repeat(4,minmax(0,1fr))}
 .pm-home__advgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pm-adv:nth-child(3){border-left:0;padding-left:0}
}
@media (max-width:767.98px){
 .pm-home__tiles{margin:var(--space-2) 0 var(--space-3)}
 .pm-home__tiles .tile__media picture{inset:6%}
 .pm-home__tiles .tile__media img{width:100%;height:100%}
 .pm-home__block{margin-bottom:var(--space-4)}
 .pm-home__h2{font-size:var(--text-xl)}
 .pm-home__brands{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
 .pm-home__brand{height:40px}
 .pm-home__brand img{max-height:32px}
 .pm-adv{padding:14px 8px;gap:10px;font-size:13px}
 .pm-adv__icon{width:30px;height:30px}
 .pm-insta{grid-template-columns:1fr;gap:var(--space-2)}
 .pm-insta__handle{font-size:var(--text-xl)}
 .pm-insta__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .pm-home__seo{flex-direction:column;gap:var(--space-2)}
}

/* ---- Фильтры раздела (макет 03-category-v5): колонка слева на компьютере, шторка на телефоне ---- */
.pm-catwrap{display:block}
.pm-catmain{min-width:0}
.pm-filters__form{display:flex;flex-direction:column}
.pm-filters__head{display:none}
.pm-fgroup{border:0;margin:0;padding:var(--space-2) 0;border-bottom:1px solid var(--border-soft);min-width:0}
.pm-fgroup:first-child{padding-top:0}
.pm-fgroup__title{float:left;width:100%;font-size:1.0625rem;font-weight:var(--fw-medium);color:var(--ink-title);padding:0;margin:0 0 12px}
.pm-fgroup__title+*{clear:both}
.pm-fprice{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pm-fprice label{display:flex;flex-direction:column;gap:4px;font-size:var(--text-sm);color:var(--ink-muted)}
/* w11 (макет v2.5: «6 990 ₴»): рамка поля — на обёртке, внутри число и сразу за ним ₴ (field-sizing:content;
   где его нет — ширина по size="6"); пустое поле показывает границу диапазона тем же цветом */
.pm-fprice__field{display:flex;align-items:center;gap:4px;height:40px;padding:0 10px;border:1px solid var(--border-soft);border-radius:var(--r-sm);background:#fff;color:var(--ink-primary);cursor:text;overflow:hidden}
.pm-fprice__field:focus-within{border-color:var(--border-strong)}
.pm-fprice__field:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:1px}
.pm-fprice input{flex:0 1 auto;min-width:1ch;max-width:100%;width:auto;height:100%;padding:0;border:0;background:none;font:inherit;color:inherit;field-sizing:content}
.pm-fprice input:focus{outline:none}
.pm-fprice input::placeholder{color:var(--ink-primary);opacity:1}
.pm-fprice__cur{flex:none;font-size:var(--text-sm);pointer-events:none}
/* FE-01 п.4: ползунок цены — серая дорожка, тёмный отрезок и бегунки (не красные) */
.pm-frange{position:relative;height:24px;margin:2px 6px 14px;--a:0%;--b:100%} /* w11: над полями, как в макете */
.pm-frange::before,.pm-frange::after{content:"";position:absolute;top:10px;height:4px;border-radius:2px}
.pm-frange::before{left:0;right:0;background:var(--border-soft)}
.pm-frange::after{left:var(--a);right:calc(100% - var(--b));background:var(--ink-strong)}
.pm-frange input{position:absolute;inset:0;width:100%;height:24px;margin:0;background:none;-webkit-appearance:none;appearance:none;pointer-events:none;z-index:1}
.pm-frange input::-webkit-slider-runnable-track{background:none;border:0}
.pm-frange input::-moz-range-track{background:none;border:0}
.pm-frange input::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:20px;height:20px;border-radius:50%;background:#fff;border:2px solid var(--ink-strong);cursor:pointer}
.pm-frange input::-moz-range-thumb{pointer-events:auto;width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid var(--ink-strong);cursor:pointer}
.pm-frange input:focus{outline:none}
.pm-frange input:focus-visible::-webkit-slider-thumb{outline:2px solid var(--focus);outline-offset:2px}
.pm-fvals{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.pm-fvals.is-short li:nth-child(n+9):not(.is-on){display:none}
.pm-fvals__more{margin-top:10px;padding:0;border:0;background:none;font:inherit;font-size:var(--text-sm);color:var(--ink-primary);text-decoration:underline;cursor:pointer}
.pm-check{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:var(--text-sm);color:var(--ink-primary);line-height:1.3}
.pm-check input{position:absolute;opacity:0;width:1px;height:1px}
.pm-check__box{flex:none;width:18px;height:18px;border:1px solid var(--border-strong);border-radius:3px;background:#fff;position:relative}
.pm-check input:checked+.pm-check__box{background:var(--ink-strong);border-color:var(--ink-strong)}
.pm-check input:checked+.pm-check__box::after{content:"";position:absolute;left:5px;top:1px;width:5px;height:10px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.pm-check input:focus-visible+.pm-check__box{outline:2px solid var(--focus);outline-offset:2px}
.pm-check__n{color:var(--ink-faint);font-size:.8125rem}
.pm-filters__actions{display:flex;flex-direction:column;gap:12px;padding:var(--space-2) 0}
.pm-filters__apply{background:var(--ink-strong);border-color:var(--ink-strong);color:#fff;height:var(--btn-h-md)}
.pm-filters__apply:hover{opacity:.9}
.pm-filters__reset{font-size:var(--text-sm);color:var(--ink-primary);text-decoration:underline}
.pm-filters__open,.pm-sortbar .pm-filters__open{display:none}
/* w11: «Сортувати: Популярні ▾» (макет 03-category-v5) — подпись серым, выбор тёмным текстом со стрелкой, без рамки;
   это настоящий <select> (appearance:none), стрелка — #i-chev-down поверх, клики проходят в select */
.pm-sort{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0}
.pm-sort__label{color:var(--ink-muted)}
.pm-sort__box{position:relative;display:block}
.pm-sort .pm-sort__m{display:none}
.pm-sort__field{position:relative;display:block}
.pm-sort select{-webkit-appearance:none;appearance:none;field-sizing:content;height:32px;margin:0;padding:0 22px 0 0;border:0;border-radius:0;background:none;font:inherit;color:var(--ink-primary);cursor:pointer}
.pm-sort select:focus{outline:none}
.pm-sort select:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.pm-sort__chev{position:absolute;right:2px;top:50%;width:14px;height:14px;transform:translateY(-50%);pointer-events:none;color:var(--ink-primary)}
/* w11: кнопки «Фільтри» / «Сортування» на телефоне (10-mobile-1-v1): белые, светлая рамка, иконка слева от текста */
.pm-sortbar__btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:48px;padding:0 12px;border:1px solid var(--border-soft);border-radius:var(--r-md);background:#fff;color:var(--ink-primary);font:inherit;font-size:var(--text-base);cursor:pointer}
.pm-sortbar__btn .icon{width:22px;height:22px}
.pm-sortbar__btn .pm-filters__dot{margin-left:-4px}
button.pm-sortbar__btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
.pm-filters__dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--accent);margin-left:6px;vertical-align:middle}
@media (min-width:1024px){
  .pm-catwrap{display:grid;grid-template-columns:230px minmax(0,1fr);gap:var(--space-4)}
  .pm-filters{border-right:1px solid var(--border-soft);padding-right:var(--space-3)}
  .pm-catwrap .pgrid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pm-sortbar{justify-content:flex-start}
}
@media (min-width:1280px){.pm-catwrap .pgrid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media (max-width:1023.98px){
  .pm-sortbar{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);gap:12px}
  .pm-sortbar .pm-filters__open{display:flex}
  .pm-sort{display:block;min-width:0}
  .pm-sort__label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .pm-sort .pm-sort__m{display:flex}
  .pm-sort__field{position:absolute;inset:0}
  .pm-sort select{position:absolute;inset:0;width:100%;height:100%;padding:0;opacity:0;font-size:16px}
  .pm-sort__chev{display:none}
  .pm-sort__box:has(select:focus-visible) .pm-sort__m{outline:2px solid var(--focus);outline-offset:2px}
  .pm-sort noscript .btn{margin-top:8px;width:100%}
  .pm-filters{position:fixed;inset:0;z-index:200;background:#fff;display:none;flex-direction:column}
  .pm-filters.is-open{display:flex}
  .pm-filters__form{height:100%;min-height:0}
  .pm-filters__head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-soft)}
  .pm-filters__title{font-size:1.125rem;font-weight:var(--fw-medium);color:var(--ink-title)}
  .pm-filters__close{width:40px;height:40px;display:grid;place-items:center;border:0;background:none;cursor:pointer}
  .pm-filters__close .icon{width:22px;height:22px}
  .pm-filters__body{flex:1;overflow-y:auto;padding:16px}
  .pm-filters__actions{padding:12px 16px;border-top:1px solid var(--border-soft);background:#fff}
  .pm-filters__reset{text-align:center}
  .pm-fprice__field{height:44px}
  .pm-check{min-height:32px}
}

/* ---- U21: списки разделов ---- */
.pm-cindex__top{margin:0 0 var(--space-4)}
.pm-cindex__h{font-size:1.375rem;font-weight:var(--fw-medium);margin:0 0 var(--space-2)}
.pm-cindex__row{display:grid;gap:8px;padding:12px 0;border-top:1px solid var(--border-soft)}
@media (min-width:768px){.pm-cindex__row{grid-template-columns:220px minmax(0,1fr)}}
.pm-cindex__sub{font-size:1rem;font-weight:var(--fw-medium);margin:0}
.pm-cindex__brands{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:var(--text-sm)}
.pm-fbrands{margin:var(--space-3) 0 var(--space-5)}
.pm-fbrands__h{font-size:1.375rem;font-weight:var(--fw-medium);margin:0 0 var(--space-2)}
.pm-fbrands__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media (min-width:480px){.pm-fbrands__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:768px){.pm-fbrands__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-2)}}
@media (min-width:1100px){.pm-fbrands__grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
.pm-fbrands__tile{display:flex;align-items:center;justify-content:center;aspect-ratio:5/2;padding:12px 16px;background:var(--bg-surface);border-radius:var(--r-lg);transition:background-color var(--dur-fast) ease}
.pm-fbrands__tile img{display:block;width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.pm-fbrands__tile:hover,.pm-fbrands__tile:focus-visible{background:var(--border-soft)}
.pm-cindex__tree{list-style:none;padding:0;margin:0 0 var(--space-5);columns:1;column-gap:var(--space-4)}
@media (min-width:768px){.pm-cindex__tree{columns:3}}
.pm-cindex__tree>li{break-inside:avoid;margin:0 0 var(--space-2);font-weight:var(--fw-medium)}
.pm-cindex__tree ul{list-style:none;padding:6px 0 0 12px;margin:0;font-weight:var(--fw-regular);font-size:var(--text-sm);display:flex;flex-direction:column;gap:4px}
/* FE-01: первый экран товара как в макете 09 — чипы моделей, количество + «Купити», плашки Monobank/НП, «Знижки від суми» */
.pm-product [hidden]{display:none!important}
.pm-price .discount{font-size:var(--text-xl)}
.pm-mchip.is-active{background:#121212;border-color:#121212;box-shadow:none;color:#fff}
.pm-mchip.is-active .pm-mchip__price,.pm-mchip.is-active .pm-mchip__old{color:rgba(255,255,255,.75)}
.pm-mchip--out_of_stock,.pm-mchip--discontinued{background:var(--bg-surface);border-color:var(--bg-surface);border-style:solid;color:var(--ink-faint)}
.pm-mchip--preorder{border-color:var(--border-soft)}
.pm-mchips--names .pm-mchip{min-width:96px;align-items:center;font-size:var(--text-md);padding:6px 18px}
.pm-buyrow .qty{flex:none}
/* Никита 04.11 #2730–2736: на компьютере кнопка короче на 30% (7 частей кнопке, 3 пустоте; у пустоты поля в той же доле,
   что у кнопки, и без своего зазора — тогда доли точные); на телефоне как было */
@media (min-width:768px){.pm-buyrow .btn--lg{flex:7 1 0}.pm-buyrow::after{content:'';flex:3 1 0;margin-left:-12px;padding-inline:calc(32px * 3 / 7)}}
.pm-perks{display:flex;flex-wrap:wrap;gap:12px 40px;list-style:none;margin:var(--space-3) 0 0;padding:0;color:var(--ink-muted);font-size:var(--text-sm)}
.pm-perks li{display:flex;align-items:center;gap:12px}
.pm-perks__mono{font-weight:700;color:var(--ink-primary)}
.pm-perks__link{color:var(--ink-primary);text-decoration:underline;text-underline-offset:3px}
.pm-perks__ico,.pm-sumdisc__ico{width:28px;height:28px;flex:none;fill:none;stroke:var(--ink-primary);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.pm-sumdisc{display:flex;align-items:center;gap:16px;margin-top:var(--space-3);padding:16px 20px;border:1px solid var(--border-soft);border-radius:var(--r-md);font-size:var(--text-sm)}
.pm-sumdisc__ico{width:36px;height:36px}
.pm-sumdisc p{margin:0}
.pm-sumdisc__title{font-weight:var(--fw-medium,500);margin-bottom:2px!important}
.pm-sumdisc__list{display:flex;flex-wrap:wrap;gap:2px 0;color:var(--ink-muted)}
.pm-sumdisc__list span+span::before{content:"·";margin:0 10px;color:var(--ink-faint)}
.pm-sumdisc__list b{font-weight:var(--fw-medium,500);color:var(--ink-primary)}
/* ПК-43 (Никита 31.10 #2246–2247 «С телефона блок со скидками не выровнян»): на телефоне пороги переносились, точка-разделитель
   вставала в начало строки — там каждый порог отдельной строкой, без точек */
@media (max-width:767.98px){.pm-sumdisc__list{flex-direction:column;gap:2px}.pm-sumdisc__list span+span::before{content:none}.pm-sumdisc__list b{display:inline-block;min-width:3em;font-variant-numeric:tabular-nums}}
/* FE-01: узкая сетка цветов — «Повідомити» в одну строку, не вылезает за кнопку */
.pcard--swatch .pcard__actions .btn{min-width:0;padding-inline:8px;white-space:normal;line-height:1.15}
/* ПК-17 (Никита 28.10 #2033): телефон, плитки цветов — «Купити» / «Повідомити» крупнее (было 12 px); «Купити» / «В дорозі» 16 px; длинные «Повідомити» / «Під замовлення» 13 px на 360, 14 на 390 — иначе не влезают в плитку */
@media (max-width:767.98px){.pcard--swatch .pcard__actions .btn{font-size:clamp(13px,3.6vw,15px);font-weight:var(--fw-medium);padding-inline:3px;min-height:44px}.pcard--swatch .pcard__actions .btn--buy,.pcard--swatch .pcard__actions .btn--transit{font-size:16px}}
@media (max-width:767px){.pm-price{gap:8px 10px}.pm-price .discount{font-size:var(--text-base)}}

/* ---- w8-cat: вид списка (сетка / крупные / список) и фильтр «Розмір» (макет v2.5 стр. 8) ---- */
.pcard__go{display:none}
.pm-view{display:none;gap:4px;align-items:center}
.pm-view__btn{width:32px;height:32px;display:grid;place-items:center;padding:0;border:0;border-radius:var(--r-sm);background:none;color:var(--ink-faint);cursor:pointer}
.pm-view__btn svg{width:18px;height:18px;fill:currentColor}
.pm-view__btn:hover{color:var(--ink-primary)}
.pm-view__btn[aria-pressed="true"]{color:var(--accent)}
.pm-view__btn:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
@media (min-width:1024px){
  .pm-view.is-ready{display:flex;margin-left:auto}
  .pm-catwrap .pgrid.pgrid--big{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pm-catwrap .pgrid.pgrid--list{grid-template-columns:minmax(0,1fr);row-gap:0}
  .pgrid--list .pcard{flex-direction:row;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border-soft)}
  .pgrid--list .pcard__media{flex:none;width:140px}
  .pgrid--list .pcard__body{display:grid;grid-template-columns:minmax(0,1fr) 220px;grid-auto-flow:row dense;column-gap:var(--space-3);align-items:center;padding-top:0}
  .pgrid--list .pcard__body>*{grid-column:1}
  .pgrid--list .pcard__body>.pcard__old,.pgrid--list .pcard__body>.pcard__price,.pgrid--list .pcard__body>.pcard__status,.pgrid--list .pcard__body>.pcard__go{grid-column:2}
  .pgrid--list .pcard__title{margin-bottom:6px}
  .pgrid--list .pcard__go{display:block;position:relative;z-index:1;margin-top:8px}
  .pgrid--list .pcard__go .btn{width:100%}
}
@media (min-width:1280px){.pm-catwrap .pgrid.pgrid--big{grid-template-columns:repeat(3,minmax(0,1fr))}}
.pm-fsizes{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}
.pm-fsize{position:relative;display:block;cursor:pointer}
.pm-fsize input{position:absolute;inset:0;opacity:0;margin:0;cursor:pointer}
.pm-fsize span{display:inline-flex;align-items:center;justify-content:center;min-width:52px;height:34px;padding:0 10px;border:1px solid var(--border-soft);border-radius:var(--r-sm);background:#fff;font-size:var(--text-sm);color:var(--ink-primary);font-variant-numeric:tabular-nums}
.pm-fsize:hover span{border-color:var(--border-strong)}
.pm-fsize input:checked+span{background:var(--ink-strong);border-color:var(--ink-strong);color:#fff}
.pm-fsize input:focus-visible+span{outline:2px solid var(--focus);outline-offset:2px}
@media (max-width:1023.98px){.pm-fsize span{height:40px;min-width:56px}}
/* /pm/css/search.css */
/* Поиск по сайту (U22): поле на странице выдачи и поле шапки на телефоне по иконке data-search-open */
.pm-sform{display:flex;gap:var(--space-2);max-width:640px;margin:0 0 var(--space-4)}
.pm-sform__input{flex:1;min-width:0;height:var(--btn-h-md);padding:0 16px;font:inherit;font-size:var(--text-base);color:var(--ink-primary);background:#fff;border:1px solid var(--border-soft);border-radius:var(--r-btn)}
.pm-sform__input:focus{outline:2px solid var(--focus);outline-offset:0;border-color:transparent}
.pm-search-page .pm-empty p{margin:0 0 var(--space-1)}
@media (max-width:1023.98px){
  /* та же форма шапки (action /search/), на телефоне — строкой под иконками; тёмная полоса растёт на эту строку */
  .site-header.is-search{--hdr-dark:calc(var(--hdr-m-row) + 60px)}
  .site-header--strip.is-search{--hdr-dark:calc(var(--hdr-m-row) + var(--hdr-m-strip) + 60px)} /* ПК-34: строка инфополосы */
  .site-header.is-search>.container{display:flex;flex-direction:column}
  .site-header.is-search .site-header__mobile{order:-1}
  .site-header.is-search .site-header__main{display:flex;height:60px;padding:0 0 12px}
  .site-header.is-search .site-header__main>.brand,.site-header.is-search .nav-main{display:none}
  .site-header.is-search .search{width:100%}
}

/* ПК-30: лупа шапки — кнопка «Знайти»; подсказки под полем (/api/pm/suggest) */
.search{position:relative}
.search__go{display:inline-flex;align-items:center;justify-content:center;margin:0 0 0 -6px;padding:6px;background:none;border:0;border-radius:var(--r-btn);color:inherit;cursor:pointer}
.search__go:focus-visible{outline:2px solid var(--focus);outline-offset:0}
.search-sugg{position:absolute;top:calc(100% + 6px);right:0;z-index:60;width:min(440px,calc(100vw - 32px));max-height:min(70vh,560px);overflow:auto;padding:6px;background:#fff;color:var(--ink-primary);border:1px solid var(--border-soft);border-radius:var(--r-card,12px);box-shadow:var(--shadow-pop)}
.search-sugg[hidden]{display:none}
.search-sugg__item{display:flex;gap:12px;align-items:center;padding:8px;border-radius:8px;color:inherit;text-decoration:none}
.search-sugg__item:hover,.search-sugg__item.is-active{background:var(--bg-surface,#F4F4F5)}
.search-sugg__img{flex:none;width:48px;height:48px;object-fit:contain;background:#fff;border-radius:6px}
.search-sugg__txt{display:flex;flex-direction:column;gap:2px;min-width:0}
.search-sugg__name{font-size:var(--text-sm,14px);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.search-sugg__price{font-size:var(--text-sm,14px);font-weight:600}
.search-sugg__price s{color:var(--ink-muted,#8E8E93);font-weight:400}
.search-sugg__st{margin-left:8px;color:var(--ink-muted,#8E8E93);font-weight:400}
.search-sugg__all{position:sticky;bottom:-6px;display:block;margin:4px -6px -6px;padding:12px 14px;background:#fff;border-radius:0 0 var(--r-card,12px) var(--r-card,12px);border-top:1px solid var(--border-soft);color:var(--ink-primary);font-weight:600;text-decoration:none}
.search-sugg__all:hover,.search-sugg__all.is-active{background:var(--bg-surface,#F4F4F5)}
.search-sugg__none{margin:0;padding:12px 8px;color:var(--ink-muted,#8E8E93)}
@media (max-width:1023.98px){.search-sugg{left:0;right:0;width:auto}}
/* /pm/css/extras.css */
/* Волна 4 (поток code): характеристики «в списку» в плитке (CAT-07) */
.pcard__specs{margin:-4px 0 8px;padding:0;list-style:none;font-size:var(--text-sm);line-height:1.35;color:var(--ink-soft)}
.pcard__specs li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pcard__specs span{color:var(--ink-faint)}
@media (max-width:767.98px){.pcard__specs{font-size:12px;margin:-2px 0 6px}.pcard__specs li{white-space:normal}}

/* CAB-06: сохранённое отделение НП под списком отделений (режим с ключом НП) */
.pmco-saved { margin: 4px 0 0; font-size: 13px; color: var(--ink-muted); }

/* FE-07: заглушка видео YouTube до клика */
.pm-video__facade { position: absolute; inset: 0; display: block; cursor: pointer; }
.pm-video__facade img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pm-video__play { position: absolute; left: 50%; top: 50%; width: 68px; height: 48px; margin: -24px 0 0 -34px; border-radius: 12px; background: rgba(0, 0, 0, .72); transition: background .15s; }
.pm-video__play::after { content: ""; position: absolute; left: 27px; top: 14px; border-style: solid; border-width: 10px 0 10px 17px; border-color: transparent transparent transparent #fff; }
.pm-video__facade:hover .pm-video__play, .pm-video__facade:focus-visible .pm-video__play { background: #000; }
/* кружки цветов приманки в плитке (FE-15, ответ клиента 24.10): только цвета в продаже, лишние — «+N» */
.pcard__colors{display:flex;flex-wrap:nowrap;gap:6px;align-items:center;list-style:none;margin:0 0 8px;padding:2px}
.pcard__color{display:block;width:26px;height:26px;border-radius:50%;overflow:hidden;background:var(--bg-surface);box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.pcard__color picture,.pcard__color img{display:block;width:100%;height:100%;object-fit:cover}
.pcard__color--more{display:grid;place-items:center;font-size:12px;color:var(--ink-muted);text-decoration:none}
@media (max-width:767.98px){.pcard__colors{gap:4px}.pcard__color{width:22px;height:22px}}
/* /pm/css/mnav.css */
/* =========================================================================
   W11-MNAV — мобильное меню (шторка по бургеру). Свой файл, чтобы не пересекаться с правками раздела.
   Тёмный верх продолжает шапку и мягко уходит в белое; плитки разделов → панели подразделов;
   контакты — карточкой. Анимация — только transform/opacity (пружина в mnav.js), reduced motion — без движения.
   ========================================================================= */
.mnav{--mnav-pad:16px;--mnav-ease:cubic-bezier(.32,.72,0,1);--mnav-line:#E5E5EA;
  position:fixed;inset:0;z-index:var(--z-drawer);display:block;color:var(--ink-primary)}
.mnav[hidden]{display:none}
.mnav:not(.is-js):target{display:block} /* без JS: бургер — якорь #m-menu, крестик — «#» */
.mnav__scrim{position:absolute;inset:0;background:var(--scrim);-webkit-tap-highlight-color:transparent}
.mnav__sheet{position:absolute;top:0;bottom:0;left:0;width:min(100%,440px);display:flex;flex-direction:column;background:var(--bg-base);
  touch-action:pan-y;will-change:transform;box-shadow:8px 0 40px rgb(0 0 0 / .18);outline:none}
.mnav:focus{outline:none}

/* ---- верх: шапка, крестик, поиск ---- */
.mnav__top{position:relative;z-index:2;flex:none;background:var(--bg-header);color:var(--ink-on-dark);
  padding:env(safe-area-inset-top) max(var(--mnav-pad),env(safe-area-inset-right)) 14px max(var(--mnav-pad),env(safe-area-inset-left))}
.mnav__top::after{content:"";position:absolute;left:0;right:0;top:100%;height:var(--hdr-m-fade);pointer-events:none;
  background:linear-gradient(rgb(11 11 12 / .9),rgb(11 11 12 / .5) 35%,rgb(11 11 12 / .14) 70%,rgb(11 11 12 / 0))}
.mnav__bar{display:flex;align-items:center;justify-content:space-between;height:var(--hdr-m-row);--hdr-logo:48px;margin-right:-10px}
.mnav__bar .brand__name{font-size:21.9px}
.mnav__bar .brand__tag{font-size:8.6px;letter-spacing:.02em;text-wrap:balance}
.mnav__close{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;color:inherit;-webkit-tap-highlight-color:transparent;transition:transform .16s var(--ease-out),background-color .16s}
.mnav__close .icon{width:24px;height:24px}
.mnav__close:active{transform:scale(.92);background:rgb(255 255 255 / .1)}
.mnav__search{position:relative;margin-top:4px}
.mnav__search .icon{position:absolute;left:14px;top:50%;width:20px;height:20px;margin-top:-10px;color:var(--ink-faint);pointer-events:none}
.mnav__q{width:100%;height:48px;padding:0 14px 0 44px;border:0;border-radius:12px;background:var(--bg-field-dark);color:var(--ink-on-dark);
  font:inherit;font-size:16px;-webkit-appearance:none;appearance:none;transition:box-shadow .16s}
.mnav__q::placeholder{color:var(--ink-faint);opacity:1}
.mnav__q:focus{outline:none;box-shadow:0 0 0 2px var(--focus)}
.mnav__q::-webkit-search-cancel-button{filter:invert(1)}
/* быстрая связь под поиском: 4 равные ячейки, иконка над подписью, касание ≥54px */
.mnav-quick{display:flex;gap:8px;margin:10px 0 0;padding:0;list-style:none}
.mnav-quick li{flex:1 1 0;min-width:0}
.mnav-quick__a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;height:56px;border-radius:12px;
  background:var(--bg-field-dark);color:var(--ink-on-dark);font-size:11.5px;line-height:1.1;font-weight:var(--fw-semibold);text-decoration:none;
  -webkit-tap-highlight-color:transparent;transition:transform .16s var(--ease-out),background-color .16s}
.mnav-quick__a span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px}
.mnav-quick__a .icon{width:22px;height:22px;flex:none}
.mnav-quick__a--tel .icon{color:var(--accent)}.mnav-quick__a--viber .icon{color:#8F7CFF}.mnav-quick__a--tg .icon{color:#2AABEE}.mnav-quick__a--wa .icon{color:#25D366}
.mnav-quick__a:active{transform:scale(.96);background:rgb(255 255 255 / .12)}

/* ---- область видов: корень и панели подразделов ---- */
.mnav__views{position:relative;z-index:1;flex:1;min-height:0;overflow:hidden}
.mnav__view{position:absolute;inset:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-y;
  background:var(--bg-base);padding:calc(var(--hdr-m-fade) + 6px) max(var(--mnav-pad),env(safe-area-inset-right)) calc(28px + env(safe-area-inset-bottom)) max(var(--mnav-pad),env(safe-area-inset-left))}
.mnav__root{transition:transform .5s var(--mnav-ease),opacity .5s var(--mnav-ease)}
.mnav__root.is-under{transform:translate3d(-28%,0,0);opacity:.35}
.mnav__panel{z-index:1;transform:translate3d(100%,0,0);transition:transform .5s var(--mnav-ease);box-shadow:-12px 0 32px rgb(0 0 0 / .08)}
.mnav__panel.is-in{transform:none}

.mnav__h{margin:0 0 12px;font-size:13px;font-weight:var(--fw-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}
.mnav__sec + .mnav__sec,.mnav__sec + .mnav__duo,.mnav__duo + .mnav__sec{margin-top:24px}
.mnav__row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.mnav__more{display:inline-flex;align-items:center;min-height:44px;margin:-14px 0 -2px;font-size:var(--text-sm);font-weight:var(--fw-medium);color:var(--ink-primary)}

/* плитки разделов: название сверху, товар снизу справа (как плитки главной) */
.mnav__tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mnav-tile{position:relative;display:block;height:124px;padding:13px 14px 0;border-radius:var(--r-lg);background:var(--bg-surface);overflow:hidden;
  color:var(--ink-primary);-webkit-tap-highlight-color:transparent;transition:transform .16s var(--ease-out)}
.mnav-tile:active{transform:scale(.97)}
.mnav-tile__name{position:relative;z-index:1;display:block;font-size:16px;line-height:1.25;font-weight:var(--fw-semibold);text-wrap:balance}
.mnav-tile__img{position:absolute;right:8px;bottom:8px;width:72px;height:72px}
.mnav-tile__img img{width:100%;height:100%;object-fit:contain;mix-blend-mode:multiply}
.mnav-tile[data-mnav-drill]::after{content:"";position:absolute;left:16px;bottom:18px;width:7px;height:7px;border:solid var(--ink-muted);border-width:0 1.6px 1.6px 0;transform:rotate(-45deg)}

/* кабинет и корзина */
.mnav__duo{list-style:none;margin:10px 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mnav-card{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;min-height:64px;padding:10px 12px;
  border:1px solid var(--mnav-line);border-radius:var(--r-lg);color:var(--ink-primary);-webkit-tap-highlight-color:transparent;transition:transform .16s var(--ease-out),background-color .16s}
.mnav-card:active{transform:scale(.97);background:var(--bg-surface)}
.mnav-card > .icon,.mnav-card__ico{grid-row:1 / 3;width:26px;height:26px}
.mnav-card__ico{position:relative;display:block}.mnav-card__ico .icon{width:26px;height:26px}
.mnav-card__ico .count-badge{top:-7px;right:-10px}
.mnav-card > span:not(.mnav-card__ico){font-size:var(--text-sm);font-weight:var(--fw-semibold);line-height:1.2}
.mnav-card small{font-size:12px;line-height:1.25;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mnav-card > span:not(.mnav-card__ico),.mnav-card small{min-width:0}

/* бренды: лента чипов */
.mnav__chips{list-style:none;display:flex;gap:8px;margin:0 calc(-1 * var(--mnav-pad));padding:2px var(--mnav-pad) 4px;overflow-x:auto;scroll-snap-type:x proximity;
  scroll-padding-inline:var(--mnav-pad);scrollbar-width:none;overscroll-behavior-x:contain}
.mnav__chips::-webkit-scrollbar{display:none}
.mnav__chips li{flex:none;scroll-snap-align:start}
.mnav__chips a{display:flex;align-items:center;height:44px;padding:0 18px;border:1px solid var(--mnav-line);border-radius:22px;font-size:var(--text-sm);
  font-weight:var(--fw-medium);color:var(--ink-primary);white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:transform .16s var(--ease-out),background-color .16s}
.mnav__chips a:active{transform:scale(.96);background:var(--bg-surface)}

/* строки-ссылки (корень и подразделы) */
.mnav__links,.mnav__sub{list-style:none;margin:20px 0 0;padding:0}
.mnav__links a,.mnav__sub a{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:6px 0;border-bottom:1px solid var(--mnav-line);
  font-size:var(--text-base);color:var(--ink-primary);-webkit-tap-highlight-color:transparent;transition:opacity .16s}
.mnav__links a:active,.mnav__sub a:active{opacity:.55}
.mnav__links .icon,.mnav__sub .icon{flex:none;width:18px;height:18px;color:#8E8E93}

/* ---- контакты ---- */
.mnav-contact{margin-top:28px;padding:20px 16px 16px;border-radius:16px;background:var(--bg-header);color:var(--ink-on-dark)}
.mnav__h--dark{color:var(--ink-faint);margin-bottom:6px}
.mnav-contact__tel{display:flex;align-items:center;gap:10px;min-height:52px;font-size:26px;line-height:1.15;font-weight:var(--fw-semibold);letter-spacing:-.01em;
  font-variant-numeric:tabular-nums;color:var(--ink-on-dark);white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:opacity .16s}
.mnav-contact__tel:active{opacity:.6}
.mnav-contact__tel .icon{flex:none;width:24px;height:24px;color:var(--accent)}
.mnav-contact__when{margin:2px 0 0;font-size:var(--text-sm);color:#C7C7CC}
.mnav-contact__msg{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(0,1fr));gap:8px}
.mnav-msg{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:68px;border-radius:12px;background:var(--bg-field-dark);
  font-size:13px;font-weight:var(--fw-medium);color:var(--ink-on-dark);-webkit-tap-highlight-color:transparent;transition:transform .16s var(--ease-out),background-color .16s}
.mnav-msg:active{transform:scale(.96);background:#2A2A30}
.mnav-msg .icon{width:26px;height:26px}
.mnav-msg--viber .icon{color:#8F7CFF}.mnav-msg--tg .icon{color:#2AABEE}.mnav-msg--wa .icon{color:#25D366}
.mnav-contact__foot{display:flex;align-items:center;justify-content:space-between;gap:8px 12px;flex-wrap:wrap;margin-top:14px}
.mnav-contact__soc{list-style:none;display:flex;gap:6px;margin:0;padding:0}
.mnav-contact__soc a{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid rgb(255 255 255 / .16);color:var(--ink-on-dark);
  -webkit-tap-highlight-color:transparent;transition:transform .16s var(--ease-out),background-color .16s}
.mnav-contact__soc a:active{transform:scale(.92);background:rgb(255 255 255 / .08)}
.mnav-contact__soc .icon{width:22px;height:22px}
.mnav-contact__mail{display:inline-flex;align-items:center;min-height:44px;font-size:var(--text-sm);color:#C7C7CC;word-break:break-all}
.mnav-contact__addr{margin:8px 0 0;font-size:var(--text-sm);color:#C7C7CC}

/* ---- язык: сегментный переключатель ---- */
.mnav-lang{display:flex;gap:4px;margin-top:20px;padding:4px;border-radius:12px;background:var(--bg-surface)}
.mnav-lang a{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:9px;font-size:var(--text-sm);color:var(--ink-muted);
  -webkit-tap-highlight-color:transparent;transition:background-color .2s,color .2s}
.mnav-lang a b{font-weight:var(--fw-semibold);letter-spacing:.04em}
.mnav-lang a[aria-current]{background:var(--bg-base);color:var(--ink-primary);box-shadow:0 1px 3px rgb(0 0 0 / .1),0 0 0 .5px rgb(0 0 0 / .04)}

/* ---- панель подразделов ---- */
.mnav__back{display:inline-flex;align-items:center;gap:4px;min-height:44px;margin:-6px 0 0 -8px;padding:0 10px 0 2px;border-radius:10px;background:none;border:0;
  font:inherit;font-size:var(--text-base);font-weight:var(--fw-medium);color:var(--ink-primary);cursor:pointer;-webkit-tap-highlight-color:transparent}
.mnav__back .icon{width:22px;height:22px;transform:rotate(180deg)}
.mnav__back:active{opacity:.55}
.mnav__phead{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px 0 4px}
.mnav__phead .mnav-tile__img{position:static;flex:none;width:64px;height:64px;border-radius:var(--r-lg);background:var(--bg-surface);padding:4px}
.mnav__ptitle{margin:0;font-size:var(--text-xl);line-height:1.15;font-weight:var(--fw-semibold);letter-spacing:-.01em}
.mnav__ptitle:focus{outline:none}
.mnav__sub{margin-top:8px}
.mnav__sub .mnav__all{font-weight:var(--fw-semibold);justify-content:flex-start;gap:8px}
.mnav__sub .mnav__all span{color:var(--accent)}

/* фокус с клавиатуры */
.mnav a:focus-visible,.mnav button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}

/* каскад при открытии — лёгкий, только opacity/transform */
@keyframes mnav-in{from{opacity:0;transform:translate3d(0,10px,0)}}
.mnav.is-casc .mnav__tiles > li,.mnav.is-casc .mnav__root > [style*="--i"]{animation:mnav-in .5s var(--ease-out) both;animation-delay:calc(var(--i) * 30ms + 70ms)}

/* светлая шапка (настройка магазина) — верх меню тоже светлый */
.pm-hdr-light .mnav__top{background:var(--bg-base);color:var(--ink-primary);border-bottom:1px solid var(--mnav-line)}
.pm-hdr-light .mnav__top::after{display:none}
.pm-hdr-light .mnav__q{background:var(--bg-surface);color:var(--ink-primary)}
.pm-hdr-light .mnav__q::-webkit-search-cancel-button{filter:none}
.pm-hdr-light .mnav__close:active{background:var(--bg-surface)}
.pm-hdr-light .mnav-quick__a{background:var(--bg-surface);color:var(--ink-primary)}
.pm-hdr-light .mnav-quick__a--viber .icon{color:#7360F2}
.pm-hdr-light .mnav-quick__a:active{background:var(--mnav-line)}

html.mnav-lock,html.mnav-lock body{overflow:hidden}

@media (prefers-reduced-motion:reduce){
  .mnav.is-casc .mnav__tiles > li,.mnav.is-casc .mnav__root > [style*="--i"]{animation:none}
  .mnav__root,.mnav__panel{transition:opacity .2s linear}
  .mnav__root.is-under{transform:none;opacity:0}
  .mnav__panel{transform:none;opacity:0}.mnav__panel.is-in{opacity:1}
  .mnav-tile:active,.mnav-card:active,.mnav-msg:active,.mnav__chips a:active,.mnav__close:active,.mnav-contact__soc a:active,.mnav-quick__a:active{transform:none}
}
/* /pm/css/fab.css */
/* =========================================================================
   Плаваюча кнопка зв'язку (владелец 26.10, как у motomoto.ua): круглая кнопка в углу → панель с мессенджерами.
   Настройки — StoreSettings::fab (админка «Налаштування вітрини»). Ниже шапки, шторки и корзины (z 190):
   открытое меню или корзина её просто перекрывают. Движение — только transform/opacity; reduced motion — без движения.
   ========================================================================= */
/* ⚠ НИКАКИХ НУЛЕЙ В ПЕРЕМЕННЫХ. mod_pagespeed на боевом хостинге сжимает «--x:0px» в «--x:0», а calc(16px + 0) недействителен:
   bottom сбрасывается в auto, и кнопка на всех страницах оказывалась вверху, под шапкой, и не нажималась (жалоба Никиты 03.11). */
.pm-fab{--fab-size:56px;--fab-gap:16px;--fab-bottom:var(--fab-gap);--fab-ease:cubic-bezier(.32,.72,0,1);
  position:fixed;z-index:190;bottom:calc(var(--fab-bottom) + env(safe-area-inset-bottom));
  display:flex;flex-direction:column;align-items:flex-end;gap:12px;pointer-events:none}
.pm-fab--right{right:max(var(--fab-gap),env(safe-area-inset-right))}
.pm-fab--left{left:max(var(--fab-gap),env(safe-area-inset-left));align-items:flex-start}
.pm-fab > *{pointer-events:auto}
/* на товаре на телефоне внизу полоса «ціна + Купити» — кнопка над ней */
@media (max-width:767.98px){body:has(.pm-stickybuy) .pm-fab{--fab-bottom:calc(var(--fab-gap) + 68px)}}
@media (min-width:1024px){.pm-fab{--fab-gap:24px}.pm-fab--on-mobile{display:none}}
@media (max-width:1023.98px){.pm-fab--on-desktop{display:none}}
html.mnav-lock .pm-fab{visibility:hidden}

/* ---- кнопка ---- */
.pm-fab__btn{position:relative;display:grid;place-items:center;width:var(--fab-size);height:var(--fab-size);padding:0;border:0;border-radius:50%;
  background:var(--accent);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;
  box-shadow:0 6px 18px rgb(235 81 44 / .38),0 2px 6px rgb(0 0 0 / .18);transition:transform .2s var(--ease-out),box-shadow .2s var(--ease-out)}
.pm-fab__btn .icon{grid-area:1/1;width:28px;height:28px;transition:transform .32s var(--fab-ease),opacity .2s}
.pm-fab__i-x{opacity:0;transform:rotate(-90deg) scale(.6)}
.pm-fab.is-open .pm-fab__i-chat{opacity:0;transform:rotate(90deg) scale(.6)}
.pm-fab.is-open .pm-fab__i-x{opacity:1;transform:none}
.pm-fab__btn:active{transform:scale(.92)}
.pm-fab__btn:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
@media (hover:hover){.pm-fab__btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgb(235 81 44 / .42),0 3px 8px rgb(0 0 0 / .2)}}
/* кольцо привлекает внимание, пока видна подсказка */
.pm-fab__btn::after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid var(--accent);opacity:0;pointer-events:none}
.pm-fab.is-tip .pm-fab__btn::after{animation:pm-fab-ring 1.6s var(--ease-out) 2}
@keyframes pm-fab-ring{0%{opacity:.7;transform:scale(1)}100%{opacity:0;transform:scale(1.55)}}

/* ---- панель ---- */
.pm-fab__panel{position:absolute;bottom:calc(var(--fab-size) + 12px);right:0;width:min(340px,calc(100vw - 2 * var(--fab-gap)));
  max-height:calc(100dvh - var(--fab-size) - var(--fab-bottom) - 80px);overflow:auto;overscroll-behavior:contain;
  background:var(--bg-base);color:var(--ink-primary);border-radius:20px;box-shadow:0 18px 50px rgb(0 0 0 / .22),0 2px 8px rgb(0 0 0 / .08);
  transform-origin:100% 100%;opacity:0;visibility:hidden;transform:translate3d(0,10px,0) scale(.92);
  transition:opacity .2s var(--ease-out),transform .32s var(--fab-ease),visibility 0s linear .32s}
.pm-fab--left .pm-fab__panel{right:auto;left:0;transform-origin:0 100%}
.pm-fab.is-open .pm-fab__panel{opacity:1;visibility:visible;transform:none;transition:opacity .2s var(--ease-out),transform .32s var(--fab-ease),visibility 0s}
.pm-fab__head{display:flex;align-items:center;gap:12px;padding:16px 18px;background:var(--bg-header);color:var(--ink-on-dark);border-radius:20px 20px 0 0}
.pm-fab__seal{display:block;flex:none;width:44px;height:44px}
.pm-fab__title{margin:0;font-size:17px;line-height:1.2;font-weight:var(--fw-semibold)}
.pm-fab__text{margin:3px 0 0;font-size:13px;line-height:1.3;color:var(--ink-faint)}
.pm-fab__list{margin:0;padding:8px;list-style:none}
.pm-fab__ch{display:flex;align-items:center;gap:12px;min-height:60px;padding:8px 10px;border-radius:14px;color:inherit;text-decoration:none;
  -webkit-tap-highlight-color:transparent;transition:background-color .16s,transform .16s var(--ease-out)}
.pm-fab__ch:active{transform:scale(.98);background:var(--bg-surface)}
@media (hover:hover){.pm-fab__ch:hover{background:var(--bg-surface)}}
.pm-fab__ch:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}
.pm-fab__ico{display:grid;place-items:center;flex:none;width:42px;height:42px;border-radius:50%;color:#fff}
.pm-fab__ico .icon{width:22px;height:22px}
.pm-fab__ch--viber .pm-fab__ico{background:#7360F2}
.pm-fab__ch--telegram .pm-fab__ico{background:#2AABEE}
.pm-fab__ch--whatsapp .pm-fab__ico{background:#25D366}
.pm-fab__ch--phone .pm-fab__ico{background:var(--accent)}
.pm-fab__lbl{display:flex;flex-direction:column;min-width:0;flex:1}
.pm-fab__lbl b{font-size:15px;line-height:1.25;font-weight:var(--fw-semibold)}
.pm-fab__lbl small{font-size:13px;line-height:1.3;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pm-fab__chev{flex:none;width:18px;height:18px;color:var(--ink-faint)}
.pm-fab__when{margin:0;padding:10px 18px 14px;border-top:1px solid var(--border-soft);font-size:12.5px;line-height:1.35;color:var(--ink-muted)}

/* ---- подсказка ---- */
.pm-fab__tip{display:flex;align-items:flex-start;gap:2px;max-width:min(260px,calc(100vw - 2 * var(--fab-gap)));padding:4px 4px 4px 14px;
  background:var(--bg-base);color:var(--ink-primary);border-radius:14px;box-shadow:0 10px 30px rgb(0 0 0 / .18),0 1px 4px rgb(0 0 0 / .08);
  animation:pm-fab-tip .42s var(--fab-ease) both}
.pm-fab__tip[hidden]{display:none}
@keyframes pm-fab-tip{from{opacity:0;transform:translate3d(0,8px,0) scale(.96)}}
.pm-fab__tip-text{flex:1;padding:8px 0;border:0;background:none;color:inherit;font:inherit;font-size:14px;line-height:1.35;text-align:left;cursor:pointer}
.pm-fab__tip-x{display:grid;place-items:center;flex:none;width:36px;height:36px;padding:0;border:0;border-radius:50%;background:none;color:var(--ink-faint);cursor:pointer}
.pm-fab__tip-x .icon{width:16px;height:16px}
.pm-fab__tip-x:active{background:var(--bg-surface)}
.pm-fab.is-open .pm-fab__tip{display:none}

@media (prefers-reduced-motion:reduce){
  .pm-fab__btn,.pm-fab__btn .icon,.pm-fab__ch{transition:opacity .15s linear}
  .pm-fab__btn:active,.pm-fab__ch:active{transform:none}
  .pm-fab__panel,.pm-fab.is-open .pm-fab__panel{transform:none;transition:opacity .15s linear,visibility 0s linear .15s}
  .pm-fab.is-open .pm-fab__panel{transition:opacity .15s linear,visibility 0s}
  .pm-fab__i-x,.pm-fab.is-open .pm-fab__i-chat{transform:none}
  .pm-fab.is-tip .pm-fab__btn::after,.pm-fab__tip{animation:none}
}
@media print{.pm-fab{display:none}}
