/* YCW RC39 | Checkout telephone input: legacy intl-tel-input and modern ITI.
   Maintain native WHMCS country-change, validation and submission actions.
   Only style a field once the telephone plugin has wrapped it. */
#order-ycw-of.ycw-checkout-page .form-group.prepend-icon:has(> .intl-tel-input,> .iti) {
  position:relative;
  min-width:0;
}
#order-ycw-of.ycw-checkout-page .form-group.prepend-icon:has(> .intl-tel-input,> .iti) > .field-icon {
  display:none!important; /* Never place our old telephone icon underneath the country selector. */
}
#order-ycw-of.ycw-checkout-page :is(.intl-tel-input,.iti) {
  display:block!important;
  position:relative;
  width:100%!important;
  max-width:100%;
  min-width:0;
  margin:0!important;
  font-family:inherit;
}
#order-ycw-of.ycw-checkout-page :is(.intl-tel-input,.iti) > input:is(#inputPhone,#inputDCPhone,[type='tel']) {
  display:block;
  box-sizing:border-box!important;
  width:100%!important;
  min-width:0;
  height:52px!important;
  min-height:52px;
  line-height:1.35!important;
  /* Computed from actual country control width, including variable-length dial codes. */
  padding-left:var(--ycw39-tel-offset,120px)!important;
  padding-right:16px!important;
  text-indent:0!important;
  text-align:left!important;
  direction:ltr;
  font:500 14px/1.35 Poppins,Arial,sans-serif;
  border-radius:13px!important;
  transition:border-color .16s ease, box-shadow .16s ease;
}
#order-ycw-of.ycw-checkout-page :is(.intl-tel-input,.iti) > input:is(#inputPhone,#inputDCPhone,[type='tel'])::placeholder {
  opacity:1!important;
}
/* Older intl-tel-input markup */
#order-ycw-of.ycw-checkout-page .intl-tel-input :is(.flag-container,.selected-flag) {
  height:100%;
  box-sizing:border-box;
}
#order-ycw-of.ycw-checkout-page .intl-tel-input .flag-container {
  position:absolute!important;
  left:0!important;right:auto!important;top:0;bottom:0;
  z-index:3;
}
#order-ycw-of.ycw-checkout-page .intl-tel-input .selected-flag {
  position:relative;
  display:flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:7px;
  width:max-content;
  min-width:73px;
  padding:0 13px!important;
  border-right:1px solid #e2e8f0;
  border-radius:13px 0 0 13px;
  white-space:nowrap;
  background:#f7f9fc;
}
#order-ycw-of.ycw-checkout-page .intl-tel-input .selected-flag .iti-flag,
#order-ycw-of.ycw-checkout-page .intl-tel-input .selected-flag .selected-dial-code,
#order-ycw-of.ycw-checkout-page .intl-tel-input .selected-flag .iti-arrow {
  position:static!important;
  float:none!important;
  margin:0!important;
  transform:none!important;
  flex-shrink:0;
}
#order-ycw-of.ycw-checkout-page .intl-tel-input .selected-flag .selected-dial-code {
  padding:0!important;
  font:600 13px/1.35 Poppins,Arial,sans-serif;
  color:#273955;
}
#order-ycw-of.ycw-checkout-page .intl-tel-input .selected-flag .iti-arrow {
  margin-left:2px!important;
  border-top-color:#63748d;
}
/* Modern intl-tel-input markup */
#order-ycw-of.ycw-checkout-page .iti :is(.iti__flag-container,.iti__selected-country) {
  box-sizing:border-box;
  height:100%;
}
#order-ycw-of.ycw-checkout-page .iti .iti__flag-container {
  left:0;right:auto;
  z-index:3;
}
#order-ycw-of.ycw-checkout-page .iti .iti__selected-country {
  padding:0 13px!important;
  display:flex;align-items:center;justify-content:center;gap:7px;
  border-right:1px solid #e2e8f0;
  border-radius:13px 0 0 13px;
  background:#f7f9fc;
  color:#273955;
  white-space:nowrap;
}
#order-ycw-of.ycw-checkout-page .iti :is(.iti__selected-country-primary,.iti__selected-dial-code) {
  color:inherit;
}
#order-ycw-of.ycw-checkout-page .iti .iti__selected-country:focus-visible,
#order-ycw-of.ycw-checkout-page .intl-tel-input .selected-flag:focus-visible {
  outline:2px solid #ff5900;outline-offset:-2px;
}
/* Country pickers remain scrollable and usable in small viewports. */
#order-ycw-of.ycw-checkout-page .intl-tel-input .country-list,
#order-ycw-of.ycw-checkout-page .iti .iti__country-list,
#order-ycw-of.ycw-checkout-page .iti .iti__dropdown-content {
  max-width:min(380px,calc(100vw - 40px));
  max-height:min(280px,55vh);
  overflow-y:auto;
  border:1px solid #e0e8f2;
  border-radius:12px;
  background:#fff;
  box-shadow:0 15px 40px rgba(9,22,46,.15);
  z-index:10015;
}
#order-ycw-of.ycw-checkout-page .intl-tel-input :is(.country,.country-name,.dial-code),
#order-ycw-of.ycw-checkout-page .iti :is(.iti__country,.iti__country-name,.iti__dial-code) {
  color:#263953;
}
#order-ycw-of.ycw-checkout-page .intl-tel-input .country.highlight,
#order-ycw-of.ycw-checkout-page .iti .iti__country.iti__highlight {
  background:#fff0e5;
}
html[data-ycw-theme='dark'] body.ycw-portal #order-ycw-of.ycw-checkout-page :is(.intl-tel-input,.iti) > input:is(#inputPhone,#inputDCPhone,[type='tel']) {
  background:#17263b!important;
  color:#edf4ff!important;
  border-color:#4a5e7b!important;
  caret-color:#ff995d;
}
html[data-ycw-theme='dark'] body.ycw-portal #order-ycw-of.ycw-checkout-page :is(.intl-tel-input,.iti) > input:is(#inputPhone,#inputDCPhone,[type='tel'])::placeholder {color:#b8c7da!important;}
html[data-ycw-theme='dark'] body.ycw-portal #order-ycw-of.ycw-checkout-page :is(.intl-tel-input .selected-flag,.iti .iti__selected-country) {
  background:#24354d!important;
  color:#e7f1fd!important;
  border-color:#465a74!important;
}
html[data-ycw-theme='dark'] body.ycw-portal #order-ycw-of.ycw-checkout-page .intl-tel-input .selected-flag .selected-dial-code {color:#e7f1fd!important;}
html[data-ycw-theme='dark'] body.ycw-portal #order-ycw-of.ycw-checkout-page .intl-tel-input .selected-flag .iti-arrow {border-top-color:#becde0!important;}
html[data-ycw-theme='dark'] body.ycw-portal #order-ycw-of.ycw-checkout-page :is(.intl-tel-input .country-list,.iti .iti__country-list,.iti .iti__dropdown-content) {
  background:#1b293d!important;
  border-color:#455975!important;
  color:#edf4ff!important;
  box-shadow:0 15px 45px rgba(0,0,0,.35)!important;
}
html[data-ycw-theme='dark'] body.ycw-portal #order-ycw-of.ycw-checkout-page :is(.intl-tel-input .country,.intl-tel-input .country-name,.intl-tel-input .dial-code,.iti .iti__country,.iti .iti__country-name,.iti .iti__dial-code) {
  color:#e7f1fd!important;
}
html[data-ycw-theme='dark'] body.ycw-portal #order-ycw-of.ycw-checkout-page :is(.intl-tel-input .country.highlight,.iti .iti__country.iti__highlight) {
  background:#34465c!important;
}
html[data-ycw-theme='dark'] body.ycw-portal #order-ycw-of.ycw-checkout-page :is(.intl-tel-input,.iti) > input:is(#inputPhone,#inputDCPhone,[type='tel']):focus {
  border-color:#ff985c!important;
  box-shadow:0 0 0 3px rgba(255,152,92,.18)!important;
}
@media(max-width:767px) {
  #order-ycw-of.ycw-checkout-page .form-group.prepend-icon:has(> .intl-tel-input,> .iti) {width:100%;max-width:100%;}
  #order-ycw-of.ycw-checkout-page :is(.intl-tel-input,.iti) > input:is(#inputPhone,#inputDCPhone,[type='tel']) {font-size:16px!important;}
}
