.login-page-background{background:var(--color-oxford-blue);min-height:100vh;width:100vw;overflow:auto}.login-page-background,.login-page-wrapper{display:flex;justify-content:center;align-items:center}.login-page-wrapper{flex-direction:column;width:100%;height:fit-content;max-width:1200px}.login-page-header{position:relative;color:var(--color-white);font-family:QuantifierNBP,sans-serif;font-size:clamp(3rem,6vw,6rem);font-weight:400;text-align:center;line-height:1;margin-bottom:2vh}.login-page-body{width:40vw;justify-content:center;display:flex;flex-direction:column;gap:5vh}@media (max-width:768px){.login-page-body{width:75vw}.login-page-header{font-size:clamp(3rem,22vw,8rem)}}.text-box-container{display:flex;flex-direction:column;width:100%;input:focus{outline:2px solid var(--color-french-rose)}}.sign-in-container{display:flex;justify-content:space-between;align-items:center;width:100%}.sign-in-button{border-radius:5vw;background:var(--color-french-rose);color:var(--color-oxford-blue);width:18vw;aspect-ratio:274/46;height:100%;font-size:clamp(1rem,1.5vw,2rem);letter-spacing:.05em;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease}.sign-in-button:hover{transform:translateY(-5px);box-shadow:0 7px 0 -2px var(--color-periwinkle),0 15px 0 -4px var(--color-french-rose),0 16px 10px -3px var(--color-french-rose)}.sign-in-button:active{transform:translateY(-2px);box-shadow:0 2px 0 -2px var(--color-periwinkle),0 8px 0 -4px var(--color-french-rose),0 12px 10px -3px var(--color-french-rose)}.forgot-password{color:var(--color-french-rose);text-decoration:underline;font-family:BalooChettan2,sans-serif;white-space:nowrap;cursor:pointer}.forgot-password,.login-page-or{font-size:clamp(1rem,1.5vw,2rem)}.login-page-or{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:1vw;color:var(--color-white);font-size:1.25rem;opacity:.66;width:100%}@media (max-width:768px){.sign-in-container{flex-direction:column;gap:2.5vh}.sign-in-button{width:100%;border-radius:6vw;font-weight:700}.forgot-password,.login-page-or,.sign-in-button{font-size:clamp(1rem,6vw,2.5rem)}}.line{flex-grow:1;height:1px;background-color:var(--color-white);opacity:.5}.login-page-subheader{color:var(--color-white);text-align:left;font-family:BalooChettan2;font-size:clamp(.75rem,1.5vw,3rem);font-weight:700}.signup-container{display:flex;justify-content:center;align-items:center;gap:.75vw;width:100%}.signup-text{color:var(--color-white);opacity:.75}.signup-button,.signup-text{font-family:BalooChettan2,sans-serif;font-size:clamp(1rem,1.5vw,2rem)}.signup-button{background:none;border:none;padding:0;font-weight:700;color:var(--color-french-rose);cursor:pointer;transition:transform .15s ease,text-shadow .15s ease}.signup-button:not(.disabled):hover{transform:translateY(-2px)}.signup-button:active{transform:translateY(0);text-shadow:none}.signup-button.disabled{color:var(--color-dark-grey)}@media (max-width:768px){.signup-button,.signup-text{font-size:clamp(1rem,5vw,2.5rem)}.login-page-background{width:100%;min-height:100dvh;padding:max(1.5rem,env(safe-area-inset-top)) 1rem max(1.5rem,env(safe-area-inset-bottom));align-items:center;overflow-x:hidden}.login-page-wrapper{width:min(100%,28rem);min-height:0;padding:0}.login-page-header{margin:0 0 1.5rem;font-size:clamp(3.25rem,18vw,5rem);line-height:.95}.login-page-body{width:100%;gap:1.35rem}.login-page-body .text-box{min-height:3.5rem;height:3.5rem;padding:0 1.25rem;border-radius:999px;font-size:1rem;aspect-ratio:auto}.login-page-body .field-error-slot{min-height:1.25rem}.login-page-background .error-banner,.login-page-body .field-error{font-size:.875rem;line-height:1.25}.sign-in-container{flex-direction:column;align-items:stretch;gap:1rem;margin-top:.25rem}.sign-in-button{width:100%;min-height:3.5rem;height:3.5rem;border-radius:999px;font-size:1rem;font-weight:800}.forgot-password{align-self:center;padding:.25rem;font-size:1rem}.login-page-or{gap:.75rem;font-size:1rem}.login-page-body>.google-button{width:100%;min-height:3.5rem;height:3.5rem;margin:0;padding:0;border-radius:999px;aspect-ratio:auto;font-size:1rem}.login-page-body>.google-button .google-text{width:100%;padding:0 1rem 0 22%;display:block;text-align:center}.login-page-body>.google-button .google-text p{margin:0}.signup-container{display:grid;grid-template-columns:1fr;gap:.75rem}.signup-container .outline-button{min-height:3.25rem;border-width:2px;border-radius:999px;aspect-ratio:auto;font-size:1rem}}@media (max-width:768px) and (max-height:700px){.login-page-background{align-items:flex-start}.login-page-header{margin-bottom:1rem}.login-page-body{gap:1rem}}