.Login-module__XMVMra__loginContainer{min-height:100vh;padding:var(--spacing-lg);background-color:var(--color-background);justify-content:center;align-items:center;display:flex}.Login-module__XMVMra__loginCard{width:100%;max-width:400px;padding:var(--spacing-lg);border-radius:var(--border-radius-lg);background-color:var(--color-card-background);border:1px solid var(--color-border);transition:background-color .3s,border-color .3s,box-shadow .3s;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d}.Login-module__XMVMra__title{font-family:var(--font-sans);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);text-align:center;margin-bottom:var(--spacing-md);color:var(--color-text-primary)}.Login-module__XMVMra__subtitle{text-align:center;margin-bottom:var(--spacing-lg);color:var(--color-text-secondary);font-size:var(--font-size-base)}.Login-module__XMVMra__formGroup{margin-bottom:var(--spacing-sm)}.Login-module__XMVMra__label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-xxs);font-family:var(--font-sans);display:block}.Login-module__XMVMra__input{width:100%;padding:var(--spacing-xs);border:1px solid var(--color-border);border-radius:var(--border-radius-md);background-color:var(--color-background);color:var(--color-foreground);transition:border-color .2s,background-color .2s}.Login-module__XMVMra__input:focus{border-color:var(--color-primary);outline:none}.Login-module__XMVMra__input::placeholder{color:var(--color-grey-400)}.Login-module__XMVMra__primaryButton{font-family:var(--font-sans);width:100%;padding:var(--spacing-sm);font-weight:var(--font-weight-semibold);border-radius:var(--border-radius-md);cursor:pointer;margin-top:var(--spacing-md);background-color:var(--color-button-primary-bg);color:var(--color-button-primary-text);border:none;transition:background-color .2s}.Login-module__XMVMra__primaryButton:hover{background-color:var(--color-primary-hover);color:var(--color-button-primary-text)}.Login-module__XMVMra__primaryButton:disabled{background-color:var(--color-button-primary-bg);color:var(--color-button-primary-text);opacity:.6;cursor:not-allowed;pointer-events:auto}.Login-module__XMVMra__primaryButton:disabled:hover{background-color:var(--color-primary-hover);color:var(--color-button-primary-text);opacity:.6}.Login-module__XMVMra__divider{margin-top:var(--spacing-md);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border)}.Login-module__XMVMra__themeToggle{font-family:var(--font-sans);width:100%;padding:var(--spacing-xs);font-size:var(--font-size-sm);text-align:center;cursor:pointer;color:var(--color-text-secondary);background:0 0;border:none;transition:color .2s}.Login-module__XMVMra__themeToggle:hover{color:var(--color-primary);text-decoration:underline}.Login-module__XMVMra__passwordWrapper{align-items:center;width:100%;display:flex;position:relative}.Login-module__XMVMra__passwordWrapper .Login-module__XMVMra__input{padding-right:var(--spacing-lg)}.Login-module__XMVMra__passwordToggle{right:var(--spacing-xs);cursor:pointer;padding:var(--spacing-xxs);color:var(--color-text-secondary);z-index:10;background:0 0;border:none;transition:color .2s;position:absolute;top:50%;transform:translateY(-50%)}.Login-module__XMVMra__passwordToggle:hover,.Login-module__XMVMra__passwordWrapper .Login-module__XMVMra__input:focus+.Login-module__XMVMra__passwordToggle{color:var(--color-primary)}.Login-module__XMVMra__errorAlert{font-family:var(--font-mono);font-size:var(--font-size-sm);padding:var(--spacing-sm);margin-bottom:var(--spacing-md);background-color:var(--color-red);color:var(--color-red-2);border:1px solid var(--color-red-2);border-radius:var(--border-radius-md);text-align:center;transition:all .2s}.Login-module__XMVMra__inputError{border-color:var(--color-red)}.Login-module__XMVMra__inputError:focus{border-color:var(--color-red);box-shadow:0 0 0 1px var(--color-red)}.Login-module__XMVMra__fieldError{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-red);margin-top:var(--spacing-xxs);margin-bottom:0;padding-left:0}
