/* Footer social icons: unified size and forced white color */
.footer__social-links img {
    width: 24px;
    height: 24px;
    filter: invert(1) brightness(100%);
    display: inline-block;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
body {
    margin: 0;
    padding: 0;
    font-family: "Avenir Next Cyr", serif;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.5;
    color: #333;
    background-color: #FFF;
}
.container {
    width: 1280px;
    max-width: 100%;
}

img {
    max-width: 100%;
}

/** Global */
.btn{
    display: inline-flex;
    height: 60px;
    padding: 0 40px;
    justify-content: center;
    align-items: center;
    gap: 4px;
    flex-shrink: 0;
    border-radius: 100px;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    text-decoration: none;
    cursor: pointer;
}
.btn.primary{
    background: #FF7101;
    border: none;
    color: #FFF;
}
.btn.primary:hover,
.btn.ghost:hover{
    background: #1E1E1E;
    color: #FFF;
}
.btn.primary:active,
.btn.ghost:active,
.btn.black:active{
    background: #0A0A0A;
    color: #A7A7A7;
}
.btn.ghost{
    border: 1px solid #1E1E1E;
    background: transparent;
    color: #1E1E1E;
}
.btn.black{
    background: #1E1E1E;
    color: #FFF;
}
.btn.black:hover{
    background: #FF7101;
    color: #FFF;
    border: none;
}
.btn.disabled{
    background: #A7A7A7 !important;
    color: #F5F5F5 !important;
    cursor: not-allowed;
}

/** Navigation */
.header{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
.header__inner{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 20px;
}
.header__logo{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 10px;
}
.header__logo a{
    text-decoration: none;
    cursor: pointer;
}
.header__logo img{
    width: 125px;
    height: auto;
    max-height: 60px;
    cursor: pointer;
}
.header__right{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.header__nav{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 15px;
}
.header__nav a{
    color: #1E1E1E;
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
    text-decoration: none;
}
.header__nav a:hover{
    color: #FF7101;
}
.header__nav a:active{
    color: #0A0A0A;
}

.header__burger{
    cursor: pointer;
}

/** Navigation end */

/** Hero */
.hero{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #D6DEFE;
}
.hero__inner{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
    gap: 20px;
    padding: 0 20px;
}
.hero__left{

}
.hero__left__tags{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 4px;
    margin-bottom: 12px;

}
.hero__tag{
    display: flex;
    padding: 8px 20px;
    justify-content: center;
    align-items: center;

    border-radius: 100px;
    border: 1px solid rgba(58, 59, 201, 0.20);
    background: #E2E8FE;

    color: #363636;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
}
.hero__title{
    color: #1E1E1E;
    font-size: 80px;
    font-style: normal;
    font-weight: 700;
    line-height: 118%;
    margin-bottom: 20px;
}
.hero__powered{
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
}
.hero__powered__label{
    color: #1E1E1E;
    font-size: 22px;
    font-style: normal;
    font-weight: 600;
    line-height: 130%;
    white-space: nowrap;
}
.hero__powered__logos{
    display: flex;
    align-items: center;
    gap: 16px;
}
.hero__powered__logo{
    height: 36px;
    width: auto;
}
.hero__text{
    color: #363636;
    font-size: 20px;
    font-style: normal;
    font-weight: 450;
    line-height: 30px;
    width: 413px;
    max-width: 100%;
    margin-bottom: 32px;
}
.hero__button{
    width: 305px;
    max-width: 100%;
    margin-bottom: 79px;
}
.hero__right{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
    height: 100%;
}
.hero__right__image{
    height: 600px;
    margin-left: -86px;
    max-width: unset;
}
/** Hero end */

/** footer */
.footer{
    background: #1E1E1E;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
}
.footer__left .footer__logo{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    flex-wrap: wrap;
}
.footer__logo img{
    height: 36px;
    width: auto;
    max-height: 36px;
    object-fit: contain;
}
.footer__inner{
    display: flex;
    flex-direction: column;
    gap: 32px;
    padding: 60px 0;
}
.footer__top{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 32px;
}

.footer__social{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 32px;
    flex-wrap: wrap;
}
.footer__social-group{
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.footer__social-title{
    color: #F5F5F5;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
    text-decoration: none;
}


.footer__bottom{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 32px;
}
.footer__contacts{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.footer__contacts a{
    color: #F5F5F5;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
    text-decoration: none;
}
.footer__contacts a:hover{
    color: #FF7101;
}
.footer__contacts a:active{
    color: #fff;
}
.footer__nav{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 32px;
}
.footer__nav a{
    color: #A7A7A7;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
    text-decoration: none;
}
.footer__nav a:hover{
    color: #FF7101;
}
.footer__nav a:active{
    color: #fff;
}
/** footer end */

/** Format */
.format{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 32px;
    padding: 60px 0;
    background: #F5F5F5;
}
.format__inner__title{
    color: #1E1E1E;
    font-size: 48px;
    font-style: normal;
    font-weight: 700;
    line-height: 56px;
}
.format__inner{
    display: flex;
    flex-direction: column;
    gap: 24px;
}
.format__content{
    display: flex;
    flex-direction: row;
    justify-content: center;
    /* align-items: center; */
    gap: 20px;
}
.format__item{
    display: flex;
    /* height: 315px; */
    padding: 32px;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    flex: 1 0 0;
    border-radius: 24px;
    background: #FFF;
}
.format__title{
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.format__text{
    color: #626262;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
}
/** Format end */

/** Rules */
.rules{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 20px;
    padding: 80px 0;
    background: #FFF;
}
.rules__inner{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.rules__top{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
}
.rules__top__left{
    display: flex;
    flex-direction: column;
    gap: 24px;
    width: 413px;
    max-width: 100%;
}
.rules__title{
    color: #1E1E1E;
    font-size: 48px;
    font-style: normal;
    font-weight: 700;
    line-height: 56px;
}
.rules__top__left .rules__text{
    color: #363636;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}
.rules__top__right{
    display: flex;
    flex-direction: row;
    gap: 0;
    margin-bottom: -21px;
}
.rules__top__right__text{
    color: #363636;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;

    display: flex;
    width: 413px;
    height: 136px;
    padding: 24px 29px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;

    border-radius: 24px;
    background: #F3F6FF;
}
.rules__bottom{
    display: flex;
    align-items: flex-start;
    align-content: flex-start;
    gap: 20px;
    flex-wrap: wrap;
}
.rules__item{
    display: flex;
    width: 413px;
    height: 380px;
    padding: 48px 32px;
    flex-direction: column;
    align-items: flex-start;
    gap: 25px;
    flex-shrink: 0;
    border-radius: 24px;
}
.rules__item:nth-child(1),
.rules__item:nth-child(6){
    background: #D6DEFE;
}
.rules__item:nth-child(2),
.rules__item:nth-child(7){
    background: #FAF090;
}
.rules__item:nth-child(3),
.rules__item:nth-child(8){
    background: #DDEBBA;
}
.rules__item:nth-child(4),
.rules__item:nth-child(9){
    background: #FBDDEF;
}
.rules__item:nth-child(5){
    background: url("/assets/img/rudes.jpg") no-repeat center center / cover;
}
.rules__item:nth-child(4),
.rules__item:nth-child(5),
.rules__item:nth-child(6){
    height: 420px;
}
.rules__text{
    color: #363636;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 140%;
}
.rules__counter{
    color: rgba(255, 255, 255, 0.50);
    font-size: 160px;
    font-style: normal;
    font-weight: 700;
    line-height: 71%;
}
/** Rules end */

/** prizes */
.prizes{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 60px;
    padding: 80px 0;
    background: #D6DEFE;
}
.prizes__title{
    color: #1E1E1E;
    font-size: 48px;
    font-style: normal;
    font-weight: 700;
    line-height: 56px;
    margin-bottom: 40px;
    text-align: center;
}
.prizes__content{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 32px;
}
.prizes__content__top_title,
.prizes__content__bottom_title{
    color: #363636;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    margin-bottom: 20px;
}
.prizes__content__top__item{
    width: 413px;
    height: 270px;
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.40) no-repeat;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    padding: 24px;
}
.prizes__content__top__item:nth-child(1){
    background-image: url("/assets/img/prize01.png");
    background-position-x: 90%;
}
.prizes__content__top__item:nth-child(2){
    flex-direction: row;
    width: 631px;
    display: flex;
    flex-direction: row;
    padding: 24px 12.688px 1px 56px;
    justify-content: flex-end;
    align-items: flex-start;
}
.prizes__content__top__item:nth-child(2) .prizes__content__top__item__text{
    width: 333px;
    padding: 20px 24px;
    border-radius: 24px;
    background: #FFF;
    text-align: left;

    color: #626262;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
}
.prizes__content__top__item:nth-child(2) .prizes__content__top__item__text a{
    color: #3A3BC9;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}
.prizes__content__top__items,
.prizes__content__bottom__items{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    align-self: stretch;
}
.prizes__content__top__item__text,
.prizes__content__bottom__item__text {
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 120%;
    text-align: center;
}
.prizes__content__bottom__item__text{
    padding-left: 24px;
    padding-right: 24px;
}
.prizes__content__top__item__text a,
.prizes__content__bottom__item__text a{
    color: #3A3BC9;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 120%;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}
.prizes__content__bottom__item{
    border-radius: 24px;
    background: rgba(255, 255, 255, 0.40);
    width: 304px;
    height: 304px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 24px;
}
/** prizes end */

/** About */
.about{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 60px;
    padding: 80px 0;
    background: #F5F5F5;
}
.about__inner{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 60px;
}
.about__inner__top{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
}
.about__inner__top__left{
    display: flex;
    width: 40%;
    max-width: 100%;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}
.about__inner__top__left__title{
    color: #1E1E1E;
    font-size: 48px;
    font-style: normal;
    font-weight: 700;
    line-height: 56px;
}
.about__inner__top__left__text{
    color: #626262;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
    width: 100%;
    max-width: 100%;
}
.about__inner__top__left__text a{
    color: #3A3BC9;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 28px;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}
.about__inner__top__right{
    width: 60%;
    max-width: 100%;
    overflow: hidden;
}
.about__inner__top__right img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 24px;
}
.about__inner__bottom{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    max-width: 100%;
}
.about__inner__bottom__title{
    color: #1E1E1E;
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
}
.about__inner__bottom__items{
    max-width: 100%;
    margin: 0 auto;
}
.about__inner__bottom__item{
}
.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}
.slick-track {
    position: relative;
    top: 0;
    left: 0;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    gap: 20px;
}
.about__inner__bottom__item__inner {
    display: flex;
    /*width: 413px;*/
    height: 400px;
    padding: 40px;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    border-radius: 24px;
    background: #FFF;
}

.about__inner__bottom__item__inner img {
    height: 36px;
    width: auto;
}
.about__inner__bottom__item__text{
    overflow: hidden;
    color: #626262;
    text-overflow: ellipsis;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;
}
.slick-arrow,
.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus{
    background: url('/assets/img/slick_button.svg') no-repeat center center;
    width: 48px;
    height: 48px;
    border: none;
    cursor: pointer;
}
.slick-next{
    transform: translateY(50%) scaleX(-1);
    margin-top: -48px;
    margin-right: -31px;
}
.slick-prev{
    left: -51px;
}
.slick-prev:before, .slick-next:before{
    display: none;
}
.slick-dots li.slick-active button:before{
    color: #A7A7A7;
}
.slick-dots li button:before{
    color: rgba(167, 167, 167, 0.30);
    font-size: 8px;
}
.slick-dots {
    bottom: -39px;
}
/** About end */

/** FAQ */
.faq{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 60px;
    padding: 80px 0;
    background: #F5F5F5;
}
.faq__inner{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}
.faq__title{
    color: #1E1E1E;
    font-size: 48px;
    font-style: normal;
    font-weight: 700;
    line-height: 56px;
}
.faq__content{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    width: 100%;
}
.faq__item{
    border-radius: 24px;
    background: #FFF;
    width: 100%;
    display: flex;
    padding: 0 32px;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 16px;
}
.faq__answer{
    color: #626262;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;
    padding-bottom: 24px;
}
.faq__question{
    color: #363636;
    font-size: 20px;
    font-style: normal;
    font-weight: 450;
    line-height: 30px;
    padding: 16px 0;
    width: 100%;
    cursor: pointer;
    display: flex;
    align-items: center;
}
.faq__question span:last-child{
    width: 100%;
}
.faq__question.ui-state-active:after{
    content: url('/assets/img/arrow_up.svg');
    float: right;
    width: 24px;
    height: 24px;
}
.faq__question:after{
    content: url('/assets/img/arrow_down.svg');
    float: right;
    width: 24px;
    height: 24px;
}
.faq__item:has(> .faq__question.ui-state-active){
    /* background: transparent; */
}
/** FAQ end */

/** Sponsors */
.sponsors{
    display: flex;
    justify-content: center;
    align-items: center;
    background: #fff;
    padding: 23px 0;
    width: 100%;
}
.sponsors__logos{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 20px;
}

.sponsors__logos__item{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    max-height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.sponsors__logos__item img{
    height: 80px;
    max-width: 100%;
}
.sponsors__logos__item__text{
    color: #626262;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
    text-align: center;
}


/** Sponsors end */

/** Register */
.register{
    display: flex;
    padding: 80px 0;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 64px;
}
.register .container{
    display: flex;
    flex-direction: column;
    gap: 64px;
}
.register__bottom{
    color: #1E1E1E;
    font-size: 20px;
    font-style: normal;
    font-weight: 450;
    line-height: 30px;
}
.register__bottom a{
    color: #1E1E1E;
    font-size: 20px;
    font-style: normal;
    font-weight: 450;
    line-height: 30px;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
    white-space: nowrap;
}
.register__inner{
    border-radius: 24px;
    background: #D6DEFE url(/assets/img/form_girl.png) no-repeat right bottom;
    display: flex;
    padding: 60px 108px;
    justify-content: flex-start;
    align-items: flex-start;
    flex-direction: column;
    gap: 32px;
}
.student__auth .register__inner{
    background: #D6DEFE;
    justify-content: center;
    align-items: center;
}
.register__title{
    color: #1E1E1E;
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    line-height: 120%;
}
.register__content{
    width: 522px;
    max-width: 100%;
}
.register__content .iti{
    width: 100%;
}


.register__form{
    display: flex;
    flex-direction: column;
    gap: 24px;

}
.register__form .form-group{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
    gap: 4px;
}
.register__form label{
    color: #363636;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
}
.register__form input{
    border-radius: 40px;
    border: 1px solid #FFF;
    background: #FFF;
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;
    width: 100%;
    height: 48px;

    display: flex;
    padding: 8px 20px;
    align-items: center;
    gap: 8px;
    align-self: stretch;
}

.register__form input:hover{
    border-radius: 40px;
    border: 1px solid #7C7C7C;
    background: #F3F6FF;
}

.register__form input:focus{
    border-radius: 40px;
    border: 1px solid #6B3EFF;
    background: #FFF;
}

.register__form input::placeholder{
    color: #A7A7A7;
}

.register__form select{
    border-radius: 40px;
    border: 1px solid #FFF;
    background: #FFF;
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;
    width: 100%;
    height: 48px;

    display: flex;
    padding: 8px 20px;
    align-items: center;
    gap: 8px;
    align-self: stretch;
    
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23626262' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-size: 16px;
    padding-right: 50px;
}

.register__form select:hover{
    border-radius: 40px;
    border: 1px solid #7C7C7C;
    background: #F3F6FF;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23626262' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-size: 16px;
}

.register__form select:focus{
    border-radius: 40px;
    border: 1px solid #6B3EFF;
    background: #FFF;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23626262' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6,9 12,15 18,9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 20px center;
    background-size: 16px;
    outline: none;
}

.register__form select option{
    padding: 8px 20px;
    color: #1E1E1E;
    font-size: 18px;
    font-weight: 450;
}

.register__form .form-group.checkbox label{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 8px;
}
.register__form .form-group.checkbox input{
    width: 18px;
    height: 18px;
    border-radius: 4px;
    border: 1px solid #A7A7A7;
    background: #FFF;
    cursor: pointer;
}
.register__form .form-group.checkbox input:checked{
    background: #626262;
    border-color: #626262;
    accent-color: #626262;
}
.register__form .form-group.checkbox input:hover{
    border-color: #626262;
}
.register__form .form-group.checkbox a{
    color: inherit;
}



.student__register{
    padding: 0 20px 80px;
}

.student__register .register__inner{
    background: #D6DEFE url(/assets/img/form_girl2.png) no-repeat right bottom;
}

.parents__register .register__inner{
    background: #D6DEFE url(/assets/img/form_girl3.png) no-repeat right bottom;
}

.static__data{
    display: flex;
    flex-direction: row;
    gap: 8px;
}
.static__data:first-child>div{
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 4px;
}
.static__data__region .data_label,
.static__data__locality .data_label,
.static__data .static__data__school .data_label,
.static__data .static__data__class .data_label{
    color: #363636;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
}
.static__data__region .data_data,
.static__data__locality .data_data{
    border-radius: 8px;
    border: 1px solid #7C7C7C;
    background: #FFF;
    display: flex;
    height: 48px;
    padding: 8px 20px;
    align-items: center;
    align-self: stretch;
}


.static__data .static__data__school{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}


.static__data .static__data__school {
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
}

.static__data .static__data__school .data_data {
    display: flex;
    min-height: 48px;
    padding: 8px 20px;
    align-items: center;
    align-self: stretch;
    border-radius: 8px;
    border: 1px solid #7C7C7C;
    background: #FFF;
}

.static__data .static__data__class{
    display: flex;
    width: 88px;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}

.static__data .static__data__class .data_data{
    display: flex;
    height: 48px;
    padding: 8px 20px;
    align-items: center;
    align-self: stretch;
    border-radius: 8px;
    border: 1px solid #7C7C7C;
    background: #FFF;
}


/** Register end */


.modal{
    display: none;
    position: fixed;
    z-index: 1000;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.50);

}
.modal__content{
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
}
.modal__inner{
    display: flex;
    flex-direction: column;
    gap: 32px;
    padding: 60px 70px;
    border-radius: 24px;
    background: #FFF;
    width: 440px;
    max-width: 100%;
    position: relative;
}
.modal__title{
    color: #1E1E1E;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
}
.modal__text{
    color: #363636;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;
}
.modal__close{
    position: absolute;
    right: 4px;
    top: 4px;
    cursor: pointer;
}




#menu_modal .modal__inner{
    padding: 40px;
    width: 320px;
}

.menu_modal__content__title{
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    border-bottom: 1px solid #A7A7A7;
    padding-bottom: 8px;
    margin-bottom: 16px;
}

.menu_modal__nav{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 16px;
    align-self: stretch;
}

.menu_modal__nav a{
    display: flex;
    padding: 10px;
    justify-content: center;
    align-items: center;
    gap: 4px;

    color: #1E1E1E;
    text-align: center;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
    text-decoration: none;
}

.menu_modal__buttons{
    margin-top: 32px;
    margin-bottom: 32px;
}

.menu_modal__contacts{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 16px;
}
.menu_modal__contacts a{
    color: #626262;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
    text-decoration: none;
    display: flex;
    gap: 8px;
}
.menu_modal__contacts__phone:before{
    content: url('/assets/img/phone_black.svg');
    width: 24px;
    height: 24px;
}

.menu_modal__contacts__email:before{
    content: url('/assets/img/email_black.svg');
    width: 24px;
    height: 24px;
}

.menu_modal__social{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 24px;
    margin-top: 16px;
}


.region-map svg{
    max-width: 100%;
}
.region-map__fill{
    fill: #A7A7A7;
}
.region-map__fill:hover,
.region-map__region .active .region-map__fill{
    fill: #FF7101;
}
.region-map__region text{
    /*display: none;*/
}
.teacher_registration_continue{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 20px;
    padding: 60px 0;
    background: #F5F5F5;

}
.teacher_registration_continue__left{
    width: 50%;
    max-width: 100%;
}
.teacher_registration_continue__right{
    width: 50%;
    max-width: 100%;
}
.map_wrapper.mobile{
    display: none;
}
.teacher_registration_continue__selected_data{
    display: flex;
    flex-direction: column;
    gap: 32px;
}
.teacher_registration_continue__selected_data .selected_data_locality,
.teacher_registration_continue__selected_data .selected_data_school,
.teacher_registration_continue__selected_data .selected_data_classes{
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.teacher_registration_continue__selected_data .selected_data_locality__title,
.teacher_registration_continue__selected_data .selected_data_school__title,
.teacher_registration_continue__selected_data .selected_data_classes__title{
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.teacher_registration_continue__selected_data  .selected_data_locality__value,
.teacher_registration_continue__selected_data  .selected_data_school__value,
.teacher_registration_continue__selected_data  .selected_data_classes__value{
    color: #363636;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;
}
.teacher_registration_continue__inner{
    display: flex;
    flex-direction: row;
    gap: 20px;
    justify-content: space-between;
}
.teacher_registration_continue__title{
    color: #1E1E1E;
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    margin-bottom: 20px;
}
.teacher_registration_continue__subtitle{
    color: #626262;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;
    margin-bottom: 40px;
}
.teacher_registration_continue__instruction{
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 40px;
}
.teacher_registration_continue__instruction__item{
    color: #363636;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;

    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
}
.teacher_registration_continue__instruction__item span{
    color: #FFF;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;

    border-radius: 100px;
    background: #626262;

    display: flex;
    width: 32px;
    height: 32px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 10px;
    aspect-ratio: 1/1;
}
.teacher_registration_continue__instruction__item sup{
    color: #FF3B30;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;
    margin-left: -12px;
}
.teacher_registration_continue__selectors{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
    align-self: stretch;
}
.teacher_registration_continue__selectors__item{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    align-self: stretch;
    width: 630px;
    max-width: 100%
}
.teacher_registration_continue__selectors__item label{
    color: #1E1E1E;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
}
.teacher_registration_continue__selectors__item select,
.select2-selection--single
{
    border-radius: 40px !important;
    border: 1px solid #A7A7A7 !important;
    background: #FFF;

    display: flex !important;
    height: 48px !important;
    padding: 8px 20px;
    justify-content: space-between;
    align-items: center;
    gap: 8px;
    align-self: stretch;

    -moz-appearance:none; /* Firefox */
    -webkit-appearance:none; /* Safari and Chrome */
    appearance:none;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 10px;
    right: 12px;
    /* background: url('/assets/img/arrow-icon.svg') no-repeat center center; */
    width: 24px;
    height: 24px;
}
.teacher_registration_continue__action{
    margin-top: 40px;
    margin-bottom: 40px;
}
.teacher_registration_continue__classes_table{
    display: flex;
    width: 100%;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    max-width: 100%;
}
.classes_table__table{
    overflow-x: scroll;
    max-width: 100%;
}
.classes_table__table table{
    border-collapse: collapse;
}
.classes_table__table td{
    border: 1px solid #A7A7A7;
    height: 56px;
    padding: 10px 32px;
    background: #ffffff;
}
.classes_table__table td span{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 16px;
}
.classes_table__table td span label{
    white-space: nowrap;
}
#teacher_registration_finish_modal ul li{
    list-style: none;
}
#teacher_registration_finish_modal ul li .btn{
    font-size: 13px;
    height: 31px;
    width: 94px;
    margin-bottom: 5px;
    margin-top: 5px;
}
#teacher_registration_finish_modal .links_for_students{
    color: #626262;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
}
#teacher_registration_SetStudentsToClass_modal #students_count{
    border: 1px solid #6B3EFF;
    background: #FFF;
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;
    width: 100%;
    height: 48px;
    display: flex;
    padding: 8px 20px;
    align-items: center;
    gap: 8px;
    align-self: stretch;
    border-radius: 40px;

}








/** Test */
body.student.dashboard .header,
/* body.student.dashboard .footer, */
body.teacher.dashboard .header,
body.teacher.dashboard .footer,
body.teacher.dashboard2 .header,
body.teacher.dashboard2 .footer,
body.student.start-test-result .header,
body.student.start-test-result .footer,
body.student.start-test .header,
body.student.start-test .footer,
body.student.finish-test-result .header,
body.student.finish-test-result .footer,
body.student.finish-test .header,
body.student.finish-test .footer
{
    display: none;
}
.dashboard{
    background: #D6DEFE;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 100vh;
    width: 100%;
}
body.student.dashboard .footer{
    margin-top: 50px;
}
.test{
    background: #D6DEFE;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-height: 100vh;
    width: 100%;
    padding-bottom: 80px;
}

.test__header, .dashboard__header {
    background: rgba(255, 255, 255, 0.30);
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.test__header__logo, .dashboard__header__logo{
    width: 80px;
    height: 38px;
    display: contents;
}
.test__header__logo img, .dashboard__header__logo img{
    width: 125px;
    height: auto;
    max-height: 60px;
    object-fit: contain;
}
.test__header__logo a, .dashboard__header__logo a{
    text-decoration: none;
}

.test__header__inner, .dashboard__header__inner{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 20px;
    padding: 16px 20px 10px;
}

.test__header__title, .dashboard__header__inner{
    color: #1E1E1E;
    font-size: 24px;
    font-style: normal;
    font-weight: 450;
    line-height: 120%;
}

.test__inner{
    margin-top: 48px;
    padding: 0 20px;
}

.test .question{
    border-radius: 24px;
    background: #FFF;
    display: flex;
    padding: 80px 110px;
    flex-direction: column;
    align-items: center;
    gap: 64px;
    align-self: stretch;

    color: #363636;
    font-size: 24px;
    font-style: normal;
    font-weight: 450;
    line-height: 140%;
}

.answers{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 20px;
    width: 100%;
    flex-wrap: wrap;
}

.answers .answer {
    width: 47%;
}

.answers .answer input[type="radio"] {
    visibility: hidden;
    display: none;
}
.answers .answer input[type="radio"]:checked + label>span {
    background: url("/assets/img/checked.svg") no-repeat center center;
}

.answers .answer label{
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: left;
    align-items: center;

}
.answers .answer label span{
    width: 24px;
    height: 24px;
    background: url("/assets/img/unchecked.svg") no-repeat center center;
    margin: 8px;
}
.answers .answer label b{
    margin-right: 10px;
}

.test__top__row{
    color: #1E1E1E;
    text-align: center;
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    line-height: 120%;
}
.test__bottom__row{
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
}


.test__bottom__row__left{
    color: #363636;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
}
.test__bottom__row__right{
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 36px;
}
.test__bottom__row__right img{
    margin-bottom: -20px;
}

.counter{
    color: #363636;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
}

.test__actions{
    margin-top: 40px;
    margin-bottom: 40px;
    display: flex;
    flex-direction: row;
    gap: 20px;
    justify-content: center;
}




.test__inner .level{
    display: flex;
    justify-content: center;
    margin-bottom: 80px;
}

.level__progress__bar{
    width: 413px;
    height: 16px;
    flex-shrink: 0;
    border-radius: 300px;
    background: linear-gradient(90deg, #EF4B21 0%, #F9DA09 47.9%, #22C31E 100%);
    display: flex;
    flex-direction: row;
    padding: 0 50px;
}

.level__progress__bar svg{
    margin-top: 16px;
}
.level__progress__bar.low{
    justify-content: flex-start;
}
.level__progress__bar.mid{
    justify-content: center;
}
.level__progress__bar.top{
    justify-content: flex-end;
}

.test__inner__text{
    display: flex;
    padding: 40px 110px;
    flex-direction: column;
    align-items: flex-start;
    gap: 32px;
    align-self: stretch;
    border-radius: 24px;
    background: #FFF;
}

.test__inner__title{
    color: #363636;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
    text-align: center;
    width: 100%;
}

.test__inner__text__mid{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 36px;
    width: 100%;
    flex-wrap: wrap;
}

.test__inner__text__mid__right{
    color: #363636;
    font-size: 20px;
    font-style: normal;
    font-weight: 450;
    line-height: 30px;
    width: 593px;
    max-width: 100%;
}

.test__inner__text__problem_themes{
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: flex-start;
    width: 100%;
}

.test__inner__text__problem_themes__title{
    color: #363636;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}

.test__inner__text__problem_themes ul{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    align-self: stretch;
}
.test__inner__text__problem_themes li{
    list-style: none;
    display: flex;
    flex-direction: row;
    gap: 8px;
    align-items: center;

    color: #363636;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;
}

.test__inner__text__problem_themes li::before{
    content: '';
    min-width: 12px;
    width: 12px;
    height: 12px;
    background: #D6DEFE;
    display: block;
    border-radius: 100%;
}

.test__inner__text__problem_themes li:nth-child(1)::before,
.test__inner__text__problem_themes li:nth-child(5)::before,
.test__inner__text__problem_themes li:nth-child(9)::before,
.test__inner__text__problem_themes li:nth-child(13)::before{
    background: #D6DEFE;
}
.test__inner__text__problem_themes li:nth-child(2)::before,
.test__inner__text__problem_themes li:nth-child(6)::before,
.test__inner__text__problem_themes li:nth-child(10)::before,
.test__inner__text__problem_themes li:nth-child(14)::before{
    background: #FBDDEF;
}
.test__inner__text__problem_themes li:nth-child(3)::before,
.test__inner__text__problem_themes li:nth-child(7)::before,
.test__inner__text__problem_themes li:nth-child(11)::before,
.test__inner__text__problem_themes li:nth-child(15)::before{
    background: #DDEBBA;
}
.test__inner__text__problem_themes li:nth-child(4)::before,
.test__inner__text__problem_themes li:nth-child(8)::before,
.test__inner__text__problem_themes li:nth-child(12)::before,
.test__inner__text__problem_themes li:nth-child(16)::before{
    background: #FAF090;
}
















.sbl-dot-slide {
    margin: 0 auto;
    height: 48px;
    width: 48px;
    color: #8349C1;
    display: none;
    position: relative;
    border: 2px solid;
    animation: rotate-dot-panel 4s 0.5s cubic-bezier(0.25, 0.46, 0.61, 0.4) infinite; }
.sbl-dot-slide::before, .sbl-dot-slide::after {
    content: '';
    position: absolute;
    color: inherit; }
.sbl-dot-slide::before {
    height: 40%;
    width: 40%;
    border: inherit;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    margin: auto; }
.sbl-dot-slide::after {
    height: 0;
    width: 0;
    border: 5px solid;
    border-radius: 50%;
    bottom: 0px;
    left: 0;
    margin: 1px;
    animation: move-dot 4s ease infinite; }
@keyframes rotate-dot-panel {
    0% {
        transform: rotate(0); }
    25% {
        transform: rotate(90deg); }
    50% {
        transform: rotate(180deg); }
    75% {
        transform: rotate(270deg); }
    100% {
        transform: rotate(360deg); } }
@keyframes move-dot {
    0%, 100% {
        left: 0;
        top: 0; }
    25% {
        left: 0;
        top: 75%; }
    50% {
        left: 75%;
        top: 75%; }
    75% {
        left: 75%;
        top: 0%; } }


.data-policy__inner{
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: flex-start;
    gap: 8px;
    padding: 20px 0;
    background: #F5F5F5;
    min-height: 73vh;
}

.data-policy__inner ul{
    margin-left: 30px
}

.data-policy__inner .no_dots{
    list-style: none;
    margin-left: 15px;
}
.data-policy__inner p{
    color: #626262;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
    margin-top: 10px
}





#dashboard .container{
    width: 954px;
    max-width: 100%;
}




.dashboard__content{
    margin-top: 36px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.dashboard__content__top__title{
    color: #1E1E1E;
    font-size: 30px;
    font-style: normal;
    font-weight: 700;
    line-height: 120%;
}




.dashboard__content__middle{
    display: flex;
    flex-direction: row;
    justify-content: center;
    /*align-items: center;*/
    gap: 20px;
    width: 100%;
    flex-wrap: wrap;
}
.dashboard__content__middle__left{
    border-radius: 24px;
    background: #FFF;
    width: 516px;
    /* height: 302px; */
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-end;
}
.dashboard__content__middle__left__left{
    display: flex;
    width: 364px;
    height: 259px;
    padding: 24px;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    flex-shrink: 0;
}
.dashboard__content__middle__left__title{
    color: #1E1E1E;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
}
.dashboard__content__middle__left__text{
    color: #797979;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}
.dashboard__content__middle__left__actions,
.dashboard__content__middle__left__actions a{
    width: 100%;
}
.dashboard__content__middle__left__right{
    padding-right: 6px;
}



.dashboard__content__middle__right{
  display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
}
.dashboard__content__middle__right__left{
    display: flex;
    flex-direction: column;
    gap: 20px;
}
.dashboard__content__place,
.dashboard__content__points{
    display: flex;
    width: 194px;
    padding: 33px 24px;
    justify-content: flex-start;
    align-items: center;
    border-radius: 24px;
    background: #FFF;
    gap: 16px;
}

.dashboard__content__points__text,
.dashboard__content__place__text{
    color: #626262;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

.dashboard__content__points__text span,
.dashboard__content__place__text span{
    color: #1E1E1E;
    font-size: 28px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
}








.dashboard__content__middle__right__right{
    width: 193px;
    height: 263px;
    flex-shrink: 0;
    border-radius: 24px;
    background: #FFF;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
}
.legend{
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.legend .legend__item{
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    gap: 8px;
}
.legend .legend__item__color{
    width: 12px;
    height: 12px;
    aspect-ratio: 1/1;
    border-radius: 100%;
}
.legend .legend__item__text{
    color: #363636;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: -0.56px;
}




.dashboard__content__bottom.mobile{
    display: none;
}
.dashboard__content__bottom__rating{
    display: flex;
    width: 100%;
    padding-bottom: 16px;
    flex-direction: column;
    align-items: flex-start;
    border-radius: 24px;
    border: 0 solid #D1D1D1;
    background: #FFF;
}


.dashboard__content__bottom__title{
    display: flex;
    height: 72px;
    padding: 0 20px;
    align-items: center;
    align-self: stretch;

    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}

.dashboard__content__bottom__table{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
}

.dashboard__content__bottom__table__header{
    display: flex;
    height: 36px;
    padding: 0 20px;
    align-items: center;
    align-self: stretch;

    background: #F3F6FF;
}

.dashboard__content__bottom__table__body{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
}

.dashboard__content__bottom__table__body__item{
    display: flex;
    height: 56px;
    padding: 0 20px;
    align-items: center;
    align-self: stretch;
    background: #FFF;
    border-bottom: 1px solid #D1D1D1;
    color: #363636;
}
.dashboard__content__bottom__table__body__item.current_user{
    background: #FF7101;
    color: #fff;
    font-weight: bold;
}

.dashboard__content__bottom__table__body__item:last-child{
    border-bottom: none;
}

.dashboard__content__bottom__table__header__item{
    color: #1E1E1E;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%;
    padding: 10px 16px;
}

.dashboard__content__bottom__table__body__item__place{
    /* color: #1E1E1E; */
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}

.dashboard__content__bottom__table__body__item__name{
    /* color: #363636; */
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}

.dashboard__content__bottom__table__body__item__city{
    /* color: #626262; */
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%;
}
.dashboard__content__bottom__table__body__item__points{
    /* color: #1E1E1E; */
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}





.dashboard__content__bottom__table__header .dashboard__content__bottom__table__header__item:nth-child(1),
.dashboard__content__bottom__table__body__item__place{
    width: 83px;
    padding: 10px 16px;
}

.dashboard__content__bottom__table__header .dashboard__content__bottom__table__header__item:nth-child(2),
.dashboard__content__bottom__table__body__item__name{
    width: 304px;
    padding: 10px 16px;
}

.dashboard__content__bottom__table__header .dashboard__content__bottom__table__header__item:nth-child(3),
.dashboard__content__bottom__table__header .dashboard__content__bottom__table__header__item:nth-child(4),
.dashboard__content__bottom__table__header .dashboard__content__bottom__table__header__item:nth-child(5),
.dashboard__content__bottom__table__header .dashboard__content__bottom__table__header__item:nth-child(6),
.dashboard__content__bottom__table__body__item__points{
    width: 150px;
    padding: 10px 16px;
}

/* .dashboard__content__bottom__table__header .dashboard__content__bottom__table__header__item:nth-child(3),
.dashboard__content__bottom__table__body__item__points{
    width: 371px;
    padding: 10px 16px;
} */


/* .dashboard__content__bottom__table__body__item__points{
    width: 81px;
    padding: 10px 16px;
} */





/*.dashboard.teacher*/
.dashboard.teacher .top10__table{
    border-radius: 24px;
    border: 0 solid #D1D1D1;
    background: #FFF;
    display: flex;
    width: 408px;
    padding-bottom: 12px;
    flex-direction: column;
    align-items: flex-start;
    flex-shrink: 0;
}
.dashboard.teacher .top10__table__header{
    display: flex;
    height: 56px;
    padding: 10px 20px 0 20px;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;

    border-radius: 24px 24px 0 0;
    background: #FEF5FB;
}
.dashboard.teacher .top10__table__header__item{
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.dashboard.teacher .top10__table__header__item:last-child{
    color: #363636;
    text-align: right;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%
}
.dashboard.teacher .top10__table__body{
    width: 100%;
}
.dashboard.teacher .top10__table__body__item{
    display: flex;
    height: 56px;
    padding: 0 20px;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    border-bottom: 1px solid #D1D1D1;
    width: 100%;
}
.dashboard.teacher .top10__table__body__item:last-child{
    border-bottom: none;
}
.dashboard.teacher .top10__table__body__item__place{
    color: #626262;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    width: 40px;
}
.dashboard.teacher .top10__table__body__item__school{
    color: #626262;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: -0.56px;
    width: 260px;

    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.dashboard.teacher .top10__table__body__item__points{
    color: #626262;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}
.dashboard.teacher .dashboard__content__middle__left{
    display: flex;
    width: 516px;
    height: auto;
    justify-content: space-between;
    align-items: flex-end;
    align-content: flex-end;
    row-gap: 20px;
    flex-shrink: 0;
    flex-wrap: wrap;
    background: unset;
}
.dashboard.teacher .dashboard__content__middle__left__top{
    display: flex;
    flex-direction: row;
    gap: 20px;
}
.dashboard.teacher .school_info{
    display: flex;
    width: 302px;
    padding: 34px 36px 33px 36px;
    justify-content: flex-start;
    align-items: center;
    flex-shrink: 0;
    border-radius: 24px;
    background: #FFF;
    flex-direction: column;
    gap: 23px;
}
.dashboard.teacher .dashboard__content__middle__left__top__right{
    display: flex;
    width: 194px;
    padding: 18px 15px 25px 15px;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
    border-radius: 24px;
    background: #FFF;
}
.dashboard.teacher .school_place span{
    font-size: 28px;
}
.dashboard.teacher .school_place{
    color: #1E1E1E;
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
}
.dashboard.teacher .school_place__text{
    color: #626262;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%; /* 24px */
}
.dashboard.teacher .school_info .school_name{
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 140%;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;



}
.dashboard.teacher .school_info .school_classes{
    display: flex;
    align-items: center;
    gap: 8px;
    align-self: stretch;
}
.dashboard.teacher .school_info .school_classes span{
    color: #363636;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.dashboard.teacher .school_info .school_classes select{
    border-radius: 8px;
    border: 1px solid #D1D1D1;
    background: #FFF;
    display: flex;
    width: 171px;
    padding: 4px 19px;
    justify-content: space-between;
    align-items: center;
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.dashboard.teacher .dashboard__content__middle__left__bottom{
    display: flex;
    flex-direction: row;
    gap: 20px;

}
.dashboard.teacher .dashboard__content__middle__left__bottom__left{
    display: flex;
    width: 194px;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    flex-shrink: 0;
}
.dashboard.teacher .sidebar__item{
    display: flex;
    padding: 32px 15px 31px 15px;
    justify-content: flex-start;
    align-items: center;
    flex: 1 0 0;
    align-self: stretch;
    border-radius: 24px;
    background: #F5F9EB;
    flex-direction: column;
}
.dashboard.teacher .sidebar__item:nth-child(1){
    background: #FFFCDF;
}
.dashboard.teacher .sidebar__item:nth-child(2){
    background: #F3F6FF;
}
.dashboard.teacher .sidebar__item__value{
    color: #1E1E1E;
    font-size: 28px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
    width: 100%;
    padding: 0 10px;
}
.dashboard.teacher .sidebar__item__value span {
    color: #999;
}
.dashboard.teacher .sidebar__item__title{
    color: #626262;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
    width: 100%;
    padding: 0 10px;
}
.dashboard.teacher .dashboard__content__middle__left__bottom__right{
    width: 302px;
    height: 403px;
    flex-shrink: 0;
    border-radius: 24px;
    background: #FFF;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    padding: 24px 28px;
}
.dashboard.teacher .dashboard__content__middle__left__bottom__right__title{
    width: 100%;
}
.dashboard.teacher .dashboard__content__middle__left__bottom__right__title div:first-child{
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.dashboard.teacher .dashboard__content__middle__left__bottom__right__title div:last-child{
    color: #626262;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
}
.dashboard.teacher .legend{
    width: 100%;
}
.dashboard.teacher .dashboard__content__bottom__table__header,
.dashboard.teacher .dashboard__content__bottom__table__body__item{
    justify-content: space-between;
}
.dashboard.teacher .dashboard__content__bottom__table__header__item:nth-child(1),
.dashboard.teacher .dashboard__content__bottom__table__body__item__name{
    width: 352px;
}
.dashboard.teacher .dashboard__content__bottom__table__header__item:nth-child(2),
.dashboard.teacher .dashboard__content__bottom__table__body__item__progress{
    width: 168px;
    padding: 10px 16px;
}
.dashboard.teacher .dashboard__content__bottom__table__header__item:nth-child(3),
.dashboard.teacher .dashboard__content__bottom__table__body__item__place{
    width: 150px;
    text-align: center;
}
.dashboard.teacher .dashboard__content__bottom__table__header__item:nth-child(4),
.dashboard.teacher .dashboard__content__bottom__table__body__item__points{
    width: 160px;
    text-align: right;
}
.dashboard.teacher .dashboard__content__bottom__table__body__item__points{

}
.dashboard.teacher .progress-bar {
    width: 100%;
    background-color: #D6DEFE;
    border-radius: 8px;
    overflow: hidden;
    height: 8px;
}
.dashboard.teacher .progress-bar__fill {
    height: 100%;
    background-color: #3A3BC9;
    text-align: center;
    line-height: 8px; /* Висота прогресбару */
    color: white;
    border-radius: 8px 0 0 8px;
}
.dashboard.teacher .dashboard__content__bottom__table__body__item__progress span{
    color: #363636;
    text-align: right;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px; /* 142.857% */
    letter-spacing: -0.56px;
}
.dashboard.teacher .dashboard__content__bottom__table__body__item__place{
    color: #1E1E1E;
    text-align: right;
    font-size: 16px;
    font-style: normal;
    font-weight: 700;
    line-height: 130%; /* 20.8px */
}
.dashboard.teacher .dashboard__content__bottom__table__body__item__points{
    color: #626262;
    font-size: 18px;
    font-style: normal;
    font-weight: 450;
    line-height: 28px;
}
.dashboard.teacher .dashboard__content__bottom__table__body__item__points span{
    color: #1E1E1E;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
}
.dashboard.teacher .dashboard__content__bottom__table__body__item__name{
    color: #626262;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%; /* 24px */
}

.dashboard.teacher .dashboard__content__bottom__title{
    justify-content: space-between;
}

.dashboard.teacher .dashboard__content__bottom__title .sort{
    color: #363636;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: -0.56px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
}
.dashboard.teacher .dashboard__content__bottom__title .sort select{
    display: flex;
    width: 264px;
    padding: 4px 12px;
    justify-content: space-between;
    align-items: center;
    border-radius: 8px;
    border: 1px solid #D1D1D1;
    background: #FFF;
    color: #1E1E1E;
    font-size: 16px;
    font-style: normal;
    font-weight: 450;
    line-height: 150%;
}

/* Header section for subject cards */
.dashboard__content__header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 20px;
    margin-top: 60px;
    margin-bottom: 40px;
}

.dashboard__content__header__logo {
    display: flex;
    align-items: center;
    justify-content: center;
}

.header-logo {
    height: 60px;
    width: auto;
}


/* Subject Cards */
.subject-cards {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    gap: 10px;
    margin-top: 0;
    flex-wrap: wrap;
}

.subject-card {
    display: flex;
    width: 49%;
    max-width: 100%;
    min-height: 316px;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    flex-shrink: 0;
    border-radius: 24px;
    background: #FFF;
    padding: 32px;
}

.subject-card__header {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 12px;
}

.subject-card__icon {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.subject-card__title {
    color: #1E1E1E;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 30px;
}

.subject-card__description {
    color: #797979;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 28px;
}

.subject-card__actions {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
    min-height: 132px;
    justify-content: center;
}

.btn.orange {
    background: #FF7101;
    border: none;
    color: #FFF;
}

.btn.orange:hover {
    background: #E66300;
    color: #FFF;
}

.btn.outline-orange {
    border: 1px solid #FF7101;
    background: transparent;
    color: #FF7101;
}

.btn.outline-orange:hover {
    background: #FF7101;
    color: #FFF;
}

.btn.purple {
    background: #8A2BE2;
    border: none;
    color: #FFF;
}

.btn.purple:hover {
    background: #7B1FA2;
    color: #FFF;
}

/* Spinner */
.spinner {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 20px 0;
}

.spinner__circle {
    width: 48px;
    height: 48px;
    border: 4px solid #F5F5F5;
    border-top: 4px solid #FF7101;
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    0% { transform: rotate(0deg); }
    100% { transform: rotate(360deg); }
}

/* Responsive styles for subject cards */
@media (max-width: 768px) {
    .dashboard__content__header {
        margin-top: 40px;
        margin-bottom: 30px;
        padding: 0 20px;
    }
    
    .header-logo {
        height: 50px;
    }
    
    .subject-cards {
        flex-direction: column;
        align-items: center;
        padding: 0 20px;
    }
    
    .subject-card {
        width: 100%;
        max-width: 413px;
    }
}

/* Стилі для Select2 в формі реєстрації */
.register__form .select2-container {
    width: 100% !important;
}

.register__form .select2-selection--single {
    border-radius: 40px !important;
    border: 1px solid #FFF !important;
    background: #FFF !important;
    height: 48px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    flex-direction: row-reverse !important;
    justify-content: space-between !important;
}

.register__form .select2-selection--single .select2-selection__rendered {
    color: #1E1E1E !important;
    font-size: 18px !important;
    font-weight: 450 !important;
    line-height: 28px !important;
    padding: 0 20px !important;
    order: 2 !important;
    flex: 1 !important;
}

.register__form .select2-selection--single .select2-selection__placeholder {
    color: #A7A7A7 !important;
    font-size: 18px !important;
    font-weight: 450 !important;
    line-height: 28px !important;
}

.register__form .select2-selection--single:hover {
    border: 1px solid #7C7C7C !important;
    background: #F3F6FF !important;
}

.register__form .select2-container--default.select2-container--focus .select2-selection--single {
    border: 1px solid #6B3EFF !important;
    background: #FFF !important;
    outline: none !important;
}

/* Прибираємо зайву стрілочку Select2 */
.register__form .select2-container--default .select2-selection--single .select2-selection__arrow {
    display: none !important;
}

/* Стилі для хрестика очищення */
.register__form .select2-selection--single .select2-selection__clear {
    order: 1 !important;
    margin-right: 10px !important;
    color: #A7A7A7 !important;
    font-size: 18px !important;
    font-weight: bold !important;
}

.register__form .select2-selection--single .select2-selection__clear:hover {
    color: #6B3EFF !important;
}

/* Стилі для випадаючого списку */
.register__form .select2-dropdown {
    border: 1px solid #6B3EFF !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
}

.register__form .select2-results__option {
    padding: 12px 20px !important;
    color: #1E1E1E !important;
    font-size: 18px !important;
    font-weight: 450 !important;
}

.register__form .select2-results__option--highlighted {
    background: #F3F6FF !important;
    color: #6B3EFF !important;
}

.register__form .select2-results__option[aria-selected=true] {
    background: #6B3EFF !important;
    color: #FFF !important;
}
