/* WORKSHEET */
#worksheet {}

#worksheet>div {
  vertical-align: top;
}

#worksheet .progress {
  width: 50%;
  display: inline-block;
  margin: 2rem 0 3.7rem;
}

#worksheet .progress .irs-bar,
#worksheet .progress .irs-single,
#worksheet .progress .irs-slider.single {
  transition: all .3s;
}

#worksheet .progress .irs-min,
#worksheet .progress .irs-max {
  width: 7.2rem;
}

#worksheet .progress .irs-min {
  left: -8rem;
}

#worksheet .progress .irs-max {
  right: -8rem;
}

#worksheet .progress .irs-single {
  top: auto;
  bottom: -2.5rem;
  font-size: 1.25rem;
}

#worksheet .progress .irs-slider.single {
  width: 1.25rem;
  height: 1.25rem;
  top: 2.85rem;
}

#worksheet #steps {}

#worksheet #steps fieldset {
  display: none;
  overflow: hidden;
  border: none;
}

#worksheet #steps fieldset.current {
  display: block;
}

#worksheet #steps fieldset span.title {
  display: block;
  float: left;
  width: 100%;
  box-sizing: border-box;
  font-size: .9rem;
  font-weight: bold;
  text-align: left;
}

#worksheet #steps fieldset label {
  width: 100%;
  box-sizing: border-box;
  text-align: center;
  float: left;
  position: relative;
  margin: 1.5rem 0;
}

#worksheet #steps fieldset .clearfix.row label {
  margin: 10px 0;
}

#worksheet #steps fieldset .clearfix.row label.text-left.align-center,
.big.left.align-center {
  display: flex;
  align-items: center;
}

#worksheet #steps fieldset label[for=not_patronymic] {
  margin: 0;
}

#worksheet #steps fieldset label input {
  margin-bottom: 15px;
}

#login label div {
  position: relative;
  display: inline-block;
  width: 100%;
  max-width: 450px;
}

#worksheet #steps fieldset label.big {
  width: 100%;
}

#worksheet #steps fieldset label.medium {
  width: 66%;
}

#worksheet #steps fieldset label.half {
  width: 50%;
}

#worksheet #steps fieldset label.big.left {
  text-align: left;
  margin-top: 1rem;
}

#worksheet #steps fieldset label.medium.left {
  text-align: left;
  margin-top: 3rem;
}

#worksheet #steps fieldset label>input,
#worksheet #steps fieldset label>textarea,
#worksheet #steps fieldset label>select {
  width: 100%;
}

#worksheet #steps fieldset label>input#patronymic:disabled {
  background: #cdd8e3;
}

#worksheet #steps fieldset label:has(input[type="email"][name="email"]) {
  margin: 45px 0 20px;
}

#worksheet #steps fieldset label input:focus~.floating-label,
#worksheet #steps fieldset label textarea:focus~.floating-label,
#worksheet #steps fieldset label .select~.floating-label,
#worksheet #steps fieldset label input:not(:focus):valid~.floating-label,
#worksheet #steps fieldset label textarea:not(:focus):valid~.floating-label,
#worksheet #steps fieldset label.readonly input~.floating-label:not(.floating_label_add_data_fix),
#worksheet #steps fieldset label input[name="Regcity"]~.floating-label:has(~ .regcity-close),
#worksheet #steps fieldset label input[name="Faktcity"]~.floating-label:has(~ .faktcity-close),
#worksheet #steps fieldset label input[name="Regstreet"]~.floating-label:has(~ .regstreet-close),
#worksheet #steps fieldset label input[name="Faktstreet"]~.floating-label:has(~ .faktstreet-close),
/*
#login label input:not(:focus):valid ~ .floating-label */
#worksheet #steps fieldset label input[name="Reghousing"]~.floating-label:has(~ .reghousing-close),
#worksheet #steps fieldset label input[name="Fakthousing"]~.floating-label:has(~ .fakthousing-close) {
  top: -24px;
  opacity: 1;
  font-size: 14px;
}

#login label input:not(:focus):valid~.floating-label,
#login label input:focus~.floating-label {
  left: 0px;
  font-size: 14px;
  top: -24px;
  opacity: 1;
  color: #000;
}

#worksheet #steps fieldset .label-top-small {
  /* top: -1.6rem !important;
    opacity: 1 !important;
    font-size: .85rem !important; */
}

#worksheet #steps fieldset .label-top {
  /* top: -1.6rem !important;
    opacity: 1 !important;
    font-size: 1rem !important; */
}

#worksheet #steps fieldset .label-default {
  /* top: 0 !important;
    opacity: 1 !important;
    font-size: 1rem !important; */
}

#worksheet #steps fieldset label input~.floating-label.select-from-list-hint {
  top: -2.8rem;
  color: rgba(0, 0, 0, 0.4);
}

/* , */
/*#worksheet #steps fieldset label input.sup:not(:focus):valid ~ .floating-label,*/
/* #login label .floating-label, */
#login label input.sup:not(:focus):valid~.floating-label {
  position: absolute;
  pointer-events: none;
  top: 8px;
  left: 0;
  transition: 0.2s ease all;
  font-size: 22.5px;
}

#worksheet #steps fieldset label .floating-label {
  position: absolute;
  pointer-events: none;
  top: 18px;
  left: 20px;
  transition: 0.2s ease all;
  font-size: 16px;
  color: #818C99;
  font-weight: 500;
}

.clearfix.row {
  display: flex;
  flex-direction: row;
  margin: 16px;
}

@media (max-width:400px) {
  .clearfix.row.radio_work {
    flex-direction: column;
  }

  .clearfix.row.row_add-data {
    flex-direction: column;
  }
}

#worksheet #steps fieldset label input:focus~.floating-label,
#worksheet #steps fieldset label textarea:focus~.floating-label,
#worksheet #steps fieldset label input#email~.floating-label {
  color: #02113B;
  left: 0px;
}

@media (min-width: 800px) {

  #worksheet #steps fieldset label input:focus~.floating-label,
  #worksheet #steps fieldset label textarea:focus~.floating-label,
  #worksheet #steps fieldset label input#email~.floating-label,
  #worksheet #steps fieldset label input[name="Regcity"]~.floating-label:has(~ .regcity-close),
  #worksheet #steps fieldset label input[name="Faktcity"]~.floating-label:has(~ .faktcity-close),
  #worksheet #steps fieldset label input[name="Regstreet"]~.floating-label:has(~ .regstreet-close),
  #worksheet #steps fieldset label input[name="Faktstreet"]~.floating-label:has(~ .faktstreet-close),
  #worksheet #steps fieldset label input[name="Reghousing"]~.floating-label:has(~ .reghousing-close),
  #worksheet #steps fieldset label input[name="Fakthousing"]~.floating-label:has(~ .fakthousing-close),
  #worksheet #steps fieldset label .select~.floating-label {
    color: #02113B;
    left: 34px;
  }

  #worksheet #steps fieldset label input:valid~.floating-label,
  #worksheet #steps fieldset label textarea:valid~.floating-label,
  #worksheet #steps fieldset label input#email~.floating-label {
    color: #02113B;
    left: 34px;
  }

  #worksheet #steps fieldset label input#email~.floating-label {
    top: -29px;
  }

  #worksheet #steps fieldset label .floating-label {
    position: absolute;
    pointer-events: none;
    top: 18px;
    left: 20px;
    transition: 0.2s ease all;
    font-size: 16px;
    color: #818C99;
  }
}

@media (max-width: 799px) {

  #worksheet #steps fieldset label input:focus~.floating-label,
  #worksheet #steps fieldset label textarea:focus~.floating-label,
  #worksheet #steps fieldset label input#email~.floating-label,
  #worksheet #steps fieldset label textarea:not(:focus):valid~.floating-label,
  #worksheet #steps fieldset label textarea:not(:focus):valid~.floating-label {
    font-size: 14px;
    top: -22px;
    left: 5px;
  }

  #worksheet #steps fieldset label .floating-label {
    top: 18px;
  }

  #worksheet #steps fieldset label input:not(:focus):valid~.floating-label,
  #worksheet #steps fieldset label input[name="Regcity"]~.floating-label:has(~ .regcity-close),
  #worksheet #steps fieldset label input[name="Faktcity"]~.floating-label:has(~ .faktcity-close),
  #worksheet #steps fieldset label input[name="Regstreet"]~.floating-label:has(~ .regstreet-close),
  #worksheet #steps fieldset label input[name="Faktstreet"]~.floating-label:has(~ .faktstreet-close),
  #worksheet #steps fieldset label .select~.floating-label,
  #worksheet #steps fieldset label textarea:not(:focus):valid~.floating-label {
    color: #02113B;
    font-size: 14px;
    top: -22px;
    left: 5px;
  }
}

#worksheet #steps fieldset label input:focus~.floating-label,
#worksheet #steps fieldset label textarea:focus~.floating-label,
#loginlabel input:focus~.floating-label {
  opacity: 1;
}

a.button.js-b2p-add-card {
  font-size: 20px;
  padding: clamp(14px, 12.4px + 0.476vw, 24px) 0;
  width: 100%;
  max-width: 310px;
  border-radius: 232px;
  box-sizing: border-box;
}

h1.files_data__title {
  font-weight: 700;
  font-size: clamp(22px, 19.3px + 0.794vw, 32px);
  margin: 0 0 clamp(52px, 48.7px + 0.952vw, 64px);
}

h1.files_data__title {
  margin: clamp(16px, 11.7px + 1.27vw, 32px) 0;
}

.pasport1__title {
  font-weight: 700;
  font-size: clamp(16px, 13.6px + 0.65vw, 24px);
  display: flex;
  gap: 10px;
  align-items: center;
}

h5.files_data__subtitle {
  font-weight: 500;
  font-size: 14px;
  color: #818C99;
  margin: 0 0 clamp(16px, 11.7px + 1.27vw, 32px);
}

.text-left {
  text-align: left !important
}

#worksheet #steps fieldset label input.sup:not(:focus):valid~.floating-label,
#login label input.sup:not(:focus):valid~.floating-label {
  //    opacity: .6;
}

#worksheet #steps fieldset .living {
  padding-bottom: 1.3rem;
}

#worksheet #steps fieldset .next {
  clear: left;
  padding-top: 1.5rem;
  position: relative;
}

.next .button {
  padding: 1.2rem 3rem;
  font-size: 16px;
  font-weight: 700;
  box-shadow: none;
}

#worksheet #steps fieldset .next .button[disabled] {
  opacity: 0.6;
}

#worksheet #steps fieldset .next p {
  margin-top: 1.4rem;
}

#worksheet #steps fieldset .next a.prev {
  display: block;
  padding: 1.2rem 0;
  cursor: pointer;
}

#worksheet #steps fieldset .result {}

#worksheet #steps fieldset .result h3 {
  font-weight: bold;
  font-size: 1.35rem;
}

#worksheet #steps fieldset .result p {
  font-size: 1.07rem;
  margin: 4rem 0;
}

#worksheet #steps fieldset .result .button {
  margin-bottom: 1rem;
}

#worksheet.worksheet_files-data {
  text-align: start;
}

/* INFO */
#info {}

#info .box {
  width: 100%;
  text-align: left;
  font-size: 1.16rem;
  line-height: 1.4;
}

#info h1 {
  font-size: 2.5rem;
  margin-bottom: 4rem;
}

#info p {
  /*margin: 2rem 0;*/
}

#info h4 {
  font-size: 2.5rem;
  margin-bottom: 4rem;
}

#info .box:not(.box_success)>div:not(.modal_partners) {
  margin: 4rem 0 6rem;
}

#info ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* DEMANDS */
#demands {}

#demands ul {
  display: block;
  text-align: center;
}

#demands ul li {
  min-width: 8.9rem;
  margin: 0 1.2rem 2.2rem 0;
  display: inline-block;
  text-align: center;
  line-height: 1.28;
}

#demands ul li .icon {
  width: 3.875rem;
  height: 3.875rem;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: bottom center;
  background-size: contain;
  margin-bottom: 1.5rem;
}

#demands ul li .icon.passport {
  background-image: url(../img/passport.svg);
}

#demands ul li .icon.bcard {
  background-image: url(../img/card.svg);
}

#demands ul li .icon.bill {
  background-image: url(../img/bill.svg);
}

#demands ul li .icon.age {
  background-image: url(../img/person.svg);
}

#demands ul li .icon.number {
  background-image: url(../img/phone.svg);
}

/* QUESTIONS */
#questions {}

#questions ul {
  vertical-align: top;
  display: inline-block;
  width: 100%
}

#questions ul li {
  display: inline-block;
  width: 100%;
  margin: 1.6rem 0;
  border-bottom: 1px solid #2c2b39;
}

#questions ul li .title {
  padding: .4rem .7rem .4rem 0;
  cursor: pointer;
  box-sizing: border-box;
  background: transparent url(../img/drop-down.svg) no-repeat center right .2rem / .5rem;
}

#questions ul li .answer {
  height: 0;
  box-sizing: border-box;
  overflow: hidden;
  font-size: 1rem;
}

#questions ul li.active .answer {
  padding: .5rem .5rem .5rem 0;
}

#questions a.more {
  display: inline-block;
  margin-top: 1.5rem;
  border-bottom: 1px dashed #2c2b39;
}

#questions a.more:hover {
  opacity: .8;
  text-decoration: none;
}

/* DOCS */
#docs {}

#docs ul {
  display: block;
}

#docs ul li {
  display: block;
  width: 100%;
  box-sizing: border-box;
  padding: 1rem 0;
  vertical-align: top;
}

#docs ul li a {
  padding-left: 3.12rem;
  text-decoration: underline;
  background: url(../img/doc.png) no-repeat 0 center / 2.2rem;
}

#docs ul li a:hover {
  text-decoration: none;
}

/* CONTACTS */
#contacts {
  padding-bottom: 5rem;
}

/* LOGIN */

#login {}

#login>div {
  vertical-align: middle;
}

#login .wrapper {
  display: inline-block;
  max-width: 1100px;
  width: 100%;
  box-sizing: border-box;
  border-radius: 32px;
  /* border-top: 2px solid #0997FF;
    border-bottom: 2px solid #0997FF; */
  padding: 80px 80px 100px;
  background: #FFF;
  text-align: left;
}

.timer-wrapper {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.view_order:not(:has(.order-not-issued)) {
  display: flex;
  /*flex-direction: row-reverse;*/
  /*justify-content: flex-end;*/
  flex-wrap: wrap;
  /*gap: 64px;*/
}

.order-not-issued {
  display: flex;
  flex-direction: column;
  margin: 16px 0;
}

.order-not-issued-text {
  margin: 16px 0;
}

.order-not-issued-text>h5 {
  margin-bottom: 16px;
}

.order-not-issued-text>p {
  margin: 0 !important;
}

@media (max-width: 960px) {
  .view_order {
    /*flex-direction: column-reverse;*/
    gap: 0px;
  }
}

.timer__text {
  margin: 0 0 0 15px;
  font-weight: 500;
  font-size: 16px;
  color: #6F7985;
}

@media (max-width: 900px) {
  #login .wrapper {
    padding: 40px 40px 75px;
  }

}

@media (max-width: 410px) {
  #login .wrapper {
    padding: 20px 10px 15px;
  }

}

@media (max-width: 350px) {
  #login .wrapper {
    padding: 20px 0px 10px;
  }

}

#login .wrapper h3 {
  margin: 0;
  font-size: 16px;
}

#login .wrapper label {
  display: block;
}

#login .wrapper label .password-warning {
  font-size: 14px;
}

#login_form_link_reset {
  font-size: 14px;
}


#login .wrapper label span {
  display: block;
  margin: 2.75rem 0;
  padding: 0 0 0 5px;
  font-size: 16px;
  color: #969696;
}

#login label .floating-label {
  position: absolute;
  pointer-events: none;
  top: 20px;
  left: 20px;
  transition: 0.2s ease all;
  font-size: 22.5px;
}

#login .wrapper label div span {
  margin: 0;
}

#login .wrapper label input {
  margin: 0 0 15px;
  padding: 20px;
  font-size: 16px;
  border: none;
  color: #000;
  border-radius: 5px;
  /* height: 34px; */
  background-color: #F4F7FA;
  border-radius: 16px;
}

#codeInSms .button {
  border-radius: 5px;
}

#codeInSms {
  font-size: 14px;
}

#login .wrapper label input,
#login .wrapper button {
  width: 100%;
}

#login #check {
  display: none;
}

/* PRIVATE */

#private {}

#private .tabs {
  display: inline-block;
  width: 100%;
  box-sizing: border-box;
  padding: clamp(22px, 16px + 4.735vw, 40px) clamp(22px, 4.24px + 4.735vw, 80px) clamp(46px, 40px + 4.735vw, 65px);
  /* margin-top: 3.75rem; */
  position: relative;
  background: #FFF;
  background-repeat: no-repeat;
  background-position: right 15% center;
  background-size: 47vh;
  border-radius: 32px;
  box-shadow: 0px 4px 20px 0px #02113B1A;
}

#private>div:has(> .tabs.lk) {
  padding: clamp(10px, 8.2px + 0.488vw, 16px) 0;
}

@media (min-width: 450px) and (max-width: 509px),
(max-width: 384px) {
  #private .tabs .nav {
    top: -5rem !important;
  }
}

.girl #private .tabs {
  background-size: 67vh;
}

#private .tabs .nav {
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
}

#private .tabs .nav::-webkit-scrollbar {
  display: none;
}

@media (max-width: 930px) {
  #private .tabs .nav ul {
    display: none;
  }

  #private .tabs {
    margin-top: 0;
  }
}

#private .tabs .nav ul {
  list-style: none;
  margin: 0;
  padding: 4px;
  display: flex;
  gap: 10px;
}

.nocards {
  margin: 20px 0;
}

.ok {
  color: #1eab1e;
}

.check {
  color: #d61414;
}

#private .tabs .nav ul li {
  display: block;
  float: left;
  font-size: 16px;
}

#private .tabs .nav ul li a {
  display: block;
  padding: 12px 25px;
  border: 1px solid #E5E9ED;
  border-radius: 232px;
  min-width: max-content;
  font-weight: 500;
  font-size: 12px;
  max-height: 40px;
  box-sizing: border-box;
  line-height: 1;
}

#private .tabs .nav ul li a.current {
  background-color: #FFF;
  border: 2px solid #038AEE;
}

.action_minimal_payment .payment_button {
  display: block;
  max-width: none;
  height: auto;
  font-size: 16px;
  font-weight: 600;
  padding: 21px clamp(32px, 26px + 1.825vw, 55px);
}

#private .tabs.lk .action.action_minimal_payment {
  text-align: left;
  flex-direction: column;
  align-items: flex-start;
  gap: 32px;
  margin: 32px 0;
}

#private .tabs .nav ul li a.current:hover {
  text-decoration: none;
}

#private .tabs .content {
  display: flex;
  flex-direction: column;
  margin: clamp(1.563rem, 1.18rem + 1.633vw, 2.813rem) 0 0;
}

#private .tabs .content>* {
  display: flex;
  flex-direction: column;
}

#private .tabs .content p, .rcl_disclaimer {
  font-size: 14px;
  line-height: 1.7;
}

#private .tabs .content p.underline {
  font-size: 16px;
}

#private .tabs .content p.repeat_approve_message {
  font-size: 16px;
  font-weight: 500;
  color: #6F7985;
  line-height: 24px;
}

#private .item .banner-container .banner-content .banner-logo {
  margin: 0 !important;
  padding: 10px 0 !important;
  line-height: unset !important;
}

/* WAIT */
.wait .content {
  width: 100%;
}

body.wait {
  background-repeat: no-repeat;
  background-position: right 7% bottom 5%;
  background-size: 25%;
}

.girl .wait .waiting {
  background: url(../img/wait.girl.svg) no-repeat center center /contain;
}

/* APPROVED */
.girl #private .tabs.approved {
  background-position: 75% center;
  background-size: 50vh;
}

.boy #private .tabs.approved {
  background-position: 70% center;
  background-size: 20%;
}

.approved .content {
  width: 100%;
}

.approved .cancel {
  margin-left: 2rem;
}

/* CALC */
#private .tabs.calc {
  background-position: 80% center;
  background-size: 23%;
}

.girl #private .tabs.calc {
  background-size: 20%;
}

.calc .content {
  width: 100%;
}

/* CARDS */
.card {
  display: inline-block;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 1.4rem;
  width: 1.8rem;
  height: 1.1rem;
  vertical-align: initial;
}

.card.visa {
  background-image: url(../img/visa.svg);
}

.card.master {
  background-image: url(../img/master-card.svg);
}

.card.maestro {
  background-image: url(../img/maestro.svg);
}

/* LK */
#private .tabs.lk {}

#private .tabs.lk .content {
  width: 100%;
  text-align: left;
}

#private .tabs.lk .content>* {
  vertical-align: top;
}

#private .tabs.lk .about.about_zaim {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: clamp(16px, 11.1px + 1.306vw, 32px);
}

.zaim-number {
  font-weight: 600;
  text-decoration: underline;
}

#private .tabs.lk .about {
  overflow: hidden;
}

#private .tabs.lk .about>*:not(.btn-fsize-14, .success_add_data-par) {
  display: block;
  float: left;
  font-size: 1.45rem;
}

#private .tabs.lk .about .button.button_get_zaim {
  font-size: 16px;
  min-height: 60px;
  font-weight: 600;
  box-sizing: border-box;
  box-shadow: none;
}

.prolongation-notification-main:has(>.prolongation-notification > p > .prolongation-not-available) {
  max-width: 440px;
}

#private .tabs.lk .about>.zaim_title {
  font-size: 16px;
}

#private .tabs.lk .about>.js-toggle-cards.toggle-cards.underline {
  font-size: 16px;
}

.download_banners_wrapper {
  font-size: 16px;
}

.download_banners_wrapper>h2,
.download_banners_wrapper>h3 {
  font-size: inherit;
}

#private .tabs.lk .split {
  overflow: hidden;
  margin: 0.5rem 0;
  max-width: 60rem;
}

#private .tabs.lk .split ul {
  display: table;
  float: left;
  margin: 0;
  padding: 0;
  list-style: none;
  width: 100%;
}

#private .tabs.lk .split ul.card_list-flex {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

#private .tabs.lk .split ul.split__list {
  display: flex;
  flex-direction: column;
  width: auto;
  /* Список тянется по самой широкой строке, а её ширина задана от экрана.
     Без ограничения список вылезал за свой блок, и .split обрезал суммы */
  max-width: 100%;
  margin: 30px 0 0;
}

#private .tabs.lk .split ul.split__list li.split__list-item {
  padding: 0 0 16px;
  display: flex;
  justify-content: space-between;
  width: clamp(290px, 218.2px + 21.111vw, 556px);
  /* Ширина строки задана от ширины экрана и не знает про отступы своего блока:
     на узких экранах строка вылезала за него, и сумма долга с датой платежа
     уходили за край экрана */
  max-width: 100%;
}

@media (max-width: 385px) {
  #private .tabs.lk .split ul.split__list {
    width: 100%;
  }

  #private .tabs.lk .split ul.split__list li.split__list-item {
    width: 100%;
  }
}

@media (max-width: 510px) {
  #private .tabs.lk .split ul.split__list:first-child {
    margin-right: 0;
  }
}

#private .tabs.lk .split ul.split__list li.split__list-item:nth-of-type(n + 1) {
  padding: 16px 0 16px;
}


#private .tabs.lk .split ul li {
  display: table-row;
  font-size: 16px;
}

#private .tabs.lk .split ul li>div {
  display: table-cell;
  width: 12rem;
  padding: .8rem 0 .6rem;
}

#private .tabs.lk .split ul li>div.split__list-text,
#private .tabs.lk .split ul li>div.split__list-text>a {
  display: block;
  width: auto;
  padding: 0;
  color: #6F7985;
  font-size: 14px;
  font-weight: 500;
}

#private .tabs.lk .split ul li>div.split__list-text:last-child {
  color: #1E262E;
  font-weight: 700;
  font-size: 16px;
}

#private .tabs.lk .split ul li>div:last-child {
  font-size: 1.29rem;
  font-weight: 700;
  width: auto;
  text-align: right
}

#private .tabs.lk .action {
  text-align: center;
}

#private .tabs.lk .action a {
  margin: 0 2rem 1rem 2rem;
  padding-left: 2rem;
  padding-right: 2rem;
}

#private .tabs.lk .action select {
  width: 300px;
  height: 50px;
  font-size: 24px;
  text-align: right;
  margin-left: 50px;
  margin-bottom: 20px;
  border-radius: 10px;
  padding: 10px;
}

/* CONTRACT */
#private .tabs.contract {}

#private .tabs.contract .content {
  width: 100%;
}

#private .tabs.contract .content>* {
  vertical-align: top;
}

#private .tabs.contract p {
  font-size: 1.16rem;
  margin: 0;
}

#private .tabs.contract .scrollbar {
  width: 100%;
  margin: 2rem auto;
  position: relative;
}

#private .tabs.contract .scrollbar p {
  font-size: 1rem;
  margin: .4rem 0;
}

#private .tabs.contract .scrollbar .shadow {
  box-shadow: 0 0 2.8rem rgba(0, 0, 0, 0.05);
  box-sizing: border-box;
  width: 95%;
  margin: 0 auto;
  padding: 1rem;
}

#private .tabs.contract .scrollbar-inner {
  height: 30.5rem;
  text-align: left;
}

#private .tabs.contract .scrollbar>.scroll-element div {
  display: none;
}

#private .tabs.contract form {}

#private .tabs.contract form label {
  margin: 1rem 1.5rem;
  display: inline-block;
}

#private .tabs.contract form label .checkbox {
  vertical-align: top;
}

#private .tabs.contract form label button {
  padding-left: 1.3rem;
  padding-right: 1.3rem;
}


/* CARD */
#private .tabs.select-card {}

#private .tabs.select-card .content {
  width: 100%;
}

#private .tabs.select-card .content>* {
  vertical-align: top;
}

#private .tabs.select-card p {
  font-size: 1.16rem;
  margin: 0;
}

#private .tabs.select-card label.select {
  margin: 2.9rem 0;
  display: block;
}

#private .tabs.select-card label.select>* {
  margin: 0 1.5rem;
}

#private .tabs.select-card label.select span {
  font-size: 1.25rem;
}

#private .tabs.select-card select {
  width: 9.7rem;
  padding: .4rem 0;
  cursor: pointer;
  border: none;
  border-bottom: 1px solid #2c2b39;
  box-sizing: border-box;
  background: transparent url(../img/drop-down.svg) no-repeat center right .2rem / .5rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-border-radius: 0;
  -moz-border-radius: 0;
  border-radius: 0;
  font-size: 1.04rem;
  font-family: "Circle", OpenSans, Arial, sans-serif;
}

#private .tabs.select-card fieldset {
  width: 100%;
  margin: 0 auto;
  border: none;
  padding: 1.45rem 1.95rem;
  box-sizing: border-box;
  box-shadow: -1rem .79rem 2.83rem rgba(0, 0, 0, 0.05);
  border-radius: 1.6rem;
  background-color: #ffffff;
}

#private .tabs.select-card fieldset .logos {
  text-align: right;
}

#private .tabs.select-card fieldset .logos .card {
  opacity: .5;
  width: 2.2rem;
  background-size: 1.8rem;
}

#private .tabs.select-card fieldset .logos .card.active {
  opacity: 1;
}

#private .tabs.select-card fieldset input {
  width: 100%;
  padding-bottom: .2rem;
  border-color: rgba(44, 43, 57, .1);
}

#private .tabs.select-card fieldset>label {
  display: block;
  overflow: hidden;
  padding: 1.2rem .3rem;
}

#private .tabs.select-card fieldset .split {
  overflow: hidden;
  padding: 1.2rem .3rem 0;
}

#private .tabs.select-card fieldset .split label,
#private .tabs.select-card fieldset .split .date {
  display: block;
  overflow: hidden;
  padding: .2rem 0;
}

#private .tabs.select-card fieldset .split label span,
#private .tabs.select-card fieldset .split label div,
#private .tabs.select-card fieldset .split .date span,
#private .tabs.select-card fieldset .split .date div {
  display: block;
  float: left;
  width: 50%;
  text-align: left;
  box-sizing: border-box;
  padding: .2rem;
}

#private .tabs.select-card fieldset .split label span,
#private .tabs.select-card fieldset .split .date span {
  font-size: .85rem;
  line-height: 1.3;
}

#private .tabs.select-card fieldset .split .date div {
  color: rgba(44, 43, 57, .1);
}

#private .tabs.select-card fieldset .split label input,
#private .tabs.select-card fieldset .split .date input {
  padding: 0 .35rem;
}

#private .tabs.select-card fieldset .split .date input {
  width: 2.35rem;
}

#private .tabs.select-card fieldset .split label.code div input {
  width: 3.5rem;
}

#private .tabs.select-card .next {
  margin-top: 3.6rem;
}

#private .tabs.select-card .next p {
  margin-top: 1.5rem;
}


/* PAY */
#private .tabs.pay {}

#private .tabs.pay .content {
  width: 100%;
}

#private .tabs.pay .content>* {
  vertical-align: top;
}

#private .tabs.pay .about {
  margin: 0;
  padding: 0 0 1.5rem;
  list-style: none;
  display: block;
  width: 100%;
  border-bottom: 1px solid rgba(0, 0, 0, .1);
  text-align: left;
}

#private .tabs.pay .about li {
  display: block;
  font-size: 1.16rem;
  padding: .5rem 1rem .5rem 0;
}

#private .tabs.pay .about li>* {
  font-size: 1.33rem;
  display: block;
}

#private .tabs.pay .method {
  margin-top: 4rem;
}

#private .tabs.pay .method ul {
  margin: 0;
  padding: 3rem 0 0;
  display: block;
  text-align: center;
  list-style: none;
}

#private .tabs.pay .method ul li {
  display: block;
  max-width: 14.5rem;
  padding: 2rem 1.25rem;
  height: 7.16rem;
  margin: 1rem auto;
  box-shadow: -1rem .8rem 2.8rem rgba(0, 0, 0, .05);
  border-radius: 1.625rem;
  background-color: #FFF;
  overflow: hidden;
}

#private .tabs.pay .method ul li .heading {
  display: inline-block;
  font-size: 1.1rem;
  line-height: 2;
  margin-bottom: 1.66rem;
  background-position: 0 center;
  background-repeat: no-repeat;
}

#private .tabs.pay .method ul li .heading.bank-card {
  padding-left: 2.7rem;
  background-image: url(../img/card.svg);
  background-size: 2rem;
}

#private .tabs.pay .method ul li .heading.bill {
  padding-left: 3.2rem;
  background-image: url(../img/bill.svg);
  background-size: 1.9rem;
}

#private .tabs.pay .method ul li .heading.mandarin {
  padding-left: 2.75rem;
  background-image: url(../img/mandarin.svg);
  background-size: 1.55rem;
}

#private .tabs.pay .method ul li button {
  padding-left: 2rem;
  padding-right: 2rem;
}

/* HISTORY */
#private .tabs.history {}

#private .tabs.history .content {
  width: 100%;
}

#private .tabs.history .list {
  text-align: left;
}

#private .tabs.history .list h4 {
  font-size: 1.4rem;
  font-weight: 700;
  margin: 0;
}

#private .tabs.history .list h4 span {
  font-weight: 400;
  font-size: 1rem;
}

#private .tabs.history .list ul {
  margin: 0 0 1.2rem;
  padding: 0;
  list-style: none;
  display: block;
  width: 100%;
  opacity: .7;
}

#private .tabs.history .list.current ul {
  margin: 0 0 4.3rem;
  opacity: 1;
}

#private .tabs.history .list ul li {
  display: block;
  padding-bottom: 1.2rem;
  border-bottom: 1px solid rgba(0, 0, 0, .1);
}

#private .tabs.history .list ul li>div {
  padding: 1.2rem .5rem 0;
}

#private .tabs.history .list ul li>div:first-child {
  //    width: 2.54rem;
}

#private .tabs.history .list ul li>div.reason {
  width: 100% !important;
  display: none;
}

.toggle_reason {
  display: block;
  :
}

#private .tabs.history .list ul li>div .card {
  opacity: .6;
}

#private .tabs.history .list.current ul li>div .card {
  opacity: 1;
}

#private .tabs.history .list ul li>div strong {
  display: inline-block;
  padding-left: .1rem;
}

#private .tabs.history {}

/* REJECT */
.reject .content {
  width: 100%;
}

/* POPUP */
.hidden {
  display: none;
}

.mfp-content .box {
  background: #FFF;
  width: 100%;
  box-sizing: border-box;
  max-width: 37rem;
  padding: 2.8rem 3.6rem;
  background: #FFF;
  text-align: center;
}

.mfp-content .box .mfp-close:not([type="button"]) {
  display: inline-block;
}

/* CANCEl */
#cancel {
  padding: 2.8rem 2.6rem
}

#cancel h3 {
  margin-bottom: 3rem;
}

#cancel button,
#cancel .cancel {
  margin: 0 .2rem;
  padding: .8rem 1.8rem;
  font-size: 1.33rem;
}

/* CHECK */
#check {}

#check p {
  margin: 2rem 0;
}

#check label {
  display: inline-block;
  margin: 0;
}

#check label input {
  padding-botom: .4rem;
  width: 9.5rem;
  margin-right: 1.7rem;
}

#check div button,
#check div a {
  padding: .9rem 1.1rem;
  margin-bottom: .6rem;
}

#check div a,
#check .repeat_sms {
  display: inline-block;
  padding: 10px;
  font-size: 14px;
}

#check .repeat_sms span {
  color: #aaa;
}

/* CHECKED */
#checked {
  text-align: center;
}

.success_add_data-par {
  font-size: 14px;
  font-weight: 500;
  color: #6F7985;
}

#checked .icon {
  display: inline-block;
  width: 3rem;
  height: 3rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}

#checked .icon.contract {
  background-image: url(../img/contract.svg);
}

#checked .icon.card {
  background-image: url(../img/card-ok.svg);
}

#checked h3 {
  margin: 1.5rem 0;
}

/* BUBLE */
#check .text {
  position: relative;
}

#check .buble-open {
  display: inline;
  cursor: pointer;
  color: #6a6a6a;
  border-bottom: 1px dashed #6a6a6a;
}

#check .buble {
  color: #000;
  position: absolute;
  display: none;
  width: 90vw;
  padding-bottom: 2rem;
  bottom: .4rem;
  left: 50%;
  margin-left: -45vw;
}

#check .buble::after,
#check .buble::before {
  content: "";
  position: absolute;
  bottom: 1.6rem;
  left: 50%;
  width: 1rem;
  height: 1rem;
  margin-left: -0.5rem;
  transform: rotate(45deg);
  z-index: 3;
  background: #FFF;
}

#check .buble::before {
  z-index: 1;
  box-shadow: 0 0 .62rem rgba(0, 0, 0, .15);
}

#check .buble>div {
  position: relative;
  z-index: 2;
  width: 100%;
  background: #FFF;
  padding: 1.25rem;
  box-sizing: border-box;
  box-shadow: 0 0 .62rem rgba(0, 0, 0, .15);
  text-align: left;
}

#check .buble .heading {
  font-size: 1.08;
}

#check .buble ol {
  margin: 1.3rem 0 1rem;
  padding: 0;
  list-style-position: inside;
  font-size: 1rem;
  line-height: 1.45;
}

#check .buble ol li {
  margin: 1rem 0;
}

/* VALIDATION */
input.error, textarea.error {
  border-color: #ffabab !important;
  background-color: #fff5f5;
}

span.error {
  display: none;
  color: #e57373;
  font-size: 14px;
}

select.error+span.error,
input.error+span.error,
textarea.error+span.error,
label.error .error {
  display: block !important
}

#regcity-label input.error+span.error,
#faktcity-label input.error+span.error {
  height: 0;
}

label.error,
label.error *,
select.error {
  color: #e57373 !important;
  border-color: #ffabab !important
}

label .success,
label.success * {
  color: #0a0 !important
}

/* PLUP */
label div.plup {
  position: relative;
  display: inline-block;
}

label div.plup .floating-label,
label div.plup input:not(:focus)~.floating-label {
  position: absolute;
  pointer-events: none;
  top: .2rem;
  left: 0;
  transition: 0.2s ease all;
}

label div.plup input:focus~.floating-label,
label div.plup input.sup~.floating-label {
  top: -1.6rem;
  opacity: 1;
  font-size: .85rem;
}

label div.plup input:focus~.floating-label {
  opacity: 1;
}

label div.plup input.sup:not(:focus)~.floating-label {
  opacity: .6;
}

.message_error {
  display: block !important;
  color: red;
}

.discount_title {
  font-size: 2rem
}

.discount_subtitle {
  font-size: 1.3rem
}

.green {
  color: #2d2 !important
}

.bg-green {
  background: #2d2 !important
}

.red {
  color: #e5613e !important;
}

.partners_docs {
  display: flex;
  justify-content: space-between;
}

.partner_title {
  flex: 1;
  margin: 0 10px;
  padding: 20px;
  cursor: pointer;
  border: 1px solid black;
  border-radius: 5px;
  text-align: center;
}

.modal_partners {
  display: none;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.4);
}

.modal_partners .modal-content {
  background-color: #fff;
  margin: 15% auto;
  padding: 20px;
  border: 1px solid #888;
  width: 65%;
  border-radius: 5px;
}

.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

.security-text {
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
  color: #6F7985B2;
  margin: 24px 110px 0;
}

@media (max-width: 810px) {
  .security-text {
    margin: 24px clamp(0px, -94.8px + 25.287vw, 110px) 0;
  }
}

.account-deletion-entry {
    padding-top: 15px;
}

.account-deletion-entry .button {
    width: 100%;
    max-width: 308px;
}

.account-deletion-modal {
    position: fixed;
    inset: 0;
    z-index: 1060;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 24px;
}

.account-deletion-modal[hidden] {
    display: none !important;
}

.account-deletion-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 23, 42, 0.48);
}

.account-deletion-modal__dialog {
    position: relative;
    z-index: 1;
    width: min(100%, 539px);
    padding: 42px 48px 36px;
    box-sizing: border-box;
    border-radius: 32px;
    background: #ffffff;
    box-shadow: 0 28px 100px rgba(20, 43, 84, 0.2);
    text-align: center;
    outline: none;
}

.account-deletion-modal__close {
    position: absolute;
    top: 24px;
    right: 24px;
    width: 36px;
    height: 36px;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.account-deletion-modal__close span {
    position: absolute;
    top: 17px;
    left: 7px;
    width: 22px;
    height: 3px;
    border-radius: 999px;
    background: #c3cad4;
}

.account-deletion-modal__close span:first-child {
    transform: rotate(45deg);
}

.account-deletion-modal__close span:last-child {
    transform: rotate(-45deg);
}

.account-deletion-modal__close:hover {
    background: transparent;
    transform: scale(1.06);
}

.account-deletion-modal__close:hover span {
    background: #9ea9b6;
}

.account-deletion-modal__illustration {
    width: 96px;
    height: 96px;
    margin: 0 auto 24px;
}

.account-deletion-modal__illustration svg {
    display: block;
    width: 100%;
    height: 100%;
}

.account-deletion-modal__illustration circle {
    fill: #fff1f1;
}

.account-deletion-modal__illustration path {
    fill: none;
    stroke: #e45454;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.account-deletion-modal__title {
    margin: 0 0 16px;
    color: #252f3d;
    font-size: 30px;
    line-height: 1.16;
    font-weight: 700;
    letter-spacing: -0.02em;
}

.account-deletion-modal__text {
    margin: 0 auto;
    max-width: 410px;
    color: #748091;
    font-size: 16px;
    line-height: 1.5;
    font-weight: 500;
}

.account-deletion-modal__actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 14px;
    margin-top: 28px;
}

.account-deletion-modal__actions .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    height: 58px;
    padding: 0 30px;
    box-sizing: border-box;
    border-radius: 999px;
    font-size: 16px;
    font-weight: 700;
    line-height: 1;
}

.account-deletion-modal .account-deletion-modal__confirm {
    width: 100%;
    border: 0;
    background: #e45454;
    color: #ffffff;
}

.account-deletion-modal .account-deletion-modal__confirm:hover {
    background: #cc4141;
}

.account-deletion-modal .account-deletion-modal__cancel {
    width: 240px;
    padding: 0 24px;
    border: 0;
    background: #e9f1fb;
    color: #1b88e5;
}

.account-deletion-modal .account-deletion-modal__cancel:hover {
    background: #dceafa;
    color: #1478ca;
}

.account-deletion-modal__error {
    min-height: 20px;
    margin: 14px 0 0;
    color: #d9342b;
    font-size: 13px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.account-deletion-modal__error:empty {
    display: none;
}

.account-deletion-modal--locked {
    overflow: hidden;
}

/* Кредитные каникулы в личном кабинете */
.credit-vacation-info {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  max-width: 720px;
  margin: 20px 0;
  padding: 14px 18px;
  color: #684a2d;
  background: #fff7e6;
  border: 1px solid #f0d39b;
  border-radius: 8px;
  line-height: 1.4;
}

.credit-vacation-info strong {
  white-space: nowrap;
}

@media screen and (max-width: 576px) {
  .credit-vacation-info {
    flex-direction: column;
    gap: 2px;
    margin: 15px 0;
    padding: 12px 14px;
  }
}

@media (max-width: 600px) {
    .account-deletion-modal {
        padding: 16px;
    }

    .account-deletion-modal__dialog {
        width: min(100%, 344px);
        padding: 36px 24px 28px;
        border-radius: 26px;
    }

    .account-deletion-modal__close {
        top: 18px;
        right: 16px;
    }

    .account-deletion-modal__illustration {
        width: 82px;
        height: 82px;
        margin-bottom: 20px;
    }

    .account-deletion-modal__title {
        font-size: 25px;
    }

    .account-deletion-modal__text {
        font-size: 15px;
    }

    .account-deletion-modal__actions .button,
    .account-deletion-modal .account-deletion-modal__cancel {
        width: 100%;
    }
}
