.portal-toast-stack{position:fixed;right:24px;top:100px;width:min(380px,calc(100vw - 32px));z-index:10000;display:flex;flex-direction:column;gap:10px;pointer-events:none}.portal-toast{position:relative;display:grid;grid-template-columns:28px minmax(0,1fr) 24px;align-items:start;gap:10px;padding:17px 15px 20px;border:1px solid #dce6df;border-left:4px solid #278d49;border-radius:13px;background:#fff;color:#24412e;box-shadow:0 12px 35px #122e2426;pointer-events:auto;overflow:hidden;animation:toast-in .22s ease}.portal-toast[data-type=error]{border-left-color:#c83f46}.portal-toast[data-type=warning]{border-left-color:#ca8b20}.portal-toast[data-type=info]{border-left-color:#3689b0}.portal-toast-symbol{font-weight:800;font-size:18px;color:#278d49}.portal-toast[data-type=error] .portal-toast-symbol{color:#c83f46}.portal-toast-copy{font-size:13px;line-height:1.6;overflow-wrap:anywhere}.portal-toast-close{border:0;background:transparent;padding:0;font-size:22px;line-height:1;color:#6a7c70;cursor:pointer}.portal-toast-close:focus-visible{outline:2px solid #278d49;outline-offset:3px}.portal-toast-progress{position:absolute;bottom:0;left:0;height:3px;width:100%;background:#278d4940;transform-origin:left;animation:toast-progress var(--toast-duration,6000ms) linear forwards}.portal-toast[data-paused=true] .portal-toast-progress{animation-play-state:paused}.portal-toast-exit{opacity:0;transform:translateX(20px);transition:opacity .2s,transform .2s}body.loginbody .portal-toast-stack{top:24px}@keyframes toast-in{from{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes toast-progress{to{transform:scaleX(0)}}@media(max-width:600px){.portal-toast-stack{right:16px;top:92px}.portal-toast{padding:14px 12px 17px}}@media(prefers-reduced-motion:reduce){.portal-toast,.portal-toast-progress{animation:none}.portal-toast-exit{transition:none}}
/* Keep public authentication forms within the viewport's grid track. */
.loginbody{grid-template-columns:minmax(0,1fr)}.loginbody .login{min-width:0;justify-self:center}.loginbody .login form,.loginbody .login .field{min-width:0}
html:has(>body.loginbody){overflow-x:clip}
