.elementor-3468 .elementor-element.elementor-element-b623a0e{--display:flex;--overlay-opacity:1;border-style:solid;--border-style:solid;border-width:10px 10px 10px 10px;--border-top-width:10px;--border-right-width:10px;--border-bottom-width:10px;--border-left-width:10px;border-color:#CFA75B;--border-color:#CFA75B;--border-radius:0px 0px 0px 0px;}.elementor-3468 .elementor-element.elementor-element-b623a0e:not(.elementor-motion-effects-element-type-background), .elementor-3468 .elementor-element.elementor-element-b623a0e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#00000000;}.elementor-3468 .elementor-element.elementor-element-b623a0e::before, .elementor-3468 .elementor-element.elementor-element-b623a0e > .elementor-background-video-container::before, .elementor-3468 .elementor-element.elementor-element-b623a0e > .e-con-inner > .elementor-background-video-container::before, .elementor-3468 .elementor-element.elementor-element-b623a0e > .elementor-background-slideshow::before, .elementor-3468 .elementor-element.elementor-element-b623a0e > .e-con-inner > .elementor-background-slideshow::before, .elementor-3468 .elementor-element.elementor-element-b623a0e > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#00000000;--background-overlay:'';}.elementor-3468 .elementor-element.elementor-element-b623a0e.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-3468 .elementor-element.elementor-element-0157555{--display:flex;}.elementor-3468 .elementor-element.elementor-element-7b57000{width:100%;max-width:100%;}.elementor-3468 .elementor-element.elementor-element-7b57000 > .elementor-widget-container{margin:-20px -20px -20px -20px;padding:0px 0px 0px 0px;border-style:solid;border-width:4px 4px 4px 4px;border-color:#000000;border-radius:0px 0px 0px 0px;}#elementor-popup-modal-3468 .dialog-widget-content{animation-duration:2s;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-3468{background-color:rgba(0,0,0,.8);background-image:url("https://dev.amourselect.com/wp-content/uploads/2025/08/Black-with-pink-and-gold-background-ChatGPT2.webp");justify-content:center;align-items:center;pointer-events:all;}#elementor-popup-modal-3468 .dialog-message{width:55vw;height:auto;}#elementor-popup-modal-3468 .dialog-close-button{display:flex;}@media(max-width:1024px){.elementor-3468 .elementor-element.elementor-element-7b57000{width:100%;max-width:100%;}}@media(min-width:768px){.elementor-3468 .elementor-element.elementor-element-b623a0e{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-3468 .elementor-element.elementor-element-b623a0e{--width:100%;}}@media(max-width:767px){.elementor-3468 .elementor-element.elementor-element-b623a0e{--width:100%;--min-height:0px;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:7px;--padding-bottom:7px;--padding-left:7px;--padding-right:7px;--z-index:0;}.elementor-3468 .elementor-element.elementor-element-7b57000{width:100%;max-width:100%;}.elementor-3468 .elementor-element.elementor-element-7b57000 > .elementor-widget-container{margin:-17px -17px -17px -17px;}.elementor-3468 .elementor-element.elementor-element-7b57000.elementor-element{--flex-grow:15;}#elementor-popup-modal-3468 .dialog-message{width:100vw;}}/* Start custom CSS for formidable, class: .elementor-element-7b57000 */</div>
</div>

<script>
jQuery(function($){
  // 1) Find the wrapper we added
  var $wrap = $('#as-sortable');
  if (!$wrap.length) return;

  // 2) Inside it, find the REAL container that holds the field rows directly
  //    (Formidable renders .frm_fields_container around the field rows)
  var $list = $wrap.find('.frm_fields_container').first();
  if (!$list.length) {
    // Fallback: if markup is different, use the wrapper itself
    $list = $wrap;
  }

  // 3) Mark ONLY the direct children rows that are Single Line Text fields as sortable items
  $list.children('[id^="frm_field_"][id$="_container"]').filter(function () {
    var $row = $(this);
    // Skip HTML blocks & nav/submit
    if ($row.is('.frm_html_container, .frm_submit, .frm_prev_page, .frm_next_page')) return false;
    // Keep rows that contain a text/number input (your ranking fields)
    return $row.find('input[type="text"], input[type="number"]').length > 0;
  }).addClass('as-item');

  // 4) Renumber on drop
  function renumber(){
    var $items = $list.children('.as-item');
    var n = $items.length;
    $items.each(function(i){
      var rank = n - i; // change to i+1 if you want top=1
      $(this).find('input[type="text"],input[type="number"]').val(rank).trigger('change');
    });
  }

  // 5) Initialize sortable on the container that DIRECTLY owns the rows
  if ($.fn.sortable){
    $list.sortable({
      items: '> .as-item',                 // <-- direct children only
      placeholder: 'as-placeholder',
      forcePlaceholderSize: true,
      distance: 5,
      tolerance: 'pointer',
      cancel: 'input,textarea,select,button,a,label,.frm_submit,.frm_prev_page,.frm_next_page',
      stop: renumber
    });
  }

  renumber();

  // Debug so we can see what it found
  if (window.console){
    console.log('[AS] list container =', $list[0]);
    console.log('[AS] sortable items =', $list.children('.as-item').length);
  }
});
</script>/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-b623a0e *//* ========== AS Sortable Visual Style ========== */

/* Each draggable field row */
.as-ff-list .as-item {
  position: relative;
  border: 2px dotted #cfa75b;     /* gold dotted border */
  border-radius: 10px;
  background: rgba(16, 17, 20, 0.85);
  padding: 12px 18px;
  margin-bottom: 10px;
  transition: all 0.2s ease;
  cursor: move;
}

/* Smooth visual feedback while dragging */
.as-ff-list .as-item.ui-sortable-helper {
  opacity: 0.9;
  box-shadow: 0 0 10px #cfa75b55;
  transform: scale(1.02);
}

/* Placeholder while dragging */
.as-ff-list .as-placeholder {
  border: 1px dashed #cfa75b;
  border-radius: 10px;
  height: 48px;
  background: rgba(207,167,91,0.05);
}

/* Label styling */
.as-ff-list .as-item .frm_primary_label {
  font-weight: 600;
  font-size: 1rem;
  color: #df087e;
  letter-spacing: 0.3px;
  cursor: move;
}

/* Hide the inputs (we store rank only) */
.as-ff-list .as-item input[type="text"],
.as-ff-list .as-item input[type="number"] {
  display: none !important;
}

/* Hover polish */
.as-ff-list .as-item:hover {
  background: rgba(207,167,91,0.1);
  border-color: #dfb95e;
}/* End custom CSS */
/* Start custom CSS *//* Make label act like a big, comfy drag area */
.as-ff-list .as-item .frm_primary_label {
  display: block;
  cursor: move;       /* show move cursor on the label too */
}

/* Keep inputs hidden (we only store the rank) */
.as-ff-list .as-item input[type="text"],
.as-ff-list .as-item input[type="number"] {
  display: none !important;
}/* End custom CSS */