.njet-modern-form-fields{
  --njet-field-bg:#fff;
  --njet-field-text:#272626;
  --njet-field-border:#dbe3ee;
  --njet-field-focus:#00b7c2;
  --njet-select-hover:#00b7c2;
  --njet-field-placeholder:#94a3b8;
  --njet-field-radius:12px;
  --njet-field-height:50px;
  --njet-field-label:#272626;
  --njet-field-muted:#64748b;
}
.njet-modern-form-fields .jet-form-builder__label-text{color:var(--njet-field-label);font-weight:600}
.njet-modern-form-fields .jet-form-builder__label{margin-bottom:8px}
.njet-modern-form-fields .jet-form-builder__desc,
.njet-modern-form-fields .jet-form-builder__field-description,
.njet-modern-form-fields .field-description{color:var(--njet-field-muted);font-size:13px;line-height:1.5}

.njet-modern-form-fields input[type="text"],
.njet-modern-form-fields input[type="email"],
.njet-modern-form-fields input[type="tel"],
.njet-modern-form-fields input[type="url"],
.njet-modern-form-fields input[type="number"],
.njet-modern-form-fields input[type="date"],
.njet-modern-form-fields input[type="time"],
.njet-modern-form-fields input[type="datetime-local"],
.njet-modern-form-fields input[type="password"],
.njet-modern-form-fields input[type="search"],
.njet-modern-form-fields select,
.njet-modern-form-fields textarea{
  width:100%;
  min-height:var(--njet-field-height);
  padding:14px 16px;
  border:1px solid var(--njet-field-border);
  border-radius:var(--njet-field-radius);
  background:var(--njet-field-bg);
  color:var(--njet-field-text);
  font:inherit;
  line-height:1.45;
  outline:none;
  box-shadow:none;
  box-sizing:border-box;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.njet-modern-form-fields select{padding-top:0;padding-bottom:0}
.njet-modern-form-fields textarea{min-height:120px;resize:vertical}
.njet-modern-form-fields input::placeholder,
.njet-modern-form-fields textarea::placeholder{color:var(--njet-field-placeholder);opacity:1}
.njet-modern-form-fields input[type="text"]:focus,
.njet-modern-form-fields input[type="email"]:focus,
.njet-modern-form-fields input[type="tel"]:focus,
.njet-modern-form-fields input[type="url"]:focus,
.njet-modern-form-fields input[type="number"]:focus,
.njet-modern-form-fields input[type="date"]:focus,
.njet-modern-form-fields input[type="time"]:focus,
.njet-modern-form-fields input[type="datetime-local"]:focus,
.njet-modern-form-fields input[type="password"]:focus,
.njet-modern-form-fields input[type="search"]:focus,
.njet-modern-form-fields select:focus,
.njet-modern-form-fields textarea:focus{
  border-color:var(--njet-field-focus);
  box-shadow:0 0 0 3px color-mix(in srgb,var(--njet-field-focus) 15%,transparent);
}
.njet-modern-form-fields input:disabled,
.njet-modern-form-fields select:disabled,
.njet-modern-form-fields textarea:disabled{opacity:.65;cursor:not-allowed}
.njet-modern-form-fields input[type="checkbox"],
.njet-modern-form-fields input[type="radio"]{width:18px;height:18px;accent-color:var(--njet-field-focus)}
.njet-modern-form-fields .jet-form-builder-row{min-width:0}
.njet-modern-form-fields .jet-form-builder__field-wrap{min-width:0}

/* Keep the modern field treatment from fighting the custom media uploader. */
.njet-modern-form-fields .nelx-jfb-live-enhanced .jet-form-builder-file-upload__input{min-height:0;padding:0;border:0;box-shadow:none}

/* Nelx Studio Components dark-mode contract. It reacts instantly when the
   global header toggles html[data-nelx-theme="dark"]. */
html[data-nelx-theme="dark"] .njet-modern-form-fields{
  --njet-field-bg:#111827;
  --njet-field-text:#f8fafc;
  --njet-field-border:#334155;
  --njet-field-focus:#00b7c2;
  --njet-field-placeholder:#7c8a9e;
  --njet-field-label:#cbd5e1;
  --njet-field-muted:#94a3b8;
  color-scheme:dark;
}
html[data-nelx-theme="dark"] .njet-modern-form-fields input[type="text"],
html[data-nelx-theme="dark"] .njet-modern-form-fields input[type="email"],
html[data-nelx-theme="dark"] .njet-modern-form-fields input[type="tel"],
html[data-nelx-theme="dark"] .njet-modern-form-fields input[type="url"],
html[data-nelx-theme="dark"] .njet-modern-form-fields input[type="number"],
html[data-nelx-theme="dark"] .njet-modern-form-fields input[type="date"],
html[data-nelx-theme="dark"] .njet-modern-form-fields input[type="time"],
html[data-nelx-theme="dark"] .njet-modern-form-fields input[type="datetime-local"],
html[data-nelx-theme="dark"] .njet-modern-form-fields input[type="password"],
html[data-nelx-theme="dark"] .njet-modern-form-fields input[type="search"],
html[data-nelx-theme="dark"] .njet-modern-form-fields select,
html[data-nelx-theme="dark"] .njet-modern-form-fields textarea{background:#111827!important;border-color:#334155!important;color:#f8fafc!important}


/* Modern select UI. The native select remains in the DOM and keeps its name/value,
   so JetFormBuilder validation, conditions, presets and form submission still use
   the original control as the source of truth. */
.njet-modern-form-fields .njet-modern-select{position:relative;width:100%;min-width:0}
.njet-modern-form-fields .njet-modern-select__native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  min-height:1px!important;
  margin:-1px!important;
  padding:0!important;
  overflow:hidden!important;
  clip:rect(0 0 0 0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
  opacity:0!important;
  pointer-events:none!important;
}
.njet-modern-form-fields .njet-modern-select__trigger{
  width:100%;
  min-height:var(--njet-field-height);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 16px;
  border:1px solid var(--njet-field-border);
  border-radius:var(--njet-field-radius);
  background:var(--njet-field-bg)!important;
  color:var(--njet-field-text)!important;
  font:inherit;
  line-height:1.45;
  text-align:left;
  box-shadow:none;
  outline:none;
  cursor:pointer;
  box-sizing:border-box;
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.njet-modern-form-fields .njet-modern-select__trigger:hover{background:var(--njet-field-bg)!important;color:var(--njet-field-text)!important;border-color:color-mix(in srgb,var(--njet-field-focus) 55%,var(--njet-field-border))!important;box-shadow:none!important}
.njet-modern-form-fields .njet-modern-select.is-open .njet-modern-select__trigger,
.njet-modern-form-fields .njet-modern-select__trigger:focus-visible{
  background:var(--njet-field-bg)!important;
  color:var(--njet-field-text)!important;
  border-color:var(--njet-field-focus)!important;
  box-shadow:0 0 0 3px color-mix(in srgb,var(--njet-field-focus) 15%,transparent)!important;
}
.njet-modern-form-fields .njet-modern-select__value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.njet-modern-form-fields .njet-modern-select__chevron{width:18px;height:18px;display:flex;align-items:center;justify-content:center;color:var(--njet-field-muted);flex:0 0 auto;transition:transform .16s ease}
.njet-modern-form-fields .njet-modern-select__chevron svg{width:18px;height:18px}
.njet-modern-form-fields .njet-modern-select.is-open .njet-modern-select__chevron{transform:rotate(180deg)}
.njet-modern-form-fields .njet-modern-select__menu{
  position:absolute;
  top:calc(100% + 7px);
  left:0;
  right:0;
  z-index:99999;
  max-height:280px;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  touch-action:pan-y;
  padding:6px;
  border:1px solid var(--njet-field-border);
  border-radius:calc(var(--njet-field-radius) - 2px);
  background:var(--njet-field-bg);
  box-shadow:0 14px 35px rgba(15,23,42,.14);
  box-sizing:border-box;
}
.njet-modern-form-fields .njet-modern-select.opens-up .njet-modern-select__menu{top:auto;bottom:calc(100% + 7px)}
.njet-modern-form-fields .njet-modern-select__menu[hidden]{display:none!important}
.njet-modern-form-fields .njet-modern-select__option{
  appearance:none;
  width:100%;
  min-height:38px;
  display:flex;
  align-items:center;
  padding:8px 11px;
  border:0;
  border-radius:8px;
  background:transparent!important;
  color:var(--njet-field-text)!important;
  font:inherit;
  line-height:1.35;
  text-align:left;
  cursor:pointer;
  box-sizing:border-box;
}
.njet-modern-form-fields .njet-modern-select__option:hover,
.njet-modern-form-fields .njet-modern-select__option:focus-visible,
.njet-modern-form-fields .njet-modern-select__option.is-selected:hover,
.njet-modern-form-fields .njet-modern-select__option.is-selected:focus-visible{background:color-mix(in srgb,var(--njet-select-hover) 12%,var(--njet-field-bg))!important;color:var(--njet-field-text)!important;outline:none!important;box-shadow:none!important}
.njet-modern-form-fields .njet-modern-select__option.is-selected{background:color-mix(in srgb,var(--njet-field-focus) 10%,var(--njet-field-bg))!important;color:var(--njet-field-text)!important;font-weight:650}
.njet-modern-form-fields .njet-modern-select__option.is-placeholder{color:var(--njet-field-placeholder)}
.njet-modern-form-fields .njet-modern-select__option:disabled{opacity:.45;cursor:not-allowed}
.njet-modern-form-fields .njet-modern-select.is-disabled .njet-modern-select__trigger{opacity:.65;cursor:not-allowed}

html[data-nelx-theme="dark"] .njet-modern-form-fields .njet-modern-select__menu{
  background:#111827;
  border-color:#334155;
  box-shadow:0 14px 35px rgba(0,0,0,.34);
}
html[data-nelx-theme="dark"] .njet-modern-form-fields .njet-modern-select__option.is-selected{background:color-mix(in srgb,var(--njet-field-focus) 13%,#111827)!important;color:#f8fafc!important}
html[data-nelx-theme="dark"] .njet-modern-form-fields .njet-modern-select__option:hover,
html[data-nelx-theme="dark"] .njet-modern-form-fields .njet-modern-select__option:focus-visible,
html[data-nelx-theme="dark"] .njet-modern-form-fields .njet-modern-select__option.is-selected:hover,
html[data-nelx-theme="dark"] .njet-modern-form-fields .njet-modern-select__option.is-selected:focus-visible{background:color-mix(in srgb,var(--njet-select-hover) 18%,#111827)!important;color:#f8fafc!important}
