.modal-backdrop{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;animation:fadeIn .2s ease-out forwards}.modal-container{background:#111111fa;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:2rem;max-width:500px;width:90%;box-shadow:0 20px 60px #00000080;transform:scale(.8);opacity:0;animation:scaleIn .3s cubic-bezier(.34,1.56,.64,1) .1s forwards}.modal-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.modal-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;flex-shrink:0}.modal-icon.success{background:#5f53;color:#5f5}.modal-icon.error{background:#f553;color:#f55}.modal-icon.info{background:#3cf3;color:#3cf}.modal-title{font-family:Oswald,sans-serif;font-size:1.5rem;color:#fff;margin:0}.modal-content{color:#ccc;font-size:1rem;line-height:1.6;margin-bottom:2rem}.modal-actions{display:flex;gap:1rem;justify-content:flex-end}.modal-btn{padding:.75rem 1.5rem;border-radius:6px;border:none;font-family:Oswald,sans-serif;font-size:1rem;cursor:pointer;transition:all .3s}.modal-btn-primary{background:#5f5;color:#000}.modal-btn-primary:hover{background:#6f6;transform:translateY(-2px);box-shadow:0 4px 12px #5f56}.modal-btn-secondary{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.2)}.modal-btn-secondary:hover{background:#ffffff1a}.toast-container{position:fixed;top:100px;right:20px;z-index:10001;display:flex;flex-direction:column;gap:1rem;pointer-events:none}.toast{background:#111111fa;border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:1rem 1.5rem;min-width:300px;max-width:400px;display:flex;align-items:center;gap:1rem;box-shadow:0 10px 30px #00000080;transform:translate(120%);opacity:0;animation:slideInRight .3s ease-out forwards;pointer-events:all;cursor:pointer}.toast.removing{animation:slideOutRight .3s ease-in forwards}.toast-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast.success .toast-icon{background:#5f53;color:#5f5}.toast.error .toast-icon{background:#f553;color:#f55}.toast.info .toast-icon{background:#3cf3;color:#3cf}.toast-content{flex:1;color:#fff;font-family:Inter,sans-serif;font-size:.95rem}.toast-close{background:transparent;border:none;color:#888;cursor:pointer;font-size:1.2rem;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color .2s}.toast-close:hover{color:#fff}@keyframes fadeIn{to{opacity:1}}@keyframes scaleIn{to{transform:scale(1);opacity:1}}@keyframes slideInRight{to{transform:translate(0);opacity:1}}@keyframes slideOutRight{to{transform:translate(120%);opacity:0}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@keyframes bounce{0%,to{transform:translateY(0);opacity:1}50%{transform:translateY(-10px);opacity:.8}}@keyframes slideOutLeft{to{transform:translate(-100%);opacity:0}}@keyframes cartIconPop{0%{transform:scale(1) rotate(0)}50%{transform:scale(1.3) rotate(-10deg)}to{transform:scale(1) rotate(0)}}@keyframes badgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}@media(prefers-reduced-motion:reduce){.modal-backdrop,.modal-container,.toast{animation:none;opacity:1;transform:none}}@media(max-width:768px){.modal-container{max-width:95%;padding:1.5rem}.toast-container{right:10px;left:10px}.toast{min-width:unset;width:100%}}
