/* Страница авторизации/регистрации — нежная карточка по центру + боковой блок */
.auth-wrap{
  display:grid;
  grid-template-columns: 1fr 0.9fr;
  gap:22px;
  padding:32px 0 40px;
}
@media (max-width: 960px){
  .auth-wrap{ grid-template-columns:1fr; padding:22px 0 32px; }
}

/* Левая карточка */
.auth-card{
  background: var(--card);
  border:1px solid var(--border);
  border-radius: 18px;
  box-shadow: var(--shadow);
  padding: 22px;
}

/* Верхняя часть карточки */
.auth-head{
  display:flex; align-items:center; gap:14px; margin-bottom:14px;
}
.brand-mini span{
  display:inline-block; width:40px; height:40px; border-radius:12px;
  background: linear-gradient(135deg, var(--primary-weak), #fff);
  border:1px solid var(--border); box-shadow: var(--shadow);
}
.titles h1{ font-size:20px; margin:0 0 4px 0; }
.titles p{ margin:0; color:var(--muted); }

/* Вкладки */
.tabs{
  display:flex; gap:8px; background:#f5f7fb; border:1px solid var(--border);
  padding:6px; border-radius: 12px; width:max-content; margin-bottom:14px;
}
.tab{
  border:none; background:transparent; padding:8px 14px; border-radius:10px;
  font-weight:700; cursor:pointer; color:var(--muted);
}
.tab.active{ background:#fff; color:var(--text); box-shadow: var(--shadow); }

/* Формы */
.auth-form{ margin-top:6px; }
.input input, .input select{
  height:44px;
  border-radius:12px;
  border:1px solid var(--border);
  background:#fff;
  padding:10px 12px;
  outline:none;
  transition: box-shadow .15s, border-color .15s;
}
.input input:focus, .input select:focus{
  border-color: rgba(37, 99, 235, .45);
  box-shadow: 0 0 0 4px rgba(37, 99, 235, .10);
}
.input .label{ font-weight:700; color:#111827; }
.form .row{ display:grid; grid-template-columns: 1fr 1fr; gap:12px; }
@media (max-width:700px){ .form .row{ grid-template-columns:1fr; } }

.button.wide{ width:100%; height:46px; }

/* Боковая панель справа */
.auth-aside{
  position: relative;
}
.aside-inner{
  height:100%;
  background: linear-gradient(135deg, var(--primary-weak), #ffffff);
  border:1px solid var(--border);
  border-radius:18px;
  box-shadow: var(--shadow);
  padding:20px;
}
.aside-inner h3{ margin:0 0 8px 0; }
.aside-inner p{ margin:0 0 10px 0; color:var(--muted); }
.aside-inner ul{ margin:0; padding-left:18px; color:var(--text); }
.aside-inner li{ margin:6px 0; }

/* Сообщения */
.alert{
  padding:12px 14px; border-radius:12px; border:1px solid var(--border);
  margin-bottom:12px;
}
.alert.error{ border-color: rgba(239,68,68,.35); background:#fff1f1; }
.alert.success{ border-color: rgba(16,185,129,.35); background:#f1fff7; }
