/* ============================================================
   TOD Forms — стили форм заявок
   ============================================================ */

.tod-form { position: relative; }

/* Поля */
.tod-form .form-group { margin-bottom: 12px; }

.tod-form .form-group label {
  display: block;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  color: var(--text-3);
  margin-bottom: 4px;
}

.tod-form .form-group input,
.tod-form .form-group select,
.tod-form .form-group textarea {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: var(--radius);
  padding: 9px 12px;
  font-family: var(--font-base);
  font-size: 14px;
  color: var(--text);
  background: var(--white);
  outline: none;
  transition: border-color 0.15s;
  box-sizing: border-box;
}

.tod-form .form-group input:focus,
.tod-form .form-group select:focus,
.tod-form .form-group textarea:focus {
  border-color: var(--blue);
}

.tod-form .form-group textarea {
  resize: vertical;
  min-height: 80px;
}

/* Ошибки полей */
.tod-form .form-group input.tod-error,
.tod-form .form-group textarea.tod-error,
.tod-form .form-group select.tod-error {
  border-color: #e03131;
}

.tod-field-error {
  display: block;
  font-size: 12px;
  color: #e03131;
  margin-top: 3px;
}

/* Кнопка отправки */
.tod-form .form-submit,
.tod-form [data-tod-submit] {
  width: 100%;
  background: var(--orange);
  border: none;
  border-radius: var(--radius);
  padding: 11px;
  color: #fff;
  font-family: var(--font-narrow);
  font-size: 15px;
  font-weight: 700;
  cursor: pointer;
  margin-top: 4px;
  transition: background 0.15s;
}

.tod-form .form-submit:hover,
.tod-form [data-tod-submit]:hover { background: #d0650a; }

.tod-form .form-submit:disabled,
.tod-form [data-tod-submit]:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

/* Состояние загрузки */
.tod-form.tod-loading .form-submit,
.tod-form.tod-loading [data-tod-submit] {
  opacity: 0.7;
  cursor: wait;
}

/* Сообщения об успехе / ошибке */
.tod-message {
  padding: 12px 14px;
  border-radius: var(--radius);
  font-size: 14px;
  line-height: 1.5;
  margin-top: 10px;
  display: none;
}

.tod-message.tod-success {
  display: block;
  background: #ebfbee;
  border: 1px solid #8ce99a;
  color: #1e7e34;
}

.tod-message.tod-fail {
  display: block;
  background: #fff5f5;
  border: 1px solid #ffa8a8;
  color: #c92a2a;
}

/* Примечание под кнопкой */
.tod-form .form-note {
  font-size: 11px;
  color: var(--text-3);
  text-align: center;
  margin-top: 8px;
  line-height: 1.4;
}

/* Скрытие формы после успешной отправки */
.tod-form.tod-sent .tod-fields { display: none; }
.tod-form.tod-sent .tod-message.tod-success { display: block; }
