:root{--toast-bg:#111113;--toast-text:#f4f4f5;--toast-muted:#a1a1aa;--toast-progress:#09090b;--toast-success:#34d399;--toast-info:#38bdf8;--toast-warning:#fbbf24;--toast-error:#fb7185}.toast-viewport{box-sizing:border-box;z-index:9999;gap:.75rem;width:100%;max-width:min(26rem,100vw - 2rem);padding:0;display:flex;position:fixed}.toast-viewport--top-center,.toast-viewport--bottom-center{left:50%;transform:translate(-50%)}.toast-viewport--top-left,.toast-viewport--top-center,.toast-viewport--top-right{flex-direction:column;top:1.5rem}.toast-viewport--bottom-left,.toast-viewport--bottom-center,.toast-viewport--bottom-right{flex-direction:column-reverse;bottom:1.5rem}.toast-viewport--top-left,.toast-viewport--bottom-left{width:auto;max-width:min(26rem,100vw - 2rem);left:1rem}.toast-viewport--top-right,.toast-viewport--bottom-right{width:auto;max-width:min(26rem,100vw - 2rem);right:1rem}.toast-item{background:var(--toast-bg);color:var(--toast-text);border-radius:1rem;animation:.25s ease-out toast-enter;position:relative;overflow:hidden}.toast-item--closing{animation:.22s ease-in forwards toast-exit}.toast-item__motion{width:100%}.toast-item__progress{background:var(--toast-progress);width:0;animation:linear forwards toast-progress;position:absolute;inset:0 auto 0 0}.toast-item__content{z-index:1;align-items:center;gap:.75rem;min-height:3.5rem;padding:.75rem 1rem;display:flex;position:relative}.toast-item__icon{flex:none}.toast-item__message{flex:1;margin:0;font-size:.875rem;line-height:1.4}.toast-item__close{color:var(--toast-muted);cursor:pointer;background:0 0;border:0;border-radius:.375rem;flex:none;justify-content:center;align-items:center;padding:.25rem;display:inline-flex}.toast-item__close:hover{color:var(--toast-text);background:#ffffff1a}.toast-item__close:focus-visible{outline-offset:2px;outline:2px solid}.toast-item--success .toast-item__icon{color:var(--toast-success)}.toast-item--info .toast-item__icon{color:var(--toast-info)}.toast-item--warning .toast-item__icon{color:var(--toast-warning)}.toast-item--error .toast-item__icon{color:var(--toast-error)}@keyframes toast-enter{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}@keyframes toast-exit{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(1rem)}}@keyframes toast-progress{0%{width:0}to{width:100%}}@media (prefers-reduced-motion:reduce){.toast-item,.toast-item__progress{animation:none}}
