.login-page{display:flex;min-height:100vh;width:100%}.login-features{display:none;width:55%;position:relative;overflow:hidden;padding:3rem}@media (min-width:1024px){.login-features{display:flex;align-items:center}}.features-bg{position:absolute;inset:0;background:linear-gradient(135deg,rgba(14,165,233,.15) 0,rgba(6,182,212,.08) 100%)}.features-blob{position:absolute;border-radius:50%;filter:blur(100px)}.features-blob-1{top:5rem;left:-5rem;width:500px;height:500px;background:rgba(14,165,233,.3)}.features-blob-2{bottom:5rem;right:2rem;width:400px;height:400px;background:rgba(6,182,212,.2)}.features-content{position:relative;z-index:10;max-width:600px;margin:0 auto}.login-logo{display:flex;align-items:center;gap:1rem;margin-bottom:3rem;text-decoration:none}.login-logo .logo-icon{width:3.5rem;height:3.5rem;border-radius:1rem;background:linear-gradient(135deg,#0ea5e9 0,#06b6d4 100%);display:flex;align-items:center;justify-content:center;font-size:1.75rem;box-shadow:0 20px 40px -10px rgba(14,165,233,.4)}.login-logo .logo-text{font-size:1.75rem;font-weight:700;color:#fff}.features-title{font-size:2.5rem;font-weight:700;color:#fff;line-height:1.2;margin-bottom:1.5rem}@media (min-width:1280px){.features-title{font-size:3rem}}.features-subtitle{color:rgba(255,255,255,.6);font-size:1.125rem;margin-bottom:2.5rem;max-width:400px}.features-list{display:flex;flex-direction:column;gap:1.25rem}.feature-item{display:flex;align-items:flex-start;gap:1rem;transition:transform .2s ease}.feature-item:hover{transform:translateX(5px)}.feature-icon{width:3rem;height:3rem;border-radius:.75rem;background:rgba(14,165,233,.2);display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.feature-text h3{color:#fff;font-weight:600;margin-bottom:.25rem}.feature-text p{color:rgba(255,255,255,.5);font-size:.875rem}.features-stats{margin-top:3rem;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1)}.stats-label{color:rgba(255,255,255,.4);font-size:.875rem;margin-bottom:1rem}.stats-grid{display:flex;gap:2rem}.stat-value{font-size:1.5rem;font-weight:700;color:#0ea5e9}.stat-label{color:rgba(255,255,255,.4);font-size:.75rem}.login-form-section{width:100%;display:flex;align-items:center;justify-content:center;padding:2rem}@media (min-width:1024px){.login-form-section{width:45%;padding:3rem}}.login-form-container{width:100%;max-width:420px}.mobile-logo{display:flex;align-items:center;justify-content:center;gap:.75rem;margin-bottom:2.5rem;text-decoration:none}@media (min-width:1024px){.mobile-logo{display:none}}.mobile-logo .logo-icon{width:3rem;height:3rem;border-radius:.75rem;background:linear-gradient(135deg,#0ea5e9 0,#06b6d4 100%);display:flex;align-items:center;justify-content:center;font-size:1.5rem}.mobile-logo .logo-text{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#0ea5e9 0,#06b6d4 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-card{padding:2.5rem;border-radius:1.5rem}.login-header{text-align:center;margin-bottom:2rem}.login-header h2{font-size:1.875rem;font-weight:700;margin-bottom:.5rem}.login-header p{color:rgba(255,255,255,.5)}.login-form{display:flex;flex-direction:column;gap:1.25rem}.form-group label{display:block;font-size:.875rem;font-weight:500;color:rgba(255,255,255,.7);margin-bottom:.5rem}.form-group input{width:100%;padding:.875rem 1rem;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:.75rem;color:#fff;font-size:1rem;transition:all .2s ease}.form-group input::placeholder{color:rgba(255,255,255,.3)}.form-group input:focus{outline:0;border-color:#0ea5e9;box-shadow:0 0 0 3px rgba(14,165,233,.2)}.password-wrapper{position:relative}.password-wrapper input{padding-right:3rem}.password-toggle{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:0 0;border:none;color:rgba(255,255,255,.5);cursor:pointer;padding:.25rem;transition:color .2s ease}.password-toggle:hover{color:rgba(255,255,255,.8)}.password-toggle svg{width:1.25rem;height:1.25rem}.form-options{display:flex;align-items:center;justify-content:space-between;font-size:.875rem}.remember-me{display:flex;align-items:center;gap:.5rem;color:rgba(255,255,255,.6);cursor:pointer}.remember-me input[type=checkbox]{width:1rem;height:1rem;border-radius:.25rem;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.05);cursor:pointer}.forgot-link{color:#0ea5e9;text-decoration:none;transition:color .2s ease}.forgot-link:hover{color:#38bdf8}.error-message{display:none;padding:.875rem 1rem;background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.3);border-radius:.75rem;color:#fca5a5;font-size:.875rem;text-align:center}.submit-btn{position:relative;width:100%;padding:1rem 1.5rem;font-size:1rem;font-weight:600;border-radius:.75rem;cursor:pointer;transition:all .2s ease}.submit-btn .btn-spinner{display:none;width:1.25rem;height:1.25rem;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.submit-btn.loading .btn-text{visibility:hidden}.submit-btn.loading .btn-spinner{display:block;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}.login-footer{margin-top:2rem;text-align:center}.login-footer p{color:rgba(255,255,255,.5)}.login-footer a{color:#0ea5e9;text-decoration:none;font-weight:500;transition:color .2s ease}.login-footer a:hover{color:#38bdf8}.back-link{display:block;margin-top:2rem;text-align:center;color:rgba(255,255,255,.4);text-decoration:none;font-size:.875rem;transition:color .2s ease}.back-link:hover{color:rgba(255,255,255,.6)}