@charset "UTF-8";
/** 버튼 기본 ****************************************/
/** 버튼 border-radius 타입 ****************************************/
/** 버튼 배경 유무 ****************************************/
/** 텍스트 + 아이콘 버튼 ****************************************/
/**  자주 사용하는 버튼 ****************************************/
.language-selector {
  position: relative;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.language-selector .bx-flag {
  display: inline-block;
  width: 22px;
  height: 15px;
  background-image: url("/js/lib/intl-tel-input/img/flags.png");
  background-repeat: no-repeat;
  background-size: 5652px 15px;
  background-position: 0 0;
  vertical-align: middle;
  -webkit-box-shadow: none;
          box-shadow: none;
  background-color: transparent;
}
.language-selector .bx-flag.bx-flag-kr {
  height: 14px;
  background-position: -2786px 0px;
}
.language-selector .bx-flag.bx-flag-us {
  height: 11px;
  background-position: -5263px 0px;
}
.language-selector .bx-flag.bx-flag-jp {
  height: 14px;
  background-position: -2611px 0px;
}
.language-selector .bx-flag.bx-flag-cn {
  height: 14px;
  background-position: -1049px 0px;
}
.language-selector .bx-flag.bx-flag-de {
  height: 12px;
  background-position: -1269px 0px;
}
.language-selector .bx-flag.bx-flag-gb {
  height: 10px;
  background-position: -1775px 0px;
}
.language-selector .bx-flag.bx-flag-tw {
  height: 14px;
  background-position: -5131px 0px;
}
.language-selector .bx-flag.bx-flag-vn {
  height: 14px;
  background-position: -5434px 0px;
}
.language-selector .bx-flag.bx-flag-th {
  height: 14px;
  background-position: -4911px 0px;
}
.language-selector .bx-flag.bx-flag-sg {
  height: 14px;
  background-position: -4449px 0px;
}
.language-selector .bx-flag.bx-flag-fr {
  height: 14px;
  background-position: -1731px 0px;
}
.language-selector .bx-flag.bx-flag-au {
  height: 10px;
  background-position: -286px 0px;
}
.language-selector .bx-flag.bx-flag-ca {
  height: 10px;
  background-position: -834px 0px;
}
.language-selector .bx-flag.bx-flag-nz {
  height: 10px;
  background-position: -3855px 0px;
}
.language-selector .bx-flag.bx-flag-hk {
  height: 14px;
  background-position: -2171px 0px;
}
.language-selector .bx-flag.bx-flag-my {
  height: 10px;
  background-position: -3578px 0px;
}
.language-selector .bx-flag.bx-flag-ph {
  height: 10px;
  background-position: -3987px 0px;
}
.language-selector .bx-flag.bx-flag-id {
  height: 14px;
  background-position: -2325px 0px;
}
.language-selector .bx-flag.bx-flag-it {
  height: 14px;
  background-position: -2523px 0px;
}
.language-selector .bx-flag.bx-flag-es {
  height: 14px;
  background-position: -1555px 0px;
}
.language-selector .bx-flag.bx-flag-nl {
  height: 14px;
  background-position: -3752px 0px;
}
.language-selector .bx-flag.bx-flag-ch {
  width: 15px;
  height: 15px;
  background-position: -944px 0px;
}
.language-selector .bx-flag.bx-flag-se {
  height: 13px;
  background-position: -4427px 0px;
}
.language-selector .bx-flag.bx-flag-no {
  height: 15px;
  background-position: -3774px 0px;
}
.language-selector .bx-flag.bx-flag-dk {
  height: 15px;
  background-position: -1335px 0px;
}
.language-selector .bx-flag.bx-flag-fi {
  height: 12px;
  background-position: -1621px 0px;
}
.language-selector .bx-flag.bx-flag-be {
  width: 18px;
  height: 15px;
  background-position: -440px 0px;
}
.language-selector .bx-flag.bx-flag-at {
  height: 14px;
  background-position: -264px 0px;
}
.language-selector .bx-flag.bx-flag-pt {
  height: 14px;
  background-position: -4141px 0px;
}
.language-selector .bx-flag.bx-flag-gr {
  height: 14px;
  background-position: -2039px 0px;
}
.language-selector .bx-flag.bx-flag-pl {
  height: 13px;
  background-position: -4031px 0px;
}
.language-selector .bx-flag.bx-flag-cz {
  height: 14px;
  background-position: -1247px 0px;
}
.language-selector .bx-flag.bx-flag-hu {
  height: 10px;
  background-position: -2281px 0px;
}
.language-selector .bx-flag.bx-flag-ru {
  height: 14px;
  background-position: -4295px 0px;
}
.language-selector .bx-flag.bx-flag-in {
  height: 14px;
  background-position: -2413px 0px;
}
.language-selector .bx-flag.bx-flag-br {
  height: 14px;
  background-position: -680px 0px;
}
.language-selector .bx-flag.bx-flag-mx {
  height: 12px;
  background-position: -3556px 0px;
}
.language-selector .bx-flag.bx-flag-ar {
  height: 13px;
  background-position: -220px 0px;
}
.language-selector .bx-flag.bx-flag-cl {
  height: 14px;
  background-position: -1005px 0px;
}
.language-selector .bx-flag.bx-flag-za {
  height: 14px;
  background-position: -5588px 0px;
}
.language-selector .bx-flag.bx-flag-eg {
  height: 14px;
  background-position: -1489px 0px;
}
.language-selector .bx-flag.bx-flag-ae {
  height: 10px;
  background-position: -44px 0px;
}
.language-selector .bx-flag.bx-flag-sa {
  height: 14px;
  background-position: -4339px 0px;
}
.language-selector .bx-flag.bx-flag-il {
  height: 15px;
  background-position: -2369px 0px;
}
.language-selector .bx-flag.bx-flag-tr {
  height: 14px;
  background-position: -5065px 0px;
}
.language-selector .bx-flag.bx-flag-eu {
  height: 14px;
  background-position: -1599px 0px;
}
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
  .language-selector .bx-flag {
    background-image: url("/js/lib/intl-tel-input/img/flags@2x.png");
  }
}
.language-selector.is-disabled {
  opacity: 0.6;
  pointer-events: none;
}
.language-selector.is-open .language-selector-dropdown-menu {
  display: block;
}
.language-selector.is-open .dropdown-arrow {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

.language-selector-dropdown .language-selector-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 10px;
  padding: 10px 15px;
  border: 1px solid var(--input-stroke-color);
  border-radius: 6px;
  background: var(--bg-color);
  cursor: pointer;
  min-width: 150px;
}
.language-selector-dropdown .language-selector-head:hover {
  border-color: var(--main-green-color);
}
.language-selector-dropdown .language-selector-head:focus {
  outline: none;
  border-color: var(--main-green-color);
}
.language-selector-dropdown .language-selector-head .selected-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  font-size: 14px;
  color: var(--main-text-color);
}
.language-selector-dropdown .language-selector-head .selected-text .bx-flag {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.language-selector-dropdown .language-selector-head .dropdown-arrow {
  width: 10px;
  height: 10px;
  border-right: 2px solid var(--sub-text-color);
  border-bottom: 2px solid var(--sub-text-color);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: -webkit-transform 0.2s ease;
  transition: -webkit-transform 0.2s ease;
  transition: transform 0.2s ease;
  transition: transform 0.2s ease, -webkit-transform 0.2s ease;
}
.language-selector-dropdown .language-selector-dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  margin-top: 4px;
  background: var(--bg-color);
  border: 1px solid var(--input-stroke-color);
  border-radius: 6px;
  -webkit-box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
          box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  z-index: 100;
  max-height: 200px;
  overflow-y: auto;
}
.language-selector-dropdown .language-list {
  list-style: none;
  margin: 0;
  padding: 4px 0;
}
.language-selector-dropdown .language-option {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 10px 15px;
  cursor: pointer;
  -webkit-transition: background 0.15s ease;
  transition: background 0.15s ease;
}
.language-selector-dropdown .language-option:hover {
  background: var(--input-bg-hover-color);
}
.language-selector-dropdown .language-option.is-selected {
  background: var(--main-green-color-light);
  color: var(--main-green-color);
}
.language-selector-dropdown .language-option .option-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  font-size: 14px;
}
.language-selector-dropdown .language-option .option-text .bx-flag {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

.language-selector-buttons .language-btn-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.language-selector-buttons .language-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  padding: 8px 16px;
  border: 1px solid var(--input-stroke-color);
  border-radius: 20px;
  background: var(--bg-color);
  font-size: 14px;
  color: var(--main-text-color);
  cursor: pointer;
  -webkit-transition: all 0.15s ease;
  transition: all 0.15s ease;
}
.language-selector-buttons .language-btn:hover {
  border-color: var(--main-green-color);
  background: var(--input-bg-hover-color);
}
.language-selector-buttons .language-btn.is-selected {
  border-color: var(--main-green-color);
  background: var(--main-green-color);
  color: var(--white-color);
}
.language-selector-buttons .language-btn .bx-flag {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}