.login-card{position:relative;z-index:1;width:100%;max-width:420px;margin:0 auto;background:var(--color-surface-1, #FFFFFF);border:1px solid var(--color-border, rgba(0, 0, 0, .1));border-radius:24px;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 20px 40px #00000014,0 0 0 1px #00e5ff0d;padding:3rem 2.5rem;animation:login-card-in .6s cubic-bezier(.16,1,.3,1) forwards}:root[data-theme=dark] .login-card{background:var(--glass-bg-strong, rgba(15, 15, 19, .8));border-color:#ffffff14;box-shadow:0 30px 60px #0006,0 0 40px #8a2be21a}@keyframes login-card-in{0%{opacity:0;transform:translateY(25px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.animate-stagger-1{animation:fade-slide-up .5s cubic-bezier(.16,1,.3,1) forwards;animation-delay:.1s;opacity:0}.animate-stagger-2{animation:fade-slide-up .5s cubic-bezier(.16,1,.3,1) forwards;animation-delay:.2s;opacity:0}.animate-stagger-3{animation:fade-slide-up .5s cubic-bezier(.16,1,.3,1) forwards;animation-delay:.3s;opacity:0}.animate-stagger-4{animation:fade-slide-up .5s cubic-bezier(.16,1,.3,1) forwards;animation-delay:.4s;opacity:0}.animate-stagger-5{animation:fade-slide-up .5s cubic-bezier(.16,1,.3,1) forwards;animation-delay:.5s;opacity:0}@keyframes fade-slide-up{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.login-card__header{text-align:center;margin-bottom:2.5rem}.login-card__brand{display:inline-flex;align-items:center;justify-content:center;margin-bottom:1.5rem;animation:float-logo 4s ease-in-out infinite alternate}.login-card__logo-img{height:54px;width:auto;object-fit:contain}@keyframes float-logo{0%{transform:translateY(0);filter:drop-shadow(0 4px 6px rgba(0,0,0,.1))}to{transform:translateY(-4px);filter:drop-shadow(0 8px 12px rgba(0,0,0,.15))}}.login-card__title{font-size:1.75rem;font-weight:800;color:var(--color-text-heading);letter-spacing:-.03em;margin-bottom:.5rem}.login-card__subtitle{font-size:.95rem;color:var(--color-text-muted);line-height:1.5}.login-form{display:flex;flex-direction:column;gap:1.25rem}.login-field{display:flex;flex-direction:column;gap:.5rem}.login-field__row{display:flex;align-items:center;justify-content:space-between}.login-label{font-size:.85rem;font-weight:600;color:var(--color-text-body)}.login-input-wrapper{position:relative;display:flex;align-items:center}.login-input-icon{position:absolute;left:1rem;color:#a1a1aa;pointer-events:none;transition:color .3s ease,transform .3s ease;z-index:10}.login-input{width:100%;padding:.875rem 1rem;background:var(--color-surface-1);border:1px solid var(--color-border);border-radius:12px;color:var(--color-text-heading);font-size:.95rem;font-family:var(--font-body);transition:all .3s cubic-bezier(.16,1,.3,1);outline:none;position:relative;z-index:1}.login-input.has-icon{padding-left:2.75rem}.login-input::placeholder{color:var(--color-text-subtle)}.login-input:hover{background:var(--color-surface-2)}.login-input:focus{border-color:#00e5ff;background:var(--color-bg);box-shadow:0 0 0 4px #00e5ff26;transform:translateY(-1px)}.login-input:focus+.login-input-icon,.login-input-wrapper:focus-within .login-input-icon{color:var(--color-text-heading)}.login-input--error,.login-input--error:focus{border-color:#ef4444!important;box-shadow:0 0 0 4px #ef44441a!important}.login-forgot-link{font-size:.8rem;color:#00e5ff;text-decoration:none;font-weight:600;transition:text-decoration .2s ease}.login-forgot-link:hover{text-decoration:underline}.login-error-banner{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:12px;color:#ef4444;font-size:.9rem;margin-bottom:1.5rem;animation:login-error-in .3s ease}.login-error-banner svg{flex-shrink:0;margin-top:2px}@keyframes login-error-in{0%{opacity:0;transform:translateY(-4px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.login-submit{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;background:linear-gradient(135deg,#00e5ff,#8a2be2);background-size:200% 200%;color:#fff;font-size:1rem;font-weight:700;font-family:var(--font-body);border:none;border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);margin-top:.5rem;box-shadow:0 10px 25px #8a2be24d}.login-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 15px 35px #00e5ff66;background-position:100% 0%}.login-submit:active:not(:disabled){transform:translateY(0)}.login-submit-icon{transition:transform .3s cubic-bezier(.16,1,.3,1)}.login-submit:hover .login-submit-icon{transform:translate(6px)}.login-submit--loading{opacity:.7;pointer-events:none}.login-spinner{width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:login-spin .8s cubic-bezier(.4,0,.2,1) infinite;flex-shrink:0}@keyframes login-spin{to{transform:rotate(360deg)}}.login-footer{margin-top:2.5rem;text-align:center;font-size:.95rem;color:var(--color-text-muted)}.login-footer a{display:inline-flex;align-items:center;color:var(--color-text-heading);font-weight:700;text-decoration:none;transition:color .2s ease}.login-footer a:hover{color:#00e5ff}@media(max-width:480px){.login-card{padding:2rem 1.5rem;border-radius:20px}}
