/**
 * @file
 * Webform «feedback» (страница контактов и др.). Префикс: form.wfb-form.wfb-feedback-widget.
 * Загружается с preprocess: false — после агрегата темы (см. form-callback).
 */

form.wfb-form.wfb-feedback-widget {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.65rem !important;
  max-width: 100% !important;
  margin: 0 !important;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}

/* Страница контактов: поля внутри серого блока как у sticky */
.wfb-sticky-inner form.wfb-form.wfb-feedback-widget {
  gap: 0.5rem !important;
}

.mt-contacts-section__form-inner form.wfb-form.wfb-feedback-widget .js-form-item:not(.form-type-checkbox):not(.form-type-hidden),
.mt-contacts-section__form-inner form.wfb-form.wfb-feedback-widget .form-item:not(.form-type-checkbox):not(.form-type-hidden) {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.25rem !important;
}

.mt-contacts-section__form-inner form.wfb-form.wfb-feedback-widget .js-form-item > label:not(.option),
.mt-contacts-section__form-inner form.wfb-form.wfb-feedback-widget .form-item > label:not(.option) {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0.75rem !important;
  font-weight: 500 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: #4b5563 !important;
}

.wfb-sticky-inner form.wfb-form.wfb-feedback-widget input.form-text,
.wfb-sticky-inner form.wfb-form.wfb-feedback-widget input.form-email,
.wfb-sticky-inner form.wfb-form.wfb-feedback-widget input[type="text"],
.wfb-sticky-inner form.wfb-form.wfb-feedback-widget input[type="email"],
.wfb-sticky-inner form.wfb-form.wfb-feedback-widget input[type="tel"],
.wfb-sticky-inner form.wfb-form.wfb-feedback-widget textarea.form-textarea {
  min-height: 2.5rem !important;
  padding: 0.625rem 0.75rem !important;
  border-radius: 0.5rem !important;
  border-color: #e5e7eb !important;
  box-shadow: none !important;
}

.wfb-sticky-inner form.wfb-form.wfb-feedback-widget textarea.form-textarea {
  min-height: 5rem !important;
}

.wfb-sticky-inner form.wfb-form.wfb-feedback-widget .form-actions,
.wfb-sticky-inner form.wfb-form.wfb-feedback-widget .webform-actions {
  margin-top: 0.15rem !important;
}

.wfb-sticky-inner form.wfb-form.wfb-feedback-widget .form-actions input[type="submit"],
.wfb-sticky-inner form.wfb-form.wfb-feedback-widget .webform-actions input[type="submit"],
.wfb-sticky-inner form.wfb-form.wfb-feedback-widget .wfb-form-actions-row input[type="submit"] {
  min-height: 2.75rem !important;
  border-radius: 0.5rem !important;
  box-shadow: 0 4px 12px rgb(124 58 237 / 0.2) !important;
}

form.wfb-form.wfb-feedback-widget .form-item,
form.wfb-form.wfb-feedback-widget .js-form-item {
  margin: 0 !important;
  padding: 0 !important;
}

form.wfb-form.wfb-feedback-widget .js-form-item.form-type-webform-markup,
form.wfb-form.wfb-feedback-widget .js-form-item.form-type-processed-text {
  margin: 0 !important;
}

/* Скрытые поля не раздувают отступы */
form.wfb-form.wfb-feedback-widget .js-form-type-hidden,
form.wfb-form.wfb-feedback-widget .form-type-hidden {
  display: none !important;
}

form.wfb-form.wfb-feedback-widget .js-form-item > label:not(.option),
form.wfb-form.wfb-feedback-widget .form-item > label:not(.option) {
  display: block !important;
  margin: 0 0 0.28rem !important;
  padding: 0 !important;
  font-size: 0.6875rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #9ca3af !important;
}

form.wfb-form.wfb-feedback-widget input.form-text,
form.wfb-form.wfb-feedback-widget input.form-email,
form.wfb-form.wfb-feedback-widget input[type="text"],
form.wfb-form.wfb-feedback-widget input[type="email"],
form.wfb-form.wfb-feedback-widget input[type="tel"],
form.wfb-form.wfb-feedback-widget textarea.form-textarea {
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 0.625rem 0.875rem !important;
  margin: 0 !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  color: #111827 !important;
  background-color: #fff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 0.625rem !important;
  box-shadow: 0 1px 2px rgb(15 23 42 / 0.03) !important;
  transition:
    background-color 0.15s ease,
    border-color 0.15s ease,
    box-shadow 0.15s ease !important;
}

form.wfb-form.wfb-feedback-widget input.form-text::placeholder,
form.wfb-form.wfb-feedback-widget input.form-email::placeholder,
form.wfb-form.wfb-feedback-widget input[type="text"]::placeholder,
form.wfb-form.wfb-feedback-widget input[type="email"]::placeholder,
form.wfb-form.wfb-feedback-widget input[type="tel"]::placeholder,
form.wfb-form.wfb-feedback-widget textarea.form-textarea::placeholder {
  font-size: 0.875rem !important;
  color: #9ca3af !important;
}

form.wfb-form.wfb-feedback-widget textarea.form-textarea {
  min-height: 5.25rem !important;
  resize: vertical !important;
}

form.wfb-form.wfb-feedback-widget input.form-text:focus,
form.wfb-form.wfb-feedback-widget input.form-email:focus,
form.wfb-form.wfb-feedback-widget input[type="text"]:focus,
form.wfb-form.wfb-feedback-widget input[type="email"]:focus,
form.wfb-form.wfb-feedback-widget input[type="tel"]:focus,
form.wfb-form.wfb-feedback-widget textarea.form-textarea:focus {
  outline: none !important;
  background-color: #fff !important;
  border-color: #c084fc !important;
  box-shadow:
    0 0 0 3px rgb(147 51 234 / 0.1),
    0 1px 2px rgb(15 23 42 / 0.04) !important;
}

/* Согласие */
form.wfb-form.wfb-feedback-widget .js-form-type-checkbox,
form.wfb-form.wfb-feedback-widget .form-type-checkbox {
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.55rem !important;
  margin-top: 0.1rem !important;
}

form.wfb-form.wfb-feedback-widget .js-form-type-checkbox input[type="checkbox"],
form.wfb-form.wfb-feedback-widget .form-type-checkbox input[type="checkbox"] {
  width: 0.9375rem !important;
  height: 0.9375rem !important;
  margin: 0.1rem 0 0 0 !important;
  flex-shrink: 0 !important;
  accent-color: #9333ea !important;
  cursor: pointer !important;
}

form.wfb-form.wfb-feedback-widget .js-form-type-checkbox label.option,
form.wfb-form.wfb-feedback-widget .form-type-checkbox label.option {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 0.6875rem !important;
  font-weight: 400 !important;
  line-height: 1.45 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  color: #6b7280 !important;
  cursor: pointer !important;
}

form.wfb-form.wfb-feedback-widget .js-form-type-checkbox input.wfb-validation-error,
form.wfb-form.wfb-feedback-widget .form-type-checkbox input.wfb-validation-error {
  outline: 2px solid #ef4444 !important;
  outline-offset: 1px;
}

form.wfb-form.wfb-feedback-widget label.option.wfb-validation-error-label {
  color: #ef4444 !important;
}

/* Кнопка отправки */
form.wfb-form.wfb-feedback-widget .form-actions,
form.wfb-form.wfb-feedback-widget .webform-actions {
  margin: 0.35rem 0 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}

form.wfb-form.wfb-feedback-widget .form-actions input[type="submit"],
form.wfb-form.wfb-feedback-widget .form-actions button[type="submit"],
form.wfb-form.wfb-feedback-widget .webform-actions input[type="submit"],
form.wfb-form.wfb-feedback-widget .webform-actions button[type="submit"],
form.wfb-form.wfb-feedback-widget .wfb-form-actions-row input[type="submit"],
form.wfb-form.wfb-feedback-widget .wfb-form-actions-row button[type="submit"] {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding: 0.72rem 1.25rem !important;
  margin: 0 !important;
  font-size: 0.875rem !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;
  color: #fff !important;
  text-shadow: none !important;
  background: linear-gradient(135deg, #a855f7 0%, #7c3aed 52%, #6d28d9 100%) !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  border-radius: 0.625rem !important;
  box-shadow: 0 4px 14px rgb(124 58 237 / 0.22) !important;
  cursor: pointer !important;
  transition:
    background 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.15s ease !important;
}

form.wfb-form.wfb-feedback-widget .form-actions input[type="submit"]:hover,
form.wfb-form.wfb-feedback-widget .form-actions button[type="submit"]:hover,
form.wfb-form.wfb-feedback-widget .webform-actions input[type="submit"]:hover,
form.wfb-form.wfb-feedback-widget .webform-actions button[type="submit"]:hover,
form.wfb-form.wfb-feedback-widget .wfb-form-actions-row input[type="submit"]:hover,
form.wfb-form.wfb-feedback-widget .wfb-form-actions-row button[type="submit"]:hover {
  background: linear-gradient(135deg, #9333ea 0%, #6d28d9 100%) !important;
  box-shadow: 0 6px 18px rgb(124 58 237 / 0.28) !important;
  transform: translateY(-1px);
}

form.wfb-form.wfb-feedback-widget .form-actions input[type="submit"]:active,
form.wfb-form.wfb-feedback-widget .webform-actions input[type="submit"]:active,
form.wfb-form.wfb-feedback-widget .wfb-form-actions-row input[type="submit"]:active {
  transform: translateY(0);
  box-shadow: 0 2px 8px rgb(124 58 237 / 0.2) !important;
}

form.wfb-form.wfb-feedback-widget .form-actions input[type="submit"]:focus-visible,
form.wfb-form.wfb-feedback-widget .webform-actions input[type="submit"]:focus-visible,
form.wfb-form.wfb-feedback-widget .wfb-form-actions-row input[type="submit"]:focus-visible {
  outline: 2px solid #e9d5ff !important;
  outline-offset: 2px !important;
}

/* Ошибки валидации (form-calculate.js + toast) */
form.wfb-form.wfb-feedback-widget .js-form-item.wfb-validation-error input.form-text,
form.wfb-form.wfb-feedback-widget .js-form-item.wfb-validation-error input.form-email,
form.wfb-form.wfb-feedback-widget .js-form-item.wfb-validation-error input[type="text"],
form.wfb-form.wfb-feedback-widget .js-form-item.wfb-validation-error input[type="email"],
form.wfb-form.wfb-feedback-widget .js-form-item.wfb-validation-error input[type="tel"],
form.wfb-form.wfb-feedback-widget .js-form-item.wfb-validation-error textarea.form-textarea {
  border-color: #ef4444 !important;
  background-color: #fef2f2 !important;
  box-shadow: 0 0 0 1px #ef4444 !important;
}
