﻿@charset "UTF-8";
@import url("/fonts/IranSans/init.css");
:root {
  --color-body-background: #fafafa;
  --color-primary: rgb(37, 99, 235);
  --color-secondary: #ea791d;
  --fs-xs3: clamp(0.6875rem, 0.66rem + 0.08vw, 0.75rem); /* 11 → 12 → 12 */
  --fs-xs2: clamp(0.75rem, 0.72rem + 0.1vw, 0.875rem); /* 12 → 14 → 14 */
  --fs-xs: clamp(0.875rem, 0.85rem + 0.1vw, 0.9375rem); /* 14 → 15 → 15 */
  --fs-sm: clamp(0.875rem, 0.85rem + 0.15vw, 1rem); /* 14 → 16 → 18 */
  --fs-md: clamp(1rem, 0.95rem + 0.2vw, 1.125rem); /* 16 → 18 → 20 */
  --fs-lg: clamp(1.125rem, 1.05rem + 0.3vw, 1.25rem); /* 18 → 20 → 22 */
  --fs-xl: clamp(1.125rem, 1rem + 0.4vw, 1.25rem); /* 18 → 20 → 22 */
  --fs-xl2: clamp(1.25rem, 1.1rem + 0.5vw, 1.375rem); /* 20 → 22 → 24 */
  --fs-xl3: clamp(1.375rem, 1.2rem + 0.6vw, 1.5rem); /* 22 → 24 → 26 */
  --fs-xl4: clamp(1.5rem, 1.25rem + 0.8vw, 1.875rem); /* 24 → 30 → 32 */
  --fs-xl5: clamp(1.75rem, 1.4rem + 1vw, 2.25rem); /* 28 → 36 → 40 */
  --fs-xl6: clamp(2rem, 1.6rem + 1.2vw, 2.5rem); /* 32 → 40 → 48 */
  --fs-xl7: clamp(2.25rem, 1.9rem + 1.5vw, 3rem); /* 36 → 48 → 56 */
}

*,
h1, h2, h3, h4, h5, h6,
button,
.tox-dialog, tox-button,
input, select, textarea {
  font-family: IRANSansX;
}

body {
  background: var(--color-body-background);
  font-size: var(--fs-md);
}

.fieldset .form-fields .inputs {
  position: relative;
  text-align: start;
}
.fieldset .form-fields .inputs > input[type=email] {
  text-align: left;
  direction: ltr;
}
.fieldset .form-fields .inputs > input.password ~ .password-eye {
  position: absolute;
  font-size: 16px;
  height: 40px;
  width: 40px;
  top: 0;
  left: 0;
  text-align: center;
  align-content: center;
  z-index: 2;
  cursor: pointer;
  padding-top: 0px;
}
.fieldset .form-fields .inputs > input.password ~ .password-eye .fa-eye {
  display: none;
}
.fieldset .form-fields .inputs > input.password ~ .password-eye.password-eye-open {
  padding-top: 3px;
}
.fieldset .form-fields .inputs > input.password ~ .password-eye.password-eye-open .fa-eye {
  display: inline-block;
}
.fieldset .form-fields .inputs > input.password ~ .password-eye.password-eye-open .fa-eye-closed {
  display: none;
}
.fieldset .form-fields .inputs > input[type=text], .fieldset .form-fields .inputs > input[type=email], .fieldset .form-fields .inputs > input[type=password], .fieldset .form-fields .inputs > input[type=tel] {
  border: 1px solid #bbb;
  transition: border-color 0.2s;
  border-radius: 10px;
  width: 100%;
}
.fieldset .form-fields .inputs > input[type=text] ~ label, .fieldset .form-fields .inputs > input[type=email] ~ label, .fieldset .form-fields .inputs > input[type=password] ~ label, .fieldset .form-fields .inputs > input[type=tel] ~ label {
  position: absolute;
  right: 10px;
  top: 18px;
  transform: translateY(-50%);
  transition: top 0.2s, font-size 0.2s, color 0.2s;
  background: #fff;
  width: fit-content;
  padding: 0px 8px;
  margin: 0;
  pointer-events: none;
  color: #888;
}
.fieldset .form-fields .inputs > input[type=text]:focus, .fieldset .form-fields .inputs > input[type=email]:focus, .fieldset .form-fields .inputs > input[type=password]:focus, .fieldset .form-fields .inputs > input[type=tel]:focus {
  outline: none;
  background: transparent;
  z-index: unset;
  border-color: var(--color-primary);
}
.fieldset .form-fields .inputs > input[type=text]:focus ~ label, .fieldset .form-fields .inputs > input[type=email]:focus ~ label, .fieldset .form-fields .inputs > input[type=password]:focus ~ label, .fieldset .form-fields .inputs > input[type=tel]:focus ~ label {
  color: var(--color-primary);
}
.fieldset .form-fields .inputs > input[type=text]:focus ~ label, .fieldset .form-fields .inputs > input[type=text]:not(:placeholder-shown) ~ label, .fieldset .form-fields .inputs > input[type=text]:focus:not(:placeholder-shown) ~ label, .fieldset .form-fields .inputs > input[type=email]:focus ~ label, .fieldset .form-fields .inputs > input[type=email]:not(:placeholder-shown) ~ label, .fieldset .form-fields .inputs > input[type=email]:focus:not(:placeholder-shown) ~ label, .fieldset .form-fields .inputs > input[type=password]:focus ~ label, .fieldset .form-fields .inputs > input[type=password]:not(:placeholder-shown) ~ label, .fieldset .form-fields .inputs > input[type=password]:focus:not(:placeholder-shown) ~ label, .fieldset .form-fields .inputs > input[type=tel]:focus ~ label, .fieldset .form-fields .inputs > input[type=tel]:not(:placeholder-shown) ~ label, .fieldset .form-fields .inputs > input[type=tel]:focus:not(:placeholder-shown) ~ label {
  top: 0;
  font-size: var(--fs-xs3);
}
.fieldset .form-fields .inputs > input[type=text].input-validation-error, .fieldset .form-fields .inputs > input[type=email].input-validation-error, .fieldset .form-fields .inputs > input[type=password].input-validation-error, .fieldset .form-fields .inputs > input[type=tel].input-validation-error {
  border-color: #C62828;
}
.fieldset .form-fields .inputs > input[type=text].input-validation-error ~ label, .fieldset .form-fields .inputs > input[type=email].input-validation-error ~ label, .fieldset .form-fields .inputs > input[type=password].input-validation-error ~ label, .fieldset .form-fields .inputs > input[type=tel].input-validation-error ~ label {
  color: #C62828;
}
.fieldset .form-fields .inputs.otp {
  display: flex;
  justify-content: center;
  direction: ltr !important;
  gap: 15px;
}
.fieldset .form-fields .inputs.otp input {
  width: 60px;
  height: 60px;
  border-radius: 10px;
  text-align: center;
  font-size: var(--fs-xl2);
  padding: 4px 0 0;
}
.fieldset .form-fields .inputs.otp:after {
  content: none;
}

.btn {
  padding: 8px 16px;
  border-radius: 10px;
  font-size: var(--fs-sm);
}
.btn.btn-primary {
  background: var(--color-primary);
  color: #fff;
}
.btn.btn-outline-primary {
  background: transparent;
  border: 1px solid var(--color-primary);
  color: var(--color-primary);
}