/* web/static/auth.css — вход, регистрация, восстановление пароля, новый пароль,
   подтверждение почты, отписка: редизайн v2 (30.09, решение Алексея по макету).
   Одна карточка на все шесть страниц: значок, заголовок, одна строка
   пояснения, главное действие. Подключается после style.css; основа —
   прежняя .card.narrow, здесь только то, что поверх неё (.au).
   Замер 7 дней: 155 регистраций, из них 142 (92 %) через Яндекс и VK; на
   /register кнопка «Зарегистрироваться» стояла на 1 206 px телефона, а строка
   про подарок — мелким серым после юридической. */

/* Янтарный — как в result.css (там же оговорка): страницы входа его не грузят. */
:root{--warn:#8A5300;--warn-line:#E5A33A;--warn-soft:#FFF4DC}
@media (prefers-color-scheme:dark){:root{--warn:#F0B454;--warn-line:#8F6420;--warn-soft:#2B2416}}

.au{display:grid;gap:14px;padding:28px 28px 24px;border-radius:24px}
.au>*{margin:0}
.card.narrow.au h1{margin:0;font-size:28px;line-height:1.15;letter-spacing:-.02em}
.au-ic{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:var(--accent-soft)}
.au-ic .ico{width:26px;height:26px}
.au-ic.is-ok{background:var(--ok-soft)}
.au-ic.is-ok .ico{color:var(--ok)}
.au-ic.is-ok .ico .i-b{fill:transparent}
.au-ic.is-warn{background:var(--warn-soft)}
.au-ic.is-warn .ico{color:var(--warn)}
.au-ic.is-warn .ico .i-b{fill:transparent}
.au-lead{font-size:16px;line-height:1.5;color:var(--muted)}
.au-lead strong{color:var(--ink)}
/* Итог прямо в карточке — строкой со значком, без зелёной плашки. */
.au-ok{display:grid;grid-template-columns:22px minmax(0,1fr);gap:9px;font-size:15.5px;line-height:1.45}
.au-ok .ico{width:20px;height:20px;margin-top:1px;color:var(--ok)}
.au-ok .ico .i-b{fill:transparent}
.au .error{margin:0}

/* Отказ решения и итог оплаты (30.09): та же карточка. У отказа по энергии
   внутри — стена с пакетом, ей нужна ширина. */
.card.narrow.au-wide{max-width:560px}
.au-task{font-size:15.5px;line-height:1.45;color:var(--muted)}
.au-task strong{color:var(--ink);font-weight:600}
.au-tar{font-size:22px;line-height:1.25;font-weight:800}
.au-sup{font-size:13.5px;line-height:1.45;color:var(--muted)}
.au .energy-wall{margin:0}

/* Подарок — плашкой над кнопками Яндекса и VK. */
.au-gift{display:grid;grid-template-columns:32px minmax(0,1fr);gap:12px;align-items:center;padding:12px 14px;border-radius:16px;
  background:var(--wash);border:1px solid color-mix(in srgb,var(--accent) 35%,transparent);font-size:15px;line-height:1.4;color:var(--muted)}
.au-gift .ico{width:30px;height:30px}
.au-gift b{display:block;font-size:17px;line-height:1.3;color:var(--ink)}
.au .oauth-row{display:grid;gap:10px;margin:0}
.au .btn.oauth{width:100%;min-height:52px;font-size:16.5px;font-weight:700}
.au .oauth-terms{margin:0;font-size:12.5px;line-height:1.45}

/* «или» — линией. */
.au-or{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center;font-size:14px;color:var(--muted)}
.au-or::before,.au-or::after{content:"";height:1px;background:var(--border)}

/* Форма почты на регистрации — свёрнута: по почте 13 регистраций из 155. */
.au-mail{border:1px solid var(--border);border-radius:16px;padding:0 16px}
.au-mail>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:52px;
  font-size:16px;font-weight:700;list-style:none;cursor:pointer}
.au-mail>summary::-webkit-details-marker{display:none}
.au-mail>summary .ico{width:18px;height:18px;color:var(--accent);transform:rotate(90deg);transition:transform .2s cubic-bezier(.23,1,.32,1)}
.au-mail[open]>summary .ico{transform:rotate(-90deg)}
.au-mail[open]{padding-bottom:16px}
.au-mail>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:12px}
.au-mail .error{margin:0 0 12px}
.au-note{margin:0 0 4px;font-size:14.5px;color:var(--muted)}

/* Поля: подписи плотнее, чем в общих формах; «Забыл пароль?» — справа над полем. */
.au form{margin:0}
.au form label{margin:14px 0 6px}
.au form>label:first-of-type,.au-note+form>label:first-of-type{margin-top:4px}
.au .field-hint{font-size:13.5px}
.au-pl{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:14px 0 6px}
.au .au-pl label{margin:0}
.au-pl a{font-size:14px;font-weight:600}
/* Кнопка «показать пароль» — её ставит auth.js, без скрипта поле обычное. */
.au-pw{position:relative;display:block}
.au-pw input{padding-right:48px}
.au-eye{position:absolute;right:6px;top:50%;display:grid;place-items:center;width:38px;height:38px;margin-top:-19px;padding:0;
  border:0;border-radius:10px;background:none;color:var(--muted);cursor:pointer}
.au-eye:hover{color:var(--accent-ink)}
.au-eye:focus-visible{outline:2px solid var(--accent);outline-offset:0}
.au-eye svg{width:22px;height:22px}
.au-eye[aria-pressed="true"]{color:var(--accent-ink)}
.au form .btn{min-height:52px;font-size:17px;font-weight:800}
.au form p:has(.btn){margin:18px 0 0}

.au-alt{text-align:center;font-size:15px;color:var(--muted)}
.au-alt a{font-weight:600}
/* Итог подтверждения: подарок крупно, главная кнопка во всю ширину. */
.au-big{font-size:40px;line-height:1;font-weight:800;letter-spacing:-.02em;color:var(--accent-ink)}
.au-go{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;margin:0;
  font-size:17.5px;font-weight:800;text-decoration:none;transition:transform .12s cubic-bezier(.23,1,.32,1)}
.au-go:active{transform:scale(.97)}
.au-go .ico{width:22px;height:22px;color:inherit}
.au-go .ico .i-b{fill:var(--wash)}
.au-go.secondary{min-height:50px;font-size:16.5px;font-weight:700}
.au-go.secondary .ico .i-b{fill:var(--accent-soft)}

@media(max-width:520px){
  .au{padding:22px 18px 18px;border-radius:22px}
  .card.narrow.au h1{font-size:25px}
}
@media (prefers-reduced-motion:reduce){
  .au-mail>summary .ico,.au-go{transition:none}
}
