@keyframes fade-in-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-in-right{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce-in{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}@keyframes checkmark-draw{to{stroke-dashoffset:0}}@keyframes scale-in{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@keyframes toast-in{0%{opacity:0;transform:translate(100%) scale(.9)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toast-out{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(100%) scale(.9)}}@keyframes toast-progress{0%{width:100%}to{width:0%}}.toast-container{position:fixed;top:var(--space-4);right:var(--space-4);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2);pointer-events:none;max-width:380px;width:calc(100% - 2rem)}.toast{pointer-events:auto;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);display:flex;align-items:center;gap:var(--space-3);box-shadow:var(--shadow-lg);animation:toast-in .4s var(--ease-out);overflow:hidden;position:relative}.toast.removing{animation:toast-out .3s var(--ease-out) forwards}.toast__icon{font-size:1.3rem;flex-shrink:0}.toast__content{flex:1;min-width:0}.toast__title{font-weight:600;font-size:var(--fs-sm);color:var(--text-primary)}.toast__message{font-size:var(--fs-xs);color:var(--text-secondary);margin-top:2px}.toast__close{flex-shrink:0;color:var(--text-tertiary);font-size:1rem;cursor:pointer;transition:color var(--duration-fast)}.toast__close:hover{color:var(--text-primary)}.toast__progress{position:absolute;bottom:0;left:0;height:3px;background:var(--accent);animation:toast-progress 3s linear forwards}.toast--success{border-left:3px solid var(--accent)}.toast--error{border-left:3px solid var(--danger)}.toast--info{border-left:3px solid var(--info)}.toast--warning{border-left:3px solid var(--warning)}.product-card{animation:fade-in-up .5s var(--ease-out) backwards}.product-card:nth-child(1){animation-delay:.03s}.product-card:nth-child(2){animation-delay:.06s}.product-card:nth-child(3){animation-delay:.09s}.product-card:nth-child(4){animation-delay:.12s}.product-card:nth-child(5){animation-delay:.15s}.product-card:nth-child(6){animation-delay:.18s}.product-card:nth-child(7){animation-delay:.21s}.product-card:nth-child(8){animation-delay:.24s}.success-checkmark{width:80px;height:80px;margin:0 auto var(--space-6);animation:scale-in .5s var(--ease-spring)}.success-checkmark__circle{width:80px;height:80px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:2.5rem;color:var(--text-inverse);box-shadow:0 0 40px var(--accent-glow-strong)}.confirmation-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-4);text-align:center}.confirmation-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-10) var(--space-8);max-width:500px;width:100%;animation:fade-in-up .6s var(--ease-out)}.confirmation-card__title{font-family:var(--font-heading);font-size:var(--fs-2xl);font-weight:800;margin-bottom:var(--space-2)}.confirmation-card__subtitle{color:var(--text-secondary);font-size:var(--fs-sm);margin-bottom:var(--space-6)}.confirmation-card__details{text-align:left;margin-bottom:var(--space-6)}.confirmation-detail{display:flex;justify-content:space-between;padding:var(--space-2) 0;border-bottom:1px solid var(--border);font-size:var(--fs-sm)}.confirmation-detail:last-child{border-bottom:none}.confirmation-detail__label{color:var(--text-tertiary)}.confirmation-detail__value{font-weight:600}.confirmation-detail__value.accent{color:var(--accent)}@media(max-width:480px){.toast-container{left:var(--space-3);right:var(--space-3);max-width:none;width:auto}}
