*,
*::after,
*::before {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border: 0;
}

span.flag-container {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
}

:host {
  box-sizing: border-box;
  padding: 0;
  margin: 0;
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  background: transparent;
  border: 0;
  margin-right: 16px !important;
  margin-bottom: 12px !important;
  display: inline-flex;
  width: 100%;
  min-width: calc(33.333% - 8px);
  max-width: 100%;
  vertical-align: bottom;
  text-align: left;
}
:host:last-child, :host:last-of-type {
  margin-right: 0 !important;
}
[alignment=form-distribute] > :host:last-of-type:not(:last-child) {
  margin-right: 16px !important;
}
@media (min-width: 36em) {
  :host {
    width: calc(50% - 16px - 3px);
  }
}

:host(.duet-expand) {
  width: 100% !important;
}

:host(.duet-m-0) {
  margin: 0 !important;
}

.duet-phone-input-container {
  position: relative;
  width: 100%;
  height: 100%;
}