.fps-preset-milia-quiz .gform_wrapper {
  font-family: inherit;
}

.fps-preset-milia-quiz.fps-layout-styled-progress .gf_progressbar_wrapper,
.fps-preset-milia-quiz.fps-layout-styled-progress .gf_page_steps {
  margin: 0 0 44px !important;
  width: 100% !important;
}

/* The step count is moved into the footer by frontend.js for the Milia-style flow. */
.fps-preset-milia-quiz.fps-layout-styled-progress .gf_progressbar_title {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress .gf_progressbar {
  height: 12px !important;
  overflow: hidden !important;
  border-radius: 999px !important;
  background: color-mix(in srgb, var(--fps-border) 70%, #fff) !important;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--fps-border) 60%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress .gf_progressbar_percentage,
.fps-preset-milia-quiz.fps-layout-styled-progress .gf_progressbar_percentage.percentbar_blue,
.fps-preset-milia-quiz.fps-layout-styled-progress .gf_progressbar_percentage.percentbar_gray,
.fps-preset-milia-quiz.fps-layout-styled-progress .gf_progressbar_percentage.percentbar_green,
.fps-preset-milia-quiz.fps-layout-styled-progress .gf_progressbar_percentage.percentbar_orange,
.fps-preset-milia-quiz.fps-layout-styled-progress .gf_progressbar_percentage.percentbar_red {
  height: 100% !important;
  border-radius: 999px !important;
  background: var(--fps-accent) !important;
  background-color: var(--fps-accent) !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress .gf_progressbar_percentage span {
  display: none !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress .gf_step {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  color: var(--fps-muted-text) !important;
  font-weight: 700 !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress .gf_step_active {
  color: var(--fps-primary) !important;
}

.fps-preset-milia-quiz .gform_page {
  animation: fpsFadeUp 240ms ease both;
}

.fps-preset-milia-quiz .gfield {
  margin-bottom: 22px !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices .ginput_container_radio .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .ginput_container_checkbox .gfield_checkbox {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 16px !important;
  width: 100% !important;
  max-width: 100% !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gchoice {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gchoice input[type='radio'],
.fps-preset-milia-quiz.fps-layout-card-choices .gchoice input[type='checkbox'],
.fps-preset-milia-quiz.fps-layout-card-choices input.gfield-choice-input {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  overflow: hidden !important;
  pointer-events: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gchoice label,
.fps-preset-milia-quiz.fps-layout-card-choices .gchoice .gform-field-label {
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 76px !important;
  margin: 0 !important;
  padding: 22px 28px !important;
  border: 2px solid var(--fps-border) !important;
  border-radius: 18px !important;
  background: #fff !important;
  background-color: #fff !important;
  color: var(--fps-text) !important;
  font-size: clamp(18px, 1.8vw, 24px) !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  letter-spacing: 0.01em !important;
  cursor: pointer !important;
  transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease, transform 160ms ease, color 160ms ease !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gchoice label::before,
.fps-preset-milia-quiz.fps-layout-card-choices .gchoice label::after,
.fps-preset-milia-quiz.fps-layout-card-choices .gchoice .gform-field-label::before,
.fps-preset-milia-quiz.fps-layout-card-choices .gchoice .gform-field-label::after {
  display: none !important;
  content: none !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gchoice:hover label,
.fps-preset-milia-quiz.fps-layout-card-choices .gchoice:hover .gform-field-label {
  border-color: color-mix(in srgb, var(--fps-primary) 58%, var(--fps-border)) !important;
  transform: translateY(-1px) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gchoice.fps-choice-selected label,
.fps-preset-milia-quiz.fps-layout-card-choices .gchoice.fps-choice-selected .gform-field-label {
  border-color: var(--fps-primary) !important;
  background: var(--fps-selected-bg) !important;
  background-color: var(--fps-selected-bg) !important;
  color: var(--fps-text) !important;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--fps-primary) 14%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gchoice input:focus-visible + label,
.fps-preset-milia-quiz.fps-layout-card-choices .gchoice input:focus-visible + .gform-field-label {
  box-shadow: 0 0 0 4px color-mix(in srgb, var(--fps-primary) 18%, transparent) !important;
}

.fps-preset-milia-quiz .ginput_container_fileupload input[type='file'] {
  width: 100% !important;
  min-height: 72px !important;
  padding: 18px 20px !important;
  border: 2px dashed var(--fps-border) !important;
  border-radius: var(--fps-radius-md) !important;
  background: color-mix(in srgb, var(--fps-selected-bg) 35%, #fff) !important;
  color: var(--fps-muted-text) !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}

.fps-preset-milia-quiz .ginput_container_fileupload input[type='file']::file-selector-button {
  min-height: 42px !important;
  margin-right: 16px !important;
  padding: 10px 18px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--fps-primary) !important;
  color: var(--fps-button-text) !important;
  font-weight: 800 !important;
  cursor: pointer !important;
}

.fps-preset-milia-quiz .ginput_container_fileupload .gform_drop_area {
  border: 2px dashed var(--fps-border) !important;
  border-radius: var(--fps-radius-md) !important;
  background: color-mix(in srgb, var(--fps-selected-bg) 35%, #fff) !important;
  padding: 28px !important;
  text-align: center !important;
}

.fps-preset-milia-quiz .ginput_container_fileupload .gform_drop_instructions {
  color: var(--fps-muted-text) !important;
  font-weight: 700 !important;
}

.fps-preset-milia-quiz .gsection {
  padding-top: 10px !important;
  border-bottom: 0 !important;
}

.fps-preset-milia-quiz .gsection_title {
  font-size: clamp(24px, 3vw, 36px) !important;
  letter-spacing: -0.02em !important;
}

@keyframes fpsFadeUp {
  from {
    opacity: 0;
    transform: translateY(8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Image choice fields: JS adds .fps-gfield-image-choice when a radio/checkbox field contains images. */
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-choice:has(.gchoice img) .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-choice:has(.gchoice img) .gfield_checkbox {
  align-items: stretch !important;
  gap: 18px !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-stacked .fps-gfield-image-choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-stacked .fps-gfield-image-choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-stacked .fps-gfield-choice:has(.gchoice img) .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-stacked .fps-gfield-choice:has(.gchoice img) .gfield_checkbox {
  display: grid !important;
  grid-template-columns: 1fr !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-2 .fps-gfield-image-choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-2 .fps-gfield-image-choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-2 .fps-gfield-choice:has(.gchoice img) .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-2 .fps-gfield-choice:has(.gchoice img) .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .fps-gfield-image-choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .fps-gfield-image-choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .fps-gfield-choice:has(.gchoice img) .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .fps-gfield-choice:has(.gchoice img) .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .fps-gfield-image-choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .fps-gfield-image-choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .fps-gfield-choice:has(.gchoice img) .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .fps-gfield-choice:has(.gchoice img) .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-auto .fps-gfield-image-choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-auto .fps-gfield-image-choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-auto .fps-gfield-choice:has(.gchoice img) .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-auto .fps-gfield-choice:has(.gchoice img) .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-choice:has(.gchoice img) .gchoice {
  min-width: 0 !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice label,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice .gform-field-label,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-choice:has(.gchoice img) .gchoice label,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-choice:has(.gchoice img) .gchoice .gform-field-label {
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  gap: 14px !important;
  min-height: 0 !important;
  height: 100% !important;
  padding: 10px !important;
  overflow: hidden !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice img,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-choice:has(.gchoice img) .gchoice img {
  display: block !important;
  width: 100% !important;
  height: 220px !important;
  max-width: 100% !important;
  object-fit: cover !important;
  border-radius: 12px !important;
  background: color-mix(in srgb, var(--fps-border) 35%, #f7f9fb) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice label > span,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice .gform-field-label > span,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-choice:has(.gchoice img) .gchoice label > span,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-choice:has(.gchoice img) .gchoice .gform-field-label > span {
  display: block !important;
}

@media (max-width: 900px) {
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .fps-gfield-image-choice .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .fps-gfield-image-choice .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .fps-gfield-image-choice .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .fps-gfield-image-choice .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .fps-gfield-choice:has(.gchoice img) .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .fps-gfield-choice:has(.gchoice img) .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .fps-gfield-choice:has(.gchoice img) .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .fps-gfield-choice:has(.gchoice img) .gfield_checkbox {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-choice:has(.gchoice img) .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-choice:has(.gchoice img) .gfield_checkbox {
    grid-template-columns: 1fr !important;
  }

  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice img,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-choice:has(.gchoice img) .gchoice img {
    height: 190px !important;
  }
}


/* Gravity Forms 2.9+ native Image Choice field support.
   Official structure: .gfield--type-image_choice > .ginput_container_image_choice, .gfield_radio/.gfield_checkbox, .gchoice, .gfield-image-choice-wrapper-outer. */
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice {
  --gf-field-img-choice-gap: 18px !important;
  --gf-field-img-choice-size: 100% !important;
  --gf-field-img-choice-aspect-ratio: 16/10 !important;
  --gf-field-img-choice-margin-y-end: 0 !important;
  --gf-field-img-choice-card-placeholder-bg-color: color-mix(in srgb, var(--fps-border) 35%, #f7f9fb) !important;
  --gf-field-img-choice-card-placeholder-color: color-mix(in srgb, var(--fps-muted-text) 65%, transparent) !important;
  --gf-field-img-choice-card-check-ind-bg-color: var(--fps-primary) !important;
  --gf-field-img-choice-card-check-ind-icon-color: var(--fps-button-text) !important;
  --gf-ctrl-color: var(--fps-text) !important;
  --gf-ctrl-label-color-primary: var(--fps-text) !important;
  --gf-ctrl-label-font-size-primary: 18px !important;
  --gf-ctrl-label-font-size-secondary: 18px !important;
  --gf-ctrl-desc-color: var(--fps-muted-text) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .ginput_container_image_choice,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .ginput_container_image_choice {
  width: 100% !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gfield_checkbox {
  gap: 18px !important;
  align-items: stretch !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-stacked .gfield--type-image_choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-stacked .gfield--type-image_choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-stacked .image-choices-field .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-stacked .image-choices-field .gfield_checkbox {
  display: grid !important;
  grid-template-columns: 1fr !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-2 .gfield--type-image_choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-2 .gfield--type-image_choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-2 .image-choices-field .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-2 .image-choices-field .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .gfield--type-image_choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .gfield--type-image_choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .image-choices-field .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .image-choices-field .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .gfield--type-image_choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .gfield--type-image_choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .image-choices-field .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .image-choices-field .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-auto .gfield--type-image_choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-auto .gfield--type-image_choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-auto .image-choices-field .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-auto .image-choices-field .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-image-choice-wrapper-outer {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: flex-start !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 10px !important;
  border: 2px solid var(--fps-border) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: none !important;
  color: var(--fps-text) !important;
  cursor: pointer !important;
  overflow: hidden !important;
  transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease, transform 160ms ease !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice:hover .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice:hover .gfield-image-choice-wrapper-outer {
  border-color: color-mix(in srgb, var(--fps-primary) 58%, var(--fps-border)) !important;
  transform: translateY(-1px) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice.fps-choice-selected .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice input.gfield-choice-input:checked + label .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice.fps-choice-selected .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice input.gfield-choice-input:checked + label .gfield-image-choice-wrapper-outer {
  border-color: var(--fps-primary) !important;
  background: var(--fps-selected-bg) !important;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--fps-primary) 14%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-choice-image-wrapper,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-choice-image-wrapper {
  width: 100% !important;
  aspect-ratio: 16/10 !important;
  margin: 0 0 14px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: color-mix(in srgb, var(--fps-border) 35%, #f7f9fb) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-choice-image-wrapper img,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-choice-image-wrapper img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-choice-image-no-image,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-choice-image-no-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 220px !important;
  border-radius: 12px !important;
  background: color-mix(in srgb, var(--fps-border) 35%, #f7f9fb) !important;
  color: color-mix(in srgb, var(--fps-muted-text) 60%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-inner,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-image-choice-wrapper-inner {
  display: block !important;
  padding: 6px 8px 8px !important;
  color: var(--fps-text) !important;
  font-size: clamp(17px, 1.5vw, 21px) !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
  letter-spacing: 0.01em !important;
}

/* Optional choice subtext support. Use "Main answer || Supporting subtext" in the choice label. */
.fps-preset-milia-quiz.fps-layout-card-choices .gchoice.fps-choice-has-subtext label,
.fps-preset-milia-quiz.fps-layout-card-choices .gchoice.fps-choice-has-subtext .gform-field-label {
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 4px !important;
}

.fps-preset-milia-quiz .fps-choice-title {
  display: block !important;
  color: var(--fps-text) !important;
  font-weight: 800 !important;
  line-height: 1.3 !important;
}

.fps-preset-milia-quiz .fps-choice-subtext {
  display: block !important;
  margin-top: 4px !important;
  color: var(--fps-muted-text) !important;
  font-size: 0.72em !important;
  font-weight: 600 !important;
  line-height: 1.45 !important;
  letter-spacing: 0 !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-inner .fps-choice-subtext,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-image-choice-wrapper-inner .fps-choice-subtext {
  font-size: 14px !important;
}

@media (max-width: 900px) {
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .gfield--type-image_choice .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .gfield--type-image_choice .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .gfield--type-image_choice .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .gfield--type-image_choice .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .image-choices-field .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-3 .image-choices-field .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .image-choices-field .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices.fps-image-choice-layout-4 .image-choices-field .gfield_checkbox {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gfield_checkbox {
    grid-template-columns: 1fr !important;
  }

  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-choice-image-no-image,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-choice-image-no-image {
    min-height: 190px !important;
  }
}


/* V0.1.7: refined Image Choice card presentation.
   Use the image-choice wrapper as the actual card, and remove the extra nested/pill border from native labels. */
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice > label,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice > .gform-field-label,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice > label,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice > .gform-field-label {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: inherit !important;
  overflow: visible !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice > label:hover,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice > .gform-field-label:hover,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice > label:hover,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice > .gform-field-label:hover {
  transform: none !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gfield_checkbox {
  gap: 22px !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-image-choice-wrapper-outer {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 12px !important;
  border: 2px solid var(--fps-border) !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: 0 10px 26px rgba(6, 27, 58, 0.06) !important;
  color: var(--fps-text) !important;
  cursor: pointer !important;
  overflow: hidden !important;
  transition: border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice:hover .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice:hover .gfield-image-choice-wrapper-outer {
  border-color: color-mix(in srgb, var(--fps-primary) 62%, var(--fps-border)) !important;
  box-shadow: 0 16px 34px color-mix(in srgb, var(--fps-primary) 12%, transparent) !important;
  transform: translateY(-2px) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice.fps-choice-selected .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice input.gfield-choice-input:checked + label .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice.fps-choice-selected .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice input.gfield-choice-input:checked + label .gfield-image-choice-wrapper-outer {
  border-color: var(--fps-primary) !important;
  background: color-mix(in srgb, var(--fps-selected-bg) 66%, #fff) !important;
  box-shadow: 0 18px 40px color-mix(in srgb, var(--fps-primary) 18%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice.fps-choice-selected .gfield-image-choice-wrapper-outer::after,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice input.gfield-choice-input:checked + label .gfield-image-choice-wrapper-outer::after,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice.fps-choice-selected .gfield-image-choice-wrapper-outer::after,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice input.gfield-choice-input:checked + label .gfield-image-choice-wrapper-outer::after {
  content: '✓' !important;
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 999px !important;
  background: var(--fps-primary) !important;
  color: var(--fps-button-text) !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  box-shadow: 0 8px 18px color-mix(in srgb, var(--fps-primary) 28%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-inner,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-image-choice-wrapper-inner {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  padding: 0 !important;
  gap: 0 !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-choice-image-wrapper,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-choice-image-wrapper {
  width: 100% !important;
  aspect-ratio: 16 / 10 !important;
  margin: 0 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: linear-gradient(135deg, color-mix(in srgb, var(--fps-border) 40%, #fff), #f8fafc) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-choice-image-wrapper img,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-choice-image-wrapper img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-choice-image-no-image,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-choice-image-no-image {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: auto !important;
  aspect-ratio: 16 / 10 !important;
  border-radius: 18px !important;
  background: linear-gradient(135deg, color-mix(in srgb, var(--fps-border) 38%, #fff), #f8fafc) !important;
  color: color-mix(in srgb, var(--fps-muted-text) 64%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-label,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-image-choice-label,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-inner > span:not(.gfield-choice-image-wrapper):not(.gfield-choice-image-no-image):not(.fps-choice-subtext):not(.fps-choice-title),
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-image-choice-wrapper-inner > span:not(.gfield-choice-image-wrapper):not(.gfield-choice-image-no-image):not(.fps-choice-subtext):not(.fps-choice-title) {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 16px 8px 8px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--fps-text) !important;
  font-size: clamp(17px, 1.55vw, 22px) !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.01em !important;
  text-align: left !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-inner .fps-choice-title,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-image-choice-wrapper-inner .fps-choice-title {
  display: block !important;
  padding: 16px 8px 0 !important;
  font-size: clamp(17px, 1.55vw, 22px) !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  text-align: left !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-inner .fps-choice-subtext,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-image-choice-wrapper-inner .fps-choice-subtext {
  display: block !important;
  padding: 6px 8px 8px !important;
  margin: 0 !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  line-height: 1.4 !important;
  text-align: left !important;
}

@media (max-width: 640px) {
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-outer,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-image-choice-wrapper-outer {
    border-radius: 20px !important;
    padding: 10px !important;
  }

  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-choice-image-wrapper,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-choice-image-wrapper,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-choice-image-no-image,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gfield-choice-image-no-image {
    border-radius: 15px !important;
  }
}

/* V0.1.8: per-image-choice-field column overrides.
   These classes are added to individual Gravity Forms fields from the plugin dashboard. */
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-stacked .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-stacked .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-stacked .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-stacked .gfield_checkbox {
  display: grid !important;
  grid-template-columns: 1fr !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-2 .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-2 .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-2 .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-2 .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-3 .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-3 .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-3 .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-3 .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-4 .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-4 .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-4 .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-4 .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-auto .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-auto .gfield_checkbox,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-auto .gfield_radio,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-auto .gfield_checkbox {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)) !important;
}

@media (max-width: 900px) {
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-3 .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-3 .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-4 .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-4 .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-3 .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-3 .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-4 .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-4 .gfield_checkbox {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-stacked .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-stacked .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-2 .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-2 .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-3 .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-3 .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-4 .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-4 .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-auto .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-image-choice-layout-auto .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-stacked .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-stacked .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-2 .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-2 .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-3 .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-3 .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-4 .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-4 .gfield_checkbox,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-auto .gfield_radio,
  .fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice.fps-image-choice-layout-auto .gfield_checkbox {
    grid-template-columns: 1fr !important;
  }
}

/* V0.1.9: helper text for checkbox / multi-select questions, matching the Milia-style "Select all that apply" cue. */
.fps-preset-milia-quiz .fps-choice-helper {
  margin: 10px 0 0 !important;
  color: var(--fps-accent) !important;
  font-size: clamp(14px, 1.25vw, 16px) !important;
  font-weight: 800 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.01em !important;
}

.fps-preset-milia-quiz .fps-gfield-image-choice .fps-choice-helper,
.fps-preset-milia-quiz .gfield--type-image_choice .fps-choice-helper {
  margin-top: 12px !important;
}

/* V0.2.0: selectable progress bar styles for the Milia preset. */
.fps-preset-milia-quiz.fps-layout-styled-progress.fps-progress-style-classic .gf_progressbar {
  height: 12px !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress.fps-progress-style-slim .gf_progressbar {
  height: 6px !important;
  border-radius: 999px !important;
  box-shadow: none !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress.fps-progress-style-slim .gf_progressbar_percentage {
  box-shadow: none !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress.fps-progress-style-bold .gf_progressbar {
  height: 18px !important;
  border-radius: 999px !important;
  background: color-mix(in srgb, var(--fps-border) 78%, #fff) !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress.fps-progress-style-bold .gf_progressbar_percentage {
  box-shadow: inset 0 -2px 0 color-mix(in srgb, #000 10%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress.fps-progress-style-soft-glow .gf_progressbar {
  height: 12px !important;
  background: color-mix(in srgb, var(--fps-accent) 12%, #fff) !important;
  box-shadow: 0 12px 28px color-mix(in srgb, var(--fps-accent) 13%, transparent), inset 0 0 0 1px color-mix(in srgb, var(--fps-accent) 18%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress.fps-progress-style-soft-glow .gf_progressbar_percentage {
  box-shadow: 0 8px 20px color-mix(in srgb, var(--fps-accent) 34%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress.fps-progress-style-segmented .gf_progressbar {
  height: 12px !important;
  background:
    repeating-linear-gradient(
      90deg,
      color-mix(in srgb, var(--fps-border) 72%, #fff) 0 42px,
      transparent 42px 48px
    ) !important;
  box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--fps-border) 60%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-styled-progress.fps-progress-style-segmented .gf_progressbar_percentage {
  background:
    repeating-linear-gradient(
      90deg,
      var(--fps-accent) 0 42px,
      color-mix(in srgb, var(--fps-accent) 82%, #fff) 42px 48px
    ) !important;
}

/* V0.2.0: stronger Image Choice cleanup for native GF Image Choice and legacy image-choice markup.
   This removes the remaining nested/pill label look and makes each option one clean visual card. */
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice {
  position: relative !important;
  min-width: 0 !important;
  border-radius: 24px !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice > label,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice > .gform-field-label,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice > label,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice > .gform-field-label,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice > label,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice > .gform-field-label {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
  transform: none !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-legacy-image-choice-field .gchoice {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100% !important;
  padding: 12px !important;
  border: 2px solid var(--fps-border) !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: 0 10px 26px rgba(6, 27, 58, 0.06) !important;
  cursor: pointer !important;
  overflow: hidden !important;
  transition: border-color 180ms ease, background-color 180ms ease, box-shadow 180ms ease, transform 180ms ease !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice:hover,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice:hover,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-legacy-image-choice-field .gchoice:hover {
  border-color: color-mix(in srgb, var(--fps-primary) 62%, var(--fps-border)) !important;
  box-shadow: 0 16px 34px color-mix(in srgb, var(--fps-primary) 12%, transparent) !important;
  transform: translateY(-2px) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice.fps-choice-selected,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice.fps-choice-selected,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-legacy-image-choice-field .gchoice.fps-choice-selected {
  border-color: var(--fps-primary) !important;
  background: color-mix(in srgb, var(--fps-selected-bg) 66%, #fff) !important;
  box-shadow: 0 18px 40px color-mix(in srgb, var(--fps-primary) 18%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice.fps-choice-selected::after,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice.fps-choice-selected::after,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-legacy-image-choice-field .gchoice.fps-choice-selected::after {
  content: '✓' !important;
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  border-radius: 999px !important;
  background: var(--fps-primary) !important;
  color: var(--fps-button-text) !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice img,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice img,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
  border-radius: 18px !important;
  margin: 0 0 14px !important;
  background: linear-gradient(135deg, color-mix(in srgb, var(--fps-border) 38%, #fff), #f8fafc) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice label span,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice label span,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-legacy-image-choice-field .gchoice label span {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 4px 4px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--fps-text) !important;
  font-size: clamp(17px, 1.55vw, 22px) !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  text-align: left !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice label > .gfield-choice-image-wrapper + span,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice label > .gfield-choice-image-no-image + span,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice label > img + span,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice label > img + span {
  margin-top: 14px !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice label::before,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice label::after,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice label::before,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice label::after {
  display: none !important;
  content: none !important;
}


/* V0.2.6: keep the Milia footer step text on the same visual row as Previous/Next. */
.fps-preset-milia-quiz .gform_page_footer {
  grid-template-columns: minmax(0, 1fr) minmax(110px, max-content) minmax(0, 1fr) !important;
  align-items: center !important;
}

.fps-preset-milia-quiz .gform_page_footer .gform_previous_button,
.fps-preset-milia-quiz .gform_page_footer .gform_next_button,
.fps-preset-milia-quiz .gform_page_footer .gform_button,
.fps-preset-milia-quiz .gform_page_footer input[type='submit'],
.fps-preset-milia-quiz .gform_page_footer button[type='submit'],
.fps-preset-milia-quiz .gform_page_footer .fps-step-footer-label {
  grid-row: 1 !important;
  align-self: center !important;
}

.fps-preset-milia-quiz .gform_page_footer .fps-step-footer-label {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  line-height: 1.2 !important;
}

@media (max-width: 640px) {
  .fps-preset-milia-quiz .gform_page_footer {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
  }

  .fps-preset-milia-quiz .gform_page_footer .fps-step-footer-label {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    order: initial !important;
    text-align: center !important;
  }

  .fps-preset-milia-quiz .gform_page_footer .gform_previous_button {
    grid-column: 1 !important;
    grid-row: 2 !important;
    width: 100% !important;
  }

  .fps-preset-milia-quiz .gform_page_footer .gform_next_button,
  .fps-preset-milia-quiz .gform_page_footer .gform_button,
  .fps-preset-milia-quiz .gform_page_footer input[type='submit'],
  .fps-preset-milia-quiz .gform_page_footer button[type='submit'] {
    grid-column: 2 !important;
    grid-row: 2 !important;
    width: 100% !important;
  }
}


/* V0.2.7: clean Milia image-choice cards.
   Gravity Forms native image choices can output their own selected check and inner label/card borders.
   Keep one clear selected border and one check mark only. */
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-outer::before,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-outer::after,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) .gfield-image-choice-wrapper-outer::before,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) .gfield-image-choice-wrapper-outer::after,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-inner::before,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-inner::after,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) .gfield-image-choice-wrapper-inner::before,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) .gfield-image-choice-wrapper-inner::after {
  display: none !important;
  content: none !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice [class*='check-indicator'],
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice [class*='check_indicator'],
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice [class*='check-ind'],
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) [class*='check-indicator'],
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) [class*='check_indicator'],
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) [class*='check-ind'] {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-inner,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) .gfield-image-choice-wrapper-inner {
  margin: 0 !important;
  padding: 4px 4px 2px !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-choice-image-wrapper,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) .gfield-choice-image-wrapper,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-choice-image-no-image,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) .gfield-choice-image-no-image {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-legacy-image-choice-field .gchoice {
  outline: 0 !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice:hover .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) .gchoice:hover .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice:hover,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice:hover,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-legacy-image-choice-field .gchoice:hover {
  border-color: color-mix(in srgb, var(--fps-primary) 48%, var(--fps-border)) !important;
  box-shadow: 0 12px 28px rgba(6, 27, 58, 0.08) !important;
  transform: translateY(-1px) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice.fps-choice-selected .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice input.gfield-choice-input:checked + label .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) .gchoice.fps-choice-selected .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice:not(.fps-legacy-image-choice-field) input.gfield-choice-input:checked + label .gfield-image-choice-wrapper-outer,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .gchoice.fps-choice-selected,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice.fps-choice-selected,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice.fps-legacy-image-choice-field .gchoice.fps-choice-selected {
  border-color: var(--fps-primary) !important;
  background: color-mix(in srgb, var(--fps-selected-bg) 70%, #fff) !important;
  box-shadow: 0 14px 34px color-mix(in srgb, var(--fps-primary) 14%, transparent) !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice {
  position: relative !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice.fps-choice-selected::after,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice.fps-choice-selected::after,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice.fps-choice-selected::after {
  content: '✓' !important;
  position: absolute !important;
  top: 14px !important;
  right: 14px !important;
  z-index: 5 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 32px !important;
  height: 32px !important;
  border: 3px solid var(--fps-container-bg) !important;
  border-radius: 999px !important;
  background: var(--fps-primary) !important;
  color: var(--fps-button-text) !important;
  box-shadow: 0 8px 18px color-mix(in srgb, var(--fps-primary) 26%, transparent) !important;
  font-size: 16px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
}

.fps-preset-milia-quiz.fps-layout-card-choices .gfield--type-image_choice .gchoice:not(.fps-choice-selected)::after,
.fps-preset-milia-quiz.fps-layout-card-choices .fps-gfield-image-choice .gchoice:not(.fps-choice-selected)::after,
.fps-preset-milia-quiz.fps-layout-card-choices .image-choices-field .image-choices-choice:not(.fps-choice-selected)::after {
  display: none !important;
  content: none !important;
}
