/* =============================================================
   assets/css/auth.css
   Login, register, forgot password, reset password pages
   ============================================================= */

.auth-layout {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 48px;
  align-items: start;
  max-width: 920px;
  margin: 0 auto;
}
.auth-card {
  background: var(--white);
  border: 1px solid var(--gray-light);
  border-radius: var(--radius-xl);
  padding: 36px;
}
.auth-header { margin-bottom: 24px; }
.auth-header h2 { margin-bottom: 6px; }
.auth-header p  { font-size: 15px; color: var(--gray-text); }
.auth-section-label {
  font-size: 11px; font-weight: 700;
  text-transform: uppercase; letter-spacing: 0.09em;
  color: var(--gray-text); margin-bottom: 14px;
  padding-bottom: 8px; border-bottom: 1px solid var(--gray-light);
}
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.input-error { border-color: #C0392B !important; }
.alert { padding: 12px 16px; border-radius: var(--radius-md); font-size: 14px; margin-bottom: 20px; }
.alert-error   { background: #FCEAEA; color: #8B1A1A; border: 1px solid #F5C0C0; }
.alert-success { background: #E6F5E6; color: #1A4A1A; border: 1px solid #A8D5A8; }
.auth-footer-link {
  text-align: center; margin-top: 20px;
  font-size: 14px; color: var(--gray-text);
  padding-top: 20px; border-top: 1px solid var(--gray-light);
}
.auth-footer-link a { color: var(--navy); font-weight: 600; }

/* Register aside panel */
.auth-aside { display: flex; flex-direction: column; gap: 24px; padding-top: 8px; }
.auth-plan-badge {
  background: var(--navy);
  border-radius: var(--radius-lg);
  padding: 24px;
}
.apb-plan  { font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: rgba(255,255,255,0.5); margin-bottom: 6px; }
.apb-price { font-family: var(--font-display); font-size: 2rem; font-weight: 700; color: var(--white); }
.apb-note  { font-size: 13px; color: rgba(255,255,255,0.5); margin-top: 10px; }
.auth-benefits {
  list-style: none;
  display: flex; flex-direction: column; gap: 10px;
}
.auth-benefits li { font-size: 14px; color: var(--text); }
.auth-quote {
  background: var(--off-white);
  border-radius: var(--radius-lg);
  padding: 20px;
  border-left: 3px solid var(--green);
}
.auth-quote p    { font-size: 15px; font-style: italic; color: var(--text); margin-bottom: 8px; }
.auth-quote span { font-size: 13px; color: var(--gray-text); }

@media (max-width: 800px) {
  .auth-layout { grid-template-columns: 1fr; }
  .auth-aside  { display: none; }
}
@media (max-width: 500px) {
  .auth-card { padding: 24px 20px; }
  .form-row  { grid-template-columns: 1fr; }
}
