.candidate-employer-search {
  margin: 1.25rem 0;
  padding: 1rem;
  border: 1px solid rgba(148, 163, 184, .28);
  border-radius: 1rem;
  background: rgba(255, 255, 255, .035);
  color: inherit;
}
.candidate-employer-search h3 { margin: 0 0 .5rem; }
.candidate-employer-search__hint,
.candidate-employer-search__source,
.candidate-employer-search__reason,
.candidate-employer-search__unknown,
.candidate-employer-search__external-note { color: rgba(226, 232, 240, .82); }
.candidate-employer-search__hint { margin: .35rem 0 .9rem; }
.candidate-employer-search__form { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .65rem; align-items: end; }
.candidate-employer-search__form label { display: grid; gap: .35rem; min-width: 0; }
.candidate-employer-search__form input { width: 100%; min-width: 0; }
.candidate-employer-search__form button { min-height: 2.75rem; }
.candidate-employer-search__status { min-height: 1.4em; margin: .8rem 0; }
.candidate-employer-search__status:empty { min-height: 0; margin: 0; }
.candidate-employer-search__list { display: grid; gap: .75rem; }
.candidate-employer-search__card { min-width: 0; padding: .9rem; border: 1px solid rgba(148, 163, 184, .22); border-radius: .8rem; background: rgba(15, 23, 42, .45); }
.candidate-employer-search__card h4 { margin: 0 0 .4rem; overflow-wrap: anywhere; }
.candidate-employer-search__address,
.candidate-employer-search__registry { margin: .3rem 0; overflow-wrap: anywhere; }
.candidate-employer-search__actions { display: flex; flex-wrap: wrap; gap: .6rem; align-items: center; margin-top: .7rem; }
.candidate-employer-search__link { overflow-wrap: anywhere; }
.candidate-employer-search__external-note { flex-basis: 100%; font-size: .85rem; }
@media (max-width: 560px) {
  .candidate-employer-search { padding: .85rem; }
  .candidate-employer-search__form { grid-template-columns: minmax(0, 1fr); }
  .candidate-employer-search__form button { width: 100%; }
  .candidate-employer-search__actions { display: grid; grid-template-columns: minmax(0, 1fr); }
}

.candidate-employer-search__dossier { margin-top: .8rem; padding: .75rem; border: 1px solid rgba(148, 163, 184, .18); border-radius: .7rem; background: rgba(2, 6, 23, .28); }
.candidate-employer-search__dossier-summary { cursor: pointer; font-weight: 700; }
.candidate-employer-search__dossier-kicker { margin: .75rem 0 .45rem; font-size: .78rem; letter-spacing: .08em; color: rgba(226, 232, 240, .72); }
.candidate-employer-search__dossier-line,
.candidate-employer-search__dossier-unknown,
.candidate-employer-search__dossier-source { margin: .4rem 0; overflow-wrap: anywhere; }
.candidate-employer-search__dossier-unknown,
.candidate-employer-search__dossier-source { color: rgba(226, 232, 240, .82); }
.candidate-employer-search__link,
.candidate-employer-search__link:link,
.candidate-employer-search__link:visited {
  color: var(--blue2);
  text-decoration: underline;
  text-underline-offset: .14em;
}
.candidate-employer-search__link:hover {
  color: var(--blue2);
  text-decoration-thickness: 2px;
}
.candidate-employer-search__link:focus-visible {
  color: var(--blue2);
  outline: 2px solid var(--blue2);
  outline-offset: 2px;
  border-radius: 2px;
}
.candidate-employer-search__link:active {
  color: var(--blue2);
  text-decoration-thickness: 2px;
}

/* Registry evidence stays neutral; uncertainty and the next action keep distinct roles. */
.candidate-employer-search{margin:1.5rem 0 0;padding:1rem 1.05rem;border-color:rgba(148,163,184,.24);border-inline-start:3px solid #64748b;border-radius:.85rem;background:#0d121b}
.candidate-employer-search h3{color:#f1f4f8}
.candidate-employer-search__hint,.candidate-employer-search__reason{color:#c4cedb;line-height:1.48}
.candidate-employer-search__source,.candidate-employer-search__dossier-source{color:var(--role-provenance)}
.candidate-employer-search__card{padding:1rem;border-color:rgba(148,163,184,.19);background:#0a1018}
.candidate-employer-search__card h4{color:#f4f6f8}
.candidate-employer-search__registry{color:#c4cedb;font-size:.9rem}
.candidate-employer-search__registry-kind{display:inline-flex;align-items:center;min-height:32px;margin:.4rem 0;padding:.25rem .6rem;border:1px solid rgba(148,163,184,.3);border-radius:999px;background:rgba(148,163,184,.07);color:#dbe4ee;font-size:.84rem;font-weight:750;line-height:1.25}
.candidate-employer-search__registry-boundary{margin:.35rem 0 .65rem;padding-inline-start:.65rem;border-inline-start:2px solid var(--role-warning);color:#f5e7c6;line-height:1.45}
.candidate-employer-search__unknown,.candidate-employer-search__dossier-unknown{padding-inline-start:.65rem;border-inline-start:2px solid var(--role-warning);color:#f7eacb;line-height:1.45}
.candidate-employer-search__dossier{margin-top:.55rem;padding:.5rem 0 0;border:0;border-top:1px solid rgba(148,163,184,.2);border-radius:0;background:transparent}
.candidate-employer-search__dossier-summary{padding:.5rem 0;color:#e5eaf0;line-height:1.4}
.candidate-employer-search__dossier-summary:hover{text-decoration:underline;text-underline-offset:.15em}
.candidate-employer-search__dossier-kicker{font-weight:800;color:var(--role-provenance)}
.candidate-employer-search__dossier-line{color:#cbd5e1;line-height:1.45}
.candidate-employer-search__actions a{display:inline-flex;align-items:center;min-height:44px}
.candidate-employer-search__external-note{color:#c4cedb}
@media(max-width:560px){
  .candidate-employer-search{padding:.85rem}
  .candidate-employer-search__registry-kind{max-width:100%;white-space:normal}
  .candidate-employer-search__dossier-summary{min-height:46px}
}

/* Vacancy currency is separate from candidate relevance and registry provenance. */
.candidate-vacancy,
.candidate-employer-feedback {
  min-width: 0;
  margin: .85rem 0 0;
  padding: .8rem;
  border: 1px solid rgba(148, 163, 184, .24);
  border-inline-start: 3px solid #94a3b8;
  border-radius: .7rem;
  background: rgba(15, 23, 42, .32);
  overflow-wrap: anywhere;
}
.candidate-vacancy[data-vacancy-state="CURRENT"] { border-inline-start-color: #55b987; }
.candidate-vacancy[data-vacancy-state="STALE"] { border-inline-start-color: #d8b86a; }
.candidate-vacancy[data-vacancy-state="UNKNOWN"],
.candidate-vacancy[data-vacancy-state="SOURCE_UNAVAILABLE"] { border-inline-start-color: #9aa7b6; }
.candidate-vacancy__status {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  margin: .35rem 0;
  padding: .25rem .6rem;
  border: 1px solid rgba(148, 163, 184, .35);
  border-radius: 999px;
  color: #e5eaf0;
  font-size: .82rem;
  font-weight: 850;
  letter-spacing: .025em;
  line-height: 1.25;
}
.candidate-vacancy[data-vacancy-state="CURRENT"] .candidate-vacancy__status {
  border-color: rgba(85, 185, 135, .65);
  color: #b9f0d2;
}
.candidate-vacancy[data-vacancy-state="STALE"] .candidate-vacancy__status {
  border-color: rgba(216, 184, 106, .65);
  color: #f1dfaa;
}
.candidate-vacancy__note,
.candidate-vacancy__metadata,
.candidate-vacancy__provenance,
.candidate-employer-feedback__note,
.candidate-employer-feedback__status {
  margin: .45rem 0;
  color: #c4cedb;
  line-height: 1.48;
  overflow-wrap: anywhere;
}
.candidate-vacancy__record {
  min-width: 0;
  margin: .65rem 0 0;
  padding: .65rem;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: .55rem;
  background: rgba(2, 6, 23, .24);
}
.candidate-vacancy__record--stale { border-style: dashed; }
.candidate-vacancy__title { margin: 0; color: #f1f4f8; overflow-wrap: anywhere; }
.candidate-vacancy__provenance { color: var(--role-provenance); font-size: .88rem; }
.candidate-vacancy__actions { display: flex; flex-wrap: wrap; gap: .55rem; }
.candidate-vacancy__link { min-height: 44px; align-content: center; }
.candidate-employer-feedback__fieldset {
  min-width: 0;
  margin: .35rem 0 0;
  padding: 0;
  border: 0;
}
.candidate-employer-feedback__legend { margin-bottom: .5rem; color: #e5eaf0; font-weight: 700; }
.candidate-employer-feedback__choices {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .5rem;
}
.candidate-employer-feedback__button {
  min-width: 0;
  min-height: 46px;
  padding: .5rem .6rem;
  border: 1px solid rgba(148, 163, 184, .38);
  border-radius: .55rem;
  background: #111923;
  color: #e5eaf0;
  font: inherit;
  font-size: .9rem;
  font-weight: 700;
  line-height: 1.25;
  overflow-wrap: anywhere;
  cursor: pointer;
}
.candidate-employer-feedback__button:hover { border-color: rgba(220, 80, 112, .82); }
.candidate-employer-feedback__button.is-selected {
  border-color: #dc5070;
  background: rgba(124, 31, 58, .28);
  color: #fff;
}
.candidate-employer-feedback__button:focus-visible {
  outline: 3px solid var(--blue2);
  outline-offset: 2px;
}
@media(max-width:700px) {
  .candidate-employer-feedback__choices { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media(max-width:380px) {
  .candidate-vacancy,
  .candidate-employer-feedback { padding: .65rem; }
  .candidate-employer-feedback__choices { grid-template-columns: minmax(0, 1fr); }
  .candidate-employer-feedback__button { width: 100%; text-align: start; }
}



/* T4 scanability polish: preserve truth semantics while making actions and local state easier to parse. */
.candidate-vacancy {
  position: relative;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
}
.candidate-vacancy[data-vacancy-state="CURRENT"] {
  background: linear-gradient(180deg, rgba(24, 75, 57, .16), rgba(15, 23, 42, .3) 42%);
}
.candidate-vacancy[data-vacancy-state="STALE"] {
  background: linear-gradient(180deg, rgba(92, 70, 27, .13), rgba(15, 23, 42, .3) 42%);
}
.candidate-vacancy[data-vacancy-state="UNKNOWN"],
.candidate-vacancy[data-vacancy-state="SOURCE_UNAVAILABLE"] {
  background: linear-gradient(180deg, rgba(71, 85, 105, .1), rgba(15, 23, 42, .3) 42%);
}
.candidate-vacancy__status::before {
  display: inline-grid;
  width: 1.2rem;
  height: 1.2rem;
  margin-inline-end: .38rem;
  place-items: center;
  border-radius: 999px;
  background: rgba(148, 163, 184, .12);
  font-size: .72rem;
  line-height: 1;
}
.candidate-vacancy[data-vacancy-state="CURRENT"] .candidate-vacancy__status::before { content: "✓"; }
.candidate-vacancy[data-vacancy-state="STALE"] .candidate-vacancy__status::before { content: "↺"; }
.candidate-vacancy[data-vacancy-state="UNKNOWN"] .candidate-vacancy__status::before { content: "?"; }
.candidate-vacancy[data-vacancy-state="SOURCE_UNAVAILABLE"] .candidate-vacancy__status::before { content: "!"; }

.candidate-vacancy__record {
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
}
.candidate-vacancy__metadata {
  color: #d9e1ea;
}
.candidate-vacancy__actions,
.candidate-employer-search__actions {
  align-items: stretch;
}
.candidate-vacancy__actions .candidate-vacancy__link,
.candidate-employer-search__actions > .candidate-employer-search__link {
  display: inline-flex;
  min-height: 44px;
  padding: .5rem .7rem;
  align-items: center;
  border: 1px solid rgba(122, 167, 255, .28);
  border-radius: .55rem;
  background: rgba(122, 167, 255, .055);
  text-decoration-thickness: 1px;
}
.candidate-vacancy__actions .candidate-vacancy__link:hover,
.candidate-employer-search__actions > .candidate-employer-search__link:hover {
  border-color: rgba(122, 167, 255, .52);
  background: rgba(122, 167, 255, .09);
}

.candidate-employer-feedback {
  border-inline-start-color: #9b2d42;
  background: linear-gradient(180deg, rgba(113, 24, 46, .12), rgba(15, 23, 42, .3) 46%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.025);
}
.candidate-employer-feedback__button {
  position: relative;
}
.candidate-employer-feedback__button.is-selected {
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12);
}
.candidate-employer-feedback__button.is-selected::before {
  content: "✓";
  display: inline-block;
  margin-inline-end: .38rem;
  font-weight: 900;
}
.candidate-employer-feedback__status {
  margin-top: .65rem;
  padding-top: .55rem;
  border-top: 1px solid rgba(148, 163, 184, .16);
  font-size: .86rem;
}

@media(max-width:560px) {
  .candidate-vacancy__actions .candidate-vacancy__link,
  .candidate-employer-search__actions > .candidate-employer-search__link {
    width: 100%;
    justify-content: flex-start;
  }
  .candidate-employer-feedback__button {
    padding-inline: .7rem;
  }
}


/* Employer dossier progressive disclosure: action/truth first, technical provenance on demand. */
.candidate-employer-search__identity-boundary {
  margin: .45rem 0 .6rem;
  padding: .55rem .65rem;
  border-inline-start: 2px solid var(--role-provenance);
  background: rgba(148, 163, 184, .055);
  color: #d7e0ea;
  line-height: 1.48;
  overflow-wrap: anywhere;
}
.candidate-employer-search__technical {
  margin: .7rem 0 0;
  border-top: 1px solid rgba(148, 163, 184, .16);
  border-bottom: 1px solid rgba(148, 163, 184, .12);
}
.candidate-employer-search__technical-summary {
  min-height: 44px;
  display: flex;
  align-items: center;
  gap: .45rem;
  padding: .5rem 0;
  color: var(--role-provenance);
  font-size: .86rem;
  font-weight: 760;
  line-height: 1.35;
  cursor: pointer;
}
.candidate-employer-search__technical-summary:hover {
  color: #e1e8f0;
}
.candidate-employer-search__technical-summary {
  list-style: none;
}
.candidate-employer-search__technical-summary::-webkit-details-marker {
  display: none;
}
.candidate-employer-search__technical-summary::after {
  content: "+";
  display: inline-grid;
  width: 1.35rem;
  height: 1.35rem;
  margin-inline-start: auto;
  place-items: center;
  flex: 0 0 auto;
  border: 1px solid rgba(122, 167, 255, .32);
  border-radius: 999px;
  color: var(--blue2);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1;
}
.candidate-employer-search__technical[open] > .candidate-employer-search__technical-summary::after {
  content: "−";
}
.candidate-employer-search__technical-summary:focus-visible {
  outline: 2px solid var(--blue2);
  outline-offset: 2px;
  border-radius: 4px;
}
.candidate-employer-search__technical-body {
  padding: .05rem 0 .65rem .8rem;
  border-inline-start: 1px solid rgba(148, 163, 184, .18);
}
.candidate-employer-search__technical-body .candidate-employer-search__dossier-line,
.candidate-employer-search__technical-body .candidate-employer-search__dossier-source {
  font-size: .88rem;
}
@media(max-width:560px) {
  .candidate-employer-search__technical-summary {
    min-height: 46px;
  }
  .candidate-employer-search__technical-body {
    padding-inline-start: .65rem;
  }
}


/* Employer result-window compaction preserves registry order and explicitly avoids ranking claims. */
.candidate-employer-search__result-window {
  margin: .75rem 0 .45rem;
  color: var(--role-provenance);
  font-size: .86rem;
  line-height: 1.45;
}
.candidate-employer-search__more {
  min-height: 44px;
  padding: .55rem .8rem;
  border: 1px solid rgba(122, 167, 255, .34);
  border-radius: .55rem;
  background: rgba(122, 167, 255, .06);
  color: var(--blue2);
  font: inherit;
  font-weight: 780;
  cursor: pointer;
}
.candidate-employer-search__more:hover {
  border-color: rgba(122, 167, 255, .58);
  background: rgba(122, 167, 255, .1);
}
.candidate-employer-search__more:focus-visible {
  outline: 2px solid var(--blue2);
  outline-offset: 2px;
}
@media(max-width:560px) {
  .candidate-employer-search__more { width: 100%; }
}


/* Profile context stays local until the user explicitly copies it into the outbound query field. */
.candidate-employer-search__suggestion {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .55rem .7rem;
  margin: .65rem 0 .85rem;
  padding: .65rem .7rem;
  border: 1px solid rgba(148, 163, 184, .2);
  border-inline-start: 2px solid var(--role-provenance);
  border-radius: .6rem;
  background: rgba(148, 163, 184, .055);
}
.candidate-employer-search__suggestion[hidden] {
  display: none;
}
.candidate-employer-search__suggestion-label {
  min-width: 0;
  color: #dbe4ee;
  overflow-wrap: anywhere;
}
.candidate-employer-search__suggestion-label strong {
  color: #f4f6f8;
}
.candidate-employer-search__suggestion-use {
  min-height: 44px;
  margin-inline-start: auto;
}
.candidate-employer-search__suggestion-use:focus-visible {
  outline: 2px solid var(--blue2);
  outline-offset: 2px;
}
.candidate-employer-search__suggestion-note {
  flex-basis: 100%;
  color: var(--role-provenance);
  font-size: .84rem;
  line-height: 1.45;
}
@media(max-width:560px) {
  .candidate-employer-search__suggestion {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }
  .candidate-employer-search__suggestion[hidden] {
    display: none;
  }
  .candidate-employer-search__suggestion-use {
    width: 100%;
    margin-inline-start: 0;
  }
}

/* Discovery intent precedes source routing; controls remain usable on touch screens. */
.candidate-employer-search__form select,
.candidate-employer-search__form input {
  box-sizing: border-box;
  width: 100%;
  min-width: 0;
  min-height: 44px;
  padding: .55rem .7rem;
  border: 1px solid rgba(148, 163, 184, .38);
  border-radius: .55rem;
  background: #111924;
  color: #f4f6f8;
  font: inherit;
}
.candidate-employer-search__form select:focus-visible,
.candidate-employer-search__form input:focus-visible,
.candidate-employer-search__form button:focus-visible,
.candidate-employer-search__suggestion-use:focus-visible {
  outline: 2px solid var(--blue2);
  outline-offset: 2px;
}
.candidate-employer-search__form select:disabled,
.candidate-employer-search__form input:disabled,
.candidate-employer-search__form button:disabled {
  opacity: .66;
  cursor: not-allowed;
}
.candidate-employer-search__form button,
.candidate-employer-search__suggestion-use {
  min-height: 44px;
}
.candidate-employer-search__intent-hint {
  margin: .55rem 0 .75rem;
  padding: .55rem .65rem;
  border-inline-start: 2px solid var(--role-provenance);
  color: #d7e0ea;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
.candidate-employer-search__suggestion {
  display: grid;
  gap: .55rem;
  margin: .75rem 0;
  padding: .7rem;
  border: 1px solid rgba(122, 167, 255, .25);
  border-radius: .65rem;
  background: rgba(122, 167, 255, .055);
}
.candidate-employer-search__suggestion[hidden] { display: none; }
.candidate-employer-search__suggestion-label,
.candidate-employer-search__suggestion-note { overflow-wrap: anywhere; }
@media (max-width: 560px) {
  .candidate-employer-search__suggestion-use { width: 100%; }
}
