.login-page{background-color:#326fd1;opacity:.9;box-sizing:border-box}.login-page--form,.login-page--loading{min-height:100vh;min-height:100dvh}.login-page--loading{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden;padding:0}.login-page__loader{display:flex;align-items:center;justify-content:center;flex:1 1 auto;width:100%;min-height:0;height:100%}.login-page__loader-spinner{display:block;width:3rem;height:3rem;border-radius:50%;border:4px solid hsla(0,0%,100%,.25);border-top-color:#fff;animation:login-page-spin .8s linear infinite}@keyframes login-page-spin{to{transform:rotate(1turn)}}.login-page__stack{width:100%;max-width:min(100%,22rem)}@media (min-width:480px){.login-page__stack{max-width:28rem}}@media (min-width:640px){.login-page__stack{max-width:32rem}}@media (min-width:768px){.login-page__stack{max-width:36rem}}.login-page__brand{width:100%}.login-page__card{width:100%;box-sizing:border-box}.login-page__title{word-spacing:-.1rem}.login-page__submit-btn.p-button{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;width:100%;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:600;line-height:1.2;letter-spacing:.01em;color:#fff;background:linear-gradient(180deg,#3b82f6,#2563eb);border:1px solid #2563eb;border-radius:5px;box-shadow:0 4px 12px rgba(37,99,235,.28);transition:color .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease}.login-page__submit-btn.p-button:enabled:hover{color:#fff;background:linear-gradient(180deg,#2563eb,#1d4ed8);border-color:#1d4ed8;box-shadow:0 6px 18px rgba(29,78,216,.45)}.login-page__submit-btn.p-button:enabled:active{color:#fff;background:linear-gradient(180deg,#1d4ed8,#1e3a8a);border-color:#1e3a8a;box-shadow:0 2px 8px rgba(30,58,138,.35)}.login-page__submit-btn.p-button:focus-visible{outline:2px solid #2563eb;outline-offset:2px;box-shadow:0 0 0 2px #fff,0 0 0 4px #2563eb}.login-page__submit-btn.p-button:disabled{color:#64748b;background:#f1f5f9;border-color:#e2e8f0;box-shadow:none;opacity:1}.login-page .login-form label{font-weight:600;font-size:clamp(.875rem,2.5vw,1rem)}.login-page .login-form .p-inputtext,.login-page .login-form .p-password,.login-page .login-form .p-password .p-inputtext,.login-page .login-form .p-password input{width:100%}.login-page .login-form .p-password.p-inputwrapper{display:block;width:100%}.login-page .login-form .p-password .p-password-toggle-mask-icon{color:#64748b;cursor:pointer}.login-page .login-form .p-password .p-password-toggle-mask-icon:hover{color:#2563eb}.login-page__footer{padding-top:.25rem}.login-page__footer-link{color:#2563eb;text-decoration:none;font-size:.875rem;font-weight:500}.login-page__footer-link:hover{text-decoration:underline}