@import url("https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&family=Space+Grotesk:wght@300..700&display=swap");:root{--font-family:"Roboto",sans-serif;--font-family-alt:"Space Grotesk",sans-serif;--primary-bg:#f9f9f6;--secondary-bg:#e8f0e5;--dark-bg:#2e6b3a;--primary-color:#2e6b3a;--primary-color-hover:#3f8a4d;--primary-color-light:#8cc084;--primary-gradient:linear-gradient(145deg,#99d290 -0.05%,#3a8d4a);--secondary-color:#ffd84d;--info-color:#bfd7e6;--success-color:#8cc084;--danger-color:#d66a4d;--warning-color:#ffd84d;--primary-text:#1c1c1c;--secondary-text:#4a4a4a;--inverted-text:#fff}body:has(.login-page),html:has(.login-page){margin:0;padding:0;min-height:100%;max-width:100%;overflow-x:clip;background:linear-gradient(90deg,#99d290 -.05%,#3a8d4a)}.login-page{width:100%;display:flex;justify-content:center;align-items:center;min-height:100vh;min-height:100dvh;margin:0;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));background:linear-gradient(90deg,#99d290 -.05%,#3a8d4a)}.login-page,.login-page .login-box{max-width:100%;overflow-x:clip;box-sizing:border-box}.login-page .login-box{width:min(100%,400px);min-width:0;background:var(--primary-bg);padding:clamp(1.25rem,4vw,2rem);border-radius:12px;box-shadow:0 4px 15px rgba(0,0,0,.1)}.login-page .login-box .row{--bs-gutter-x:0.75rem;margin-left:0;margin-right:0;max-width:100%}.login-page .login-box .form-check-label{overflow-wrap:anywhere;word-break:break-word}.login-page .login-box .form-control,.login-page .login-box input:not([type=checkbox]){max-width:100%}.login-page label{color:var(--primary-text);font-family:Roboto,sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:150%}.login-page .auth-status{padding:1rem 0 .25rem}.login-page .auth-status__title{color:var(--primary-text);font-family:var(--font-family-alt);font-size:1.125rem;font-weight:600}.login-page .auth-status__hint{color:var(--secondary-text);font-size:.9375rem;line-height:1.5}.login-page .auth-status .spinner-border{width:2.5rem;height:2.5rem;color:var(--primary-color)!important}.login-page label em{color:var(--danger-color);font-style:normal;font-weight:400;margin-left:2px}.login-page input:not([type=checkbox]){width:100%;padding:.75rem 1rem;margin-top:.5rem;margin-bottom:1.5rem;border-radius:6px;font-size:1rem;font-family:var(--font-family);color:var(--primary-text);border:1px solid var(--secondary-text);background:var(--inverted-text,#fff);box-sizing:border-box}.login-page input::placeholder{color:var(--secondary-text);font-family:Roboto,sans-serif;font-size:16px;font-style:normal;font-weight:400;line-height:150%}.login-page h2{font-family:Space Grotesk,sans-serif;font-size:32px;font-weight:700;margin:30px 0 7px}.login-page a.link,.login-page h2{color:var(--primary-text);font-style:normal}.login-page a.link{font-family:Roboto,sans-serif;font-size:16px;font-weight:400;line-height:150%;text-decoration:none}.login-page a.link:hover{text-decoration:underline}.login-page .btn{background:var(--primary-color);color:var(--inverted-text);font-family:Space Grotesk,sans-serif;font-size:18px;font-style:normal;font-weight:600;padding:.75rem 1rem;border:none;border-radius:8px;cursor:pointer;transition:background .3s ease;display:flex;align-items:center;justify-content:center;gap:8px}.login-page .btn:hover{background:var(--primary-color-hover)}.login-page .primary-text{color:var(--primary-color)!important}.login-page .password-field{margin-bottom:0}.login-page .password-field__input-wrap{position:relative}.login-page .password-field__input{margin-bottom:0!important;padding-right:2.75rem!important}.login-page .password-field__input.is-valid{border-color:var(--success-color)}.login-page .password-field__input.is-invalid{border-color:var(--danger-color)}.login-page .password-field__toggle{position:absolute;top:50%;right:.75rem;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--secondary-text);cursor:pointer}.login-page .password-field__toggle:hover{color:var(--primary-color)}.login-page .password-requirements{list-style:none;margin:.75rem 0 1.5rem;padding:0;display:grid;grid-gap:.35rem;gap:.35rem}.login-page .password-requirement{display:flex;align-items:center;gap:.5rem;font-size:.875rem;line-height:1.4;color:var(--secondary-text)}.login-page .password-requirement__dot{width:14px;height:14px;border-radius:50%;border:1px solid var(--secondary-text);flex-shrink:0}.login-page .password-requirement.is-met{color:var(--success-color)}.login-page .password-requirement.is-unmet{color:var(--danger-color)}.login-page .password-field__error,.login-page .password-field__success{display:flex;align-items:center;gap:.5rem;margin:0 0 1.5rem;font-size:.875rem;line-height:1.4}.login-page .password-field__success{color:var(--success-color)}.login-page .password-field__error{color:var(--danger-color)}@media (max-width:767px){.login-page h2{font-size:clamp(1.5rem,6vw,2rem);margin-top:0}.login-page .btn{width:100%;box-sizing:border-box}.login-page a.link{font-size:.9375rem;line-height:1.4}}.auth-skeleton{display:grid;grid-gap:.85rem;gap:.85rem}.auth-skeleton__field{display:grid;grid-gap:.45rem;gap:.45rem}.auth-skeleton__line{border-radius:8px;background:linear-gradient(90deg,rgba(46,107,58,.08),rgba(46,107,58,.16) 50%,rgba(46,107,58,.08));background-size:200% 100%;animation:auth-skeleton-shimmer 1.35s ease-in-out infinite}.auth-skeleton__line--title{height:2rem;width:55%;margin-top:.5rem}.auth-skeleton__line--link{height:1rem;width:72%;margin-bottom:.5rem}.auth-skeleton__line--label{height:.875rem;width:38%}.auth-skeleton__line--input{height:2.75rem;width:100%}.auth-skeleton__line--button{height:3rem;width:100%;margin-top:.5rem;border-radius:8px}.auth-skeleton__hint{margin:.25rem 0 0;text-align:center;font-size:.875rem;color:var(--secondary-text)}@keyframes auth-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}