.auth-body{min-height:100vh;display:flex;justify-content:center;align-items:center;position:relative;padding:var(--spacing-md);overflow:hidden;background:linear-gradient(135deg,#eff6ff,#f8fafc,#fef3c7)}.auth-body:before,.auth-body:after{content:"";position:absolute;width:300px;height:300px;border-radius:50%;filter:blur(80px);z-index:0;animation:drift 10s infinite alternate cubic-bezier(.1,.7,.9,.3)}.auth-body:before{background:#00a38933;top:20%;left:20%}.auth-body:after{background:#ff8c4233;bottom:20%;right:20%;animation-delay:-5s}@keyframes drift{0%{transform:translateY(0) translate(0) scale(1)}to{transform:translateY(-50px) translate(50px) scale(1.1)}}.auth-wrapper{z-index:10;width:100%;max-width:450px;display:flex;flex-direction:column;align-items:center;animation:slideUpFade .6s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideUpFade{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-logo{margin-bottom:var(--spacing-lg);display:inline-block;transition:transform var(--transition-fast)}.auth-logo:hover{transform:scale(1.05)}.auth-glass-card{width:100%;background:#fffffff2;backdrop-filter:none;-webkit-backdrop-filter:none;border:1px solid rgba(226,232,240,.8);border-radius:20px;padding:2.5rem;box-shadow:0 25px 50px -12px #00000026,inset 0 1px #fffc;color:var(--clr-text-main)}.auth-header{text-align:center;margin-bottom:2rem}.auth-header h1{font-size:1.8rem;color:var(--clr-primary);margin-bottom:.5rem}.auth-header p{color:var(--clr-text-muted);font-size:.95rem;margin-bottom:0}.auth-tabs{display:flex;background:#e2e8f080;border-radius:100px;padding:.25rem;margin-bottom:1.5rem;box-shadow:inset 0 2px 4px #0000000d}.auth-tab{flex:1;background:transparent;border:none;padding:.75rem 1rem;color:var(--clr-text-muted);font-family:var(--font-body);font-weight:600;font-size:.9rem;border-radius:100px;cursor:pointer;transition:all var(--transition-normal)}.auth-tab:hover{color:var(--clr-primary)}.auth-tab.active{background:var(--clr-action);color:var(--clr-white);box-shadow:0 4px 10px #00a3894d}.auth-form{animation:fadeIn .4s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.input-group{margin-bottom:1.25rem}.input-group label{display:block;font-size:.85rem;font-weight:600;margin-bottom:.5rem;color:var(--clr-text-main);letter-spacing:.5px}.input-group input{width:100%;padding:.8rem 1rem;border-radius:8px;border:1px solid var(--clr-border);background:var(--clr-white);color:var(--clr-text-main);font-family:var(--font-body);font-size:1rem;transition:all var(--transition-fast)}.input-group input::-moz-placeholder{color:var(--clr-text-muted)}.input-group input::placeholder{color:var(--clr-text-muted)}.input-group input:focus{outline:none;border-color:var(--clr-action);background:var(--clr-white);box-shadow:0 0 0 3px #00a38933}.forgot-password{text-align:right;margin-bottom:1.5rem}.forgot-password a{color:var(--clr-action);font-size:.85rem;font-weight:600}.forgot-password a:hover{text-decoration:underline}.auth-submit{margin-top:1.5rem;width:100%;border-radius:8px;padding:1rem}.auth-alert{padding:12px 16px;border-radius:8px;margin-bottom:1.5rem;font-size:.9rem;font-weight:500;text-align:center;animation:fadeIn .3s ease}.auth-alert.error{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#dc2626}.auth-alert.success{background:#22c55e1a;border:1px solid rgba(34,197,94,.3);color:#16a34a}.auth-divider{position:relative;text-align:center;margin:2rem 0}.auth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--clr-border)}.auth-divider span{background:var(--clr-white);padding:0 15px;position:relative;color:var(--clr-text-muted);font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;backdrop-filter:none;-webkit-backdrop-filter:none;border-radius:100px}.btn-social{background:var(--clr-white);color:var(--clr-text-main);border:1px solid var(--clr-border);display:flex;align-items:center;justify-content:center;gap:12px;font-weight:600;text-transform:none;letter-spacing:normal;padding:.8rem}.btn-social:hover{background:var(--clr-primary);color:var(--clr-white);transform:translateY(-2px);border-color:var(--clr-primary)}.loading{opacity:.8;pointer-events:none;position:relative;color:transparent!important}.loading:after{content:"";position:absolute;width:20px;height:20px;top:calc(50% - 10px);left:calc(50% - 10px);border:2px solid rgba(0,163,137,.3);border-radius:50%;border-top-color:var(--clr-action);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width: 480px){.auth-glass-card{padding:1.5rem;border-radius:16px}}
