/* IFCM corporate skin for YooKassa form (Tilda Custom CSS) */

.t-body .yoomoney-payment-form{
  --ifcm-blue:#211c58;
  --ifcm-red:#e41227;
  --ifcm-border: rgba(33,28,88,.14);
  --ifcm-muted: rgba(33,28,88,.72);
  --ifcm-shadow: 0 10px 30px rgba(33,28,88,.12);
  --r-card:16px;
  --r-ctl:12px;

  max-width: 520px !important;
  margin: 16px auto !important;
  padding: 16px !important;
  background: #ffffff !important;
  border: 1px solid var(--ifcm-border) !important;
  border-radius: var(--r-card) !important;
  box-shadow: var(--ifcm-shadow) !important;

  font-family: Arial, sans-serif !important;
  color: var(--ifcm-blue) !important;
  box-sizing: border-box !important;
}

.t-body .yoomoney-payment-form,
.t-body .yoomoney-payment-form *{
  font-family: Arial, sans-serif !important;
  box-sizing: border-box !important;
}

/* Заголовки */
.t-body .yoomoney-payment-form .ym-block-title{
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: var(--ifcm-blue) !important;
  margin: 6px 0 12px !important;
}

/* Карточки */
.t-body .yoomoney-payment-form .ym-product,
.t-body .yoomoney-payment-form .ym-customer-info{
  border: 1px solid var(--ifcm-border) !important;
  border-radius: var(--r-card) !important;
  padding: 12px !important;
  background: #ffffff !important;
}

.t-body .yoomoney-payment-form .ym-product + .ym-product{
  margin-top: 10px !important;
}

/* Тексты/цены */
.t-body .yoomoney-payment-form .ym-product-description{
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--ifcm-blue) !important;
}

.t-body .yoomoney-payment-form .ym-product-price,
.t-body .yoomoney-payment-form .ym-price-output{
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--ifcm-blue) !important;
  white-space: nowrap !important;
}

.t-body .yoomoney-payment-form .ym-label-text{
  color: var(--ifcm-muted) !important;
  font-size: 14px !important;
}

/* Поля (16px - без автозума на iOS) */
.t-body .yoomoney-payment-form .ym-input{
  width: 100% !important;
  min-height: 48px !important;
  padding: 12px 14px !important;
  border-radius: var(--r-ctl) !important;
  border: 1px solid rgba(33,28,88,.25) !important;
  font-size: 16px !important;
  color: var(--ifcm-blue) !important;
  background: #ffffff !important;
}

.t-body .yoomoney-payment-form .ym-input:focus{
  outline: 2px solid rgba(228,18,39,.35) !important;
  border-color: var(--ifcm-red) !important;
}

/* Количество: правильная раскладка и порядок (-) [input] (+) */
.t-body .yoomoney-payment-form .ym-count-input{
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.t-body .yoomoney-payment-form .ym-count-control{
  position: static !important;
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  min-height: 44px !important;
  border-radius: var(--r-ctl) !important;
  border: 1px solid rgba(33,28,88,.22) !important;
  background: #ffffff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  box-shadow: none !important;
  cursor: pointer !important;
  user-select: none !important;
}

/* Принудительно скрываем любые встроенные иконки/тексты, чтобы не конфликтовали */
.t-body .yoomoney-payment-form .ym-count-control > *{
  display: none !important;
}

/* Порядок: минус слева, инпут по центру, плюс справа */
.t-body .yoomoney-payment-form .ym-count-control.ym-count-minus{ order: 1 !important; }
.t-body .yoomoney-payment-form input[name="count"],
.t-body .yoomoney-payment-form .ym-count-input .ym-input{ order: 2 !important; }
.t-body .yoomoney-payment-form .ym-count-control.ym-count-plus{ order: 3 !important; }

/* Знаки */
.t-body .yoomoney-payment-form .ym-count-control.ym-count-minus::before{
  content: "-" !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: var(--ifcm-blue) !important;
  transform: translateY(-1px);
}
.t-body .yoomoney-payment-form .ym-count-control.ym-count-plus::before{
  content: "+" !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: var(--ifcm-blue) !important;
}

/* Инпут количества */
.t-body .yoomoney-payment-form input[name="count"],
.t-body .yoomoney-payment-form .ym-count-input .ym-input{
  width: 88px !important;
  min-width: 88px !important;
  text-align: center !important;
  padding-left: 10px !important;
  padding-right: 10px !important;
}

/* Блок оплаты */
.t-body .yoomoney-payment-form .ym-payment-btn-block{
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  padding-top: 14px !important;
  margin-top: 14px !important;
  border-top: 1px solid rgba(33,28,88,.10) !important;
}

/* Кнопка оплаты - корпоративная */
.t-body .yoomoney-payment-form .ym-btn-pay{
  width: 100% !important;
  min-height: 52px !important;
  border-radius: 14px !important;
  border: 0 !important;
  background: var(--ifcm-blue) !important;
  color: #ffffff !important;

  font-size: 16px !important;
  font-weight: 700 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;

  padding: 14px 16px !important;
  cursor: pointer !important;
  touch-action: manipulation !important;

  white-space: nowrap !important;
  overflow: hidden !important;
}

.t-body .yoomoney-payment-form .ym-btn-pay:active{
  opacity: .94 !important;
}

.t-body .yoomoney-payment-form .ym-btn-pay .ym-price-output{
  color: #ffffff !important;
}

/* Текст на кнопке - без обрезки и "..." */
.t-body .yoomoney-payment-form .ym-btn-pay .ym-btn-text,
.t-body .yoomoney-payment-form .ym-btn-pay span{
  text-overflow: clip !important;
  overflow: visible !important;
  white-space: nowrap !important;
}

/* Лого */
.t-body .yoomoney-payment-form .ym-logo{
  display: block !important;
  margin: 2px auto 0 !important;
  opacity: .9 !important;
}

/* Мобильная адаптация */
@media (max-width: 420px){
  .t-body .yoomoney-payment-form{
    margin: 10px auto !important;
    padding: 14px !important;
  }

  /* На узких экранах кнопка в две строки для читаемости */
  .t-body .yoomoney-payment-form .ym-btn-pay{
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    padding: 12px 14px !important;
  }

  .t-body .yoomoney-payment-form .ym-btn-pay .ym-price-output{
    font-size: 18px !important;
  }
}
