.vue-login-modal,.vue-login-modal *{box-sizing:border-box}.vue-login-modal{& .overlay{z-index:1100;backdrop-filter:blur(.25rem);background:#0000007a;justify-content:center;align-items:center;padding:1rem;animation:.12s ease-out vue-login-modal-in;display:flex;position:fixed;inset:0}& .modal-container{background:var(--white,#fff);color:#1d1d1d;border-radius:.75rem;flex-direction:column;width:100%;max-width:420px;max-height:calc(100vh - 2rem);display:flex;overflow:hidden;box-shadow:0 .75rem 1.5rem #0000000f}& .header{color:#1d1d1d;background:#fafafa;align-items:center;gap:1rem;padding:1rem 3.5rem 1rem 1.5rem;display:flex;position:relative}& .title{flex:auto;margin:0;font-size:1.125rem;font-weight:700;line-height:1.35}& .close{color:#464646;cursor:pointer;background:0 0;border:0;border-radius:.25rem;justify-content:center;align-items:center;width:2.5rem;height:2.5rem;padding:0;display:inline-flex;position:absolute;top:.5rem;right:.5rem}& .close:hover,& .close:focus-visible{background:var(--gray-lightest,#f5f5f5);color:#1d1d1d}& .close .icon{justify-content:center;align-items:center;display:inline-flex}& .close .icon svg{fill:currentColor;width:1.25rem;height:1.25rem}& .form{flex-direction:column;flex:auto;gap:1rem;min-height:0;padding:1.5rem;display:flex;overflow-y:auto}& .field{flex-direction:column;gap:.375rem;display:flex}& .form .dek-group,& .form .dek-input,& .form button,& .form [role=button]{margin-top:0}& .label{margin-top:0;line-height:1.3}& .dek-password.dek-form-width--large{max-width:100%}& .dek-password.dek-form-width--large .dek-input{flex:auto;min-width:0}& .remember{margin-top:0;margin-bottom:0}& .secondary-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;width:100%;min-width:0;display:flex}& .secondary-actions .remember{flex:0 auto;min-width:0}& .secondary-actions .link{text-align:right;white-space:nowrap;flex:none}& .remember .dek-checkbox__label{white-space:nowrap}& .buttons{flex-direction:column;justify-content:flex-start;align-items:center;gap:1rem;margin-top:.5rem;margin-bottom:.5rem;padding:0;display:flex}& .link{color:var(--red,#c62828);line-height:1.35;text-decoration:underline}& .link:hover,& .link:focus-visible{color:var(--red-dark,var(--red,#9f1c1c))}& .submit{width:100%;min-height:2.5rem;padding:.5rem .75rem;font-weight:700}& .submit:disabled{cursor:wait;opacity:.65}& .sign-in{border:.0625rem solid var(--gray-lighter,#d8d8d8);background:var(--blue-lightest,#eaf6fb);border-radius:.25rem;flex-direction:column;align-items:center;padding:.75rem 1rem;display:flex}& .sign-in-text{color:var(--gray,#464646);text-align:center;font-weight:700;line-height:1.5rem}& .form>[role=alert]{border:.0625rem solid var(--red,#e2001a);color:#9f1c1c;background:#fff0f0;border-radius:.25rem;padding:.5rem .75rem;line-height:1.35}}@keyframes vue-login-modal-in{0%{opacity:0}to{opacity:1}}@media screen and (width<=41.875rem){.vue-login-modal .header{padding-left:1rem;padding-right:1rem}.vue-login-modal .form{padding:1rem}}@media screen and (width<=30rem){.vue-login-modal .overlay{padding:max(.75rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) max(.75rem, env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-left));align-items:flex-start}.vue-login-modal .modal-container{max-width:none;max-height:calc(100vh - 1.5rem)}.vue-login-modal .buttons{flex-direction:column;align-items:stretch}.vue-login-modal .buttons .submit{width:100%}}