.controlled-select{
  position:relative;
  text-transform:none;
  font-weight:500;
  letter-spacing:0;
}
.combo-trigger{
  width:100%;
  min-height:48px;
  border:1px solid rgba(18,26,77,.18);
  border-radius:13px;
  background:#fff;
  color:var(--ink);
  padding:12px 42px 12px 14px;
  text-align:left;
  font-weight:650;
  line-height:1.25;
  position:relative;
}
.combo-trigger:after{
  content:"";
  position:absolute;
  right:16px;
  top:50%;
  width:9px;
  height:9px;
  border-right:2px solid var(--royal);
  border-bottom:2px solid var(--royal);
  transform:translateY(-65%) rotate(45deg);
}
.combo-trigger:disabled{
  background:#f7f3e9;
  color:rgba(34,26,16,.58);
  cursor:not-allowed;
}
.combo-trigger:focus,
.controlled-select:not(.is-invalid) .combo-trigger[aria-expanded="true"]{
  border-color:var(--gold);
  box-shadow:0 0 0 4px rgba(201,165,75,.15);
  outline:0;
}
.controlled-select.is-invalid .combo-trigger{
  border-color:var(--red);
  box-shadow:0 0 0 4px rgba(142,27,46,.12);
}
.combo-menu{
  position:absolute;
  inset-inline:0;
  top:calc(100% + 6px);
  z-index:70;
  background:#fff;
  border:1px solid rgba(18,26,77,.16);
  border-radius:14px;
  box-shadow:0 20px 50px -26px rgba(18,26,77,.42);
  padding:10px;
}
.combo-search{
  width:100%;
  min-height:42px;
  border:1px solid rgba(18,26,77,.16);
  border-radius:10px;
  padding:10px 12px;
  outline:0;
  color:var(--ink);
}
.combo-search:focus{
  border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(201,165,75,.13);
}
.combo-options{
  max-height:250px;
  overflow:auto;
  padding-top:8px;
}
.combo-option{
  width:100%;
  border:0;
  border-radius:10px;
  background:transparent;
  color:var(--ink);
  min-height:40px;
  padding:9px 10px;
  text-align:left;
}
.combo-option:hover,
.combo-option:focus,
.combo-option[aria-selected="true"]{
  background:var(--cream-2);
  color:var(--royal);
  outline:0;
}
.combo-empty{
  color:var(--muted);
  padding:12px 10px;
  font-size:.92rem;
}
.conditional-field[hidden]{
  display:none!important;
}
.field-hint{
  color:var(--muted);
  font-size:.78rem;
  font-weight:600;
  text-transform:none;
  letter-spacing:0;
}
.otp-field{
  grid-column:1/-1;
}
.otp-actions{
  display:grid;
  grid-template-columns:auto minmax(180px,1fr) auto;
  gap:10px;
  align-items:center;
}
.otp-actions .btn{
  min-height:48px;
}
.otp-captcha{
  min-height:0;
  max-width:100%;
  overflow:hidden;
  text-transform:none;
  letter-spacing:0;
}
.otp-captcha:not(:empty){
  margin-top:2px;
}
.otp-captcha iframe{
  max-width:100%;
}
.otp-status{
  margin:2px 0 0;
  color:var(--muted);
  font-size:.86rem;
  font-weight:700;
  text-transform:none;
  letter-spacing:0;
}
.otp-status[data-state="success"]{
  color:#237e4c;
}
.otp-status[data-state="error"]{
  color:var(--red);
}
@media (max-width:520px){
  .combo-menu{
    position:fixed;
    left:14px;
    right:14px;
    top:auto;
    bottom:16px;
    max-height:min(68vh,520px);
  }
  .combo-options{
    max-height:48vh;
  }
  .otp-actions{
    grid-template-columns:1fr;
  }
}
