/* Экраны «Главная» и «Отклики»: гостевая карточка, герой с числом, лента вакансий, строки откликов. */

/* ── Гость ───────────────────────────────────────────────────── */
.guest { display: flex; flex-direction: column; gap: var(--sp-3); padding: var(--sp-5); }
.guest-title { font: 600 22px/1.2 var(--font-display); letter-spacing: -.02em; }
.guest-text { color: var(--ink-2); font-size: 14px; }
.guest-steps { display: flex; flex-direction: column; gap: var(--sp-3); margin: var(--sp-2) 0 0; padding: 0; list-style: none; }
.guest-steps li { display: flex; align-items: baseline; gap: var(--sp-3); color: var(--ink-2); font-size: 13px; }
.guest-steps li .mono-label { flex: none; color: var(--ink-3); }

/* ── Герой главной ───────────────────────────────────────────── */
.agent-hero { display: flex; flex-direction: column; gap: var(--sp-2); }
.hero-top { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-2); }
.hero-num { font: 600 var(--fs-hero)/1 var(--font-display); letter-spacing: -.03em; margin-top: var(--sp-1); }
.hero-line { color: var(--ink-2); font-size: 14px; }
.hero-meta { color: var(--ink-3); font: 500 var(--fs-mono) var(--font-mono); letter-spacing: .04em; }

/* ── Вакансии ────────────────────────────────────────────────── */
.list { display: flex; flex-direction: column; gap: var(--sp-3); margin: 0; padding: 0; list-style: none; }
.vac-card {
  display: flex; flex-direction: column; gap: var(--sp-2); padding: var(--sp-4);
  border: 1px solid var(--line); border-radius: var(--r-card); background: var(--s1);
}
.vac-top { display: flex; align-items: flex-start; gap: var(--sp-2); }
.vac-title { flex: 1; min-width: 0; font: 600 16px/1.35 var(--font-ui); letter-spacing: -.01em; }
.vac-sub { color: var(--ink-2); font-size: 13.5px; }
.vac-why { padding: var(--sp-3); border-radius: var(--r-block); background: var(--s2); }
.why-text {
  display: -webkit-box; margin-top: 4px; overflow: hidden; color: var(--ink-2); font-size: 13px; line-height: 1.5;
  -webkit-line-clamp: 2; -webkit-box-orient: vertical;
}
.vac-why.open .why-text { display: block; -webkit-line-clamp: unset; }
.more-btn { justify-content: flex-start; min-height: 32px; padding: 0; font-size: 13px; }

/* ── Отклики ─────────────────────────────────────────────────── */
.apps { display: flex; flex-direction: column; gap: var(--sp-3); }
.search { position: relative; display: flex; align-items: center; }
.search > svg { position: absolute; left: 13px; color: var(--ink-3); pointer-events: none; }
.search .input { padding-left: 42px; padding-right: 46px; }
.search .icon-btn { position: absolute; right: 2px; }
.app-list { display: flex; flex-direction: column; gap: var(--sp-2); }
.app-row {
  display: flex; align-items: center; gap: var(--sp-3); width: 100%; min-height: 64px;
  padding: var(--sp-3) var(--sp-4); border: 1px solid var(--line); border-radius: var(--r-card);
  background: var(--s1); color: var(--ink); text-align: left; cursor: pointer;
  transition: transform var(--t-press) var(--ease);
}
.app-row:active { transform: scale(.99); }
.app-glyph { display: grid; place-items: center; flex: none; width: 30px; height: 30px; border-radius: 50%; background: var(--s2); color: var(--ink-2); }
.app-glyph.ok { color: var(--ok); }
.app-glyph.bad { color: var(--bad); }
.app-main { display: flex; flex-direction: column; gap: 2px; flex: 1; min-width: 0; }
.app-title { font: 600 14.5px/1.3 var(--font-ui); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.app-meta { color: var(--ink-3); font-size: 12.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.app-salary { flex: none; max-width: 38%; color: var(--ink-2); font: 500 var(--fs-mono) var(--font-mono); text-align: right; }
.app-salary:empty { display: none; }
