body{min-height:100vh;background:linear-gradient(135deg,#f0fdf4 0%,#e0f2fe 100%);
     display:flex;align-items:center;justify-content:center;padding:1rem;}
.auth-card{background:#fff;border-radius:var(--radius);padding:2.25rem;
           width:100%;max-width:420px;box-shadow:var(--shadow-lg);
           animation:slideUp .4s ease both;}
@keyframes slideUp{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
.tab-btns{display:flex;border:1.5px solid var(--border);border-radius:10px;
          overflow:hidden;margin-bottom:1.75rem;}
.tab-btn{flex:1;padding:.6rem;font-size:.83rem;font-weight:700;
         border:none;background:transparent;color:var(--muted);cursor:pointer;
         transition:all .2s;}
.tab-btn.active{background:var(--green);color:#fff;}
.divider{display:flex;align-items:center;gap:.75rem;margin:1.25rem 0;
         color:var(--muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;}
.divider::before,.divider::after{content:'';flex:1;height:1px;background:var(--border);}
.btn-google{display:flex;align-items:center;justify-content:center;gap:.65rem;
            width:100%;padding:.75rem;background:#fff;color:#333;
            border:1.5px solid var(--border);border-radius:var(--radius-sm);
            font-weight:600;font-size:.88rem;cursor:pointer;transition:all .2s;
            text-decoration:none;}
.btn-google:hover{border-color:#aaa;box-shadow:var(--shadow-sm);color:#222;}
.btn-google svg{width:18px;height:18px;flex-shrink:0;}
.show-pass{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);
           border:none;background:none;color:var(--muted);cursor:pointer;
           font-size:.9rem;padding:.25rem;}
.show-pass:hover{color:var(--dark);}
