/* ===== AUTH PAGES ===== */
.auth-page{min-height:100vh;display:flex;align-items:stretch;background:var(--gradient-hero)}
.auth-brand-panel{flex:1;max-width:480px;background:var(--gradient-hero);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;position:relative;overflow:hidden}
.auth-brand-panel::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 30% 70%,rgba(212,175,55,.15) 0%,transparent 60%),radial-gradient(ellipse at 70% 30%,rgba(181,38,95,.2) 0%,transparent 60%);pointer-events:none}
.auth-brand-content{position:relative;z-index:1;text-align:center}
.auth-brand-logo{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0.75rem;margin-bottom:1.5rem}
.auth-logo-img{width:96px;height:96px;border-radius:50%;object-fit:cover;border:2.5px solid var(--accent);box-shadow:0 8px 25px rgba(0,0,0,.35);background:#FFF8F0;flex-shrink:0;transition:transform .4s ease}
.auth-logo-img:hover{transform:scale(1.06) rotate(3deg)}
.auth-logo-icon{width:60px;height:60px;background:rgba(212,175,55,.2);border:2px solid rgba(212,175,55,.4);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.8rem}
.auth-logo-text{text-align:center}
.auth-logo-text .brand-name{font-family:var(--font-display);font-size:1.6rem;font-weight:700;color:var(--white);display:block}
.auth-logo-text .brand-tagline{font-size:0.65rem;color:var(--accent);font-weight:600;letter-spacing:2px;text-transform:uppercase;display:block}
.auth-brand-title{font-family:var(--font-display);font-size:2rem;color:var(--white);margin-bottom:1rem;line-height:1.3}
.auth-brand-title span{color:var(--accent)}
.auth-brand-desc{font-size:0.9rem;color:rgba(255,255,255,.75);line-height:1.8;margin-bottom:2rem}
.auth-features{display:flex;flex-direction:column;gap:0.75rem;width:100%;max-width:280px;margin:0 auto}
.auth-feature{display:flex;align-items:center;gap:0.75rem;color:rgba(255,255,255,.85);font-size:0.88rem}
.auth-feature-icon{width:32px;height:32px;background:rgba(212,175,55,.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:0.9rem;flex-shrink:0}

.auth-form-panel{flex:1;display:flex;align-items:center;justify-content:center;background:var(--cream);padding:2rem}
.auth-box{width:100%;max-width:440px;background:var(--white);border-radius:var(--radius-xl);padding:2.5rem;box-shadow:var(--shadow-xl);animation:scaleIn .4s ease both}
.auth-box-header{text-align:center;margin-bottom:2rem}
.auth-box-header h2{font-family:var(--font-display);color:var(--primary);margin-bottom:0.4rem}
.auth-box-header p{font-size:0.88rem;color:var(--text-muted)}

.auth-divider{display:flex;align-items:center;gap:1rem;margin:1.25rem 0;color:var(--text-muted);font-size:0.82rem}
.auth-divider::before,.auth-divider::after{content:'';flex:1;height:1px;background:rgba(139,26,74,.12)}

.social-auth-btn{display:flex;align-items:center;justify-content:center;gap:0.75rem;width:100%;padding:0.75rem;border:1.5px solid rgba(139,26,74,.2);border-radius:var(--radius-md);background:var(--white);font-size:0.88rem;font-weight:500;color:var(--text);cursor:pointer;transition:var(--transition);margin-bottom:0.75rem}
.social-auth-btn:hover{border-color:var(--primary);background:rgba(139,26,74,.03);transform:translateY(-1px);box-shadow:var(--shadow-sm)}
.social-auth-btn img{width:20px;height:20px}
.social-auth-btn span{font-size:1.1rem}

.phone-input-row{display:flex;gap:0.5rem}
.country-code{width:90px;flex-shrink:0}
.phone-input-row .form-control{flex:1}

.otp-inputs{display:flex;gap:0.75rem;justify-content:center;margin:1rem 0}
.otp-digit{width:52px;height:56px;border:1.5px solid rgba(139,26,74,.2);border-radius:var(--radius-md);font-size:1.5rem;font-weight:700;text-align:center;color:var(--primary);background:var(--white);outline:none;transition:var(--transition)}
.otp-digit:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(139,26,74,.12)}

.auth-switch{text-align:center;margin-top:1.5rem;font-size:0.88rem;color:var(--text-muted)}
.auth-switch a{color:var(--primary);font-weight:600}
.auth-switch a:hover{text-decoration:underline}

.auth-tabs{display:flex;gap:0;margin-bottom:1.5rem;border-radius:var(--radius-md);overflow:hidden;border:1.5px solid rgba(139,26,74,.15)}
.auth-tab{flex:1;padding:0.65rem;background:transparent;border:none;font-size:0.85rem;font-weight:600;color:var(--text-muted);cursor:pointer;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:0.4rem}
.auth-tab.active{background:var(--gradient-primary);color:var(--white)}

.recaptcha-container{display:flex;justify-content:center;margin:1rem 0}

.resend-btn{background:none;border:none;color:var(--primary);font-size:0.85rem;font-weight:600;cursor:pointer;transition:var(--transition-fast)}
.resend-btn:hover{text-decoration:underline}
.resend-btn:disabled{color:var(--text-muted);cursor:not-allowed;text-decoration:none}

.pw-toggle-btn{position:absolute;right:0.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:1rem;padding:0.25rem;transition:var(--transition-fast)}
.pw-toggle-btn:hover{color:var(--primary)}
.input-relative{position:relative}

.auth-error-banner{background:rgba(211,47,47,.08);border:1px solid rgba(211,47,47,.25);border-radius:var(--radius-md);padding:0.75rem 1rem;margin-bottom:1rem;font-size:0.85rem;color:var(--error);display:flex;align-items:center;gap:0.5rem}

.auth-mode-switch{display:flex;background:var(--cream-dark);padding:4px;border-radius:var(--radius-lg);margin-bottom:1.5rem;border:1px solid rgba(139,26,74,.15)}
.auth-mode-btn{flex:1;padding:0.75rem 1rem;text-align:center;font-size:0.92rem;font-weight:700;color:var(--text-light);border-radius:var(--radius-md);text-decoration:none;transition:var(--transition);display:flex;align-items:center;justify-content:center;gap:0.5rem}
.auth-mode-btn:hover{color:var(--primary)}
.auth-mode-btn.active{background:var(--gradient-primary);color:var(--white);box-shadow:var(--shadow-sm)}

.auth-footer-box{margin-top:1.75rem;padding-top:1.5rem;border-top:1px solid rgba(139,26,74,.12);text-align:center}
.auth-footer-box p{font-size:0.88rem;color:var(--text-muted);margin-bottom:0.75rem;font-weight:500}
.auth-footer-box .btn{display:flex;align-items:center;justify-content:center;gap:0.5rem;font-weight:700}

@media(max-width:768px){
  .auth-page{flex-direction:column;min-height:100vh}
  .auth-brand-panel{display:none}
  .auth-form-panel{padding:2rem 1rem;min-height:100vh;align-items:flex-start}
  .auth-box{padding:1.5rem 1.25rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);max-width:100%}
  .auth-mode-btn{padding:0.6rem 0.5rem;font-size:0.85rem}
}

