.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);padding:2rem 1.5rem;position:relative;overflow:hidden}.auth-container:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);animation:float 20s ease-in-out infinite}.auth-container:after{content:"";position:absolute;bottom:-50%;left:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 70%);animation:float 25s ease-in-out infinite reverse}@keyframes float{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(30px,-30px) rotate(120deg)}66%{transform:translate(-20px,20px) rotate(240deg)}}.auth-bg-1,.auth-bg-2{display:none}.auth-card{position:relative;background:#fffffff2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:2rem;padding:3rem 2.5rem;box-shadow:0 20px 60px #0000004d;width:100%;max-width:26rem;z-index:1;border:1px solid rgba(255,255,255,.2)}@media (max-width: 640px){.auth-card{padding:2rem 1.5rem}}.auth-header{text-align:center;margin-bottom:2.5rem}.auth-logo{width:60px;height:60px;margin:0 auto 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:1rem;display:flex;align-items:center;justify-content:center;font-size:1.75rem;font-weight:800;color:#fff;box-shadow:0 10px 25px #667eea66}.auth-title{font-size:1.875rem;font-weight:800;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.auth-description{color:#64748b;font-size:.9375rem;font-weight:500}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.auth-form-group{display:flex;flex-direction:column;gap:.5rem}.auth-form-label{font-size:.875rem;font-weight:600;color:#334155;margin-left:.25rem}.auth-form-input{width:100%;padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:.875rem;font-size:.9375rem;transition:all .3s cubic-bezier(.4,0,.2,1);background:#fff}.auth-form-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea1a;transform:translateY(-2px)}.auth-form-input::placeholder{color:#94a3b8}.auth-input-error{border-color:#ef4444!important;background-color:#fef2f2}.auth-input-error:focus{border-color:#ef4444!important;box-shadow:0 0 0 4px #ef44441a!important}.auth-password-wrapper{position:relative}.auth-forgot-link{position:absolute;right:0;top:0;font-size:.8125rem;color:#667eea;text-decoration:none;font-weight:600;transition:color .3s}.auth-forgot-link:hover{color:#764ba2}.auth-checkbox-wrapper{display:flex;align-items:center;gap:.625rem}.auth-checkbox{width:1.125rem;height:1.125rem;border-radius:.375rem;border:2px solid #e2e8f0;cursor:pointer;transition:all .3s;accent-color:#667eea}.auth-checkbox:checked{background-color:#667eea;border-color:#667eea}.auth-checkbox-label{font-size:.875rem;color:#334155;cursor:pointer;font-weight:500}.auth-submit-btn{width:100%;padding:.875rem 1.5rem;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:.875rem;font-weight:700;font-size:1rem;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 10px 25px #667eea4d;position:relative;overflow:hidden}.auth-submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left .5s}.auth-submit-btn:hover:before{left:100%}.auth-submit-btn:hover{transform:translateY(-2px);box-shadow:0 15px 35px #667eea66}.auth-submit-btn:active{transform:translateY(0)}.auth-footer{text-align:center;margin-top:2rem;font-size:.875rem;color:#64748b;font-weight:500}.auth-footer-link{color:#667eea;text-decoration:none;font-weight:700;transition:color .3s}.auth-footer-link:hover{color:#764ba2}.auth-error{color:#ef4444;font-size:.8125rem;margin-top:.375rem;font-weight:500}.auth-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:.875rem 1rem;border-radius:.875rem;font-size:.875rem;margin-bottom:1.25rem;text-align:center;font-weight:600;box-shadow:0 10px 25px #10b9814d}
