/* Стили формы заявки.
   Подключается только на страницах, где есть шорткод [cofein_lead_form].
   Переменные берутся из темы сайта (assets/css/site.css), но у каждой есть
   запасное значение: плагин должен работать и с другой темой, не превращаясь
   в набор неукрашенных полей. Запасные значения — та же палитра «Кофеина»
   (docs/redesign-plan.md, раздел 2), поэтому форма не разъезжается с сайтом.

   Контраст: подписи #0d1240 на белом 17.9:1, подсказки #4e5674 на белом
   7.4:1, белый текст на кобальте #2336e8 7.6:1, граница поля #808b9c на
   белом 3.4:1 (границу поля видно без наведения), сообщение об ошибке
   #b62a14 на бледном срочном 5.0:1. */

.cofein-lead-form {
  display: grid;
  gap: var(--space-sm, 1rem);
  max-width: 40rem;
  margin-top: var(--space-md, 1.5rem);
}

.cofein-lead-form__row { display: grid; gap: .35rem; }
.cofein-lead-form__row--split { grid-template-columns: 1fr 1fr; gap: var(--space-sm, 1rem); }

.cofein-lead-form label {
  font-size: var(--fs-small, .9375rem);
  font-weight: 600;
  color: var(--ink, #0d1240);
}

.cofein-lead-form__hint { font-weight: 400; color: var(--ink-soft, #4e5674); font-size: var(--fs-fine, .875rem); }

.cofein-lead-form input[type="text"],
.cofein-lead-form textarea {
  font: inherit;
  font-size: 1rem;
  color: var(--ink, #0d1240);
  background: var(--sheet, #ffffff);
  border: 1px solid var(--line-strong, #808b9c);
  border-radius: var(--r-md, 12px);
  padding: .65rem .75rem;
  width: 100%;
}

.cofein-lead-form textarea { resize: vertical; min-height: 6rem; }

.cofein-lead-form input[aria-invalid="true"],
.cofein-lead-form textarea[aria-invalid="true"] { border-color: var(--urgent-text, #b62a14); border-width: 2px; }

.cofein-lead-form__consent {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: .6rem;
  align-items: start;
}
.cofein-lead-form__consent input { margin-top: .35rem; width: 1.15rem; height: 1.15rem; accent-color: var(--cobalt, #2336e8); }
.cofein-lead-form__consent label { font-weight: 400; font-size: var(--fs-small, .9375rem); color: var(--ink-soft, #4e5674); }

/* Ловушка для ботов: поле есть в разметке, но не видно человеку.
   Не display:none — часть ботов пропускает скрытые поля, а часть нет. */
.cofein-lead-form__trap {
  position: absolute !important;
  left: -9999px !important;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

.cofein-lead-form__actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-sm, 1rem); }

.cofein-lead-form__submit {
  font: inherit;
  font-size: var(--fs-small, .9375rem);
  font-weight: 600;
  min-height: 46px;
  padding: .5rem 1.5rem;
  border: 1px solid var(--cobalt, #2336e8);
  border-radius: var(--r-pill, 999px);
  background: var(--cobalt, #2336e8);
  color: var(--sheet, #ffffff);
  cursor: pointer;
}
.cofein-lead-form__submit:hover { background: var(--cobalt-deep, #1a28b8); border-color: var(--cobalt-deep, #1a28b8); }

.cofein-lead-form__status { border-radius: var(--r-md, 12px); padding: .8rem 1rem; font-size: var(--fs-small, .9375rem); margin: 0; }
.cofein-lead-form__status--ok { background: var(--good-pale, #ddf2e8); color: var(--good-text, #12714c); }
.cofein-lead-form__status--error { background: var(--urgent-pale, #fbe0d9); color: var(--urgent-text, #b62a14); }

.cofein-lead-form__error { color: var(--urgent-text, #b62a14); font-size: var(--fs-fine, .875rem); font-weight: 500; }
.cofein-lead-form__fine { color: var(--ink-soft, #4e5674); font-size: var(--fs-fine, .875rem); margin: 0; }

@media (max-width: 780px) {
  .cofein-lead-form__row--split { grid-template-columns: 1fr; }
  .cofein-lead-form__submit { width: 100%; }
}
