:root{--primary-gradient:linear-gradient(135deg,#8b5cf6,#ec4899 50%,#f97316);--background:#0a0a0a;--background-secondary:#1a1a1a;--text-primary:#ffffff;--text-secondary:#a1a1aa;--border:#27272a;--purple:#8b5cf6;--error:#ef4444;--success:#10b981}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--background);color:var(--text-primary);line-height:1.6;overflow-x:hidden;min-height:100vh}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(90deg,rgba(139,92,246,.1) 1px,transparent 0),linear-gradient(rgba(139,92,246,.1) 1px,transparent 0);background-size:100px 100px;pointer-events:none;z-index:-1}.wrapper-div{width:100%;flex-direction:column}.container,.wrapper-div{display:flex;align-items:center}.container{min-height:100vh;justify-content:center;padding:2rem}.login-card{background:var(--background-secondary);border:1px solid var(--border);border-radius:1rem;padding:3rem;width:100%;max-width:400px;box-shadow:0 20px 40px rgba(139,92,246,.1);margin-top:9rem}.logo{text-align:center;margin-bottom:2rem}.logo-text{font-size:2rem;font-weight:700;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-title{text-align:center;font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary)}.login-subtitle{text-align:center;color:var(--text-secondary);margin-bottom:2rem;font-size:.9rem}.form-group{margin-bottom:1.5rem}.form-label{display:block;margin-bottom:.5rem;font-weight:500;font-size:.9rem}.form-input,.form-label{color:var(--text-primary)}.form-input{width:100%;padding:.75rem 1rem;background:var(--background);border:1px solid var(--border);border-radius:.5rem;font-size:1rem;transition:all .3s ease}.form-input:focus{outline:none;border-color:var(--purple);box-shadow:0 0 0 3px rgba(139,92,246,.1)}.form-input::placeholder{color:var(--text-secondary)}.password-toggle{position:relative}.password-toggle-btn{position:absolute;right:1rem;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:0;font-size:1rem}.password-toggle-btn:hover{color:var(--text-primary)}.forgot-password{text-align:right;margin-bottom:2rem}.forgot-password a{color:var(--purple);text-decoration:none;font-size:.9rem;transition:all .3s ease}.forgot-password a:hover{text-decoration:underline}.login-button{width:100%;padding:.875rem 1rem;background:var(--primary-gradient);color:white;border:none;border-radius:.5rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.login-button:hover{transform:translateY(-2px);box-shadow:0 10px 25px rgba(139,92,246,.3)}.login-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.divider{display:flex;align-items:center;margin:2rem 0;gap:1rem}.divider:after,.divider:before{content:"";flex:1;height:1px;background:var(--border)}.divider span,.signup-link{color:var(--text-secondary);font-size:.9rem}.signup-link{text-align:center;margin-top:2rem}.signup-link a{color:var(--purple);text-decoration:none;font-weight:600}.signup-link a:hover{text-decoration:underline}.back-button{position:absolute;width:fit-content;top:2rem;left:2rem;margin-top:.5rem;margin-left:.5rem;padding:.5rem 1rem;background:transparent;border:1px solid var(--border);color:var(--text-secondary);border-radius:.5rem;text-decoration:none;transition:all .3s ease;display:flex;align-items:center;gap:.5rem;z-index:99999;font-size:.9rem}.back-button:hover{border-color:var(--purple);color:var(--text-primary)}.error-message{background:rgba(239,68,68,.1);border:1px solid var(--error);color:var(--error);padding:.75rem;border-radius:.5rem;margin-bottom:1rem;font-size:.9rem;display:none}.loading-spinner{width:16px;height:16px;border:2px solid transparent;border-top-color:currentcolor;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.container{padding:1rem}.login-card{padding:2rem}.back-button{position:relative;top:auto;left:auto;margin-bottom:2rem;align-self:flex-start}}