/**
 * Формы подписки sidebar / footer + стили согласия CF7.
 * Единое место для .sidebar__subscription, consent UI .subscription__form и связанных правил wpcf7.
 */

/* -------------------------------------------------------------------------- */
/* Блок подписки sidebar (перенесён из style.css)                          */
/* -------------------------------------------------------------------------- */

.sidebar__subscription {
  border-radius: 2rem;
  background: url(../images/subscription-form.png) 0 0 no-repeat;
  background-size: cover;
  padding: 2.2rem 2rem;
}

.main__aside .sidebar__subscription {
  margin: 1.6rem 0;
}

.sidebar__subscription h5 {
  font-family: "DrukWideCyrMedium";
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 120%;
  text-align: center;
  color: #fff;
  margin: 0 0 1.4rem 0;
}

.sidebar__subscription p.note {
  font-weight: 400;
  font-size: 1rem;
  line-height: 130%;
  color: #e5e8eb;
  margin: 0;
}

.sidebar__subscription p.note a {
  color: #fff;
  text-decoration: none;
}

@media screen and (min-width: 1000px) {
  .sidebar__subscription p.note a:hover {
    color: #fff;
    text-decoration: underline;
  }
}

.sidebar__subscription .form__control {
  border-radius: 1rem;
  padding: 1.4rem 1.6rem;
  border: 1px solid #fff;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 120%;
  color: #fff;
  background: transparent;
  width: 100%;
  outline: none;
}

.sidebar__subscription ::-webkit-input-placeholder {
  color: rgba(255, 255, 255, 0.7);
}

.sidebar__subscription ::-moz-placeholder {
  color: rgba(255, 255, 255, 0.7);
}

.sidebar__subscription :-moz-placeholder {
  color: rgba(255, 255, 255, 0.7);
}

.sidebar__subscription :-ms-input-placeholder {
  color: rgba(255, 255, 255, 0.7);
}

.sidebar__subscription .button {
  font-weight: 700;
  font-size: 1.6rem;
  line-height: 120%;
  color: #4a59e7;
  background: #fff;
  padding: 1.7rem 2.4rem;
  white-space: nowrap;
  border-radius: 1.2rem;
  border: 0;
  font-family: "Golos Text", sans-serif;
  transition: all 400ms ease-in-out;
  width: 100%;
  margin: 1.6rem 0;
  cursor: pointer;
}

.sidebar__subscription .button:disabled {
  opacity: 0.5;
  pointer-events: none;
}

@media screen and (max-width: 419.98px) {
  .sidebar__subscription .button {
    padding: 1.6rem 2.4rem;
  }
}

/* -------------------------------------------------------------------------- */
/* CF7 acceptance / согласие на ПД (все поверхности подписки)         */
/* -------------------------------------------------------------------------- */

/* Полная форма рассылки (2246) — светлая поверхность */
.wpcf7-form-control-wrap[data-name="personal-data-consent"] .wpcf7-acceptance {
  display: block;
  margin: 0 0 1.2rem;
  font-weight: 400;
  font-family: "Golos Text", sans-serif;
  font-size: 1.4rem;
  line-height: 130%;
  color: #637381;
}

.wpcf7-form .wpcf7-acceptance .wpcf7-list-item {
  margin: 0;
}

.wpcf7-form .wpcf7-acceptance .wpcf7-list-item-label {
  font-weight: 400;
  font-size: 1.3rem;
  line-height: inherit;
  color: inherit;
}

.wpcf7-form .wpcf7-acceptance a {
  color: #4a59e7;
  text-decoration: underline;
  font-weight: 400;
}

.wpcf7-form .wpcf7-acceptance .wpcf7-list-item label {
  display: flex;
  align-items: flex-start;
  gap: 0.6rem;
  cursor: pointer;
}

.wpcf7-form .wpcf7-acceptance input[type="checkbox"] {
  flex: 0 0 auto;
  width: 1.2rem;
  height: 1.2rem;
  margin: 0.15rem 0 0;
  accent-color: #4a59e7;
  cursor: pointer;
}

/* Мини-форма sidebar (2247) — как p.note */
.sidebar__subscription .wpcf7-acceptance {
  display: block;
  margin: 0;
  font-weight: 400;
  font-family: "Golos Text", sans-serif;
  font-size: 1rem;
  line-height: 130%;
  color: #e5e8eb;
}

.sidebar__subscription .wpcf7-acceptance .wpcf7-list-item-label {
  color: #e5e8eb;
}

.sidebar__subscription .wpcf7-acceptance a {
  color: #fff;
  text-decoration: none;
  font-weight: 400;
}

@media screen and (min-width: 1000px) {
  .sidebar__subscription .wpcf7-acceptance a:hover {
    color: #fff;
    text-decoration: underline;
  }
}

.sidebar__subscription .wpcf7-acceptance input[type="checkbox"] {
  accent-color: #fff;
}

/* Подписка footer / banner (3115) */
.subscription__form form {
  flex-wrap: wrap;
  align-items: stretch;
}

.subscription__form .form__group {
  width: auto;
  flex: 1 1 0;
  min-width: 0;
}

.subscription__form form > p {
  flex: 0 0 auto;
  margin: 0;
}

.subscription__form .qe-pd-consent-row {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
  margin: 1.1em 0 0 0;
}

.subscription__form .wpcf7-acceptance {
  display: block;
  font-weight: 400;
  font-family: "Golos Text", sans-serif;
  font-size: 1.3rem;
  line-height: 130%;
  margin: 0;
  color: #e5e8eb;
}

.subscription__form .wpcf7-acceptance .wpcf7-list-item-label {
  font-size: 1.3rem;
  line-height: 130%;
  color: #e5e8eb;
}

.subscription__form .wpcf7-acceptance a {
  font-weight: 400;
  color: #e5e8eb;
  text-decoration: none;
}

@media screen and (min-width: 740px) {
  .subscription__form .wpcf7-acceptance a:hover {
    color: #fff;
    text-decoration: none;
  }
}

@media screen and (max-width: 574.98px) {
  .subscription__form .form__group {
    width: 100%;
    flex: 1 1 100%;
  }
}

@media screen and (max-width: 419.98px) {
  .subscription__form .wpcf7-acceptance,
  .subscription__form .wpcf7-acceptance .wpcf7-list-item-label {
    font-size: 1.2rem;
  }

  .subscription__form .qe-pd-consent-row {
    margin: 1.6rem 0 0;
  }
}

.subscription__form .wpcf7-acceptance input[type="checkbox"] {
  accent-color: #fff;
}

/* Idle CF7 spinner не должен резервировать gap (инжект после JS init) */
.subscription__form .wpcf7-spinner,
.sidebar__subscription .wpcf7-spinner,
.wpcf7-form .wpcf7-spinner {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
}

.subscription__form form.submitting .wpcf7-spinner,
.sidebar__subscription.submitting .wpcf7-spinner,
.wpcf7-form.submitting .wpcf7-spinner {
  display: inline-block !important;
  visibility: visible !important;
  width: 24px !important;
  height: 24px !important;
  margin: 0 0 0 0.8rem !important;
}

/* Валидация: одна красная рамка */
.wpcf7-form input.qe-pd-field-error.form__control,
.wpcf7-form input.form__control.qe-pd-field-error,
.subscription__form input.qe-pd-field-error,
.sidebar__subscription input.qe-pd-field-error,
.wpcf7-form-control-wrap.qe-pd-field-error > input.form__control,
.form__group.qe-pd-field-error input.form__control {
  border-color: #ff4842 !important;
}

.qe-pd-consent-row.qe-pd-field-error,
.wpcf7-form-control-wrap[data-name="personal-data-consent"].qe-pd-field-error {
  outline: 1px solid #ff4842;
  border-radius: 0.6rem;
  padding: 0.4rem;
}

.qe-pd-error-tip {
  display: block;
  margin: 0.4rem 0 0;
  font-weight: 400;
  font-size: 1.2rem;
  line-height: 130%;
  color: #ff4842;
}

.subscription__form .qe-pd-error-tip,
.sidebar__subscription .qe-pd-error-tip {
  color: #fdb0b0;
  font-size: 1.2rem;
}

.form__flex__group .qe-pd-error-tip {
  color: #d80027;
  font-size: 1.4rem;
}
