/* Wavefront theme: Mobile overrides for V Form (VPSUForm) used inside posts
   Scope: front-end render only. Avoids admin/builder styles. */

/* Only apply on small screens */
@media (max-width: 600px) {
  /* Ensure each field group stacks full-width */
  .myallinone-vform,
  .myallinone-vform * { box-sizing: border-box; }

  /* VForm groups use size-* widths; override to full width on mobile */
  [id^="vformgroup"] .vform-group-vform,
  [id^="vformgroup"] .vform-group-vform.size-small,
  [id^="vformgroup"] .vform-group-vform.size-medium,
  [id^="vformgroup"] .vform-group-vform.size-large {
    width: 100% !important;
    float: none;
  padding-left: 4px;
  padding-right: 4px;
  }

  /* Name fields (first/middle/last) stack */
  [id^="vformgroup"] .vform-first-name,
  [id^="vformgroup"] .vform-middle-name,
  [id^="vformgroup"] .vform-last-name {
    width: 100% !important;
    float: none;
    margin-right: 0;
  }

  /* Address sub-fields stack and remove fixed splits */
  [id^="vformgroup"] .vform-address p { width: 100% !important; float: none; margin: 5px 0; }
  [id^="vformgroup"] .vform-group-vform .primary-input[name="state_name[]"],
  [id^="vformgroup"] .vform-group-vform .primary-input[name="zip_code[]"] {
    max-width: 100% !important;
    float: none !important;
  }

  /* Inputs: comfortable tap targets */
  [id^="vformgroup"] input[type="text"],
  [id^="vformgroup"] input[type="email"],
  [id^="vformgroup"] input[type="tel"],
  [id^="vformgroup"] input[type="number"],
  [id^="vformgroup"] input[type="password"],
  [id^="vformgroup"] input[type="url"],
  [id^="vformgroup"] select,
  [id^="vformgroup"] textarea {
    width: 100% !important;
    max-width: 100% !important;
    height: 44px;
    font-size: 16px; /* prevent iOS zoom */
  }
  [id^="vformgroup"] textarea { height: auto; min-height: 100px; }

  /* Radios/checkboxes list: column layout */
  [id^="vformgroup"] .vform-checkbox ul,
  [id^="vformgroup"] .vform-multiplechoice ul,
  [id^="vformgroup"] ul.primary-input {
    display: block !important;
  }
  [id^="vformgroup"] ul.primary-input li { width: 100% !important; }

  /* Submit button full width */
  [id^="vformgroup"] .vform-main-submit,
  [id^="vformgroup"] button[type="submit"],
  [id^="vformgroup"] input[type="submit"] {
    width: 100% !important;
    display: block;
  }

  /* Phone with country code: stack select and input */
  [id^="vformgroup"] .vform-phone-with-code { display: block !important; }
  [id^="vformgroup"] .vform-phone-with-code > * { width: 100% !important; margin-bottom: 8px; }
  [id^="vformgroup"] .country-search { width: 100% !important; }
  [id^="vformgroup"] .country-list { width: 100% !important; max-height: 220px; }

  /* Rating scales */
  [id^="vformgroup"] .fivestar-rating label { font-size: 26px; }
  [id^="vformgroup"] .nps-scale { gap: 8px; }
  [id^="vformgroup"] .nps-scale label span { padding: 10px 12px; }

  /* Fix overflow issues in narrow containers */
  [id^="vformgroup"] .vform-group-vform { overflow: visible; }
}

/* Slightly larger phones */
@media (max-width: 768px) {
  [id^="vformgroup"] .vform-main-submit,
  [id^="vformgroup"] button[type="submit"],
  [id^="vformgroup"] input[type="submit"] {
    font-size: 16px;
    padding: 12px 16px;
  }
}
