/**
 * Extreme input styles override for Magento styles-m.css
 * Uses ultra-high specificity selectors with !important flags
 */

/* Reset all inputs first */
input, select, textarea,
input[type="text"], input[type="email"], input[type="tel"], input[type="number"],
input[type="password"], select, textarea {
  padding: 7px 10px !important;
  border: 2px solid #ddd !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  box-sizing: border-box !important;
  font-family: inherit !important;
  height: auto !important;
}

/* Global direct tag selectors with !important for page-wide consistency */
html body input.input-text,
html body select.select,
html body textarea.textarea,
html body .input-text,
html body .select,
html body .textarea {
  width: 100% !important;
  padding: 7px 10px !important;
  border: 2px solid #ddd !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  transition: border-color 0.3s ease !important;
  box-sizing: border-box !important;
  font-family: inherit !important;
  height: auto !important;
}

/* Ultra-specific selectors for customer application form */
html body .customer-application-form-container .field .input-text,
html body .customer-application-form-container .field .select,
html body .customer-application-form-container .field .textarea,
html body .customer-application-form-container .field input[type="text"],
html body .customer-application-form-container .field input[type="email"],
html body .customer-application-form-container .field input[type="tel"],
html body .customer-application-form-container .field input[type="number"],
html body .customer-application-form-container .field input[type="password"],
html body .customer-application-form-container .field select,
html body .customer-application-form-container .field textarea,
html body .form-step .field .input-text,
html body .form-step .field .select,
html body .form-step .field .textarea,
html body .form-step .field input[type="text"],
html body .form-step .field input[type="email"],
html body .form-step .field input[type="tel"],
html body .form-step .field input[type="number"],
html body .form-step .field input[type="password"],
html body .form-step .field select,
html body .form-step .field textarea,
html body #customer-application-form .field .input-text,
html body #customer-application-form .field .select,
html body #customer-application-form .field .textarea,
html body #customer-application-form .field input[type="text"],
html body #customer-application-form .field input[type="email"],
html body #customer-application-form .field input[type="tel"],
html body #customer-application-form .field input[type="number"],
html body #customer-application-form .field input[type="password"],
html body #customer-application-form .field select,
html body #customer-application-form .field textarea,
html body .page-main .customer-application-form-container .input-text,
html body .page-main .customer-application-form-container select,
html body .page-main .customer-application-form-container textarea {
  width: 100% !important;
  padding: 7px 10px !important;
  border: 2px solid #ddd !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  transition: border-color 0.3s ease !important;
  box-sizing: border-box !important;
  font-family: inherit !important;
  height: auto !important;
  line-height: normal !important;
  min-height: unset !important;
  max-height: none !important;
}

/* Focus states with ultra-high specificity */
html body .customer-application-form-container .field .input-text:focus,
html body .customer-application-form-container .field .select:focus,
html body .customer-application-form-container .field .textarea:focus,
html body .form-step .field .input-text:focus,
html body .form-step .field .select:focus,
html body .form-step .field .textarea:focus,
html body #customer-application-form .field .input-text:focus,
html body #customer-application-form .field .select:focus,
html body #customer-application-form .field .textarea:focus,
html body .customer-application-form-container .field input:focus,
html body .customer-application-form-container .field select:focus,
html body .customer-application-form-container .field textarea:focus,
html body .form-step .field input:focus,
html body .form-step .field select:focus,
html body .form-step .field textarea:focus {
  outline: none !important;
  border-color: #2196F3 !important;
  box-shadow: 0 0 0 3px rgba(33, 150, 243, 0.1) !important;
}

/* Error states with ultra-high specificity */
html body .customer-application-form-container .field .input-text.error,
html body .customer-application-form-container .field .select.error,
html body .customer-application-form-container .field .textarea.error,
html body .form-step .field .input-text.error,
html body .form-step .field .select.error,
html body .form-step .field .textarea.error,
html body #customer-application-form .field .input-text.error,
html body #customer-application-form .field .select.error,
html body #customer-application-form .field .textarea.error,
html body .field-error .input-text,
html body .field-error .select,
html body .field-error .textarea,
html body .field-error input,
html body .field-error select,
html body .field-error textarea {
  border-color: #e74c3c !important;
  background-color: #fdf2f2 !important;
}

/* Valid states with ultra-high specificity */
html body .customer-application-form-container .field .input-text.valid,
html body .customer-application-form-container .field .select.valid,
html body .customer-application-form-container .field .textarea.valid,
html body .form-step .field .input-text.valid,
html body .form-step .field .select.valid,
html body .form-step .field .textarea.valid,
html body #customer-application-form .field .input-text.valid,
html body #customer-application-form .field .select.valid,
html body #customer-application-form .field .textarea.valid,
html body .customer-application-form-container .field-valid .input-text,
html body .customer-application-form-container .field-valid .select,
html body .customer-application-form-container .field-valid .textarea,
html body .form-step .field-valid .input-text,
html body .form-step .field-valid .select,
html body .form-step .field-valid .textarea,
html body #customer-application-form .field-valid .input-text,
html body #customer-application-form .field-valid .select,
html body #customer-application-form .field-valid .textarea,
html body .field-valid input,
html body .field-valid select,
html body .field-valid textarea {
  /* background-color: #f8fff8 !important; */
}

/* Target specific step 7 elements for maximum specificity */
html body #step7 input,
html body #step7 select,
html body #step7 textarea,
html body #step7 .input-text,
html body #step7 .select,
html body #step7 .textarea {
  width: 100% !important;
  padding: 7px 10px !important;
  border: 2px solid #ddd !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  transition: border-color 0.3s ease !important;
  box-sizing: border-box !important;
  font-family: inherit !important;
  height: auto !important;
}

/* Target Uniform Certificate fields specifically */
html body .field.uniform_seller_name .input-text,
html body .field.uniform_seller_address .input-text,
html body .field.uniform_buyer_name .input-text,
html body .field.uniform_buyer_street .input-text,
html body .field.uniform_buyer_city .input-text,
html body .field.uniform_buyer_state .select,
html body .field.uniform_buyer_zip .input-text,
html body .field.uniform_description .textarea,
html body .field.uniform_signature_title .input-text,
html body .field.uniform_signature_date .input-text {
  width: 100% !important;
  padding: 7px 10px !important;
  border: 2px solid #ddd !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  transition: border-color 0.3s ease !important;
  box-sizing: border-box !important;
  font-family: inherit !important;
  height: auto !important;
}

/* Apply styles directly to state registration table */
html body #state-registration-table input,
html body #state-registration-table select {
  width: 100% !important;
  padding: 7px 10px !important;
  border: 2px solid #ddd !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  transition: border-color 0.3s ease !important;
  box-sizing: border-box !important;
  font-family: inherit !important;
  height: auto !important;
}