/* PR⭕️—вес Standalone v0.43.1 — UX parity with Mini App v2.11.51 */

/* Active carousel mark: same 12x4 size, genuinely rounded ends. */
.hero-carousel-dot.is-active {
  background-image: none !important;
}
.hero-carousel-dot.is-active .hero-carousel-dot-mark {
  opacity: 1 !important;
  width: 12px !important;
  height: 4px !important;
  border-radius: 999px !important;
  background: #D22B28 !important;
}

/* Hide the standalone technical round Back while a page has its own local Back. */
body.proves-standalone-technical-back-suppressed .proves-standalone-back {
  display: none !important;
}

/* Legal overlay: +56px visual top offset, same compact local Back geometry as Mini App. */
.proves-standalone-legal-overlay .proves-overlay-shell {
  padding-top: calc(56px + env(safe-area-inset-top));
}
.proves-standalone-legal-overlay .proves-overlay-header {
  position: relative;
  top: auto;
  grid-template-columns: 116px minmax(0, 1fr) 116px;
  min-height: 58px;
  padding: 6px 8px;
}
.proves-standalone-legal-overlay .proves-overlay-back {
  width: auto;
  min-width: 108px;
  height: 44px;
  padding: 0 14px;
  border: 0;
  border-radius: 22px;
  background: #eeeeef;
  color: #777777;
  font-size: 16px;
  font-weight: 650;
  line-height: 1;
  white-space: nowrap;
}
.proves-standalone-legal-overlay .proves-overlay-spacer { width: 108px; }

/* QR / SBP local payment overlay. */
body.proves-standalone-payment-open {
  overflow: hidden !important;
}
.proves-standalone-payment-overlay {
  position: fixed;
  z-index: 30000;
  inset: 0;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  color: #111111;
}
.proves-standalone-payment-header {
  flex: 0 0 auto;
  display: grid;
  grid-template-columns: 116px minmax(0, 1fr) 116px;
  align-items: center;
  min-height: 58px;
  padding: calc(6px + env(safe-area-inset-top)) 8px 6px;
  border-bottom: 1px solid #eeeeee;
  background: rgba(255,255,255,.98);
}
.proves-standalone-payment-header strong {
  min-width: 0;
  text-align: center;
  font-size: 16px;
  line-height: 1.2;
}
.proves-standalone-payment-back {
  appearance: none;
  width: auto;
  min-width: 108px;
  height: 44px;
  padding: 0 14px;
  border: 0;
  border-radius: 22px;
  background: #eeeeef;
  color: #777777;
  font: inherit;
  font-size: 16px;
  font-weight: 650;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
}
.proves-standalone-payment-spacer { width: 108px; }
.proves-standalone-payment-body {
  position: relative;
  flex: 1 1 auto;
  min-height: 0;
}
.proves-standalone-payment-frame {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  background: #ffffff;
}
.proves-standalone-payment-loading {
  position: absolute;
  z-index: 1;
  inset: 18px 0 auto;
  text-align: center;
  font-size: 13px;
  color: #777777;
  pointer-events: none;
}
.proves-standalone-payment-loading[hidden] { display: none; }

@media (max-width: 390px) {
  .proves-standalone-legal-overlay .proves-overlay-header,
  .proves-standalone-payment-header {
    grid-template-columns: 104px minmax(0, 1fr) 104px;
  }
  .proves-standalone-legal-overlay .proves-overlay-back,
  .proves-standalone-payment-back {
    min-width: 96px;
    padding: 0 11px;
    font-size: 15px;
  }
  .proves-standalone-legal-overlay .proves-overlay-spacer,
  .proves-standalone-payment-spacer { width: 96px; }
}
