:root {
  --PhoneInput-color--focus: #03b2cb;
  --PhoneInputInternationalIconPhone-opacity: .8;
  --PhoneInputInternationalIconGlobe-opacity: .65;
  --PhoneInputCountrySelect-marginRight: .35em;
  --PhoneInputCountrySelectArrow-width: .3em;
  --PhoneInputCountrySelectArrow-marginLeft: var(--PhoneInputCountrySelect-marginRight);
  --PhoneInputCountrySelectArrow-borderWidth: 1px;
  --PhoneInputCountrySelectArrow-opacity: .45;
  --PhoneInputCountrySelectArrow-color: currentColor;
  --PhoneInputCountrySelectArrow-color--focus: var(--PhoneInput-color--focus);
  --PhoneInputCountrySelectArrow-transform: rotate(45deg);
  --PhoneInputCountryFlag-aspectRatio: 1.5;
  --PhoneInputCountryFlag-height: 1em;
  --PhoneInputCountryFlag-borderWidth: 1px;
  --PhoneInputCountryFlag-borderColor: #00000080;
  --PhoneInputCountryFlag-borderColor--focus: var(--PhoneInput-color--focus);
  --PhoneInputCountryFlag-backgroundColor--loading: #0000001a;
}

.PhoneInput {
  align-items: center;
  display: flex;
}

.PhoneInputInput {
  flex: 1;
  min-width: 0;
}

.PhoneInputCountryIcon {
  width: calc(var(--PhoneInputCountryFlag-height) * var(--PhoneInputCountryFlag-aspectRatio));
  height: var(--PhoneInputCountryFlag-height);
}

.PhoneInputCountryIcon--square {
  width: var(--PhoneInputCountryFlag-height);
}

.PhoneInputCountryIcon--border {
  background-color: var(--PhoneInputCountryFlag-backgroundColor--loading);
  box-shadow: 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor), inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor);
}

.PhoneInputCountryIconImg {
  width: 100%;
  height: 100%;
  display: block;
}

.PhoneInputInternationalIconPhone {
  opacity: var(--PhoneInputInternationalIconPhone-opacity);
}

.PhoneInputInternationalIconGlobe {
  opacity: var(--PhoneInputInternationalIconGlobe-opacity);
}

.PhoneInputCountry {
  margin-right: var(--PhoneInputCountrySelect-marginRight);
  align-self: stretch;
  align-items: center;
  display: flex;
  position: relative;
}

.PhoneInputCountrySelect {
  z-index: 1;
  opacity: 0;
  cursor: pointer;
  border: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.PhoneInputCountrySelect[disabled], .PhoneInputCountrySelect[readonly] {
  cursor: default;
}

.PhoneInputCountrySelectArrow {
  content: "";
  width: var(--PhoneInputCountrySelectArrow-width);
  height: var(--PhoneInputCountrySelectArrow-width);
  margin-left: var(--PhoneInputCountrySelectArrow-marginLeft);
  border-style: solid;
  border-color: var(--PhoneInputCountrySelectArrow-color);
  border-top-width: 0;
  border-bottom-width: var(--PhoneInputCountrySelectArrow-borderWidth);
  border-left-width: 0;
  border-right-width: var(--PhoneInputCountrySelectArrow-borderWidth);
  transform: var(--PhoneInputCountrySelectArrow-transform);
  opacity: var(--PhoneInputCountrySelectArrow-opacity);
  display: block;
}

.PhoneInputCountrySelect:focus + .PhoneInputCountryIcon + .PhoneInputCountrySelectArrow {
  opacity: 1;
  color: var(--PhoneInputCountrySelectArrow-color--focus);
}

.PhoneInputCountrySelect:focus + .PhoneInputCountryIcon--border {
  box-shadow: 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus), inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus);
}

.PhoneInputCountrySelect:focus + .PhoneInputCountryIcon .PhoneInputInternationalIconGlobe {
  opacity: 1;
  color: var(--PhoneInputCountrySelectArrow-color--focus);
}

:root {
  --PhoneInput-color--focus: transparent;
  --PhoneInputCountrySelect-marginRight: 0;
  --PhoneInputCountrySelectArrow-width: 0;
  --PhoneInputCountrySelectArrow-borderWidth: 0;
}

@font-face {
  font-family: euclid;
  src: local(euclid), url(/static/font/EuclidCircularBRegular.30fb05c1.ttf) format("woff");
}

@font-face {
  font-family: euclid;
  src: local(euclid), url(/static/font/EuclidCircularBBold.2a200f7b.ttf) format("woff");
  font-weight: 700;
  font-style: normal;
}

@font-face {
  font-family: euclid;
  src: local(euclid), url(/static/font/EuclidCircularBSemiBold.8dcaa886.ttf) format("woff");
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: euclid;
  src: local(euclid), url(/static/font/EuclidCircularBMedium.a9780072.ttf) format("woff");
  font-weight: 500;
  font-style: normal;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body, input {
  font-family: Euclid Circular B, euclid;
}

:root {
  --toastify-color-info: #0e3469;
  --toastify-color-success: #429580;
  --toastify-color-warning: #fbbf24;
  --toastify-color-error: #ec745e;
}

* {
  scrollbar-width: thin;
  scrollbar-color: #7d7d7d #fff;
}

body.custom-scroll::-webkit-scrollbar {
  width: 12px;
}

::-webkit-scrollbar-track {
  background: #fff;
}

::-webkit-scrollbar-thumb {
  background-color: #7d7d7d;
  border: 3px solid #fff;
  border-radius: 8px;
}

* {
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

li {
  list-style: none;
}

a {
  text-decoration: none;
}

.zoneAnnotation {
  color: #ebf4f1;
  text-align: center;
  text-shadow: 0 0 5px #000, 0 0 20px #000;
  width: max-content;
  font-family: Euclid Flex, euclid;
  font-size: 24px;
  font-weight: 500;
  line-height: 21px;
}

.circleAnnotation {
  background-color: #ec745e;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 15px;
  border-radius: 50% !important;
}

.zonePoint {
  cursor: pointer;
  svg-box-shadow: 1px 2px 4px 0px #00000040;
  width: 24px;
  height: 24px;
}

body {
  font-family: Euclid Circular B, euclid;
}

input[type="time"]::-webkit-datetime-edit-ampm-field {
  display: none;
}

.shift-pressed {
  cursor: crosshair;
}

@keyframes pulse-animation {
  0% {
    opacity: .6;
    transform: scale(1);
  }

  50% {
    opacity: 0;
    transform: scale(1.15, 1.5);
  }

  100% {
    opacity: 0;
    transform: scale(1.15, 1.5);
  }
}

@keyframes dotty {
  0% {
    content: "";
  }

  25% {
    content: ".";
  }

  50% {
    content: "..";
  }

  75% {
    content: "...";
  }

  100% {
    content: "";
  }
}

.ellipsis-animation:after {
  content: "";
  animation: 1.5s step-end infinite dotty;
  display: inline-block;
}

