/* Поле само подсказывает, что с ним происходит при живой проверке
   (сейчас — ИНН у «Данных бизнеса»): рамка меняется, пока идёт запрос,
   и коротко подтверждает успех, — то же место, что у .field--error
   в field.css, но не там: тот файл уже у предела длины. */

.field--checking {
  animation: field-pulse var(--slow) var(--ease) infinite;
}

@keyframes field-pulse {
  0%, 100% { border-color: var(--line); }
  50%      { border-color: var(--accent-dim); }
}

/* Не мигает — один раз подтверждает и гаснет: то самое чувство
   «действие удалось», а не тревожный сигнал. */
.field--ok {
  animation: field-ok-flash 1.1s var(--ease) forwards;
}

@keyframes field-ok-flash {
  0%   { border-color: var(--ok); box-shadow: 0 0 0 3px var(--focus-ring); }
  100% { border-color: var(--line); box-shadow: none; }
}

/* Значок результата справа в поле: тот же угол, что у .field__act,
   но без действия — просто состояние. Появляется тем же приёмом,
   что галочка выбора в списках (picker-list.css: pick-in). */
.field__status {
  flex: none;
  display: grid;
  place-items: center;
  width: var(--fs-lg);
  height: var(--fs-lg);
}

.field__status .icon {
  width: var(--fs-lg);
  height: var(--fs-lg);
  color: var(--ok);
  animation: pick-in var(--fast) var(--ease);
}
