.collection-vacancy-toggle{display:flex;align-items:center;gap:12px;min-height:48px;font-weight:500;cursor:pointer;color:var(--hr-color-ink)}
.collection-vacancy-toggle input{width:20px;height:20px;accent-color:var(--hr-color-sapphire);flex-shrink:0}
.collection-vacancy-picker{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:12px;margin-block-start:12px;animation:vacancy-picker-enter 220ms ease-out}
.collection-vacancy-picker[hidden]{display:none}
.collection-vacancy-picker>p{grid-column:1/-1;margin:0 0 4px}
.collection-vacancy-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:20px;border:1px solid var(--hr-border-control);border-radius:16px;background:var(--hr-surface-paper);color:var(--hr-color-ink);font:inherit;text-align:start;cursor:pointer;min-width:0;overflow-wrap:anywhere;-webkit-tap-highlight-color:transparent;transition:border-color 180ms,box-shadow 180ms,background-color 180ms,scale var(--hr-motion-duration-release,180ms) var(--hr-motion-easing-settle,cubic-bezier(.16,1,.3,1))}
.collection-vacancy-card>span{font-size:.85em}
@media(hover:hover){.collection-vacancy-card:hover:not(:disabled){border-color:var(--hr-color-sapphire)}}
/* Нажатие видно на pointer-down (§1). Выбор перерисовывает список, поэтому нажатая карточка, уже новым узлом, досаживается
   из того же сжатия (is-settling, только по клику) — без повторной анимации на посторонних перерисовках. */
.collection-vacancy-card:active:not(:disabled):not([aria-disabled="true"]){scale:var(--hr-press-scale-card,.985);transition-duration:var(--hr-motion-duration-press,90ms);transition-timing-function:ease-out}
.collection-vacancy-card.is-settling{animation:vacancy-settle var(--hr-motion-duration-release,180ms) var(--hr-motion-easing-settle,cubic-bezier(.16,1,.3,1))}
.collection-vacancy-card:focus-visible{outline:3px solid var(--hr-color-focus);outline-offset:3px}
.collection-vacancy-card[aria-pressed="true"]{border-color:var(--hr-color-sapphire);background:var(--hr-surface-selected);box-shadow:inset 0 0 0 1px var(--hr-color-sapphire)}
.collection-vacancy-state{font-weight:500;margin-block-start:auto}
.collection-vacancy-card[aria-pressed="true"] .collection-vacancy-state::before{content:"";display:inline-block;width:8px;height:8px;margin-inline-end:8px;border-radius:50%;background:var(--hr-color-sapphire)}
.collection-vacancy-card:disabled{cursor:default}
@keyframes vacancy-picker-enter{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}
@keyframes vacancy-settle{from{scale:var(--hr-press-scale-card,.985)}}
/* Повышенный контраст: выбранная карточка — внутренней рамкой, outline остаётся кольцу фокуса (фокус переводится на неё после выбора). */
@media(prefers-contrast:more){.collection-vacancy-card[aria-pressed="true"]{box-shadow:inset 0 0 0 2px var(--hr-color-ink)}}
/* Владелец 08.10.2026: при reduced motion список проявляется прозрачностью, карточки не сжимаются — нажатие приглушает их. */
@media(prefers-reduced-motion:reduce){.collection-vacancy-picker{animation:hr-fade var(--hr-motion-duration-fast,100ms) ease!important}.collection-vacancy-card{scale:none!important;animation:none!important;transition-property:border-color,box-shadow,background-color,opacity!important;transition-duration:var(--hr-motion-duration-fast,100ms)!important;transition-timing-function:ease!important}.collection-vacancy-card:active:not(:disabled){opacity:var(--hr-press-opacity,.7);transition-duration:0ms!important}}
