
:root {
  --iti-hover-color: rgba(0, 0, 0, 0.05);
  --iti-border-color: #ccc;
  --iti-country-selector-bg: white;
  --iti-icon-color: #555;
  --iti-spacer-horizontal: 10px;
  --iti-flag-height: calc(var(--iti-flag-width) * 3 / 4);
  --iti-globe-icon-size: 17px;
  --iti-clear-icon-size: 15px;
  --iti-border-width: 1px;
  --iti-arrow-size: 5px;
  --iti-arrow-width: 1.5px;
  --iti-arrow-padding: 7px;
  --iti-mobile-popup-margin: 30px;
  --iti-strict-reject-flash-color: rgba(255, 0, 0, 0.12);
}
.f_error{
  animation: iti-strict-reject-flash 0.3s ease-out both;
}
@keyframes iti-strict-reject-shake {
  10%, 90% {
    transform: translateX(-1px);
  }
  20%, 80% {
    transform: translateX(2px);
  }
  30%, 50%, 70% {
    transform: translateX(-3px);
  }
  40%, 60% {
    transform: translateX(3px);
  }
}
@keyframes iti-strict-reject-flash {
  40% {
    background-color: var(--iti-strict-reject-flash-color);
  }
}

.field-wrapper {
  position: relative;
  width: 100%;
}

.field-wrapper input {
  width: 100%;
  padding: 10px 0 6px;
  border: none;
  border-bottom: 2px solid #ccc;
  outline: none;
  font-size: 16px;
  transition: border-color .2s;
}

.field-wrapper input.error {
  border-bottom-color: #e53935;
}

.field-error {
  position: absolute;
  right: 0;
  bottom: 6px; /* всередині інпута */
  font-size: 12px;
  color: #e53935;
  opacity: 0;
  transform: translateY(2px);
  transition: opacity .2s ease, transform .2s ease;
  pointer-events: none;
  /*background: white;  щоб текст не зливався */
  padding-left: 4px;
}
.field-error.visible {
  opacity: 1;
  transform: translateY(0);
}

