/*
 * Раздел «Работа» — блок «Работа в компаниях» и компактная строка фильтров вакансий (Клондайк Сервис).
 * Изолировано классом .jb-search (+ страница компании .jb-company-page). Палитра по ТЗ: #171C2A / #828895 / #E6E8ED / #F7F8FA / #242B3B.
 * Брейкпоинты: десктоп ≥1200, планшет 768–1199, мобильный <768. Ширина — контейнер страницы (= ширина хедера).
 */
.jb-search{
  --jb-text:#171c2a;--jb-muted:#828895;--jb-line:#e6e8ed;--jb-soft:#f7f8fa;--jb-dark:#242b3b;--jb-dark-hover:#171c2a;
  margin:0 0 24px;font-family:Montserrat,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--jb-text);
}
.jb-search *,.jb-search *::before,.jb-search *::after{box-sizing:border-box}

/* ---------- Работа в компаниях ---------- */
.jb-companies{display:grid;grid-template-columns:300px minmax(0,1fr);gap:10px;margin-bottom:14px;align-items:stretch}
.jb-companies--solo{grid-template-columns:minmax(0,1fr)}
.jb-company:focus-visible,.jb-btn:focus-visible{outline:2px solid #242b3b;outline-offset:2px}
.jb-companies__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:72px;gap:10px;align-content:start}
.jb-company{display:flex;align-items:center;gap:12px;min-width:0;height:72px;padding:0 14px;background:#fff;border:1px solid var(--jb-line);border-radius:12px;color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s}
.jb-company:hover{border-color:#cfd4dc;box-shadow:0 2px 10px rgba(23,28,42,.06)}
.jb-company__logo{flex:0 0 40px;width:40px;height:40px;border-radius:10px;object-fit:contain;background:#fff}
.jb-company__logo--empty{display:grid;place-items:center;background:var(--jb-soft);border:1px solid var(--jb-line);color:var(--jb-dark);font-weight:700;font-size:16px}
.jb-company__text{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1 1 auto}
.jb-company__name{font-size:13px;font-weight:700;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.jb-company__count{font-size:12px;color:var(--jb-muted);line-height:1.2;white-space:nowrap}
.jb-company__chev{flex:0 0 auto;color:#b4bac6}
.jb-company--demo{cursor:default}

/* ---------- Строка фильтров ---------- */
.jb-filters__row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}
.jb-filters__row>*{flex:0 0 auto}
.jb-btn--reset{margin-left:auto}
.jb-dd{position:relative}
.jb-btn{display:inline-flex;align-items:center;gap:7px;height:38px;padding:0 11px;background:#fff;border:1px solid var(--jb-line);border-radius:11px;color:var(--jb-text);text-decoration:none;font:600 13px/1 Montserrat,system-ui,sans-serif;cursor:pointer;white-space:nowrap;max-width:240px;transition:border-color .15s,background-color .15s}
.jb-btn:hover{border-color:#cfd4dc;background:#fcfcfd}
.jb-btn.is-active,.jb-btn[aria-expanded="true"]{border-color:var(--jb-dark)}
.jb-btn__label{overflow:hidden;text-overflow:ellipsis}
.jb-btn--action .jb-ico{color:#6c7384}
.jb-btn--save .jb-ico{color:var(--jb-dark)}
.jb-ico{flex:0 0 auto;color:#4b5262}
.jb-chev{flex:0 0 auto;color:#6c7384}
.jb-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--jb-dark);color:#fff;font-size:11px;font-weight:700}

.jb-pop{position:absolute;z-index:40;top:calc(100% + 6px);left:0;width:280px;max-width:calc(100vw - 32px);background:#fff;border:1px solid var(--jb-line);border-radius:14px;box-shadow:0 12px 32px rgba(23,28,42,.14);padding:12px}
.jb-pop[hidden]{display:none}
.jb-pop__title{font-size:12px;font-weight:700;color:var(--jb-muted);text-transform:uppercase;letter-spacing:.04em;margin:0 4px 8px}
.jb-pop__search{display:block;width:100%;height:38px;margin:0 0 8px;padding:0 12px;border:1px solid var(--jb-line);border-radius:10px;font:500 13px Montserrat,system-ui,sans-serif;color:var(--jb-text);background:var(--jb-soft)}
.jb-pop__search:focus{outline:none;border-color:var(--jb-dark);background:#fff}
.jb-pop__list{max-height:290px;overflow:auto;display:flex;flex-direction:column;gap:2px;overscroll-behavior:contain}
.jb-opt{display:flex;align-items:center;gap:10px;min-height:38px;padding:0 10px;border-radius:9px;font-size:13px;font-weight:500;cursor:pointer}
.jb-opt:hover{background:var(--jb-soft)}
.jb-opt input{position:absolute;opacity:0;pointer-events:none}
.jb-opt span{flex:1 1 auto}
.jb-opt:has(input:checked){background:var(--jb-soft);font-weight:700}
.jb-opt:has(input:checked)::after{content:"✓";color:var(--jb-dark);font-weight:700}
.jb-opt:has(input:focus-visible){outline:2px solid var(--jb-dark);outline-offset:-2px}
.jb-opt[hidden]{display:none}
.jb-range{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.jb-range label{display:flex;align-items:center;gap:6px;height:42px;padding:0 10px;border:1px solid var(--jb-line);border-radius:10px;background:#fff}
.jb-range span{color:var(--jb-muted);font-size:12px}
.jb-range input{width:100%;min-width:0;border:0;outline:0;background:transparent;font:600 13px Montserrat,system-ui,sans-serif;color:var(--jb-text)}
.jb-range label:focus-within{border-color:var(--jb-dark)}
.jb-pop__foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:12px}
.jb-link{border:0;background:transparent;color:var(--jb-muted);font:600 13px Montserrat,system-ui,sans-serif;cursor:pointer;padding:6px 4px}
.jb-link:hover{color:var(--jb-text)}
.jb-apply{height:40px;padding:0 22px;border:0;border-radius:10px;background:var(--jb-dark);color:#fff;font:700 13px Montserrat,system-ui,sans-serif;cursor:pointer}
.jb-apply:hover{background:var(--jb-dark-hover)}

.jb-sort{position:relative;display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 12px;background:#fff;border:1px solid var(--jb-line);border-radius:11px;font-size:13px;font-weight:600}
.jb-sort select{appearance:none;-webkit-appearance:none;border:0;background:transparent;outline:0;font:600 13px Montserrat,system-ui,sans-serif;color:var(--jb-text);padding-right:18px;cursor:pointer}
.jb-sort .jb-chev{position:absolute;right:12px;pointer-events:none}
.jb-sort:focus-within{border-color:var(--jb-dark)}
.jb-backdrop{position:fixed;inset:0;z-index:35;background:rgba(23,28,42,.35)}
.jb-backdrop[hidden]{display:none}

/* список вместо плиток */
.product-grid.product-grid--list{grid-template-columns:minmax(0,1fr);gap:10px}

/* ---------- Десктоп ≥1200: панель всегда в одну строку (проверено с реальным Montserrat) ---------- */
@media (min-width:1200px){
  .jb-filters__row{flex-wrap:nowrap}
}
@media (min-width:1200px){
  .jb-filters__row{gap:6px}
  .jb-btn{padding:0 9px;gap:6px;font-size:12.5px}
}
@media (min-width:1200px) and (max-width:1359px){
  .jb-btn{padding:0 8px;gap:5px;font-size:12px}
}
@media (min-width:1200px) and (max-width:1279px){
  .jb-filters__row>.jb-dd .jb-btn>.jb-ico,.jb-filters__row>[data-filter-open]>.jb-ico{display:none}
}
/* планшет: иконки в кнопках фильтров скрыты, чтобы уместить больше в строке */
@media (min-width:768px) and (max-width:1199px){
  .jb-filters__row>.jb-dd .jb-btn>.jb-ico,.jb-filters__row>[data-filter-open]>.jb-ico{display:none}
}

/* ---------- Планшет ---------- */
@media (max-width:1199px){
  .jb-companies{grid-template-columns:minmax(0,1fr)}
  .jb-companies__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .jb-filters__row{flex-wrap:wrap}
}
@media (max-width:999px){
  .jb-companies__grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
/* ---------- Мобильный ---------- */
@media (max-width:767px){
  .jb-companies__grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:68px;gap:8px}
  .jb-company{height:68px;padding:0 10px;gap:10px}
  .jb-company__logo{flex-basis:36px;width:36px;height:36px}
  .jb-company__chev{display:none}
  .jb-filters__row>.jb-dd,.jb-filters__row>[data-filter-open],.jb-filters__row>.jb-btn--action{flex:1 1 calc(50% - 4px);min-width:0}
  .jb-filters__row>.jb-dd>.jb-btn{width:100%;max-width:none;justify-content:flex-start}
  .jb-filters__row>[data-filter-open]{max-width:none;justify-content:flex-start}
  .jb-btn--reset{margin-left:0}
  .jb-btn--action{justify-content:center;max-width:none}
  .jb-pop{position:fixed;left:0;right:0;bottom:0;top:auto;width:auto;max-width:none;max-height:75vh;border-radius:18px 18px 0 0;padding:16px 16px 20px;z-index:50}
  .jb-pop__list{max-height:52vh}
}

/* Подсказка в боковой панели «Ещё фильтры» */
.catalog-filter-drawer .jb-drawer-note{margin:0 0 10px;font-size:12px;line-height:1.45;color:#8b929d}

/* ---------- Страница вакансий компании ---------- */
.jb-company-page{--jb-text:#171c2a;--jb-muted:#828895;--jb-line:#e6e8ed;--jb-soft:#f7f8fa;--jb-dark:#242b3b;font-family:Montserrat,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--jb-text)}
.jb-company-head{display:flex;align-items:center;gap:18px;margin:12px 0 18px;padding:18px 20px;background:#fff;border:1px solid var(--jb-line);border-radius:16px}
.jb-company-head__logo{flex:0 0 72px;width:72px;height:72px;border-radius:16px;object-fit:contain;background:#fff;border:1px solid var(--jb-line)}
.jb-company-head__logo--empty{display:grid;place-items:center;background:var(--jb-soft);color:var(--jb-dark);font-size:28px;font-weight:700}
.jb-company-head__text{min-width:0;flex:1 1 auto}
.jb-company-head h1{margin:0 0 4px;font-size:26px;line-height:1.15;letter-spacing:-.01em;overflow-wrap:anywhere}
.jb-company-head__count{margin:0;color:var(--jb-muted);font-size:14px}
.jb-company-head__link{flex:0 0 auto;display:inline-flex;align-items:center;height:42px;padding:0 18px;border:1px solid var(--jb-line);border-radius:11px;color:var(--jb-text);font-weight:600;font-size:13px;text-decoration:none;background:#fff}
.jb-company-head__link:hover{border-color:var(--jb-dark)}
.jb-company-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 14px}
.jb-company-bar .jb-sort{margin:0}
.jb-company-back{color:var(--jb-muted);font-size:13px;font-weight:600;text-decoration:none}
.jb-company-back:hover{color:var(--jb-text)}
@media (max-width:767px){
  .jb-company-head{flex-wrap:wrap;padding:14px}
  .jb-company-head__logo{flex-basis:56px;width:56px;height:56px}
  .jb-company-head h1{font-size:21px}
  .jb-company-head__link{width:100%;justify-content:center}
}
