.auth-container{min-height:calc(100vh - 80px);background:#4c49a5;display:flex;align-items:center;justify-content:center;padding:2rem 0 3rem}.auth-card{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 20px 40px #0000001a;border:1px solid #dfdfdf;overflow:hidden;max-width:450px;width:100%;margin:0 1rem 2rem}.auth-header{background:#6563c7;color:#fff;padding:2rem;text-align:center;border:none}.auth-header h1{font-size:2rem;font-weight:800;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.3)}.auth-body{padding:2.5rem}.form-group{margin-bottom:1.5rem}.form-label{font-weight:600;color:#4a5568;margin-bottom:.5rem;display:block}.form-control{width:100%;padding:.875rem 1rem;border:2px solid #e2e8f0;border-radius:12px;font-size:1rem;transition:all .3s ease;background:#f8fafc}.form-control:focus{outline:none;border-color:#667eea;background:white;box-shadow:0 0 0 3px #667eea1a}.form-control.is-invalid{border-color:#e53e3e;background:#fed7d7}.invalid-feedback{color:#e53e3e;font-size:.875rem;margin-top:.25rem;display:block}.form-check{display:flex;align-items:center;margin-bottom:1rem}.form-check-input{margin-right:.5rem;accent-color:#667eea}.form-check-label{color:#4a5568;font-weight:500}.auth-button{background:#6563c7;color:#fff;border:none;padding:.875rem 2rem;border-radius:12px;font-weight:700;font-size:1rem;width:100%;transition:all .3s ease;cursor:pointer;margin-bottom:1rem}.auth-button:hover{transform:translateY(-2px);color:#fff}.auth-link{color:#5655d7;text-decoration:none;font-weight:600;transition:all .3s ease}.auth-footer{text-align:center;padding-top:1rem;border-top:1px solid #e2e8f0;margin-top:1rem}.brand-link{color:#667eea;text-decoration:none;font-weight:800;font-size:1.2rem}.brand-link:hover{color:#764ba2;text-decoration:none}.smooth-spinner{animation:smooth-spin 1s linear infinite}@keyframes smooth-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.btn-loading{display:flex;align-items:center;justify-content:center;gap:8px}@media (max-width: 768px){.auth-container{padding:1rem 0 2rem;min-height:calc(100vh - 60px)}.auth-card{margin:0 .5rem 1.5rem}.auth-header{padding:1.5rem}.auth-header h1{font-size:1.75rem}.auth-body{padding:2rem 1.5rem}}@media (max-width: 480px){.auth-container{min-height:calc(100vh - 60px);padding:2rem .5rem 2.5rem;align-items:flex-start}.auth-card{margin-bottom:2rem}}
