@font-face {
    font-family: rouble;
    src: url("/krstatic/rouble.961344c9623c.otf") format("opentype");
}

.rouble {
  font-family: 'rouble';
  font-weight: normal;
  font-style: normal;
}

.blurred-block {
  display: none;
  z-index: 1;
  opacity: 0.86;

  margin-top: 14px;
  position: absolute;
  padding: 12px;
  text-shadow: none;
  color: #333333;
  text-align: center;
  background-color: rgba(255, 255, 204, 0.85);
  width: 340px;
  top: 4px;
  left: 130px;
  border-radius: 6px;
  -webkit-user-select: auto; /* Safari */
  -ms-user-select: auto; /* IE 10+ */
  user-select: initial;
  border: 1px solid #FFFFCC;
}

.blurred-block:hover {
  border: 1px solid #016ABC;
}

.blurred-block a {
  color: #1e7abc !important;
  cursor: pointer;
  width: 50%;
  margin: auto;
  display: block;
  text-align: center;
  pointer-events: all;
}

.blurred-block .close {
  position: absolute;
  width: inherit;
}

.blurred-block .close a {
  float: right;
  width: min-content;
  padding: 4px;
}

.blurred-block .close a:after {
  content: '✖️';
}

.blurred-block h4.default {
  font-size: 14px;
  font-weight: bold;
  width: 200px;
  margin: auto;
  padding: 10px;
  color: #333;
  background-color: rgb(255, 255, 204);
}

.blurred-block h4 span {
  color: #666;
}

.blurred-block img {
  filter: none;
  -webkit-filter: none;
}

.payment-block .safety {
  color: #00CC00;
  background-color: rgb(255, 255, 204);
  font-weight: bold;
  width: fit-content;
  margin: auto;
}

.payment-block .buy button {
  background: #016ABC;
  color: #fff;
  border: 1px solid #eee;
  border-radius: 20px;
  box-shadow: 5px 5px 5px #eee;
  text-shadow: none;
  font-size: 14px;
  padding: 8px;
  width: 80px;
  cursor: pointer;
}

.payment-block .buy input.order_id {
  font-size: 16px;
  height: 28px;
  margin: 4px;
  padding: 0 0 0 4px;
  width: 196px;
  border-radius: 6px;
  border: 1px solid #eee;
}

.payment-block .buy input.order_id:not(:focus):invalid {
  border: 1px solid #f22b2b;
}

.payment-block .buy input.order_id:placeholder-shown:invalid:has( + button:focus) {
  border: 1px solid #f22b2b;
}

.payment-block .buy label {
  clear: both;
}

.payment-block .basic-price {
  display: inline;
  text-decoration: line-through;
  color: #FF0000;
}

.payment-block .buy input[type=text]:not(:focus):invalid + button + div > label::before {
  content: "* Введите действительный телефон";
  color: #f22b2b;
  font-size: 11px;
}

.payment-block .buy input[type=email]:not(:focus):invalid + button + div > label::before {
  content: "* Введите действительный email";
  color: #f22b2b;
  font-size: 11px;
}

.payment-block .pay-warn {
  color: #f22b2b;
  font-size: 11px;
  display: none;
}

.payment-block .pay-cond a {
  display: inline;
  pointer-events: all;
}

.payment-block .pay-cond .checkbox-border {
  border: 1px dashed rgba(255, 255, 204);
}

.payment-block .basket-row:has(button:active) + .pay-cond .checkbox-border:has(input:not(:focus):invalid),
.payment-block .basket-row:has(button:focus) + .pay-cond .checkbox-border:has(input:not(:focus):invalid) {
  border: 1px dashed #f22b2b;
}

.payment-block .buy .already a {
  font-size: 11px;
  color: #333 !important;
  text-decoration-color: #333;
  pointer-events: all;
}

.payment-block .basket button {
  border-radius: 10px;
  font-size: 14px;
  padding: 12px;
  margin: 4px;
  cursor: pointer;
  text-align: left;
  background-color: #fbfbfb;
  border: 0;
  box-shadow: 0 2px 15px -3px rgba(0,0,0,0.07),0 10px 20px -2px rgba(0,0,0,0.04);
  color: #333;
}

.payment-block .basket button:hover {
  background-color: #cce5fe;
}

.pay-header {
  color: #757575;
  text-transform: uppercase;
  font-weight: 700;
}

.pay-subheader {
  font-size: 1.5rem;
  font-weight: 700;
  white-space: nowrap;
  color: #333;
}

.payment-block .basket {
  display: none;
}

.payment-block .basket h4 {
  display: flex;
  justify-content: center;
}

.payment-block .cancel {
  color: gray;
  cursor: pointer;
  padding-top: 12px;
  font-size: 9px;
}

.payment-block .basket .cancel:before {
  content: '✏️';
  font-size: 9px;
}

.payment-block .basket-row {
  display: flex;
  justify-content: center;
  overflow-x: auto;
}

.payment-block .basket-row div {
  align-self: center;
  text-align: left;
  font-size: 14px;
  margin: 1px;
  padding: 6px;
}

.payment-block h4.v2 {
  color: #333;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
}

.payment-block h4.v1-deprecated {
  font-weight: normal;
  color: #666;
  font-size: 11px;
}

.catapi {
  max-width: 160px;
  border-radius: 12px;
  padding-top: 2px;
}

@media screen and (max-width: 600px) {
  .blurred-block {
    left: 7vw;
    width: 80vw;
    padding: 0 0 14px;
  }

  .blurred-block .close a {
    width: 6vw;
  }

  .payment-block .basket button {
    padding: 2px;
    margin: 2px;
  }

  .payment-block .basket-row div {
    margin: 0px;
    padding: 1px;
  }

  .payment-block .basket-row.v3 .pay {
    min-width: 26vw;
  }

  .pay-header {
    font-weight: 250;
  }

  .pay-subheader {
    font-weight: 350;
  }

}
