.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);position:relative;overflow:hidden;padding:20px}.floating-shapes{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:1}.shape{position:absolute;border-radius:50%;background:hsla(0,0%,100%,.1);animation:float 6s ease-in-out infinite}.shape-1{width:80px;height:80px;top:10%;left:10%;animation-delay:0s}.shape-2{width:60px;height:60px;top:20%;right:10%;animation-delay:2s}.shape-3{width:100px;height:100px;bottom:20%;left:20%;animation-delay:4s}.shape-4{width:70px;height:70px;bottom:10%;right:20%;animation-delay:1s}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.login-card{background:hsla(0,0%,100%,.1);backdrop-filter:blur(20px);border:1px solid hsla(0,0%,100%,.2);border-radius:24px;box-shadow:0 25px 50px rgba(0,0,0,.15);padding:40px;width:100%;max-width:420px;position:relative;z-index:2;animation:slideUp .8s ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.login-header{text-align:center;margin-bottom:32px}.logo-container{position:relative;display:inline-block;margin-bottom:24px}.logo-glow{position:absolute;top:-8px;left:-8px;right:-8px;bottom:-8px;background:linear-gradient(45deg,hsla(0,0%,100%,.3),hsla(0,0%,100%,.1));border-radius:50%;filter:blur(12px);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.logo{height:60px;width:auto;position:relative;z-index:2;filter:drop-shadow(0 4px 8px rgba(0,0,0,.2))}.login-title{font-size:2.5rem;font-weight:700;margin-bottom:8px;line-height:1.2}.gradient-text{background:linear-gradient(135deg,#fff,#e0e7ff);-webkit-background-clip:text;background-clip:text;display:block}.gradient-text,.subtitle{-webkit-text-fill-color:transparent}.subtitle{background:linear-gradient(135deg,#cbd5e1,#f1f5f9);-webkit-background-clip:text;background-clip:text;font-size:1.8rem}.version-badge{font-size:.7rem!important;display:block;margin-top:8px;opacity:.85;letter-spacing:.05em}.login-subtitle{color:hsla(0,0%,100%,.8);font-size:.95rem;margin:0;font-weight:400}.error-message{background:rgba(239,68,68,.9);backdrop-filter:blur(10px);color:#fff;padding:12px 16px;border-radius:12px;margin-bottom:24px;font-size:.875rem;display:flex;align-items:center;gap:8px;border:1px solid rgba(239,68,68,.3);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.form-group,.login-form{margin-bottom:24px}.form-label{display:flex;align-items:center;gap:8px;color:hsla(0,0%,100%,.9);font-weight:500;font-size:.9rem;margin-bottom:8px}.form-label i{color:hsla(0,0%,100%,.7);font-size:.8rem}.input-wrapper{position:relative;display:flex;align-items:center;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.2);border-radius:12px;transition:all .3s ease;overflow:hidden}.input-wrapper:focus-within{background:hsla(0,0%,100%,.15);border-color:hsla(0,0%,100%,.4);box-shadow:0 0 0 3px hsla(0,0%,100%,.1)}.input-wrapper input{flex:1;background:transparent;border:none;padding:16px 20px;color:#fff;font-size:1rem;outline:none;font-weight:400;min-width:0;overflow:hidden;text-overflow:ellipsis}.input-wrapper input::-moz-placeholder{color:hsla(0,0%,100%,.5)}.input-wrapper input::placeholder{color:hsla(0,0%,100%,.5)}.domain-suffix{padding-right:16px;padding-left:4px;font-weight:500;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.domain-suffix,.password-toggle{color:hsla(0,0%,100%,.7);flex-shrink:0;font-size:.9rem}.password-toggle{background:none;border:none;padding:0 16px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.password-toggle:hover{color:#fff;transform:scale(1.1)}.password-toggle:active{transform:scale(.95)}.login-btn{width:100%;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:12px;padding:16px 24px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;position:relative;overflow:hidden;box-shadow:0 4px 15px rgba(59,130,246,.3)}.login-btn:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-2px);box-shadow:0 8px 25px rgba(59,130,246,.4)}.login-btn:active:not(:disabled){transform:translateY(0)}.login-btn:disabled{opacity:.7;cursor:not-allowed}.btn-text{transition:opacity .3s ease}.btn-loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.spinner{width:20px;height:20px;border-radius:50%;border:2px solid hsla(0,0%,100%,.3);border-top-color:#fff;animation:spin 1s ease-in-out infinite}@keyframes spin{to{transform:rotate(1turn)}}.login-footer{text-align:center;margin-top:24px;padding-top:24px;border-top:1px solid hsla(0,0%,100%,.1)}.login-footer p{color:hsla(0,0%,100%,.6);font-size:.8rem;margin:0}.forgot-password{text-align:center;margin-top:16px}.forgot-password-link{background:none;border:none;color:hsla(0,0%,100%,.8);font-size:.9rem;cursor:pointer;padding:8px 16px;border-radius:8px;transition:all .3s ease;display:inline-flex;align-items:center;gap:6px;font-weight:500}.forgot-password-link:hover{color:#fff;background:hsla(0,0%,100%,.1)}.forgot-password-link i{font-size:.8rem}@media (max-width:480px){.login-container{padding:16px}.login-card{padding:32px 24px;max-width:100%}.login-title{font-size:2rem}.subtitle{font-size:1.5rem}.version-badge{font-size:.65rem!important}.logo{height:45px}.input-wrapper input{padding:14px 16px;font-size:.95rem}.domain-suffix{padding-right:16px;font-size:.9rem}}