.pxab-phone-field{
  display:flex;
  min-width:0;
  flex-direction:column;
  gap:.35rem;
  font-weight:600;
}

.pxab-phone-field__label{
  display:block;
  margin:0;
  font:inherit;
}

.pxab-phone-field__controls{
  display:grid;
  grid-template-columns:minmax(8.75rem,38%) minmax(0,1fr);
  gap:.5rem;
  min-width:0;
  align-items:stretch;
}

.pxab-phone-field__controls>select,
.pxab-phone-field__controls>input{
  box-sizing:border-box;
  width:100%;
  min-width:0;
  min-height:48px!important;
  height:48px!important;
  margin:0;
  font-size:16px!important;
  line-height:1.25!important;
}

.pxab-phone-field__controls>select{
  padding-top:0!important;
  padding-right:2.25rem!important;
  padding-bottom:0!important;
  padding-left:.75rem!important;
  line-height:46px!important;
  text-align:left;
  text-align-last:left;
  text-overflow:ellipsis;
  white-space:nowrap;
  vertical-align:middle;
}

.pxab-phone-field>.pxab-field-help,
.pxab-phone-field>.pxab-field-error{
  grid-column:1/-1;
}

@media (max-width:480px){
  .pxab-phone-field__controls{
    grid-template-columns:minmax(7.25rem,42%) minmax(0,1fr);
    gap:.4rem;
  }
}

/* v1.0.358: conditional, administrator-styled telephone application button. */
.pxab-phone-field__apply{
  box-sizing:border-box;
  display:inline-flex;
  width:100%;
  min-height:44px;
  margin:.1rem 0 0;
  align-items:center;
  justify-content:center;
  border:1px solid var(--pxab-phone-apply-border,#2563eb)!important;
  border-radius:var(--pxab-phone-apply-radius,12px)!important;
  background:var(--pxab-phone-apply-bg,#2563eb)!important;
  color:var(--pxab-phone-apply-text,#fff)!important;
  font-weight:800;
  line-height:1.25;
  text-align:center;
  cursor:pointer;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}

.pxab-phone-field__apply[hidden]{display:none!important}

.pxab-phone-field__apply:hover,
.pxab-phone-field__apply:focus-visible{
  background:var(--pxab-phone-apply-hover-bg,#1d4ed8)!important;
  color:var(--pxab-phone-apply-hover-text,#fff)!important;
}

.pxab-phone-field__apply:focus-visible{
  outline:3px solid color-mix(in srgb,var(--pxab-phone-apply-border,#2563eb) 34%,transparent);
  outline-offset:2px;
}

.pxab-phone-field__apply:active{transform:translateY(1px)}

@media(prefers-reduced-motion:reduce){
  .pxab-phone-field__apply{transition:none}
}
