/* Toast · the kit rules for this component, quoted from phase-2/kit (kit v3) by phase-4/src/build_pack.py.
   Tokens come from ../../styles.css. Build it as: Sonner. */
/* base.css */
.k-toast{opacity:0;transform:translateY(var(--toast-shift));pointer-events:none;transition:opacity var(--motion-toast-out),transform var(--motion-toast-out)}
/* base.css */
.k-toast.show{opacity:1;transform:none;pointer-events:auto;transition:opacity var(--motion-toast-in),transform var(--motion-toast-in)}
/* base.css */
.toast{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border-radius:var(--r-control);background:hsl(var(--popover));color:hsl(var(--popover-foreground));border:1px solid hsl(var(--border));box-shadow:var(--e-toast);width:100%;position:relative}
/* base.css */
.toast>svg{flex:none;margin-top:1px;color:hsl(var(--success))}
/* base.css */
.toast.error>svg{color:hsl(var(--destructive))}
/* base.css */
.toast.warning>svg{color:hsl(var(--warning))}
/* base.css */
.toast.info>svg{color:hsl(var(--info))}
/* base.css */
.toast.undo>svg{color:hsl(var(--foreground))}
/* base.css */
.toast.progress>svg, .toast .spin{color:hsl(var(--info))}
/* base.css */
.toast .spin{margin-top:2px;flex:none}
/* base.css */
.toast .b{flex:1;min-width:0}
/* base.css */
.toast b{display:block;font-size:13px;font-weight:var(--w-semibold);line-height:1.35}
/* base.css */
.toast small{display:block;font-size:var(--text-micro);line-height:1.4;color:hsl(var(--muted-foreground));margin-top:1px}
/* base.css */
.toast .act{flex:none;align-self:center;display:flex;gap:2px;margin:-4px -4px -4px 0}
/* base.css */
.toast .act .btn{height:30px;padding:0 var(--s-2);font-size:12.5px}
/* base.css */
.kit-m .toast .act .btn{height:var(--control-h-m);padding:0 var(--s-3);font-size:13.5px}
/* base.css */
.toast .act .icon-btn{width:30px;height:30px}
/* base.css */
.kit-m .toast .act .icon-btn{width:var(--control-h-m);height:var(--control-h-m)}
/* families/status-feedback/family.css */
.toast .act .btn-link{color:hsl(var(--primary));text-decoration:underline;text-underline-offset:3px}
/* families/status-feedback/family.css */
.sf-stack{position:relative;height:216px}
/* families/status-feedback/family.css */
.sf-stack .toast{position:absolute;left:0;right:0;bottom:0;transform-origin:bottom center;transition:transform var(--motion-toast-in),opacity var(--motion-toast-in)}
/* families/status-feedback/family.css */
.sf-stack .toast:nth-child(1){transform:translateY(-16px) scale(.92);opacity:.75}
/* families/status-feedback/family.css */
.sf-stack .toast:nth-child(2){transform:translateY(-8px) scale(.96);opacity:.9}
/* families/status-feedback/family.css */
.sf-stack .toast:nth-child(3){transform:none}
/* families/status-feedback/family.css */
.sf-stack.open .toast:nth-child(1){transform:translateY(-136px)}
/* families/status-feedback/family.css */
.sf-stack.open .toast:nth-child(2){transform:translateY(-68px)}
/* families/status-feedback/family.css */
.sf-toaster{position:absolute;right:var(--s-4);bottom:var(--s-4);width:min(380px,calc(100% - var(--s-8)));height:0;z-index:5}
/* families/status-feedback/family.css */
.sf-toaster .toast{position:absolute;right:0;bottom:0;transition:opacity var(--motion-toast-out),transform var(--motion-toast-in)}
/* families/status-feedback/family.css */
.sf-toaster .toast:not(.show){transition:opacity var(--motion-toast-out),transform var(--motion-toast-out)}
/* families/status-feedback/family.css */
.sf-toaster .toast.show{transition:opacity var(--motion-toast-in),transform var(--motion-toast-in)}
/* families/status-feedback/family.css */
.sf-toaster .toast.gone{opacity:0}
/* families/status-feedback/family.css */
.kit-m .toast{flex-wrap:wrap}
/* families/status-feedback/family.css */
.kit-m .toast .b{flex:1 1 0}
/* families/status-feedback/family.css */
.kit-m .toast .act{order:3;flex:0 0 100%;justify-content:flex-end;margin:var(--s-1) calc(var(--s-1) * -1) -6px 0;padding-top:var(--s-1);border-top:1px solid hsl(var(--border))}
/* families/status-feedback/family.css */
.kit-m .toast .act .btn-link{margin-right:auto}
