.toast-unified{position:fixed;top:20px;right:20px;background:white;border-radius:10px;padding:15px;box-shadow:0 10px 40px rgba(0,0,0,.15);transform:translateX(400px);transition:all .4s cubic-bezier(.4,0,.2,1);z-index:9999;border:2px solid;border-left:4px solid;min-width:280px;opacity:0;max-width:400px;}.toast-unified.toast-visible{transform:translateX(0);opacity:1;}.toast-unified.toast-success{border-color:var(--primary-green);background:linear-gradient(135deg,#d4edda 0%,white 100%);}.toast-unified.toast-error{border-color:var(--accent-pink);background:linear-gradient(135deg,#f8d7da 0%,white 100%);}.toast-unified.toast-warning{border-color:#ffc107;background:linear-gradient(135deg,#fff3cd 0%,white 100%);}.toast-unified.toast-info{border-color:#17a2b8;background:linear-gradient(135deg,#d1ecf1 0%,white 100%);}.toast-unified.toast-favorite{border-color:var(--primary-pink);background:linear-gradient(135deg,var(--light-pink) 0%,white 100%);}.toast-unified.toast-favorite-added{border-color:var(--primary-green);background:linear-gradient(135deg,#d4edda 0%,white 100%);}.toast-unified.toast-cart{border-color:var(--accent-pink);background:linear-gradient(135deg,var(--light-pink) 0%,white 100%);}.toast-content{display:flex;align-items:center;gap:12px;font-weight:500;color:var(--text-dark);}.toast-content i{font-size:1.2rem;flex-shrink:0;}.toast-content span{flex:1;line-height:1.4;}.toast-unified.toast-success .toast-content i{color:var(--primary-green)}.toast-unified.toast-error .toast-content i{color:var(--primary-pink)}.toast-unified.toast-warning .toast-content i{color:#ffc107}.toast-unified.toast-info .toast-content i{color:#17a2b8}.toast-unified.toast-favorite .toast-content i{color:var(--primary-pink)}.toast-unified.toast-cart .toast-content i{color:var(--primary-pink)}.toast-unified.toast-favorite-added .bi{color:var(--primary-green);}@media (max-width:767px){.toast-unified{right:10px;left:10px;min-width:auto;transform:translateY(-100px);opacity:0}.toast-unified.toast-visible{transform:translateY(0);opacity:1}.toast-content{gap:10px}.toast-content i{font-size:1.1rem}.toast-content span{font-size:.9rem}}