/* Кабинет входа/регистрации/онбординга MaxiMax — современный изолированный UI. */
:root{
  --bg:#0e1116; --bg2:#070a0e; --card:#161b23; --card2:#1d2530;
  --line:#28313d; --txt:#e8eef5; --muted:#8d99a9; --accent:#5aa6ff;
  --accent2:#7ee787; --tg:#2aabee; --vk:#0077ff; --danger:#ff6b6b;
  --radius:18px; --shadow:0 18px 50px rgba(0,0,0,.45);
}
*{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;background:radial-gradient(120% 120% at 80% 0%,#16202c 0%,var(--bg) 45%,var(--bg2) 100%);
  color:var(--txt);font:15px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  -webkit-font-smoothing:antialiased;
}
.cab{display:grid;grid-template-columns:1.05fr .95fr;min-height:100dvh}

/* --- Левая панель --- */
.cab-aside{position:relative;overflow:hidden;padding:48px 52px;display:flex;flex-direction:column;justify-content:center;gap:18px}
.cab-aside__glow{position:absolute;inset:-30% -10% auto auto;width:60%;height:60%;
  background:radial-gradient(circle,rgba(90,166,255,.35),transparent 70%);filter:blur(20px)}
.cab-aside__brand{display:flex;align-items:center;gap:10px;position:relative}
.cab-logo{font-size:24px;color:var(--accent)}
.cab-logo__name{font-weight:700;letter-spacing:.04em;font-size:20px}
.cab-aside__title{font-size:34px;line-height:1.15;margin:6px 0 0;max-width:9em;position:relative}
.cab-aside__sub{color:var(--muted);font-size:16px;max-width:24em;position:relative}

/* --- Правая панель / карточка --- */
.cab-panel{display:flex;align-items:center;justify-content:center;padding:28px 22px}
.cab-card{
  width:100%;max-width:412px;background:linear-gradient(180deg,var(--card),var(--card2));
  border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);
  padding:28px 26px;animation:cab-in .4s ease both;
}
@keyframes cab-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.cab-card__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}
.cab-logo--mobile{display:none}

/* Табы */
.cab-tabs{display:inline-flex;background:#0c1014;border:1px solid var(--line);border-radius:12px;padding:4px;flex:1}
.cab-tab{flex:1;border:0;background:transparent;color:var(--muted);font:inherit;font-weight:600;
  padding:8px 12px;border-radius:9px;cursor:pointer;transition:.18s}
.cab-tab.is-active{background:var(--accent);color:#06101f}
.cab-lead{color:var(--muted);margin:0 0 18px;font-size:14px}

/* Соц-кнопки */
.cab-social{display:flex;flex-direction:column;gap:10px}
.cab-social__btn{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;
  border:1px solid var(--line);border-radius:12px;padding:12px;background:#10161e;color:var(--txt);
  font:inherit;font-weight:600;cursor:pointer;transition:.18s}
.cab-social__btn:hover{transform:translateY(-1px);border-color:#3a4654}
.cab-social__btn--tg:hover{border-color:var(--tg);box-shadow:0 0 0 1px var(--tg) inset}
.cab-social__btn--vk:hover{border-color:var(--vk);box-shadow:0 0 0 1px var(--vk) inset}
.cab-social__ic{font-size:17px}

/* Разделитель */
.cab-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:12px;margin:18px 0}
.cab-divider::before,.cab-divider::after{content:"";flex:1;height:1px;background:var(--line)}

/* Форма */
.cab-form{display:flex;flex-direction:column;gap:13px}
.cab-field{display:flex;flex-direction:column;gap:6px}
.cab-field__label{font-size:12.5px;color:var(--muted)}
.cab-field input{
  width:100%;background:#0b0f14;border:1px solid var(--line);border-radius:11px;
  padding:12px 13px;color:var(--txt);font:inherit;transition:.16s;
}
.cab-field input::placeholder{color:#5b6675}
.cab-field input:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px rgba(90,166,255,.18)}
.cab-field input:invalid:not(:placeholder-shown){border-color:#7a4a4a}

/* Ошибка */
.cab-error{color:var(--danger);font-size:13px;margin:2px 0 0;min-height:0}

/* Кнопка submit */
.cab-submit{position:relative;display:flex;align-items:center;justify-content:center;gap:8px;
  width:100%;border:0;border-radius:12px;padding:13px;margin-top:4px;cursor:pointer;
  background:linear-gradient(135deg,var(--accent),#3f8ae0);color:#06101f;font:inherit;font-weight:700;
  transition:.16s}
.cab-submit:hover{filter:brightness(1.06);transform:translateY(-1px)}
.cab-submit:disabled{opacity:.6;cursor:default;transform:none}
.cab-submit__spin{width:15px;height:15px;border:2px solid rgba(6,16,31,.4);border-top-color:#06101f;
  border-radius:50%;display:none;animation:cab-spin .7s linear infinite}
.cab-submit.is-loading .cab-submit__spin{display:inline-block}
.cab-submit.is-loading .cab-submit__text{opacity:.75}
@keyframes cab-spin{to{transform:rotate(360deg)}}

/* Переключатель снизу */
.cab-switch{text-align:center;color:var(--muted);font-size:13.5px;margin:16px 0 0}
.cab-link{background:0;border:0;color:var(--accent);font:inherit;font-weight:600;cursor:pointer;padding:0}
.cab-link:hover{text-decoration:underline}
.cab-ghost{border:1px solid var(--line);background:transparent;color:var(--txt);font:inherit;
  font-weight:600;border-radius:12px;padding:13px 18px;cursor:pointer;transition:.16s}
.cab-ghost:hover{border-color:#3a4654}

/* --- Мастер онбординга --- */
.cab-wizard__progress{display:flex;gap:8px;justify-content:center;margin-bottom:22px}
.cab-dot{width:30px;height:5px;border-radius:3px;background:var(--line);transition:.25s}
.cab-dot.is-active{background:var(--accent)}
.cab-step{display:none;flex-direction:column;gap:12px;animation:cab-in .35s ease both}
.cab-step.is-active{display:flex}
.cab-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:11px;color:var(--accent);margin:0}
.cab-step__title{font-size:24px;margin:0}
.cab-step__text{color:var(--muted);margin:0 0 4px;font-size:14px}
.cab-step__actions{display:flex;gap:10px;margin-top:4px}
.cab-step__actions .cab-submit{margin-top:0}

/* Wow-экран */
.cab-step--wow{text-align:center;align-items:center}
.cab-wow__burst{font-size:46px;animation:cab-pop .5s ease both}
@keyframes cab-pop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.15)}100%{transform:scale(1);opacity:1}}
.cab-wow__body{color:var(--muted);font-size:14.5px;line-height:1.6;width:100%}
.cab-wow__body .cab-wow__row{display:flex;justify-content:space-between;gap:10px;
  border-bottom:1px solid var(--line);padding:8px 2px}
.cab-wow__body .cab-wow__row b{color:var(--txt);font-weight:600}

/* Тосты/состояния */
.cab-card[hidden],.cab-field[hidden],.cab-error[hidden]{display:none}

/* --- Адаптив --- */
@media (max-width:860px){
  .cab{grid-template-columns:1fr}
  .cab-aside{display:none}
  .cab-panel{padding:20px 16px}
  .cab-logo--mobile{display:inline;font-size:22px}
}
@media (prefers-reduced-motion:reduce){
  .cab-card,.cab-step,.cab-wow__burst{animation:none}
  .cab-submit__spin{animation-duration:1.2s}
}
.cab-tg-hint{margin:8px 0 0;font-size:13px;color:var(--muted);text-align:center}
.cab-tg-hint a{color:var(--tg);font-weight:600;text-decoration:none}
.cab-tg-hint a:hover{text-decoration:underline}
