/* Ezy Web Pro — top-tier form controls for the funnel forms (build 183). */
.ezy-funnel input, .ezy-funnel textarea {
  width: 100%; box-sizing: border-box; border: 1.5px solid #e4e9e8; border-radius: 12px;
  padding: 13px 14px; font-family: inherit; font-size: 1rem; color: #141420; background: #fff;
  transition: border-color .15s, box-shadow .15s;
}
.ezy-funnel input::placeholder, .ezy-funnel textarea::placeholder { color: #9aa6b2; }
.ezy-funnel input:focus, .ezy-funnel textarea:focus { outline: 0; border-color: #1A5653; box-shadow: 0 0 0 3px rgba(26,86,83,.12); }

/* ── custom dropdown ── */
.ezy-sel { position: relative; }
.ezy-sel > select { position: absolute; opacity: 0; pointer-events: none; height: 0; width: 0; }
.ezy-sel-btn {
  width: 100%; box-sizing: border-box; display: flex; align-items: center; gap: 10px;
  border: 1.5px solid #e4e9e8; border-radius: 12px; padding: 13px 14px; background: #fff;
  font-family: inherit; font-size: 1rem; color: #141420; cursor: pointer; text-align: left;
  transition: border-color .15s, box-shadow .15s;
}
.ezy-sel-btn:hover { border-color: #cdd7d5; }
.ezy-sel.open .ezy-sel-btn { border-color: #1A5653; box-shadow: 0 0 0 3px rgba(26,86,83,.12); }
.ezy-sel-lbl { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.ezy-sel-lbl.ezy-ph { color: #9aa6b2; }
.ezy-sel-chev { flex: none; color: #64748b; display: inline-flex; transition: transform .2s ease, color .15s; }
.ezy-sel.open .ezy-sel-chev { transform: rotate(180deg); color: #1A5653; }

.ezy-sel-panel {
  position: absolute; z-index: 60; top: calc(100% + 6px); left: 0; right: 0;
  background: #fff; border: 1px solid #e4e9e8; border-radius: 14px;
  box-shadow: 0 18px 44px -12px rgba(15,23,42,.28), 0 2px 8px rgba(15,23,42,.06);
  padding: 6px; max-height: 320px; display: flex; flex-direction: column;
  animation: ezySelIn .16s ease;
}
.ezy-sel-panel[hidden] { display: none; }
@keyframes ezySelIn { from { opacity: 0; transform: translateY(-6px); } }
.ezy-sel-search { padding: 4px 4px 8px; }
.ezy-sel-search input { width: 100%; box-sizing: border-box; border: 1.5px solid #e4e9e8; border-radius: 10px; padding: 9px 11px; font: inherit; font-size: .95rem; }
.ezy-sel-search input:focus { outline: 0; border-color: #1A5653; box-shadow: 0 0 0 3px rgba(26,86,83,.1); }
.ezy-sel-list { overflow-y: auto; -webkit-overflow-scrolling: touch; }
.ezy-sel-list::-webkit-scrollbar { width: 8px; } .ezy-sel-list::-webkit-scrollbar-thumb { background: #d7dedc; border-radius: 8px; border: 2px solid #fff; }
.ezy-sel-opt {
  display: flex; align-items: center; gap: 8px; padding: 11px 12px; border-radius: 10px;
  font-size: .97rem; color: #1f2937; cursor: pointer; line-height: 1.25;
}
.ezy-sel-opt::before {
  content: ""; flex: none; width: 18px; height: 18px; border-radius: 50%; border: 2px solid #e4e9e8; transition: all .12s;
  background: center/11px no-repeat;
}
.ezy-sel-opt:hover { background: #f0f7f5; }
.ezy-sel-opt.on { color: #0f3b38; font-weight: 700; background: #e6f2ef; }
.ezy-sel-opt.on::before { border-color: #1A5653; background-color: #1A5653; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 6 9 17l-5-5'/%3E%3C/svg%3E"); }
.ezy-sel-opt.ezy-ph { color: #9aa6b2; } .ezy-sel-opt.ezy-ph::before { display: none; }
.ezy-sel-empty { padding: 14px; text-align: center; color: #9aa6b2; font-size: .9rem; }

/* conditional fields animate in */
.ezy-cond { animation: ezyCondIn .2s ease; }
@keyframes ezyCondIn { from { opacity: 0; transform: translateY(-4px); } }
