.auth-page,.login-page,.register-page{width:100%}.auth-title,.login-page__title,.register-page__title{color:var(--color-ink-900);font-family:var(--font-display);font-size:1.875rem;font-weight:700;margin-bottom:.25rem}.auth-sub,.login-page__sub,.register-page__sub{color:var(--color-ink-600);font-family:var(--font-body);font-size:.95rem;margin-bottom:1.75rem}.auth-form,.login-form,.register-form{display:flex;flex-direction:column;gap:1.25rem}.form-field{display:flex;flex-direction:column;gap:.375rem}.form-label{color:var(--color-ink-800);font-size:.875rem;font-weight:500}.form-input,.form-label{font-family:var(--font-body)}.form-input{background-color:#fff;border:1px solid var(--color-ink-200);border-radius:var(--radius-md);box-sizing:border-box;color:var(--color-ink-900);font-size:.9375rem;padding:.625rem .875rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.form-input:focus{box-shadow:0 0 0 3px #c0392b1f;outline:none}.form-field--error .form-input,.form-input:focus{border-color:var(--color-cinnabar-500)}.form-field-error{color:var(--color-cinnabar-500);font-size:.8125rem;margin:0}.form-input-wrapper{position:relative}.form-input-wrapper .form-input{padding-right:2.75rem}.form-input-toggle{background:none;border:none;color:var(--color-ink-400);cursor:pointer;font-size:1rem;line-height:1;padding:.25rem;position:absolute;right:.625rem;top:50%;transform:translateY(-50%)}.auth-page .btn-primary{align-items:center;background-color:var(--color-cinnabar-500);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:flex;font-family:var(--font-body);font-size:.9375rem;font-weight:600;gap:.5rem;justify-content:center;margin-top:.25rem;padding:.75rem 1.5rem;transition:background-color .15s ease,transform .1s ease;width:100%}.auth-page .btn-primary:hover:not(:disabled){background-color:var(--color-cinnabar-700)}.auth-page .btn-primary:active:not(:disabled){transform:scale(.99)}.auth-page .btn-primary:disabled{cursor:not-allowed;opacity:.65}.btn-spinner{animation:spin .65s linear infinite;border:2px solid hsla(0,0%,100%,.35);border-radius:50%;border-top-color:#fff;display:inline-block;height:1rem;width:1rem}@keyframes spin{to{transform:rotate(1turn)}}.auth-success,.register-page__success{background-color:#f0fdf4;border:1px solid #86efac;border-radius:var(--radius-md);color:#166534;font-size:.9rem;margin-bottom:1rem;padding:1rem}.auth-error,.form-error-banner,.login-page__error{background-color:var(--color-cinnabar-100);border:1px solid var(--color-cinnabar-300);border-radius:var(--radius-md);color:var(--color-cinnabar-700);font-size:.875rem;margin-bottom:1.25rem;padding:.75rem 1rem}.auth-meta,.login-page__register,.register-page__login{color:var(--color-ink-600);font-size:.875rem;margin-top:1.5rem;text-align:center}.auth-meta a,.login-page__register a,.register-page__login a,.text-link{color:var(--color-cinnabar-500);font-weight:500;text-decoration:none}.auth-meta a:hover,.login-page__register a:hover,.register-page__login a:hover,.text-link:hover{text-decoration:underline}.login-form__meta{display:flex;justify-content:flex-end;margin-top:-.5rem}.login-form__forgot{color:var(--color-cinnabar-500);font-size:.8125rem;text-decoration:none}.login-form__forgot:hover{text-decoration:underline}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.login-brand-header{align-items:center;display:flex;flex-direction:column;gap:.75rem;margin-bottom:2rem;text-decoration:none}.login-brand-logo{height:5.5rem}.login-brand-logo,.login-brand-sign{display:block;-o-object-fit:contain;object-fit:contain;transition:all .3s ease;width:auto}.login-brand-sign{height:3.5rem}.auth-layout__main:has(.login-brand-header) .auth-layout__brand{display:none!important}.login-panel-brand{align-items:center;display:flex;flex-direction:column;gap:.75rem;margin-bottom:2.5rem}.login-panel-logo{height:6rem}.login-panel-logo,.login-panel-sign{display:block;-o-object-fit:contain;object-fit:contain;width:auto}.login-panel-sign{height:4.5rem}@media(min-width:900px){.login-brand-header{display:none!important}}.login-page__sub,.login-page__title,.register-page__sub,.register-page__title{text-align:center}@media(min-width:900px){.login-page__sub,.login-page__title,.register-page__sub,.register-page__title{text-align:left}}
