@charset "UTF-8";
/* Play */
@font-face {
  font-family: "Russo One";
  src: url("/tml/fonts/RussoOne/RussoOne-Regular.ttf");
}
@font-face {
  font-family: "Play";
  src: url("/tml/fonts/Play/Play-Regular.ttf");
}
@font-face {
  font-family: "Play";
  src: url("/tml/fonts/Play/Play-Bold.ttf");
  font-weight: 700;
}
/* Базовые стили */
*,
*::after,
*::before {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: "Play";
}

body {
  position: relative;
}

/* Ссылки */
a,
a:link,
a:visited,
a:hover {
  text-decoration: none;
}

/* Контент */
aside,
nav,
footer,
header,
section,
main {
  display: block;
}

ul,
ul li,
ol,
ol li {
  list-style: none;
}

img,
svg {
  max-width: 100%;
  height: auto;
}

/* Формы */
input,
textarea,
button,
select,
button {
  display: block;
  box-shadow: none;
  background: none;
  outline: none;
  border: none;
}
input::-ms-clear,
textarea::-ms-clear,
button::-ms-clear,
select::-ms-clear,
button::-ms-clear {
  display: none;
}

button {
  cursor: pointer;
}

/* Переменные для стилей */
/* Цвета */
/* Размеры */
/* Миксины */
/* Списки классов для цветов */
:root {
  /* shadows */
  --shadow-block: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  --color-primary: #212656;
  --color-secondary: #14278B;
  --color-light: #FFFFFF;
  --color-light-hover: #F0F2F6;
  --color-dark: #000000;
  --color-neutral-100: #F2F1FB;
  --color-neutral-200: #E2E2E2;
  --color-neutral-300: #A4A4A4;
  --color-neutral-400: #C2C2C2;
  --color-neutral-500: #B2B2B2;
  --color-neutral-600: #959595;
  --color-neutral-700: #757575;
  --color-neutral-800: #555555;
  --color-neutral-900: #3E3E3E;
  --color-danger: #FC0000;
  --color-danger-opacity-50: rgba(208, 16, 16, 0.5);
  --color-danger-opacity-20: rgba(208, 16, 16, 0.2);
  --color-warning: #FFC107;
  --color-warning-opacity-50: rgba(255, 193, 7, 0.5);
  --color-warning-opacity-20: rgba(255, 193, 7, 0.2);
  --color-deactive: #9D97CB;
  --color-deactive-opacity-50: rgba(157, 151, 203, 0.5);
  --color-deactive-opacity-20: rgba(157, 151, 203, 0.2);
  --color-success: #009E5C;
  --color-success-opacity-50: rgba(0, 158, 92, 0.5);
  --color-success-opacity-20: rgba(0, 158, 92, 0.2);
  --color-support: #295EFF;
  --color-support-opacity-50: rgba(41, 94, 255, 0.5);
  --color-support-opacity-20: rgba(41, 94, 255, 0.2);
}

.color-primary {
  color: #212656;
}

.bg-primary {
  background-color: #212656;
}

.color-secondary {
  color: #14278B;
}

.bg-secondary {
  background-color: #14278B;
}

.color-light {
  color: #FFFFFF;
}

.bg-light {
  background-color: #FFFFFF;
}

.color-light-hover {
  color: #F0F2F6;
}

.bg-light-hover {
  background-color: #F0F2F6;
}

.color-dark {
  color: #000000;
}

.bg-dark {
  background-color: #000000;
}

.color-neutral-100 {
  color: #F2F1FB;
}

.bg-neutral-100 {
  background-color: #F2F1FB;
}

.color-neutral-200 {
  color: #E2E2E2;
}

.bg-neutral-200 {
  background-color: #E2E2E2;
}

.color-neutral-300 {
  color: #A4A4A4;
}

.bg-neutral-300 {
  background-color: #A4A4A4;
}

.color-neutral-400 {
  color: #C2C2C2;
}

.bg-neutral-400 {
  background-color: #C2C2C2;
}

.color-neutral-500 {
  color: #B2B2B2;
}

.bg-neutral-500 {
  background-color: #B2B2B2;
}

.color-neutral-600 {
  color: #959595;
}

.bg-neutral-600 {
  background-color: #959595;
}

.color-neutral-700 {
  color: #757575;
}

.bg-neutral-700 {
  background-color: #757575;
}

.color-neutral-800 {
  color: #555555;
}

.bg-neutral-800 {
  background-color: #555555;
}

.color-neutral-900 {
  color: #3E3E3E;
}

.bg-neutral-900 {
  background-color: #3E3E3E;
}

.color-danger {
  color: #FC0000;
}

.bg-danger {
  background-color: #FC0000;
}

.color-danger-opacity-50 {
  color: rgba(208, 16, 16, 0.5);
}

.bg-danger-opacity-50 {
  background-color: rgba(208, 16, 16, 0.5);
}

.color-danger-opacity-20 {
  color: rgba(208, 16, 16, 0.2);
}

.bg-danger-opacity-20 {
  background-color: rgba(208, 16, 16, 0.2);
}

.color-warning {
  color: #FFC107;
}

.bg-warning {
  background-color: #FFC107;
}

.color-warning-opacity-50 {
  color: rgba(255, 193, 7, 0.5);
}

.bg-warning-opacity-50 {
  background-color: rgba(255, 193, 7, 0.5);
}

.color-warning-opacity-20 {
  color: rgba(255, 193, 7, 0.2);
}

.bg-warning-opacity-20 {
  background-color: rgba(255, 193, 7, 0.2);
}

.color-deactive {
  color: #9D97CB;
}

.bg-deactive {
  background-color: #9D97CB;
}

.color-deactive-opacity-50 {
  color: rgba(157, 151, 203, 0.5);
}

.bg-deactive-opacity-50 {
  background-color: rgba(157, 151, 203, 0.5);
}

.color-deactive-opacity-20 {
  color: rgba(157, 151, 203, 0.2);
}

.bg-deactive-opacity-20 {
  background-color: rgba(157, 151, 203, 0.2);
}

.color-success {
  color: #009E5C;
}

.bg-success {
  background-color: #009E5C;
}

.color-success-opacity-50 {
  color: rgba(0, 158, 92, 0.5);
}

.bg-success-opacity-50 {
  background-color: rgba(0, 158, 92, 0.5);
}

.color-success-opacity-20 {
  color: rgba(0, 158, 92, 0.2);
}

.bg-success-opacity-20 {
  background-color: rgba(0, 158, 92, 0.2);
}

.color-support {
  color: #295EFF;
}

.bg-support {
  background-color: #295EFF;
}

.color-support-opacity-50 {
  color: rgba(41, 94, 255, 0.5);
}

.bg-support-opacity-50 {
  background-color: rgba(41, 94, 255, 0.5);
}

.color-support-opacity-20 {
  color: rgba(41, 94, 255, 0.2);
}

.bg-support-opacity-20 {
  background-color: rgba(41, 94, 255, 0.2);
}

/* Списки классов для шрифтов */
.fs-0 {
  font-size: 0px !important;
}

.fs-2 {
  font-size: 2px !important;
}

.fs-4 {
  font-size: 4px !important;
}

.fs-8 {
  font-size: 8px !important;
}

.fs-10 {
  font-size: 10px !important;
}

.fs-12 {
  font-size: 12px !important;
}

.fs-14 {
  font-size: 14px !important;
}

.fs-16 {
  font-size: 16px !important;
}

.fs-18 {
  font-size: 18px !important;
}

.fs-20 {
  font-size: 20px !important;
}

.fs-24 {
  font-size: 24px !important;
}

.fs-28 {
  font-size: 28px !important;
}

.fs-32 {
  font-size: 32px !important;
}

.fs-40 {
  font-size: 40px !important;
}

/* Списки классов для отступов */
.m-0 {
  margin-left: 0px !important;
  margin-right: 0px !important;
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

.mx-0 {
  margin-left: 0px !important;
  margin-right: 0px !important;
}

.my-0 {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

.mt-0 {
  margin-top: 0px !important;
}

.mb-0 {
  margin-bottom: 0px !important;
}

.ml-0 {
  margin-left: 0px !important;
}

.mr-0 {
  margin-right: 0px !important;
}

.m-2 {
  margin-left: 2px !important;
  margin-right: 2px !important;
  margin-top: 2px !important;
  margin-bottom: 2px !important;
}

.mx-2 {
  margin-left: 2px !important;
  margin-right: 2px !important;
}

.my-2 {
  margin-top: 2px !important;
  margin-bottom: 2px !important;
}

.mt-2 {
  margin-top: 2px !important;
}

.mb-2 {
  margin-bottom: 2px !important;
}

.ml-2 {
  margin-left: 2px !important;
}

.mr-2 {
  margin-right: 2px !important;
}

.m-4 {
  margin-left: 4px !important;
  margin-right: 4px !important;
  margin-top: 4px !important;
  margin-bottom: 4px !important;
}

.mx-4 {
  margin-left: 4px !important;
  margin-right: 4px !important;
}

.my-4 {
  margin-top: 4px !important;
  margin-bottom: 4px !important;
}

.mt-4 {
  margin-top: 4px !important;
}

.mb-4 {
  margin-bottom: 4px !important;
}

.ml-4 {
  margin-left: 4px !important;
}

.mr-4 {
  margin-right: 4px !important;
}

.m-8 {
  margin-left: 8px !important;
  margin-right: 8px !important;
  margin-top: 8px !important;
  margin-bottom: 8px !important;
}

.mx-8 {
  margin-left: 8px !important;
  margin-right: 8px !important;
}

.my-8 {
  margin-top: 8px !important;
  margin-bottom: 8px !important;
}

.mt-8 {
  margin-top: 8px !important;
}

.mb-8 {
  margin-bottom: 8px !important;
}

.ml-8 {
  margin-left: 8px !important;
}

.mr-8 {
  margin-right: 8px !important;
}

.m-10 {
  margin-left: 10px !important;
  margin-right: 10px !important;
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.mx-10 {
  margin-left: 10px !important;
  margin-right: 10px !important;
}

.my-10 {
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}

.mt-10 {
  margin-top: 10px !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.ml-10 {
  margin-left: 10px !important;
}

.mr-10 {
  margin-right: 10px !important;
}

.m-12 {
  margin-left: 12px !important;
  margin-right: 12px !important;
  margin-top: 12px !important;
  margin-bottom: 12px !important;
}

.mx-12 {
  margin-left: 12px !important;
  margin-right: 12px !important;
}

.my-12 {
  margin-top: 12px !important;
  margin-bottom: 12px !important;
}

.mt-12 {
  margin-top: 12px !important;
}

.mb-12 {
  margin-bottom: 12px !important;
}

.ml-12 {
  margin-left: 12px !important;
}

.mr-12 {
  margin-right: 12px !important;
}

.m-14 {
  margin-left: 14px !important;
  margin-right: 14px !important;
  margin-top: 14px !important;
  margin-bottom: 14px !important;
}

.mx-14 {
  margin-left: 14px !important;
  margin-right: 14px !important;
}

.my-14 {
  margin-top: 14px !important;
  margin-bottom: 14px !important;
}

.mt-14 {
  margin-top: 14px !important;
}

.mb-14 {
  margin-bottom: 14px !important;
}

.ml-14 {
  margin-left: 14px !important;
}

.mr-14 {
  margin-right: 14px !important;
}

.m-16 {
  margin-left: 16px !important;
  margin-right: 16px !important;
  margin-top: 16px !important;
  margin-bottom: 16px !important;
}

.mx-16 {
  margin-left: 16px !important;
  margin-right: 16px !important;
}

.my-16 {
  margin-top: 16px !important;
  margin-bottom: 16px !important;
}

.mt-16 {
  margin-top: 16px !important;
}

.mb-16 {
  margin-bottom: 16px !important;
}

.ml-16 {
  margin-left: 16px !important;
}

.mr-16 {
  margin-right: 16px !important;
}

.m-18 {
  margin-left: 18px !important;
  margin-right: 18px !important;
  margin-top: 18px !important;
  margin-bottom: 18px !important;
}

.mx-18 {
  margin-left: 18px !important;
  margin-right: 18px !important;
}

.my-18 {
  margin-top: 18px !important;
  margin-bottom: 18px !important;
}

.mt-18 {
  margin-top: 18px !important;
}

.mb-18 {
  margin-bottom: 18px !important;
}

.ml-18 {
  margin-left: 18px !important;
}

.mr-18 {
  margin-right: 18px !important;
}

.m-20 {
  margin-left: 20px !important;
  margin-right: 20px !important;
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.mx-20 {
  margin-left: 20px !important;
  margin-right: 20px !important;
}

.my-20 {
  margin-top: 20px !important;
  margin-bottom: 20px !important;
}

.mt-20 {
  margin-top: 20px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.ml-20 {
  margin-left: 20px !important;
}

.mr-20 {
  margin-right: 20px !important;
}

.m-24 {
  margin-left: 24px !important;
  margin-right: 24px !important;
  margin-top: 24px !important;
  margin-bottom: 24px !important;
}

.mx-24 {
  margin-left: 24px !important;
  margin-right: 24px !important;
}

.my-24 {
  margin-top: 24px !important;
  margin-bottom: 24px !important;
}

.mt-24 {
  margin-top: 24px !important;
}

.mb-24 {
  margin-bottom: 24px !important;
}

.ml-24 {
  margin-left: 24px !important;
}

.mr-24 {
  margin-right: 24px !important;
}

.m-28 {
  margin-left: 28px !important;
  margin-right: 28px !important;
  margin-top: 28px !important;
  margin-bottom: 28px !important;
}

.mx-28 {
  margin-left: 28px !important;
  margin-right: 28px !important;
}

.my-28 {
  margin-top: 28px !important;
  margin-bottom: 28px !important;
}

.mt-28 {
  margin-top: 28px !important;
}

.mb-28 {
  margin-bottom: 28px !important;
}

.ml-28 {
  margin-left: 28px !important;
}

.mr-28 {
  margin-right: 28px !important;
}

.m-32 {
  margin-left: 32px !important;
  margin-right: 32px !important;
  margin-top: 32px !important;
  margin-bottom: 32px !important;
}

.mx-32 {
  margin-left: 32px !important;
  margin-right: 32px !important;
}

.my-32 {
  margin-top: 32px !important;
  margin-bottom: 32px !important;
}

.mt-32 {
  margin-top: 32px !important;
}

.mb-32 {
  margin-bottom: 32px !important;
}

.ml-32 {
  margin-left: 32px !important;
}

.mr-32 {
  margin-right: 32px !important;
}

.m-40 {
  margin-left: 40px !important;
  margin-right: 40px !important;
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

.mx-40 {
  margin-left: 40px !important;
  margin-right: 40px !important;
}

.my-40 {
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

.mt-40 {
  margin-top: 40px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

.ml-40 {
  margin-left: 40px !important;
}

.mr-40 {
  margin-right: 40px !important;
}

.p-0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.px-0 {
  padding-left: 0px !important;
  padding-right: 0px !important;
}

.py-0 {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
}

.pt-0 {
  padding-top: 0px !important;
}

.pb-0 {
  padding-bottom: 0px !important;
}

.pl-0 {
  padding-left: 0px !important;
}

.pr-0 {
  padding-right: 0px !important;
}

.p-2 {
  padding-left: 2px !important;
  padding-right: 2px !important;
  padding-top: 2px !important;
  padding-bottom: 2px !important;
}

.px-2 {
  padding-left: 2px !important;
  padding-right: 2px !important;
}

.py-2 {
  padding-top: 2px !important;
  padding-bottom: 2px !important;
}

.pt-2 {
  padding-top: 2px !important;
}

.pb-2 {
  padding-bottom: 2px !important;
}

.pl-2 {
  padding-left: 2px !important;
}

.pr-2 {
  padding-right: 2px !important;
}

.p-4 {
  padding-left: 4px !important;
  padding-right: 4px !important;
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

.px-4 {
  padding-left: 4px !important;
  padding-right: 4px !important;
}

.py-4 {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

.pt-4 {
  padding-top: 4px !important;
}

.pb-4 {
  padding-bottom: 4px !important;
}

.pl-4 {
  padding-left: 4px !important;
}

.pr-4 {
  padding-right: 4px !important;
}

.p-8 {
  padding-left: 8px !important;
  padding-right: 8px !important;
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.px-8 {
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.py-8 {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

.pt-8 {
  padding-top: 8px !important;
}

.pb-8 {
  padding-bottom: 8px !important;
}

.pl-8 {
  padding-left: 8px !important;
}

.pr-8 {
  padding-right: 8px !important;
}

.p-10 {
  padding-left: 10px !important;
  padding-right: 10px !important;
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.px-10 {
  padding-left: 10px !important;
  padding-right: 10px !important;
}

.py-10 {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

.pt-10 {
  padding-top: 10px !important;
}

.pb-10 {
  padding-bottom: 10px !important;
}

.pl-10 {
  padding-left: 10px !important;
}

.pr-10 {
  padding-right: 10px !important;
}

.p-12 {
  padding-left: 12px !important;
  padding-right: 12px !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

.px-12 {
  padding-left: 12px !important;
  padding-right: 12px !important;
}

.py-12 {
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}

.pt-12 {
  padding-top: 12px !important;
}

.pb-12 {
  padding-bottom: 12px !important;
}

.pl-12 {
  padding-left: 12px !important;
}

.pr-12 {
  padding-right: 12px !important;
}

.p-14 {
  padding-left: 14px !important;
  padding-right: 14px !important;
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

.px-14 {
  padding-left: 14px !important;
  padding-right: 14px !important;
}

.py-14 {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

.pt-14 {
  padding-top: 14px !important;
}

.pb-14 {
  padding-bottom: 14px !important;
}

.pl-14 {
  padding-left: 14px !important;
}

.pr-14 {
  padding-right: 14px !important;
}

.p-16 {
  padding-left: 16px !important;
  padding-right: 16px !important;
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.px-16 {
  padding-left: 16px !important;
  padding-right: 16px !important;
}

.py-16 {
  padding-top: 16px !important;
  padding-bottom: 16px !important;
}

.pt-16 {
  padding-top: 16px !important;
}

.pb-16 {
  padding-bottom: 16px !important;
}

.pl-16 {
  padding-left: 16px !important;
}

.pr-16 {
  padding-right: 16px !important;
}

.p-18 {
  padding-left: 18px !important;
  padding-right: 18px !important;
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}

.px-18 {
  padding-left: 18px !important;
  padding-right: 18px !important;
}

.py-18 {
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}

.pt-18 {
  padding-top: 18px !important;
}

.pb-18 {
  padding-bottom: 18px !important;
}

.pl-18 {
  padding-left: 18px !important;
}

.pr-18 {
  padding-right: 18px !important;
}

.p-20 {
  padding-left: 20px !important;
  padding-right: 20px !important;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.px-20 {
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.py-20 {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

.pt-20 {
  padding-top: 20px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pl-20 {
  padding-left: 20px !important;
}

.pr-20 {
  padding-right: 20px !important;
}

.p-24 {
  padding-left: 24px !important;
  padding-right: 24px !important;
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

.px-24 {
  padding-left: 24px !important;
  padding-right: 24px !important;
}

.py-24 {
  padding-top: 24px !important;
  padding-bottom: 24px !important;
}

.pt-24 {
  padding-top: 24px !important;
}

.pb-24 {
  padding-bottom: 24px !important;
}

.pl-24 {
  padding-left: 24px !important;
}

.pr-24 {
  padding-right: 24px !important;
}

.p-28 {
  padding-left: 28px !important;
  padding-right: 28px !important;
  padding-top: 28px !important;
  padding-bottom: 28px !important;
}

.px-28 {
  padding-left: 28px !important;
  padding-right: 28px !important;
}

.py-28 {
  padding-top: 28px !important;
  padding-bottom: 28px !important;
}

.pt-28 {
  padding-top: 28px !important;
}

.pb-28 {
  padding-bottom: 28px !important;
}

.pl-28 {
  padding-left: 28px !important;
}

.pr-28 {
  padding-right: 28px !important;
}

.p-32 {
  padding-left: 32px !important;
  padding-right: 32px !important;
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}

.px-32 {
  padding-left: 32px !important;
  padding-right: 32px !important;
}

.py-32 {
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}

.pt-32 {
  padding-top: 32px !important;
}

.pb-32 {
  padding-bottom: 32px !important;
}

.pl-32 {
  padding-left: 32px !important;
}

.pr-32 {
  padding-right: 32px !important;
}

.p-40 {
  padding-left: 40px !important;
  padding-right: 40px !important;
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.px-40 {
  padding-left: 40px !important;
  padding-right: 40px !important;
}

.py-40 {
  padding-top: 40px !important;
  padding-bottom: 40px !important;
}

.pt-40 {
  padding-top: 40px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

.pl-40 {
  padding-left: 40px !important;
}

.pr-40 {
  padding-right: 40px !important;
}

.g-0 {
  gap: 0px !important;
}

.gy-0 {
  row-gap: 0px !important;
}

.gx-0 {
  column-gap: 0px !important;
}

.g-2 {
  gap: 2px !important;
}

.gy-2 {
  row-gap: 2px !important;
}

.gx-2 {
  column-gap: 2px !important;
}

.g-4 {
  gap: 4px !important;
}

.gy-4 {
  row-gap: 4px !important;
}

.gx-4 {
  column-gap: 4px !important;
}

.g-8 {
  gap: 8px !important;
}

.gy-8 {
  row-gap: 8px !important;
}

.gx-8 {
  column-gap: 8px !important;
}

.g-10 {
  gap: 10px !important;
}

.gy-10 {
  row-gap: 10px !important;
}

.gx-10 {
  column-gap: 10px !important;
}

.g-12 {
  gap: 12px !important;
}

.gy-12 {
  row-gap: 12px !important;
}

.gx-12 {
  column-gap: 12px !important;
}

.g-14 {
  gap: 14px !important;
}

.gy-14 {
  row-gap: 14px !important;
}

.gx-14 {
  column-gap: 14px !important;
}

.g-16 {
  gap: 16px !important;
}

.gy-16 {
  row-gap: 16px !important;
}

.gx-16 {
  column-gap: 16px !important;
}

.g-18 {
  gap: 18px !important;
}

.gy-18 {
  row-gap: 18px !important;
}

.gx-18 {
  column-gap: 18px !important;
}

.g-20 {
  gap: 20px !important;
}

.gy-20 {
  row-gap: 20px !important;
}

.gx-20 {
  column-gap: 20px !important;
}

.g-24 {
  gap: 24px !important;
}

.gy-24 {
  row-gap: 24px !important;
}

.gx-24 {
  column-gap: 24px !important;
}

.g-28 {
  gap: 28px !important;
}

.gy-28 {
  row-gap: 28px !important;
}

.gx-28 {
  column-gap: 28px !important;
}

.g-32 {
  gap: 32px !important;
}

.gy-32 {
  row-gap: 32px !important;
}

.gx-32 {
  column-gap: 32px !important;
}

.g-40 {
  gap: 40px !important;
}

.gy-40 {
  row-gap: 40px !important;
}

.gx-40 {
  column-gap: 40px !important;
}

.rounded-0 {
  border-radius: 0px !important;
}

.rounded-top-0 {
  border-radius: 0px 0px 0px 0px !important;
}

.rounded-left-0 {
  border-radius: 0px 0px 0px 0px !important;
}

.rounded-right-0 {
  border-radius: 0px 0px 0px 0px !important;
}

.rounded-bottom-0 {
  border-radius: 0px 0px 0px 0px !important;
}

.rounded-2 {
  border-radius: 2px !important;
}

.rounded-top-2 {
  border-radius: 2px 2px 0px 0px !important;
}

.rounded-left-2 {
  border-radius: 2px 0px 0px 2px !important;
}

.rounded-right-2 {
  border-radius: 0px 2px 2px 0px !important;
}

.rounded-bottom-2 {
  border-radius: 0px 0px 2px 2px !important;
}

.rounded-4 {
  border-radius: 4px !important;
}

.rounded-top-4 {
  border-radius: 4px 4px 0px 0px !important;
}

.rounded-left-4 {
  border-radius: 4px 0px 0px 4px !important;
}

.rounded-right-4 {
  border-radius: 0px 4px 4px 0px !important;
}

.rounded-bottom-4 {
  border-radius: 0px 0px 4px 4px !important;
}

.rounded-8 {
  border-radius: 8px !important;
}

.rounded-top-8 {
  border-radius: 8px 8px 0px 0px !important;
}

.rounded-left-8 {
  border-radius: 8px 0px 0px 8px !important;
}

.rounded-right-8 {
  border-radius: 0px 8px 8px 0px !important;
}

.rounded-bottom-8 {
  border-radius: 0px 0px 8px 8px !important;
}

.rounded-10 {
  border-radius: 10px !important;
}

.rounded-top-10 {
  border-radius: 10px 10px 0px 0px !important;
}

.rounded-left-10 {
  border-radius: 10px 0px 0px 10px !important;
}

.rounded-right-10 {
  border-radius: 0px 10px 10px 0px !important;
}

.rounded-bottom-10 {
  border-radius: 0px 0px 10px 10px !important;
}

.rounded-12 {
  border-radius: 12px !important;
}

.rounded-top-12 {
  border-radius: 12px 12px 0px 0px !important;
}

.rounded-left-12 {
  border-radius: 12px 0px 0px 12px !important;
}

.rounded-right-12 {
  border-radius: 0px 12px 12px 0px !important;
}

.rounded-bottom-12 {
  border-radius: 0px 0px 12px 12px !important;
}

.rounded-14 {
  border-radius: 14px !important;
}

.rounded-top-14 {
  border-radius: 14px 14px 0px 0px !important;
}

.rounded-left-14 {
  border-radius: 14px 0px 0px 14px !important;
}

.rounded-right-14 {
  border-radius: 0px 14px 14px 0px !important;
}

.rounded-bottom-14 {
  border-radius: 0px 0px 14px 14px !important;
}

.rounded-16 {
  border-radius: 16px !important;
}

.rounded-top-16 {
  border-radius: 16px 16px 0px 0px !important;
}

.rounded-left-16 {
  border-radius: 16px 0px 0px 16px !important;
}

.rounded-right-16 {
  border-radius: 0px 16px 16px 0px !important;
}

.rounded-bottom-16 {
  border-radius: 0px 0px 16px 16px !important;
}

.rounded-18 {
  border-radius: 18px !important;
}

.rounded-top-18 {
  border-radius: 18px 18px 0px 0px !important;
}

.rounded-left-18 {
  border-radius: 18px 0px 0px 18px !important;
}

.rounded-right-18 {
  border-radius: 0px 18px 18px 0px !important;
}

.rounded-bottom-18 {
  border-radius: 0px 0px 18px 18px !important;
}

.rounded-20 {
  border-radius: 20px !important;
}

.rounded-top-20 {
  border-radius: 20px 20px 0px 0px !important;
}

.rounded-left-20 {
  border-radius: 20px 0px 0px 20px !important;
}

.rounded-right-20 {
  border-radius: 0px 20px 20px 0px !important;
}

.rounded-bottom-20 {
  border-radius: 0px 0px 20px 20px !important;
}

.rounded-24 {
  border-radius: 24px !important;
}

.rounded-top-24 {
  border-radius: 24px 24px 0px 0px !important;
}

.rounded-left-24 {
  border-radius: 24px 0px 0px 24px !important;
}

.rounded-right-24 {
  border-radius: 0px 24px 24px 0px !important;
}

.rounded-bottom-24 {
  border-radius: 0px 0px 24px 24px !important;
}

.rounded-28 {
  border-radius: 28px !important;
}

.rounded-top-28 {
  border-radius: 28px 28px 0px 0px !important;
}

.rounded-left-28 {
  border-radius: 28px 0px 0px 28px !important;
}

.rounded-right-28 {
  border-radius: 0px 28px 28px 0px !important;
}

.rounded-bottom-28 {
  border-radius: 0px 0px 28px 28px !important;
}

.rounded-32 {
  border-radius: 32px !important;
}

.rounded-top-32 {
  border-radius: 32px 32px 0px 0px !important;
}

.rounded-left-32 {
  border-radius: 32px 0px 0px 32px !important;
}

.rounded-right-32 {
  border-radius: 0px 32px 32px 0px !important;
}

.rounded-bottom-32 {
  border-radius: 0px 0px 32px 32px !important;
}

.rounded-40 {
  border-radius: 40px !important;
}

.rounded-top-40 {
  border-radius: 40px 40px 0px 0px !important;
}

.rounded-left-40 {
  border-radius: 40px 0px 0px 40px !important;
}

.rounded-right-40 {
  border-radius: 0px 40px 40px 0px !important;
}

.rounded-bottom-40 {
  border-radius: 0px 0px 40px 40px !important;
}

/* Основные классы */
.d-block {
  display: block !important;
}
.d-flex {
  display: flex !important;
}
.d-grid {
  display: grid !important;
}
.d-none {
  display: none !important;
}

.flex-row {
  flex-direction: row !important;
}
.flex-row-reverse {
  flex-direction: row-reverse !important;
}
.flex-column {
  flex-direction: column !important;
}
.flex-column-reverse {
  flex-direction: column-reverse !important;
}
.flex-wrap {
  flex-wrap: wrap !important;
}
.flex-1 {
  flex: 1;
}
.flex-2 {
  flex: 2;
}
.flex-3 {
  flex: 3;
}
.flex-4 {
  flex: 4;
}
.flex-5 {
  flex: 5;
}
.flex-6 {
  flex: 6;
}
.flex-7 {
  flex: 7;
}
.flex-8 {
  flex: 8;
}
.flex-9 {
  flex: 9;
}
.flex-10 {
  flex: 10;
}
.flex-11 {
  flex: 11;
}
.flex-12 {
  flex: 12;
}

.grid-col-1 {
  grid-column: span 1;
}
.grid-col-2 {
  grid-column: span 2;
}
.grid-col-3 {
  grid-column: span 3;
}
.grid-col-4 {
  grid-column: span 4;
}
.grid-col-5 {
  grid-column: span 5;
}
.grid-col-6 {
  grid-column: span 6;
}
.grid-col-7 {
  grid-column: span 7;
}
.grid-col-8 {
  grid-column: span 8;
}
.grid-col-9 {
  grid-column: span 9;
}
.grid-col-10 {
  grid-column: span 10;
}
.grid-col-11 {
  grid-column: span 11;
}
.grid-col-12 {
  grid-column: span 12;
}
.grid-row-1 {
  grid-row: span 1;
}
.grid-row-2 {
  grid-row: span 2;
}
.grid-row-3 {
  grid-row: span 3;
}
.grid-row-4 {
  grid-row: span 4;
}
.grid-row-5 {
  grid-row: span 5;
}
.grid-row-6 {
  grid-row: span 6;
}
.grid-row-7 {
  grid-row: span 7;
}
.grid-row-8 {
  grid-row: span 8;
}
.grid-row-9 {
  grid-row: span 9;
}
.grid-row-10 {
  grid-row: span 10;
}
.grid-row-11 {
  grid-row: span 11;
}
.grid-row-12 {
  grid-row: span 12;
}

.justify-content-start {
  justify-content: flex-start !important;
}
.justify-content-end {
  justify-content: flex-end !important;
}
.justify-content-center {
  justify-content: center !important;
}
.justify-content-around {
  justify-content: space-around !important;
}
.justify-content-evenly {
  justify-content: space-evenly !important;
}
.justify-content-between {
  justify-content: space-between !important;
}

.justify-items-start {
  justify-items: start !important;
}
.justify-items-end {
  justify-items: end !important;
}
.justify-items-center {
  justify-items: center !important;
}
.justify-items-stretch {
  justify-items: stretch !important;
}

.align-items-start {
  align-items: flex-start !important;
}
.align-items-end {
  align-items: flex-end !important;
}
.align-items-center {
  align-items: center !important;
}
.align-items-stretch {
  align-items: stretch !important;
}

.align-content-center {
  align-content: center !important;
}
.align-content-between {
  align-content: space-between !important;
}
.align-content-around {
  align-content: space-around !important;
}
.align-content-evenly {
  align-content: space-evenly !important;
}
.align-content-stretch {
  align-content: stretch !important;
}

.text-center {
  text-align: center !important;
}
.text-right {
  text-align: right !important;
}
.text-left {
  text-align: left !important;
}
.text-underline {
  text-decoration: underline !important;
}
.text-through {
  text-decoration: line-through !important;
}
.text-nowrap {
  white-space: nowrap !important;
}

.fw-100 {
  font-weight: 100;
}
.fw-200 {
  font-weight: 200;
}
.fw-300 {
  font-weight: 300;
}
.fw-400 {
  font-weight: 400;
}
.fw-500 {
  font-weight: 500;
}
.fw-600 {
  font-weight: 600;
}
.fw-700 {
  font-weight: 700;
}
.fw-800 {
  font-weight: 800;
}
.fw-900 {
  font-weight: 900;
}

.w-100 {
  width: 100%;
}
.w-75 {
  width: 75%;
}
.w-50 {
  width: 50%;
}
.w-25 {
  width: 25%;
}

h1, h2, h3, h4, h5, h6 {
  color: rgb(62, 62, 62);
  font-weight: 600;
}

h1 {
  font-size: 38px;
  margin-bottom: 24px;
}

h2 {
  font-size: 24px;
  line-height: 32px;
  margin-bottom: 20px;
}

a {
  color: #5a81fa;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  form
*/
.form-invalid input, .form-invalid textarea {
  border-color: #EF8C73 !important;
}
.form-invalid input[type=radio] + label::before, .form-invalid input[type=checkbox] + label::before, .form-invalid textarea[type=radio] + label::before, .form-invalid textarea[type=checkbox] + label::before {
  border-color: #EF8C73;
}
.form-invalid input[type=radio]:hover + label:before, .form-invalid input[type=checkbox]:hover + label:before, .form-invalid textarea[type=radio]:hover + label:before, .form-invalid textarea[type=checkbox]:hover + label:before {
  border-color: #EF8C73;
}
.form-invalid input[type=radio]:checked:hover + label:before, .form-invalid input[type=checkbox]:checked:hover + label:before, .form-invalid textarea[type=radio]:checked:hover + label:before, .form-invalid textarea[type=checkbox]:checked:hover + label:before {
  border-color: #7ED396;
}
.form-invalid .form-group.bordered > *:not(:last-child) {
  border-right: none !important;
}
.form-invalid .form-group > * {
  border-color: #EF8C73 !important;
}
.form-invalid .form-group > *:not(:last-child) {
  border-right: none;
}
.form-invalid .form-group > *:last-child, .form-invalid .form-group > *:first-child {
  border-color: #EF8C73 !important;
}
.form-error {
  display: block;
  font-size: 12px;
  line-height: 18px;
  margin-top: -2px;
  color: #EF8C73;
}
.form-control {
  display: grid;
  gap: 10px;
  position: relative;
  color: #707070;
}
.form-control-label,
.form-control label {
  font-size: 12px;
  font-weight: 600;
  line-height: 16px;
  user-select: none;
}
.form-control input, .form-control textarea {
  width: 100%;
  height: 48px;
  border-radius: 10px;
  border: 1px solid #D9D9D9;
  padding: 14px;
  font-size: 14px;
  line-height: 18px;
  color: #707070;
  resize: none;
  appearance: none;
}
.form-control input[readonly], .form-control textarea[readonly] {
  height: auto;
  border-radius: 0;
  border-top: none;
  border-left: none;
  border-right: none;
  padding: 0 0 10px 0;
  color: rgb(62, 62, 62);
  font-size: 12px;
  font-weight: 600;
  line-height: 20px;
}
.form-control input::placeholder, .form-control textarea::placeholder {
  color: #C3C3C3;
  font-size: 14px;
  font-weight: 400;
}
.form-control input::-webkit-datetime-edit, .form-control textarea::-webkit-datetime-edit {
  color: #707070;
  font-size: 14px;
}
.form-control textarea {
  height: 142px;
}
.form-control select {
  display: none;
}
.form-group {
  display: flex;
  align-items: center;
}
.form-group > * {
  display: flex;
  align-items: center;
  border-radius: 0px !important;
  border-left: 0px !important;
  border-right: 1px solid #D9D9D9;
  border-top: 1px solid #D9D9D9;
  border-bottom: 1px solid #D9D9D9;
  border-radius: 0px;
  padding: 0 14px;
  font-size: 14px;
  height: 100%;
}
.form-group > *:not(:last-child) {
  border-right: none;
}
.form-group > *:first-child {
  border-left: 1px solid #D9D9D9 !important;
  border-radius: 10px 0 0 10px !important;
}
.form-group > *:last-child {
  border-radius: 0 10px 10px 0 !important;
}
.form-group.bordered > * {
  border-right: 1px solid #D9D9D9;
}
.form-group-outline > * {
  border-right: 0px !important;
}
.form-group-outline > *:first-child {
  border-left: 1px solid #D9D9D9 !important;
  border-radius: 10px 0 0 10px !important;
}
.form-group-outline > *:last-child {
  border-right: 1px solid #D9D9D9 !important;
  border-radius: 0 10px 10px 0 !important;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  radio | checkbox
*/
.radio, .checkbox {
  width: fit-content;
  display: flex;
  align-items: center;
  height: 48px;
  gap: 10px;
}
.radio input[type=radio], .radio input[type=checkbox], .checkbox input[type=radio], .checkbox input[type=checkbox] {
  display: none;
}
.radio input[type=radio]:checked + label::before, .radio input[type=checkbox]:checked + label::before, .checkbox input[type=radio]:checked + label::before, .checkbox input[type=checkbox]:checked + label::before {
  border-color: #7ED396;
}
.radio input[type=radio]:checked + label::after, .radio input[type=checkbox]:checked + label::after, .checkbox input[type=radio]:checked + label::after, .checkbox input[type=checkbox]:checked + label::after {
  background-color: #7ED396;
  width: 16px;
  height: 16px;
  left: 4px;
  top: 4px;
}
.radio input[type=radio]:checked:disabled + label::before, .radio input[type=checkbox]:checked:disabled + label::before, .checkbox input[type=radio]:checked:disabled + label::before, .checkbox input[type=checkbox]:checked:disabled + label::before {
  border-color: #E1E1E1;
}
.radio input[type=radio]:checked:disabled + label::after, .radio input[type=checkbox]:checked:disabled + label::after, .checkbox input[type=radio]:checked:disabled + label::after, .checkbox input[type=checkbox]:checked:disabled + label::after {
  background-color: #E1E1E1;
}
.radio input[type=radio]:disabled + label, .radio input[type=checkbox]:disabled + label, .checkbox input[type=radio]:disabled + label, .checkbox input[type=checkbox]:disabled + label {
  cursor: default;
}
.radio input[type=radio]:disabled + label::before, .radio input[type=checkbox]:disabled + label::before, .checkbox input[type=radio]:disabled + label::before, .checkbox input[type=checkbox]:disabled + label::before {
  border-color: #E1E1E1;
}
.radio input[type=radio]:disabled:hover + label:before, .radio input[type=checkbox]:disabled:hover + label:before, .checkbox input[type=radio]:disabled:hover + label:before, .checkbox input[type=checkbox]:disabled:hover + label:before {
  border-color: #E1E1E1;
}
.radio input[type=radio]:hover + .radio-label:before, .radio input[type=checkbox]:hover + .radio-label:before, .checkbox input[type=radio]:hover + .radio-label:before, .checkbox input[type=checkbox]:hover + .radio-label:before {
  border-color: #7ED396;
}
.radio input[type=radio] + label::after, .radio input[type=radio] + label::before, .checkbox input[type=radio] + label::after, .checkbox input[type=radio] + label::before {
  border-radius: 50%;
}
.radio input[type=checkbox] + label::after, .radio input[type=checkbox] + label::before, .checkbox input[type=checkbox] + label::after, .checkbox input[type=checkbox] + label::before {
  border-radius: 4px;
}
.radio label, .checkbox label {
  cursor: pointer;
  display: block;
  position: relative;
  padding-left: 34px;
  line-height: 24px;
  font-size: 14px;
  font-weight: 400;
  color: #707070;
  height: 24px;
  user-select: none;
}
.radio label:after, .radio label:before, .checkbox label:after, .checkbox label:before {
  content: "";
  top: 0;
  position: absolute;
  display: block;
}
.radio label::before, .checkbox label::before {
  width: 24px;
  height: 24px;
  left: 0;
  border: 1px solid #E1E1E1;
}
.radio label::after, .checkbox label::after {
  width: 0px;
  height: 0px;
  top: 12px;
  left: 12px;
  background-color: transparent;
  transition: 0.1s ease-in;
}
.radio-group, .checkbox-group {
  display: flex;
  align-items: center;
  gap: 20px;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  buttons
*/
.btn {
  width: fit-content;
  height: 54px;
  padding: 16px 30px;
  font-size: 16px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  outline: none;
  border: none;
  background-color: #F6F8FF;
  color: #5A81FA;
  border-radius: 10px;
}
.btn-small {
  height: 48px;
  padding: 12px 24px;
}
.btn-small.btn-short {
  padding: 8px;
}
.btn-short {
  padding: 16px;
}
.btn-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 48px;
  width: 48px;
  height: 48px;
  padding: 0;
}
.btn-icon.btn-small {
  width: 44px;
  height: 44px;
  padding: 10px;
}
.btn:disabled {
  cursor: default;
  background-color: #F2F2F2;
  color: #C3C3C3;
}
.btn-primary {
  background-color: #5A81FA;
  color: #FFFFFF;
}
.btn-light {
  background-color: #FFFFFF;
  color: #C3C3C3;
}
.btn .icon {
  width: 32px;
  height: 32px;
  display: flex;
  color: var(--color-neutral-900);
  background-color: var(--color-light);
  border-radius: 10px;
  justify-content: center;
  margin-right: 10px;
}
.btn-bordered {
  border: 1px solid #E1E1E1;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  select
*/
.select-group {
  display: flex;
  align-items: center;
  height: 48px;
  border-radius: 10px;
  border: 1px solid #D9D9D9;
  cursor: text;
}
.select-group input {
  border: none !important;
}
.select-group input.non-empty::placeholder {
  color: #707070;
}
.select-group.open .select-icon {
  transform: rotate(180deg);
}
.select-icon {
  width: 18px;
  height: 18px;
  display: block;
  color: #707070;
  margin-right: 16px;
  cursor: pointer;
  transition: 0.1s;
}
.select-dropdown {
  width: 100%;
  display: none;
  position: absolute;
  left: 0;
  top: calc(100% + 6px);
  background-color: white;
  box-shadow: 0px 0px 16px 0px rgba(137, 137, 137, 0.1215686275);
  border-radius: 8px;
  max-height: 288px;
  overflow-y: auto;
  z-index: 15;
}
.select-dropdown .checkbox {
  width: 100%;
  padding: 0 14px;
  cursor: pointer;
}
.select-dropdown .checkbox.hidden {
  display: none;
}
.select-dropdown-empty {
  display: flex;
  align-items: center;
  height: 48px;
  padding: 0 14px;
  font-size: 14px;
  color: #707070;
}
.select-dropdown-empty.hidden {
  display: none;
}
.select-dropdown.open {
  display: block;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  tooltip
*/
.tooltip-content {
  position: absolute;
  background: #FFFFFF;
  z-index: 250;
  margin-bottom: -1em;
  padding: 10px 14px;
  border-radius: 10px;
  text-align: center;
  color: #3e3e3e;
  cursor: default;
  pointer-events: none;
  box-shadow: 0 0 37px 5px rgba(0, 0, 0, 0.18);
  min-width: 80px;
  max-width: 400px;
}
.tooltip-content::after {
  content: "";
  position: absolute;
  width: 2em;
  height: 2em;
  background: url(/img/components/tooltip/hvost.min.svg) no-repeat center center;
  background-size: 100%;
}
.tooltip-content.tooltip-top-left:after {
  bottom: -18px;
  transform: rotate(180deg);
  right: 10%;
}
.tooltip-content.tooltip-top:after {
  bottom: -18px;
  transform: rotate(180deg) translateX(-50%);
  right: 50%;
}
.tooltip-content.tooltip-top-right:after {
  bottom: -18px;
  left: 10%;
  transform: rotate(180deg) rotateY(180deg);
}
.tooltip-content.tooltip-bottom-left:after {
  top: -18px;
  right: 10%;
  transform: rotateY(180deg);
}
.tooltip-content.tooltip-bottom:after {
  top: -18px;
  right: 50%;
  transform: translateX(50%);
}
.tooltip-content.tooltip-bottom-right:after {
  top: -18px;
  left: 10%;
}
.tooltip-content.tooltip-left:after {
  right: -18px;
  top: 50%;
  transform: rotate(90deg) rotateY(180deg) translateX(50%);
}
.tooltip-content.tooltip-right:after {
  left: -18px;
  top: 50%;
  transform: rotate(-90deg) translateX(50%);
}

[data-tooltip] {
  position: relative;
}
[data-tooltip]::before {
  content: attr(data-tooltip-text);
  position: absolute;
  right: 0;
  bottom: calc(100% + 12px);
  display: none;
  width: 450px;
  padding: 20px;
  border-radius: 10px;
  color: #707070;
  line-height: 24px;
  font-size: 16px;
  font-weight: 500;
  background-color: #FFFFFF;
  box-shadow: 0px 0px 38px 0px rgba(137, 137, 137, 0.2666666667);
}
[data-tooltip]:hover::before {
  display: block;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  accordion
*/
.accordion {
  display: grid;
}
.accordion-item {
  display: grid;
}
.accordion-item.active .accordion-body {
  display: block;
}
.accordion-item.active .accordion-header {
  background-color: var(--color-light-hover);
}
.accordion-item:hover .accordion-header {
  background-color: var(--color-light-hover);
}
.accordion-header {
  display: grid;
  align-items: center;
  background-color: var(--color-light);
  border-bottom: 1px solid var(--color-neutral-600);
  border-radius: 4px;
  padding: 0 16px;
  min-height: 56px;
  font-size: 20px;
  cursor: pointer;
}
.accordion-body {
  display: none;
  background-color: #F3F3F3;
  border-bottom: 1px solid var(--color-neutral-600);
  border-radius: 4px;
  padding: 0 16px;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  table
*/
.table {
  border-collapse: collapse;
  width: 100%;
  border-radius: 10px;
  color: #3E3E3E;
  background-color: #FFFFFF;
}
.table thead tr {
  font-size: 12px;
  font-weight: 600;
  background-color: #F9F9F9;
}
.table thead tr th {
  color: #969696;
  padding: 12px 20px;
  text-align: left;
}
.table thead tr th:first-child {
  border-top-left-radius: 10px;
  border-bottom-left-radius: 10px;
}
.table thead tr th:last-child {
  border-left: none;
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
}
.table thead tr th:not(:first-child), .table thead tr th.border-left {
  border-left: 1px solid #E6E6E6;
}
.table tbody tr {
  font-weight: 500;
  font-size: 14px;
}
.table tbody tr:hover {
  background-color: #F9F9F9;
}
.table tbody tr td {
  padding: 12px 20px;
  position: relative;
}
.table tbody tr td:first-child {
  border-top-left-radius: 4px;
  border-bottom-left-radius: 4px;
}
.table tbody tr td:last-child {
  border-left: none;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 4px;
}
.table tbody tr td:not(:first-child), .table tbody tr td.border-left {
  border-left: 1px solid #E6E6E6;
}
.table tbody tr td.line-separator {
  padding: 4px;
  color: #3e3e3e;
  font-size: 12px;
  line-height: 22px;
  font-weight: 600;
  text-align: center;
}
.table tbody tr td.line-separator.light-1 {
  background-color: #F4F3F3;
}
.table tbody tr td.line-separator.light-2 {
  background-color: #E9E9E9;
}
.table tbody tr:not(:last-child) td {
  border-bottom: 1px solid #E6E6E6;
}
.table-cell-actions {
  border-left: none !important;
  width: 1%;
}
.table-actions {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background-color: #FFFFFF;
  border-radius: 4px;
  box-shadow: 0px 0px 37px 0px rgba(44, 44, 44, 0.1215686275);
}
.table-actions-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #3E3E3E;
  cursor: pointer;
}
.table-actions-item:hover {
  color: #9494AB;
}
.table-actions-item svg {
  min-width: 16px;
  min-height: 16px;
  width: 16px;
  height: 16px;
  display: block;
  color: #9494AB;
}
.table-actions button {
  border-radius: 6px;
  background-color: #FFFFFF;
  border: 1px solid #D7D7D7;
  border-radius: 4px;
}
.table-actions button:hover {
  background-color: #F2F6FF;
  border-color: transparent;
}
.table-actions button:hover svg {
  color: #5A81FA;
}
.table-actions button svg {
  min-width: 24px;
  min-height: 24px;
  display: block;
  color: #D9D9D9;
}
.table-actions-dropdown {
  position: absolute;
  background-color: #FFFFFF;
  top: 0;
  right: calc(100% + 6px);
  padding: 14px;
  box-shadow: 0px 0px 38px 0px rgba(44, 44, 44, 0.1019607843);
  border-radius: 8px;
  display: none;
  flex-direction: column;
  gap: 18px;
  z-index: 5;
}
.table-actions-dropdown.open {
  display: flex;
}
.table-stripped tr *::before {
  background-color: unset !important;
}
.table-stripped tr:nth-of-type(even) * {
  background-color: #F0F2F6;
}
.table-wrapper {
  padding-top: 10px;
  background-color: #FFFFFF;
  border-radius: 10px;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  modal
*/
[data-modal-target] {
  cursor: pointer;
}

.modal,
.modal .modal-overlay,
.modal .modal-content {
  z-index: 975;
}

.modal.modal-2z-level,
.modal.modal-2z-level .modal-overlay,
.modal.modal-2z-level .modal-content {
  z-index: 976;
}

.modal.modal-3z-level,
.modal.modal-3z-level .modal-overlay,
.modal.modal-3z-level .modal-content {
  z-index: 977;
}

.modal {
  position: fixed;
  display: none;
  align-items: center;
  justify-content: center;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: auto;
}
.modal-overlay {
  position: fixed;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  background-color: rgba(0, 0, 0, 0.1);
}
.modal.open {
  display: grid;
}
.modal-content {
  width: 540px;
  border-radius: 10px;
  background-color: #FFFFFF;
  box-shadow: 0px 0px 38px 0px rgba(137, 137, 137, 0.1411764706);
  padding: 32px;
  margin: 50px 0;
  display: flex;
  flex-direction: column;
  color: #707070;
  font-size: 18px;
  font-weight: 400;
  line-height: 28px;
}
.modal-sm .modal-content {
  width: 300px;
}
.modal-lg .modal-content {
  width: 800px;
}
.modal-xl .modal-content {
  width: 1000px;
}
.modal-scrollable .modal-content {
  max-height: 580px;
}
.modal-title {
  color: #3e3e3e;
  font-size: 24px;
  font-weight: 600;
  margin-bottom: 18px;
  line-height: 32px;
}
.modal-body {
  overflow: auto;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  tabs
*/
.tabs {
  display: grid;
  grid-template-columns: 1fr 5fr;
  gap: 20px;
}
.tabs-buttons {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.tabs-buttons button {
  border-radius: 10px;
  color: #3E3E3E;
  font-size: 14px;
  font-weight: 600;
  gap: 8px;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #FFFFFF;
  text-align: left;
}
.tabs-buttons button.active, .tabs-buttons button:hover {
  background-color: #EF8C73;
  color: #FFFFFF;
}
.tabs-buttons button.active svg, .tabs-buttons button:hover svg {
  color: #FFFFFF;
}
.tabs-buttons button.active svg {
  transform: rotate(45deg);
}
.tabs-buttons button svg {
  display: block;
  width: 24px;
  height: 24px;
  color: #CACACA;
}
.tabs.tabs-inline {
  display: block;
  position: relative;
}
.tabs.tabs-inline .tabs-buttons {
  flex-wrap: wrap;
  overflow-x: auto;
  flex-direction: row;
  gap: 0;
  border-radius: 10px 10px 0 0;
  background: #e6e7e8;
}
.tabs.tabs-inline .tabs-buttons::-webkit-scrollbar {
  display: none;
}
.tabs.tabs-inline .tabs-buttons button {
  display: inline-block;
  border-radius: 10px 10px 0 0;
  background: #e6e7e8;
  color: #3e3e3e;
  font-size: 14px;
  line-height: 20px;
  font-weight: 600;
  padding: 14px 24px;
  text-align: center;
  white-space: nowrap;
}
.tabs.tabs-inline .tabs-buttons button:hover {
  background: #dbdcdc;
}
.tabs.tabs-inline .tabs-buttons button.active {
  background: #ffffff;
}
.tabs.tabs-inline .tabs-buttons [disabled] {
  color: #969696;
}
.tabs.tabs-inline .tab-content {
  padding: 24px;
  border-radius: 0 0 10px 10px;
  background: #ffffff;
}
.tabs.tabs-inline .tabs-scroll-buttons-block {
  border-radius: 10px 10px 0 10px;
  box-shadow: 0 0 13px 0 rgba(0, 0, 0, 0.11);
  background: #ffffff;
  position: absolute;
  display: flex;
  right: 0;
  height: 100%;
}
.tabs.tabs-inline .tabs-scroll-buttons-block .tabs-scroll-button-left,
.tabs.tabs-inline .tabs-scroll-buttons-block .tabs-scroll-button-right {
  display: flex;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  card
*/
.card {
  background-color: #FFFFFF;
  color: #3E3E3E;
  border-radius: 10px;
  padding: 32px;
}
.card-title {
  font-size: 18px;
  font-weight: 600;
  line-height: 28px;
  margin-bottom: 24px;
}
.card-grey {
  padding: 24px;
  border-radius: 10px;
  background: #f8f8f8;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  badge
*/
.badge {
  width: fit-content;
  padding: 6px 11px;
  border-radius: 8px;
  font-size: 14px;
  font-weight: 500;
  color: #3E3E3E;
  background-color: #F0F2F6;
  white-space: nowrap;
}
.badge-success {
  background-color: #E7F8EB;
  color: #7ED396;
}
.badge-danger {
  background-color: #FFF4F1;
  color: #EF8C73;
}
.badge-primary {
  background-color: #5A81FA;
  color: #FFFFFF;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  horizontal line
*/
.horizontal-line {
  width: 100%;
  height: 1px;
  background-color: #D7D7D7;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  link
*/
.link {
  color: #5A81FA;
  cursor: pointer;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  gallery
*/
.gallery {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-bottom: 24px;
  gap: 10px;
}
.gallery img {
  aspect-ratio: 1/1;
  object-fit: cover;
}
.gallery-main-photo {
  position: relative;
  display: flex;
  background-color: #F0F2F6;
  border-radius: 10px;
  cursor: pointer;
  aspect-ratio: 2/3;
}
.gallery-main-photo img {
  object-fit: contain;
  margin: 0 auto;
}
.gallery-actions {
  position: absolute;
  bottom: 0;
  right: 0;
  border-radius: 4px;
  box-shadow: 0px 0px 37px 0px rgba(44, 44, 44, 0.1215686275);
}
.gallery-actions-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: #3E3E3E;
  cursor: pointer;
}
.gallery-actions-item:hover {
  color: #9494AB;
}
.gallery-actions-item svg {
  min-width: 16px;
  min-height: 16px;
  display: block;
  color: #9494AB;
}
.gallery-actions button {
  background-color: #FFFFFF;
  border: 1px solid #D7D7D7;
  border-radius: 4px;
}
.gallery-actions button:hover {
  background-color: #F2F6FF;
  border-color: transparent;
}
.gallery-actions button:hover svg {
  color: #5A81FA;
}
.gallery-actions button svg {
  min-width: 24px;
  min-height: 24px;
  display: block;
  color: #D9D9D9;
}
.gallery-actions-dropdown {
  position: absolute;
  background-color: #FFFFFF;
  bottom: 0;
  right: calc(100% + 6px);
  padding: 14px;
  box-shadow: 0px 0px 38px 0px rgba(44, 44, 44, 0.1019607843);
  border-radius: 8px;
  display: none;
  flex-direction: column;
  gap: 18px;
}
.gallery-actions-dropdown.open {
  display: flex;
}
.gallery img {
  cursor: pointer;
}
.gallery-modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.8);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}
.gallery-modal img {
  max-width: 90%;
  max-height: 90%;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  upload modal
*/
.upload-modal {
  width: 70vw;
}
.upload-modal-area {
  height: 140px;
  border-radius: 10px;
  border: 1px var(--color-neutral-400) dashed;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 12px;
}
.upload-modal-area-text {
  width: 200px;
  text-align: center;
}

/* * * * * * * * * * * * * * * * * * * * * * * * * * *
  pagination
*/
.pagination {
  position: fixed;
  width: auto;
  min-width: 100px;
  min-height: 1em;
  border-radius: 10px;
  box-shadow: 0 0 37px 5px rgba(0, 0, 0, 0.12);
  background: #ffffff;
  bottom: 12px;
  display: flex;
  gap: 8px;
  padding: 10px;
  z-index: 500;
}
.pagination * {
  color: #3e3e3e;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
}
.pagination-item {
  min-width: 24px;
  height: 24px;
  padding: 0 4px;
  border-radius: 4px;
  border: 1px solid transparent;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
}
.pagination-item svg {
  width: 10px;
}
.pagination-item:hover {
  box-sizing: border-box;
  border-color: #cacaca;
}
.pagination-item.active {
  color: #f5f5f5;
  background: #5a81fa;
  border-color: #5a81fa;
  cursor: default;
}
.pagination-item.active:hover {
  border-color: #cacaca;
}
.pagination-item[disabled], .pagination-item[disabled] *, .pagination-item.stub {
  border: none !important;
  cursor: default;
  color: #cacaca;
}

.layout * {
  --sb-track-color: #e2e2e2;
  --sb-thumb-color: #5a81fa;
  --sb-size: 2px;
}
.layout *::-webkit-scrollbar {
  width: var(--sb-size);
}
.layout *::-webkit-scrollbar-track {
  background: var(--sb-track-color);
  border-radius: 2px;
}
.layout *::-webkit-scrollbar-thumb {
  background: var(--sb-thumb-color);
  border-radius: 2px;
}

@supports not selector(::-webkit-scrollbar) {
  .layout * {
    scrollbar-color: var(--sb-thumb-color) var(--sb-track-color);
  }
}
/* Общие классы для всех модулей */
/* Загрузка */
.loading {
  width: 100%;
  height: 100vh;
  display: none;
  position: fixed;
  align-items: center;
  justify-content: center;
  left: 0;
  top: 0;
  z-index: 9999;
  background-color: rgb(from var(--color-light) r g b/75%);
}
.loading-content img {
  animation: loading 2s infinite linear;
}
.loading.active {
  display: flex;
}

/** Избегаем разрывов внутри блока при css columns */
.break-avoid {
  break-inside: avoid;
}

/* Нет интернета */
.offline {
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 9999;
  left: 0;
  top: 0;
  background-image: url("/img/errors/offline.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.offline.hidden {
  display: none;
}
.offline-title {
  font-size: 64px;
  line-height: 80px;
  color: #3E3E3E;
  font-weight: 700;
}
.offline-description {
  color: #ADADAD;
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 40px;
  line-height: 28px;
}
.offline-content {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 40px;
  height: 50%;
}

@keyframes loading {
  100% {
    transform: rotate(1turn);
  }
}

/*# sourceMappingURL=main.css.map */