/* ============================================================
   AUTH — страницы входа и регистрации (molecmag)
   ============================================================ */
.auth { padding: 40px 0 64px; }
.auth__heading {
  margin: 0 0 8px;
  font: 600 clamp(26px, 2.6vw, 38px)/1.15 'Rubik', sans-serif;
  color: var(--text-primary);
}
.auth__login-hint, .auth__text { margin: 0 0 24px; color: var(--text-secondary); font-size: 14px; }
.auth__text b { color: var(--text-primary); font-weight: 600; }

.auth__alert {
  margin: 0 0 20px; padding: 12px 16px; border-radius: 12px; font-size: 14px;
}
.auth__alert--err { background: #fdecec; color: #d33; }
.auth__alert--ok { background: #e8f7f3; color: #1FB59C; }

/* login: две карточки */
.auth__grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 24px; align-items: start;
}
.auth__card {
  background: var(--bg-tertiary);
  border-radius: var(--radius-24, 24px);
  padding: 32px;
  box-shadow: var(--shadow-s, 0 4px 20px rgba(0,0,0,.05));
}
.auth__card--alt { background: var(--bg-primary-bg); box-shadow: none; }
.auth__title { margin: 0 0 20px; font: 500 22px/1.2 'Rubik', sans-serif; color: var(--text-primary); }

/* поля */
.auth__form { display: flex; flex-direction: column; gap: 16px; }
.auth__field { display: flex; flex-direction: column; gap: 6px; }
.auth__label { font-size: 13px; color: var(--text-secondary); }
.auth__input {
  height: 48px; padding: 0 16px;
  border: 1px solid var(--border-primary); border-radius: 12px;
  background: #fff;
  font: 400 14px 'Geologica', sans-serif; color: var(--text-primary);
  outline: none; width: 100%;
}
select.auth__input { appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23999' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; padding-right: 40px; }
.auth__input:focus { border-color: var(--teal); }
.auth__err { font-size: 12px; color: #d33; }
.auth__forgot { font-size: 13px; color: var(--text-accent, var(--teal)); align-self: flex-start; }

.auth__btn {
  height: 50px; padding: 0 28px; border: none; border-radius: var(--radius-pill, 100px);
  background: var(--teal); color: #fff; font: 500 15px 'Geologica', sans-serif;
  cursor: pointer; display: inline-flex; align-items: center; justify-content: center; text-decoration: none;
}
.auth__btn:hover { opacity: .92; }
.auth__btn--ghost { background: transparent; color: var(--teal); border: 1.5px solid var(--teal); }

/* регистрация */
.auth__form--register { gap: 28px; max-width: 860px; }
.auth__section {
  background: var(--bg-tertiary); border-radius: var(--radius-24, 24px);
  padding: 28px 32px; box-shadow: var(--shadow-s, 0 4px 20px rgba(0,0,0,.05));
}
.auth__rows {
  display: grid; grid-template-columns: 1fr 1fr; gap: 16px 24px;
}
.auth__field--full { grid-column: 1 / -1; }
.auth__section--news { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
/* строка «Рассылка новостей» внутри карточки адреса — лёгкий разделитель сверху */
.auth__news-row {
  display: flex; align-items: center; gap: 24px; flex-wrap: wrap;
  margin-top: 20px; padding-top: 20px;
  border-top: 1px solid var(--border-primary);
}
.auth__radios { display: flex; gap: 20px; }
.auth__radio, .auth__agree { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; color: var(--text-primary); cursor: pointer; }
.auth__submit-row { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; }
.auth__submit-row--start { justify-content: flex-start; }
/* узкая центральная колонка (восстановление пароля) */
.auth__narrow { max-width: 520px; }
.auth__agree span { color: var(--text-secondary); font-size: 13px; }

/* ===== Success / «операция выполнена успешно» ===== */
.success {
  max-width: 640px;
  margin: 8px auto 0;
  background: var(--bg-tertiary);
  border-radius: var(--radius-24, 24px);
  box-shadow: var(--shadow-s, 0 4px 20px rgba(0,0,0,.05));
  padding: 48px 40px;
  text-align: center;
}
.success__badge {
  width: 72px; height: 72px; margin: 0 auto 24px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%;
  background: var(--bg-primary-bg, #e8f7f3);
  color: var(--teal);
}
.success__heading {
  margin: 0 0 16px;
  font: 600 clamp(24px, 2.4vw, 32px)/1.2 'Rubik', sans-serif;
  color: var(--text-primary);
}
.success__text {
  margin: 0 0 32px;
  font: 400 15px/1.6 'Geologica', sans-serif;
  color: var(--text-secondary);
}
.success__text p { margin: 0 0 12px; }
.success__text p:last-child { margin-bottom: 0; }
.success__text a { color: var(--teal); text-decoration: none; }
.success__text a:hover { text-decoration: underline; }
.success__actions { display: flex; justify-content: center; }

@media (max-width: 768px) {
  .success { padding: 36px 24px; }
  .success__actions .auth__btn { width: 100%; }
}

/* хлебные крошки на страницах авторизации */
.auth__breadcrumb {
  display: flex; flex-wrap: wrap; gap: 6px; list-style: none; margin: 0 0 16px; padding: 0;
  font-size: 13px; color: var(--text-tertiary);
}
.auth__breadcrumb li:not(:last-child)::after { content: '/'; margin-left: 6px; color: var(--text-tertiary); }
.auth__breadcrumb a { color: var(--text-secondary); text-decoration: none; }
.auth__breadcrumb li:last-child a { color: var(--text-primary); }

/* радио-список способов оплаты (вертикально) */
.auth__radios--col { flex-direction: column; gap: 12px; }
.auth__radio input[type=radio] { accent-color: var(--teal); width: 18px; height: 18px; }
.auth__agree input[type=checkbox] { accent-color: var(--teal); width: 18px; height: 18px; }

/* условные блоки полей оплаты — показываются JS-ом по выбранному способу */
.auth__pay-block { display: none; margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--border-primary); }

@media (max-width: 768px) {
  .auth__grid { grid-template-columns: 1fr; }
  .auth__rows { grid-template-columns: 1fr; }
  .auth__submit-row { flex-direction: column; align-items: stretch; }
  .auth__btn { width: 100%; }
}

/* ===== SimpleRegister (account/simpleregister) — скин под тему molecmag ===== */
/* убираем меню кабинета, форму — по центру */
body.account-simpleregister #column-left,
body.account-simpleregister #column-right { display: none !important; }
body.account-simpleregister #content { width: 100% !important; max-width: 720px; margin: 0 auto; float: none !important; padding: 0 20px; }
body.account-simpleregister .simple-content { max-width: 720px; margin: 0 auto; }

/* заголовок / интро */
body.account-simpleregister #content h1 { font: 600 30px/1.15 'Rubik', sans-serif; color: var(--text-primary); margin: 8px 0 6px; letter-spacing: -.4px; }
body.account-simpleregister .simpleregister-have-account { font: 400 14px/1.5 'Geologica', sans-serif; color: var(--text-secondary); margin: 0 0 24px; }

/* карточка с полями */
body.account-simpleregister .simpleregister-block-content { background: var(--bg-tertiary); border-radius: 20px; padding: 24px; box-shadow: var(--shadow-s, 0 4px 20px rgba(0,0,0,.05)); }

/* строки: лейбл над инпутом, на всю ширину */
body.account-simpleregister .form-group { display: block; margin: 0 0 16px; }
body.account-simpleregister .form-group:last-child { margin-bottom: 0; }
body.account-simpleregister .control-label { display: block; width: auto; float: none; text-align: left; padding: 0 0 6px; margin: 0; font: 400 13px 'Geologica', sans-serif; color: var(--text-secondary); }
body.account-simpleregister .form-group > div[class^="col-"] { width: 100%; max-width: 100%; float: none; padding: 0; }
body.account-simpleregister .form-control { height: 48px; padding: 0 16px; width: 100%; border: 1px solid var(--border-primary); border-radius: 12px; background: #fff; font: 400 14px 'Geologica', sans-serif; color: var(--text-primary); outline: none; box-shadow: none; }
body.account-simpleregister textarea.form-control { height: auto; min-height: 90px; padding: 12px 16px; }
body.account-simpleregister select.form-control { appearance: none; -webkit-appearance: none; background-image: url("data:image/svg+xml,%3Csvg width='12' height='8' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23999' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; padding-right: 40px; }
body.account-simpleregister .form-control:focus { border-color: var(--teal); }
body.account-simpleregister .text-danger, body.account-simpleregister .error { color: #d33; font-size: 12px; }

/* радио (рассылка) */
body.account-simpleregister .radio { margin: 0; }
body.account-simpleregister .radio label { display: inline-flex; align-items: center; gap: 7px; margin: 0 20px 0 0; font: 400 14px 'Geologica', sans-serif; color: var(--text-primary); }
body.account-simpleregister .radio input[type=radio] { accent-color: var(--teal); width: 17px; height: 17px; margin: 0; }

/* блок кнопки + согласие */
body.account-simpleregister .simpleregister-button-block { display: flex; flex-direction: column; gap: 16px; align-items: flex-start; margin-top: 20px; padding: 0; border: none; }
body.account-simpleregister .simpleregister-button-right { display: flex; flex-direction: column; gap: 16px; width: 100%; }

/* чекбокс согласия — без белого бокса */
body.account-simpleregister .checkbox { background: none; border: none; padding: 0; margin: 0; }
body.account-simpleregister .checkbox label { display: flex; align-items: flex-start; gap: 9px; font: 400 13px/1.45 'Geologica', sans-serif; color: var(--text-secondary); cursor: pointer; margin: 0; }
body.account-simpleregister .checkbox input[type=checkbox] { accent-color: var(--teal); width: 18px; height: 18px; margin: 2px 0 0; flex: 0 0 auto; }
body.account-simpleregister .checkbox a { color: var(--teal); }

/* кнопка «Продолжить» */
body.account-simpleregister #simpleregister_button_confirm,
body.account-simpleregister .simpleregister-button-right .button_oc { display: inline-flex; align-items: center; justify-content: center; height: 50px; padding: 0 36px; border: none; border-radius: 100px; background: var(--teal); cursor: pointer; text-decoration: none; font: 500 15px 'Geologica', sans-serif; }
body.account-simpleregister #simpleregister_button_confirm span, body.account-simpleregister .button_oc span { color: #fff; }
body.account-simpleregister #simpleregister_button_confirm:hover { opacity: .92; }

/* алерты/ошибки */
body.account-simpleregister .simpleregister-warning-block,
body.account-simpleregister .warning, body.account-simpleregister .alert-danger { background: #fdecec; border: 1px solid #f5c2c2; color: #c0392b; border-radius: 12px; padding: 12px 16px; font: 400 13px 'Geologica', sans-serif; margin: 0 0 16px; }
