/* Login and Registration layout built on the shared console.css tokens. */
.auth-page { min-height:100vh; padding:94px 24px 48px; }
.auth-page .back-to-home { position:absolute; top:28px; left:42px; display:inline-flex; align-items:center; gap:9px; padding:9px 12px; border:1px solid var(--line); color:var(--muted); font:400 11px var(--mono); }
.auth-page .back-to-home:hover { border-color:var(--signal); color:var(--signal); }
.auth-page .auth-container { width:100%; max-width:520px; margin:0 auto; }
.auth-page .auth-card { background:var(--surface); border:1px solid var(--line); }
.auth-page .auth-header { padding:29px 30px 25px; border-bottom:1px solid var(--line); }
.auth-page .auth-brand { display:flex; align-items:center; margin-bottom:28px; }
.auth-page .auth-brand .biddy-logo { width:180px; }
.auth-page .auth-title { margin:0; color:var(--paper); font:600 60px/.98 var(--display); text-transform:uppercase; letter-spacing:-.4px; }
.auth-page .auth-title::after { content:'.'; color:var(--signal); }
.auth-page .auth-subtitle { margin:13px 0 0; color:var(--muted); font-size:13px; line-height:1.7; }
.auth-page .auth-body { padding:28px 30px; }
.auth-page .form-group { position:relative; margin-bottom:20px; }
.auth-page .form-label,.auth-page .floating-label label { display:block; margin:0 0 9px; color:var(--muted); font:400 11px/1.5 var(--mono); }
.auth-page .form-control { min-height:46px; font-size:14px; }
.auth-page .input-group { position:relative; }
.auth-page .input-group>.input-icon,.auth-page .input-group>.input-group-prepend { position:absolute; left:14px; top:50%; transform:translateY(-50%); color:var(--dim); font-size:12px; pointer-events:none; }
.auth-page .input-group .form-control { padding-left:40px; }
.auth-page .floating-label { display:flex; flex-direction:column-reverse; }
.auth-page .auth-btn,.auth-page .phone-btn { width:100%; min-height:46px; display:inline-flex; align-items:center; justify-content:center; gap:9px; border:1px solid var(--signal); border-radius:0; background:var(--signal); color:var(--signal-ink); padding:12px 16px; font:500 14px/1.4 var(--body); cursor:pointer; }
.auth-page .auth-btn:hover { background:#e2f5ba; }
.auth-page #send-otp-btn[style] { background:var(--signal)!important; }
.auth-page .phone-btn { color:var(--signal); border-color:#718557; background:transparent; }
.auth-page .phone-btn:hover { background:#293624; }
.auth-page .auth-btn i,.auth-page .phone-btn i { font-size:12px; }
.auth-page .divider { display:flex; align-items:center; gap:13px; margin:26px 0 23px; color:var(--dim); font:400 10px/1.7 var(--mono); text-align:center; }
.auth-page .divider::before,.auth-page .divider::after { content:''; height:1px; background:var(--line); flex:1; }
.auth-page .divider span { max-width:32ch; }
.auth-page #otp-container { display:none; }
.auth-page #otp-container.show { display:block; margin-top:22px; }
.auth-page .auth-footer { margin-top:25px; padding-top:20px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; line-height:1.7; text-align:center; }
.auth-page .auth-footer p { margin:0; }
.auth-page .auth-link,.auth-page .form-check-label a { color:var(--signal); text-decoration:underline; text-underline-offset:3px; }
.auth-page .form-check { display:flex; align-items:flex-start; gap:10px; margin:7px 0 22px; }
.auth-page .form-check-input { flex-shrink:0; width:17px; height:17px; margin:2px 0 0; }
.auth-page .form-check-label { color:var(--muted); font-size:12px; line-height:1.7; }
.auth-page .alert { display:flex; align-items:flex-start; gap:9px; padding:13px 15px; margin-bottom:22px; border:1px solid #715044; border-left:3px solid var(--warning); color:var(--warning); background:#2b221b; font-size:13px; line-height:1.6; }
.auth-page .alert i { font-size:12px; padding-top:4px; }
.auth-page .alert-success { color:var(--signal); background:#202c1e; border-color:#657a4e; }
@media (max-width:700px) {
  .auth-page { padding:84px 20px 30px; }
  .auth-page .back-to-home { left:20px; top:20px; font-size:11px; }
  .auth-page .auth-header { padding:25px 22px 23px; }
  .auth-page .auth-body { padding:25px 22px; }
  .auth-page .auth-brand { margin-bottom:24px; }
  .auth-page .auth-brand .biddy-logo { width:164px; }
  .auth-page .auth-title { font-size:clamp(43px,10vw,55px); }
  .auth-page .auth-subtitle { font-size:13px; }
  .auth-page .form-control { font-size:16px; }
  .auth-page .divider { font-size:10px; gap:10px; }
}
