/*!********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[4].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[4].use[2]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[4].use[3]!./src/form/style.scss ***!
  \********************************************************************************************************************************************************************************************************************************************/
.form-container {
  width: 100%;
}

.form-container input:-webkit-autofill,
.form-container input:-webkit-autofill:hover,
.form-container input:-webkit-autofill:focus,
.form-container input:-webkit-autofill:active {
  -webkit-background-clip: text;
  -webkit-text-fill-color: var(--text);
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s;
}

.form-container input.disabled:-webkit-autofill,
.form-container input.disabled:-webkit-autofill:hover,
.form-container input.disabled:-webkit-autofill:focus,
.form-container input.disabled:-webkit-autofill:active {
  -webkit-background-clip: text;
  -webkit-text-fill-color: var(--gray);
  -webkit-transition: background-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s;
}

.form-container > * {
  width: 100%;
}

.form-element-group {
  position: relative;
}

.form-element-group .error {
  display: none;
  gap: 6px;
  color: var(--error);
  font-weight: 400;
  font-size: 12.64px;
  line-height: 15px;
  letter-spacing: 0.03em;
  margin-top: 10px;
  text-align: left;
}

.form-element-group .error-visible {
  display: flex;
}

.form-element-group .error svg {
  flex: 0 0 15px;
  position: relative;
  top: -1px;
  stroke: currentColor;
}

.form-element-group .helper-container {
  display: flex;
  gap: 15px;
  margin-top: 10px;
}

.form-element-group .chars-limit {
  text-align: right;
}

.form-element-group .chars-limit, .form-element-group .helper {
  font-style: normal;
  font-weight: 300;
  font-size: 12.64px;
  line-height: 15px;
  letter-spacing: 0.03em;
  color: var(--gray);
}

.form-element-group .chars-limit span::after {
  display: inline;
  content: "/";
}

.form-element-group .helper {
  display: flex;
  gap: 6px;
  text-align: left;
}

.form-element-group .helper svg {
  stroke: var(--gray);
  flex: 0 0 15px;
  position: relative;
  top: -1px;
}

.form-element {
  padding: 16px;
  display: grid;
  gap: 3px;
  transition: border-color ease-out 200ms;
}

.form-element:has(label) {
  padding: 7px 16px;
}

.form-style-primary .form-element {
  background: var(--background);
  border: 1px solid var(--light);
  border-radius: var(--radius, 5px);
}

.form-style-secondary .form-element {
  border: 0;
  border-bottom: 1px solid var(--light);
}

.form-style-primary .form-element:hover {
  border-color: var(--gray);
}

.form-style-primary .form-element-group:has(.error.error-visible) .form-element {
  border-color: var(--error) !important;
}

.form-style-secondary .form-element-group:has(.error.error-visible) .form-element {
  border-bottom-color: var(--error) !important;
}

.form-style-primary .form-element:has(> .form-element-control:focus) {
  border: 1px solid var(--accent);
}

.form-style-secondary .form-element:has(> .form-element-control:focus) {
  border-bottom: 1px solid var(--accent);
}

.form-element > .form-element-control:focus {
  outline: none;
}

.form-element label, .form-upload p {
  font-style: normal;
  font-weight: 400;
  font-size: 12.64px;
  line-height: 15px;
  letter-spacing: 0.03em;
  color: var(--gray);
}

.form-element > .form-element-control {
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
  font-family: inherit;
  font-style: normal;
  font-weight: 300;
  font-size: 16px;
  line-height: 18px;
  letter-spacing: -0.006em;
  color: var(--text);
  width: 100%;
}

.form-element:has(.form-element-control.disabled) {
  border-color: var(--light) !important;
  background-color: transparent !important;
  pointer-events: none;
}

.form-element-control.disabled {
  color: var(--gray) !important;
}

.form-element textarea {
  resize: vertical;
}

.form-element > .form-element-control::-moz-placeholder {
  color: var(--gray);
}

.form-element > .form-element-control::placeholder {
  color: var(--gray);
}

.form-radio-group {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}

.form-radio-group p {
  display: block;
  flex: 1 0 100%;
}

.form-radio-group:has(.disabled) p {
  color: var(--gray);
}

.form-radio-element {
  flex: 0 0 max((100% - 15px * (var(--optionsPerRow, 1) - 1)) / (var(--optionsPerRow, 1)), 144px);
}

.form-checkbox-group {
  margin-bottom: 15px;
}

.form-radio-group input[type=radio] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.form-radio-group input[type=radio] + label,
.form-checkbox-control label {
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 18px;
  letter-spacing: -0.006em;
  color: var(--dark);
  display: flex;
  gap: 10px;
}

.form-checkbox-control p {
  margin: 0;
}

.form-radio-group input[type=radio] + label::before {
  display: block;
  content: "";
  width: 18px;
  height: 18px;
  min-width: 18px;
  position: relative;
  top: -1px;
  background: var(--background);
  border: 1px solid var(--light);
  border-radius: 20px;
  transition: border-color ease-out 200ms;
  cursor: pointer;
}

.form-radio-group input[type=radio] + label:hover::before {
  border: 1px solid var(--gray);
  box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.05);
}

.form-radio-group input[type=radio].disabled + label {
  color: var(--gray);
  pointer-events: none;
}

.form-radio-group input[type=radio].disabled + label::before {
  background: transparent;
  border-color: var(--light);
}

.form-radio-group input[type=radio]:checked + label::before {
  width: 10px;
  min-width: 10px;
  height: 10px;
  border: 5px solid var(--accent);
}

.form-radio-group input[type=radio].disabled:checked + label::before {
  border-color: var(--light);
}

.form-checkbox-control input[type=checkbox] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.form-checkbox-control label::before {
  display: block;
  content: "";
  width: 18px;
  min-width: 18px;
  height: 18px;
  position: relative;
  top: -1px;
  background: var(--background);
  border: 1px solid var(--light);
  border-radius: var(--radius, 5px);
  cursor: pointer;
}

.form-checkbox-control input[type=checkbox]:checked + label::before {
  background: var(--accent);
  border: 1px solid var(--accent);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width=%2720%27 height=%2720%27 viewBox=%270 0 20 20%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath fill-rule=%27evenodd%27 clip-rule=%27evenodd%27 d=%27M20 0H0V20H20V0ZM14.2426 6.11091L9.29289 11.0607L5.75736 7.52513L4.34315 8.93934L9.29289 13.8891L15.6569 7.52513L14.2426 6.11091Z%27 fill=%27%234787F3%27/%3E%3C/svg%3E%0A");
          mask-image: url("data:image/svg+xml,%3Csvg width=%2720%27 height=%2720%27 viewBox=%270 0 20 20%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath fill-rule=%27evenodd%27 clip-rule=%27evenodd%27 d=%27M20 0H0V20H20V0ZM14.2426 6.11091L9.29289 11.0607L5.75736 7.52513L4.34315 8.93934L9.29289 13.8891L15.6569 7.52513L14.2426 6.11091Z%27 fill=%27%234787F3%27/%3E%3C/svg%3E%0A");
}

.form-checkbox-control:has(.disabled) label .form-checkbox-control:has(.disabled) label > * {
  color: var(--gray) !important;
}

.form-checkbox-control:has(.disabled) label::before {
  background: var(--light);
  border-color: var(--light);
}

.form-radio-group:has(.disabled):checked label::before {
  background: var(--light);
  border-color: var(--light);
}

.form-radio-group:has(.disabled) label > * {
  color: var(--gray) !important;
}

.success-message {
  margin-block: 32px;
  display: none;
  gap: 10px;
  font-size: 16px;
  line-height: 18px;
  letter-spacing: -0.006em;
  color: var(--success);
}

.success-message.show {
  display: flex;
}

.success-message.show svg {
  position: relative;
  top: -1px;
}

.form-upload input {
  pointer-events: none;
  position: absolute;
  opacity: 0;
}

.form-upload p {
  margin-bottom: 10px;
}

.form-upload .upload-area {
  border: 1px dashed var(--light);
  padding: 20px;
  border-radius: var(--radius, 5px);
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.form-upload .upload-button {
  background-color: var(--light);
  border-radius: var(--radius, 5px);
  padding: 14px 20px;
  color: var(--accent);
  gap: 10px;
  cursor: pointer;
}

.form-upload .upload-area span {
  color: var(--gray);
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 5px;
}

.form-upload .upload-area span svg {
  width: 24px;
  height: 24px;
}

.form-upload .uploaded-files {
  flex: 1 0 100%;
}

.form-upload .uploaded-files span {
  position: relative;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 10px;
  padding-bottom: 5px;
  border-bottom: 1px solid var(--light);
  margin-bottom: 5px;
  color: var(--text);
}

.form-upload .uploaded-files span::before {
  display: block;
  content: "";
  background-color: var(--accent);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width=%2724%27 height=%2724%27 viewBox=%270 0 24 24%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M2 12L8.66667 18.6666L22 5.33331%27 stroke=%27%234787F3%27 stroke-width=%271.5%27/%3E%3C/svg%3E%0A");
  mask-image: url("data:image/svg+xml,%3Csvg width=%2724%27 height=%2724%27 viewBox=%270 0 24 24%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M2 12L8.66667 18.6666L22 5.33331%27 stroke=%27%234787F3%27 stroke-width=%271.5%27/%3E%3C/svg%3E%0A");
  width: 24px;
  height: 24px;
}

.form-upload .uploaded-files span:last-of-type {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

.form-upload .uploaded-files .remove {
  background-color: var(--light);
  border-radius: var(--radius, 5px);
  padding: 6px 10px;
  margin-top: 10px;
  color: var(--text);
  display: flex;
  gap: 10px;
  align-items: center;
  white-space: nowrap;
  width: -moz-fit-content;
  width: fit-content;
  cursor: pointer;
}

.form-upload .uploaded-files .remove::before {
  display: block;
  content: "";
  background-color: var(--text);
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg width=%2724%27 height=%2724%27 viewBox=%270 0 24 24%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cg clip-path=%27url%28%23clip0_4327_249%29%27%3E%3Cpath d=%27M6.1665 6.16669L11.9998 12M11.9998 12L17.8332 17.8334M11.9998 12L6.1665 17.8334M11.9998 12L17.8332 6.16669%27 stroke=%27black%27 stroke-width=%271.5%27/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id=%27clip0_4327_249%27%3E%3Crect width=%2714%27 height=%2714%27 fill=%27white%27 transform=%27translate%285 5%29%27/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
  mask-image: url("data:image/svg+xml,%3Csvg width=%2724%27 height=%2724%27 viewBox=%270 0 24 24%27 fill=%27none%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cg clip-path=%27url%28%23clip0_4327_249%29%27%3E%3Cpath d=%27M6.1665 6.16669L11.9998 12M11.9998 12L17.8332 17.8334M11.9998 12L6.1665 17.8334M11.9998 12L17.8332 6.16669%27 stroke=%27black%27 stroke-width=%271.5%27/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id=%27clip0_4327_249%27%3E%3Crect width=%2714%27 height=%2714%27 fill=%27white%27 transform=%27translate%285 5%29%27/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
  width: 24px;
  height: 24px;
  position: relative;
  top: -1px;
}

.form-upload:has(.disabled) label {
  pointer-events: none;
}

.form-upload:has(.disabled) .upload-button {
  background-color: var(--light);
  color: var(--gray);
}

.form-upload:has(.disabled) .upload-area span {
  color: var(--light);
}

.form-upload:has(.disabled) .uploaded-files span {
  color: var(--light);
}

.form-upload:has(.disabled) .uploaded-files span::before {
  color: var(--gray);
}

.form-upload:has(.disabled) .remove {
  display: none;
}

/*# sourceMappingURL=style-index.css.map*/