/*
 * АльпПро — фильтры каталога, таблица для снабженца, сравнение, подсказки и страница поиска.
 * Токены темы «Приборная панель» (--ap-*), запасные значения — на случай другой темы. Касания ≥ 44 px, CLS = 0.
 */

/* ---------------- фильтры ---------------- */
.pat-f{font-size:14px;color:var(--ap-ink,#16181D)}
.pat-f__open{display:none}
.pat-f__panel{display:flex;flex-direction:column;gap:14px;background:var(--ap-card,#fff);border:1px solid var(--ap-line,#D9DCD6);border-radius:var(--ap-r-card,10px);padding:14px}
.pat-f__panel:focus{outline:none}
.pat-f__head{display:none;align-items:center;justify-content:space-between}
.pat-f__title{font-size:16px}
.pat-f__close{width:44px;height:44px;border:0;background:transparent;font-size:26px;line-height:1;cursor:pointer;color:inherit}
.pat-f__sum{display:flex;flex-direction:column;gap:8px}
.pat-f__found{margin:0;font-weight:700}
.pat-f__chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.pat-f__chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:4px 10px;border-radius:var(--ap-r-btn,6px);background:var(--ap-brand-tint,#E3F4FC);color:var(--ap-brand-tint-ink,#004E73);font-weight:600;text-decoration:none}
.pat-f__chip{transition:background-color .15s,color .15s}.pat-f__chip>span[aria-hidden]{display:inline-grid;place-items:center;width:18px;height:18px;margin-right:-4px;border-radius:50%;font-size:14px;line-height:1;transition:background-color .15s,color .15s}.pat-f__chip:hover,.pat-f__chip:focus-visible{background:#C6E8F7;color:var(--ap-brand-ink,#0B1F2A)}.pat-f__chip:hover>span[aria-hidden],.pat-f__chip:focus-visible>span[aria-hidden]{background:var(--ap-brand-tint-ink,#004E73);color:#fff}
.pat-f__reset{align-self:flex-start;color:var(--ap-link,#006FA3)}
.pat-f__hidden{margin:0;padding:10px 12px;border-radius:8px;background:var(--ap-signal-tint,#FFF4DC);color:var(--ap-signal-text,#6B4700);font-size:13px;line-height:1.45}
.pat-f__hidden a{color:inherit;font-weight:700;text-decoration:underline}
.pat-f__hidden.is-on{background:var(--ap-bg,#F3F4F1);color:var(--ap-ink-2,#4A4F57)}
.pat-f__land ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:2px}
.pat-f__land a{display:flex;justify-content:space-between;gap:8px;align-items:center;min-height:40px;padding:0 8px;border-radius:var(--ap-r-btn,6px);color:var(--ap-ink,#16181D);text-decoration:none;font-weight:600}
.pat-f__land a:hover{background:var(--ap-bg,#F3F4F1)}
.pat-f__land a.is-on{background:var(--ap-ink,#16181D);color:#fff}
.pat-f__g{border:0;box-shadow:inset 0 1px 0 var(--ap-line-2,#ECEDEA);margin:0;padding:12px 0 0;min-width:0}
.pat-f__legend{display:block;float:left;width:100%;font-weight:700;margin:0 0 6px;padding:0;font-size:14px;line-height:1.3}
.pat-f__g > :not(legend){clear:both}
.pat-f__o{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 6px;border-radius:var(--ap-r-btn,6px);cursor:pointer;line-height:1.25}
.pat-f__o:hover{background:var(--ap-bg,#F3F4F1)}
.pat-f__o input{width:20px;height:20px;margin:0;flex:none;accent-color:var(--ap-ink,#16181D)}
.pat-f__o.is-off{color:var(--ap-muted,#9AA0AA);cursor:not-allowed}
.pat-f__l{flex:1;min-width:0;overflow-wrap:anywhere}
.pat-f__n{font-family:var(--ap-f-mono,monospace);font-size:12px;color:var(--ap-ink-2,#4A4F57)}
.pat-f__hint{margin:4px 0 0;font-size:12px;color:var(--ap-ink-2,#4A4F57);line-height:1.4}
.pat-f__more summary{min-height:40px;display:flex;align-items:center;padding:0 6px;cursor:pointer;color:var(--ap-link,#006FA3);font-weight:600}
.pat-f__range{display:flex;align-items:center;gap:8px}
.pat-f__range label{flex:1;min-width:0}
.pat-f__range input{width:100%;min-height:44px;padding:0 10px;border:1.5px solid var(--ap-line,#D9DCD6);border-radius:var(--ap-r-btn,6px);font:inherit;box-sizing:border-box}
.pat-f__foot{position:sticky;bottom:0;background:inherit;padding-top:6px}
.pat-f__apply{width:100%;min-height:48px}
.pat-js .pat-f__foot{display:none}
.pat-loading{opacity:.55;transition:opacity .15s;pointer-events:none}
.pat-empty{padding:24px;background:var(--ap-card,#fff);border-radius:var(--ap-r-card,10px);border:1px solid var(--ap-line,#D9DCD6)}

/* Длинная панель не должна прятать нижние фильтры под липкой колонкой темы — прокручивается сама. */
@media (min-width:901px){
	.pat-f__panel{max-height:calc(100vh - var(--ap-top,0px) - 32px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
}

@media (max-width:900px){
	.pat-f__open{display:inline-flex;align-items:center;gap:8px;min-height:44px}
	.pat-f__open-n{display:inline-grid;place-items:center;min-width:22px;height:22px;border-radius:11px;background:var(--ap-ink,#16181D);color:#fff;font-size:12px}
	/* Лист уже свёрстан и спрятан за краем: открытие — только видимость и сдвиг, без перестройки (отклик ≤ 200 мс, A-19). */
	.pat-f__panel{display:flex;visibility:hidden;transform:translateY(105%);position:fixed;left:0;right:0;bottom:0;max-height:88vh;overflow:auto;z-index:1000;border-radius:14px 14px 0 0;box-shadow:var(--ap-shadow,0 -12px 40px rgba(0,0,0,.25));padding:12px 16px 0;contain:layout paint}
	.pat-f.is-open .pat-f__panel{visibility:visible;transform:none}
	.pat-f__head{display:flex;position:sticky;top:-12px;background:inherit;z-index:1;padding-top:4px}
	.pat-js .pat-f__foot{display:block;padding-bottom:12px}
}

/* ---------------- вид «плитка / таблица» ---------------- */
.pat-view{display:inline-flex;border:1.5px solid var(--ap-line,#D9DCD6);border-radius:var(--ap-r-btn,6px);overflow:hidden}
.pat-view__b{display:inline-flex;align-items:center;min-height:44px;padding:0 14px;color:var(--ap-ink,#16181D);background:var(--ap-card,#fff);font-weight:600;text-decoration:none;white-space:nowrap}
.pat-view__b.is-on{background:var(--ap-ink,#16181D);color:#fff}
.pat-view-table .ap-cat__list > ul.products,.pat-view-table .ap-cat__list > .woocommerce-pagination{display:none}

/* ---------------- таблица снабженца ---------------- */
.pat-t{background:var(--ap-card,#fff);border:1px solid var(--ap-line,#D9DCD6);border-radius:var(--ap-r-card,10px)}
.pat-t__scroll{overflow-x:auto}
.pat-t__tbl{width:100%;border-collapse:collapse;font-size:14px;min-width:720px}
.pat-t__tbl th,.pat-t__tbl td{padding:8px 12px;border-bottom:1px solid var(--ap-line-2,#ECEDEA);text-align:left;vertical-align:middle}
.pat-t__tbl thead th{font-size:12px;color:var(--ap-ink-2,#4A4F57);font-weight:600;background:var(--ap-bg,#F3F4F1)}
.pat-t__m th{background:#FAFAF8;font-weight:700;padding-top:12px}
.pat-t__m a{color:var(--ap-ink,#16181D)}
.pat-t__meta{font-weight:400;font-size:12px;color:var(--ap-ink-2,#4A4F57);margin-left:6px}
.pat-t__tbl .pat-t__num{text-align:right;white-space:nowrap;font-family:var(--ap-f-mono,monospace)}
.pat-t__sku{font-family:var(--ap-f-mono,monospace);font-size:12px;color:var(--ap-ink-2,#4A4F57)}
.pat-t__v.is-picked{background:var(--ap-brand-tint,#E3F4FC)}
.pat-t__ask{font-size:12px;color:var(--ap-warn-text,#8A5A00)}
.pat-t__tbl tfoot th,.pat-t__tbl tfoot td{font-weight:700;border-bottom:0;background:var(--ap-bg,#F3F4F1)}
.pat-t__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;padding:12px;position:sticky;bottom:0;background:var(--ap-card,#fff);border-top:1px solid var(--ap-line,#D9DCD6);border-radius:0 0 var(--ap-r-card,10px) var(--ap-r-card,10px)}
.pat-t__actions .ap-btn{min-height:48px}
.pat-t__actions .ap-btn[disabled]{opacity:.5;cursor:not-allowed}
.pat-t__status{font-size:13px;color:var(--ap-ok-text,#145C33)}
.pat-qty{display:inline-flex;align-items:center;border:1.5px solid var(--ap-line,#D9DCD6);border-radius:var(--ap-r-btn,6px);overflow:hidden}
.pat-qty button{width:44px;height:44px;border:0;background:var(--ap-bg,#F3F4F1);font-size:20px;cursor:pointer;color:inherit}
.pat-qty input{width:52px;height:44px;border:0;text-align:center;font:700 15px var(--ap-f-mono,monospace);-moz-appearance:textfield}
.pat-qty input::-webkit-inner-spin-button,.pat-qty input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.pat-stock{font-size:13px;font-weight:700;white-space:nowrap}
.pat-stock--instock{color:var(--ap-ok-strong,#197540)}
.pat-stock--onbackorder{color:var(--ap-warn-text,#8A5A00)}
.pat-stock--outofstock{color:var(--ap-crit,#C8322A)}
.pat-view-table .pat-t{margin-top:0}

/* ---------------- сравнение ---------------- */
.pat-cmp-toggle{min-height:36px;padding:0 10px;border:1.5px solid var(--ap-line,#D9DCD6);border-radius:var(--ap-r-btn,6px);background:var(--ap-card,#fff);color:var(--ap-ink,#16181D);font:600 13px var(--ap-f-body,inherit);cursor:pointer;white-space:nowrap}
.pat-cmp-toggle.is-on{background:var(--ap-brand-tint,#E3F4FC);border-color:var(--ap-brand,#00A0E3);color:var(--ap-brand-tint-ink,#004E73)}
.pat-unv-mark{display:inline-block;padding:2px 6px;border-radius:var(--ap-r-chip,4px);background:var(--ap-signal-tint,#FFF4DC);color:var(--ap-signal-text,#6B4700);font-size:11px;font-weight:700;line-height:1.3}
/* M3: «?» — не подтверждено производителем (подсказка в title), без служебного текста */
.pat-q{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border-radius:50%;font-size:11px;font-weight:700;line-height:1;cursor:help;vertical-align:1px}
.pat-q-chip{display:inline-flex;align-items:center;gap:4px;cursor:help}
.pat-q-chip .pat-q{width:14px;height:14px;font-size:10px;background:var(--ap-signal-text,#6B4700);color:#fff}
.pat-q:focus-visible,.pat-q-chip:focus-visible{outline:2px solid var(--ap-focus,#006FA3);outline-offset:1px}
.pat-tray{position:fixed;left:0;right:0;bottom:0;z-index:900;background:var(--ap-graphite,#15171C);color:#fff;padding:10px 16px}
.pat-tray[hidden]{display:none}
.pat-tray__in{max-width:var(--ap-maxw,1312px);margin:0 auto;display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.pat-tray__list{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap;flex:1;min-width:0}
.pat-tray__list li{display:inline-flex;align-items:center;gap:4px;background:var(--ap-dark-3,#2E323B);border-radius:var(--ap-r-btn,6px);padding:0 0 0 10px;max-width:260px}
.pat-tray__list span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.pat-tray__list button,.pat-tray__clear{width:36px;height:36px;border:0;background:transparent;color:var(--ap-dark-text-2,#C9CDD4);font-size:18px;cursor:pointer}
.pat-tray__go{min-height:44px}
.pat-tray__go[disabled]{opacity:.55;cursor:not-allowed}
.pat-cmp-dlg{width:min(1100px,96vw);max-height:90vh;border:0;border-radius:var(--ap-r-card,10px);padding:0;box-shadow:var(--ap-shadow,0 24px 48px rgba(0,0,0,.35))}
.pat-cmp-dlg::backdrop{background:rgba(21,23,28,.55)}
.pat-cmp-dlg__head{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border-bottom:1px solid var(--ap-line,#D9DCD6);position:sticky;top:0;background:var(--ap-card,#fff);z-index:1}
.pat-cmp-dlg__head h2{margin:0;font-size:18px}
.pat-cmp-dlg__x{width:44px;height:44px;border:0;background:transparent;font-size:26px;cursor:pointer}
.pat-cmp-dlg__body{padding:12px 16px 16px}
.pat-cmp__bar{margin-bottom:8px}
.pat-cmp__diff{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:600;cursor:pointer}
.pat-cmp__diff input{width:20px;height:20px}
.pat-cmp__scroll{overflow-x:auto}
.pat-cmp__tbl{width:100%;border-collapse:collapse;font-size:14px}
.pat-cmp__tbl th,.pat-cmp__tbl td{padding:9px 12px;border-bottom:1px solid var(--ap-line-2,#ECEDEA);text-align:left;vertical-align:top}
.pat-cmp__tbl thead th{background:var(--ap-bg,#F3F4F1);position:sticky;top:0}
.pat-cmp__tbl tbody th{width:28%;font-weight:600;color:var(--ap-ink-2,#4A4F57)}
.pat-cmp__tbl tr.is-diff td{background:#EEF8FD}
.pat-cmp__tbl td.is-unv{color:var(--ap-warn-text,#8A5A00)}
.pat-cmp__tbl td.is-none{color:var(--ap-ink-2,#4A4F57);font-size:13px}
.pat-cmp__grp th{background:#FAFAF8;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--ap-ink-2,#4A4F57)}
.pat-cmp.is-diff tr[data-same="1"],.pat-cmp.is-diff .pat-cmp__grp{display:none}
.pat-cmp__note{font-size:12px;color:var(--ap-ink-2,#4A4F57);margin:10px 0 0}

/* ---------------- подсказки поиска ---------------- */
.pat-sg-host{position:relative}
.pat-sg{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:1100;background:var(--ap-card,#fff);border:1px solid var(--ap-line,#D9DCD6);border-radius:var(--ap-r-card,10px);box-shadow:var(--ap-shadow,0 24px 48px -24px rgba(21,23,28,.35));max-height:min(70vh,560px);overflow:auto;padding:6px;text-align:left;color:var(--ap-ink,#16181D);font-size:14px;min-width:min(420px,92vw)}
.pat-sg[hidden]{display:none}
.pat-sg__h{margin:8px 8px 4px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ap-ink-2,#4A4F57)}
.pat-sg__fix{margin:4px 8px;padding:8px 10px;border-radius:6px;background:var(--ap-signal-tint,#FFF4DC);color:var(--ap-signal-text,#6B4700);font-size:13px}
.pat-sg__p,.pat-sg__c,.pat-sg__all{display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 8px;border-radius:6px;color:inherit;text-decoration:none}
.pat-sg__p:hover,.pat-sg__c:hover,.pat-sg__all:hover,.pat-sg .is-active{background:var(--ap-brand-tint,#E3F4FC)}
.pat-sg__p img,.pat-sg__noimg{width:40px;height:40px;object-fit:contain;border-radius:4px;background:var(--ap-bg,#F3F4F1);flex:none}
.pat-sg__t{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}
.pat-sg__t strong{font-weight:600;line-height:1.3}
.pat-sg__t span{font-size:12px;color:var(--ap-ink-2,#4A4F57);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pat-sg__t .pat-sg__note{white-space:normal;color:var(--ap-ok-text,#145C33)}
.pat-sg__pr{font-family:var(--ap-f-mono,monospace);font-size:13px;font-weight:700;white-space:nowrap}
.pat-sg__c span{margin-left:auto;font-size:12px;color:var(--ap-ink-2,#4A4F57)}
.pat-sg__all{font-weight:700;color:var(--ap-link,#006FA3)}
.pat-sg__empty{margin:8px;color:var(--ap-ink-2,#4A4F57)}
.pat-sg__keys{margin:6px 8px 2px;font-size:11px;color:var(--ap-muted,#9AA0AA)}
.pat-sg mark{background:#FFE9B3;color:inherit;padding:0 1px}
@media (max-width:600px){.pat-sg__keys{display:none}.pat-sg{min-width:0}}

/* ---------------- страница поиска ---------------- */
.pat-s{display:flex;flex-direction:column;gap:10px;margin:8px 0 16px}
.pat-s__fix{margin:0;padding:10px 12px;border-radius:8px;background:var(--ap-signal-tint,#FFF4DC);color:var(--ap-signal-text,#6B4700)}
.pat-s__fix a{color:inherit;font-weight:700;text-decoration:underline;margin-left:6px}
.pat-s__bar{margin:0;padding:10px 14px;border-radius:8px;font-weight:700;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}
.pat-s__bar--sku{background:var(--ap-brand-tint,#E3F4FC);color:var(--ap-brand-tint-ink,#004E73)}
.pat-s__bar--fuzzy{background:var(--ap-signal-tint,#FFF4DC);color:var(--ap-signal-text,#4A3500)}
.pat-s__bar a{color:inherit}
.pat-s__compat,.pat-s__std{padding:12px 14px;border-radius:var(--ap-r-card,10px);background:var(--ap-card,#fff);border:1px solid var(--ap-line,#D9DCD6)}
.pat-s__compat p,.pat-s__std p{margin:0 0 6px}
.pat-s__compat ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:13px}
.pat-s__compat li.is-ok span{color:var(--ap-ok-strong,#197540);font-weight:700}
.pat-s__compat li.is-warn span{color:var(--ap-warn-text,#8A5A00);font-weight:700}
.pat-s__tag{display:inline-block;padding:2px 6px;border-radius:4px;background:var(--ap-graphite,#15171C);color:#fff;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;margin-right:6px}
.pat-s__std strong{font-size:18px}
.pat-s__types{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.pat-s__types ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.pat-s__types a{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border-radius:var(--ap-r-btn,6px);border:1.5px solid var(--ap-line,#D9DCD6);background:var(--ap-card,#fff);color:var(--ap-ink,#16181D);text-decoration:none;font-weight:600}
.pat-s__types a.is-on{background:var(--ap-ink,#16181D);border-color:var(--ap-ink,#16181D);color:#fff}
.pat-s__types a span{font-family:var(--ap-f-mono,monospace);font-size:12px;opacity:.8}
.pat-ask{margin:16px 0;padding:18px;border-radius:var(--ap-r-card,10px);background:var(--ap-card,#fff);border:1px solid var(--ap-line,#D9DCD6)}
.pat-ask__h{margin:0 0 8px;font-size:20px}
.pat-ask__acts{display:flex;flex-wrap:wrap;gap:8px}
.pat-ask__acts .ap-btn{min-height:48px}
.pat-ask__pop,.pat-ask__tip{font-size:13px;color:var(--ap-ink-2,#4A4F57)}
