.toast-viewport{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:column;align-items:flex-end;gap:12px;z-index:2000}.toast{position:relative;display:flex;align-items:center;gap:14px;min-width:260px;max-width:360px;padding:14px 16px 14px 18px;border-radius:14px;background:rgba(15,23,42,.92);color:#f8fafc;border:1px solid rgba(148,163,184,.35);box-shadow:0 18px 38px rgba(15,23,42,.35);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:0;transform:translateY(16px) scale(.96);animation:toast-enter .22s cubic-bezier(.32,.72,0,1) forwards;will-change:transform,opacity}.toast:before{border-radius:inherit;border:1px solid transparent;background:linear-gradient(135deg,hsla(0,0%,100%,.08),hsla(0,0%,100%,0)) border-box;mask:linear-gradient(#000,#000) padding-box,linear-gradient(#000,#000);mask-composite:exclude}.toast:after,.toast:before{content:"";position:absolute;inset:0;pointer-events:none}.toast:after{border-radius:inherit;background:linear-gradient(160deg,hsla(0,0%,100%,.08),rgba(15,23,42,0));opacity:.4}.toast-icon{z-index:1;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;font-size:.95rem;font-weight:600;color:#0f172a;background:rgba(241,245,249,.92);flex-shrink:0}.toast-success .toast-icon{background:linear-gradient(135deg,rgb(var(--success-100)),rgb(var(--success-500)))}.toast-success{border-left-color:rgb(var(--success-500))}.toast-error .toast-icon{background:linear-gradient(135deg,rgb(var(--danger-100)),rgb(var(--danger-500)))}.toast-error{border-left-color:rgb(var(--danger-500))}.toast-info .toast-icon{background:linear-gradient(135deg,rgb(var(--brand-100)),rgb(var(--brand-500)))}.toast-info{border-left-color:rgb(var(--brand-500))}.toast-content{z-index:1;flex:1;min-width:0}.toast-message{margin:0;font-size:.95rem;line-height:1.35}.toast button{z-index:1;background:transparent;border:none;color:rgba(248,250,252,.65);font-size:18px;cursor:pointer;margin-left:8px;line-height:1;transition:opacity .14s ease,transform .14s ease}.toast button:hover{opacity:.95;transform:scale(1.06)}.toast-exiting{animation:toast-exit .17s cubic-bezier(.3,0,.7,.9) forwards}@keyframes toast-enter{0%{opacity:0;transform:translateY(16px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toast-exit{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(12px) scale(.94)}}