:root{--primary:#e74c3c;--primary-dark:#c0392b;--primary-light:#fef5f5;--secondary:#2c3e50;--success:#27ae60;--warning:#f39c12;--info:#3498db;--danger:#e74c3c;--text-primary:#222;--text-secondary:#555;--text-muted:#999;--text-light:#bbb;--bg-body:#f5f6f8;--bg-white:#fff;--bg-gray:#f9f9f9;--bg-dark:#1a1a2e;--border:#e8e8e8;--border-light:#f0f0f0;--shadow-sm:0 2px 8px #0000000a;--shadow-md:0 4px 16px #00000014;--shadow-lg:0 8px 30px #0000001f;--shadow-hover:0 12px 40px #00000026;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:50px;--ease:cubic-bezier(.4, 0, .2, 1);--transition:all .3s var(--ease);--transition-fast:all .15s var(--ease);--header-height:70px;--sidebar-width:280px;--container-max:1360px;--font:"Open Sans", -apple-system, BlinkMacSystemFont, sans-serif}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased}body{font-family:var(--font);color:var(--text-primary);background:var(--bg-body);min-height:100vh;font-size:14px;line-height:1.6}a{color:inherit;transition:var(--transition-fast);text-decoration:none}a:hover{color:var(--primary)}ul,ol{list-style:none}button{cursor:pointer;font-family:inherit;font-size:inherit;transition:var(--transition);background:0 0;border:none}input,select,textarea{font-family:inherit;font-size:inherit;outline:none}img{max-width:100%;display:block}.container{max-width:var(--container-max);margin:0 auto;padding:0 20px}.notification{background:var(--secondary);color:#fff;border-radius:var(--radius-md);z-index:9999;opacity:0;transition:var(--transition);box-shadow:var(--shadow-lg);white-space:nowrap;pointer-events:none;padding:14px 28px;font-size:14px;font-weight:600;position:fixed;bottom:30px;left:50%;transform:translate(-50%)translateY(20px)}.notification.show{opacity:1;transform:translate(-50%)translateY(0)}.scroll-top{background:var(--primary);color:#fff;border-radius:var(--radius-sm);z-index:999;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;display:none;position:fixed;bottom:30px;right:30px;box-shadow:0 4px 14px #e74c3c66}.scroll-top:hover{background:var(--primary-dark);transform:translateY(-3px)}.scroll-top.visible{animation:.3s fadeUp;display:flex}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.overlay{z-index:998;opacity:0;visibility:hidden;transition:var(--transition);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;position:fixed;inset:0}.overlay.active{opacity:1;visibility:visible}.action-badge{background:var(--primary);color:#fff;pointer-events:none;border:2px solid var(--bg-white);z-index:5;border-radius:50%;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:none;position:absolute;top:2px;right:2px}.action-badge.visible{display:flex}.action-badge.bounce{animation:.4s bounce}@keyframes bounce{0%{transform:scale(1)}30%{transform:scale(1.5)}50%{transform:scale(.9)}70%{transform:scale(1.2)}to{transform:scale(1)}}.modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background:#00000080;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.modal.active{display:flex}.modal__content{background:var(--bg-white);border-radius:var(--radius-lg);text-align:center;width:90%;max-width:420px;padding:36px;animation:.3s modalIn}@keyframes modalIn{0%{opacity:0;transform:scale(.9)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal__icon{width:64px;height:64px;color:var(--warning);background:#fff3e0;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;font-size:28px;display:flex}.modal__title{margin-bottom:8px;font-size:20px;font-weight:700}.modal__text{color:var(--text-muted);margin-bottom:24px;font-size:14px}.modal__actions{justify-content:center;gap:10px;display:flex}.modal__btn{border-radius:var(--radius-sm);padding:12px 28px;font-size:14px;font-weight:600}.modal__btn--cancel{background:var(--bg-gray);color:var(--text-secondary)}.modal__btn--cancel:hover{background:#e0e0e0}.modal__btn--confirm{background:var(--primary);color:#fff}.modal__btn--confirm:hover{background:var(--primary-dark)}.loading{color:var(--text-muted);justify-content:center;align-items:center;gap:10px;padding:60px 20px;font-size:15px;display:flex}.loading--vertical{flex-direction:column;gap:16px}.page-loader{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9999;background:#ffffffd9;flex-direction:column;justify-content:center;align-items:center;gap:16px;animation:.2s loaderFadeIn;display:flex;position:fixed;inset:0}@keyframes loaderFadeIn{0%{opacity:0}to{opacity:1}}.page-loader__spinner{border:4px solid var(--border-light);border-top-color:var(--primary);border-radius:50%;width:50px;height:50px;animation:.8s linear infinite loaderSpin}@keyframes loaderSpin{to{transform:rotate(360deg)}}.page-loader__text{color:var(--text-muted);font-size:14px;font-weight:600}.skeleton-card{background:var(--bg-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow:hidden}.skeleton-shimmer{background:linear-gradient(90deg, var(--bg-gray) 0%, #eef2f5 50%, var(--bg-gray) 100%);background-size:200% 100%;animation:1.5s linear infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton-card__image{aspect-ratio:1;width:100%}.skeleton-card__body{flex-direction:column;flex:1;gap:10px;padding:14px;display:flex}.skeleton-line{border-radius:4px;height:14px}.skeleton-line--sm{width:40%;height:10px}.skeleton-line--md{width:80%}.skeleton-line--lg{width:60%;height:20px}.skeleton-line--btn{border-radius:var(--radius-sm);width:100%;height:38px;margin-top:auto}.inline-loader{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;padding:60px 20px;font-size:14px;display:flex}.inline-loader i{color:var(--primary);font-size:28px}body.theme-newyear{--primary:#d32f2f!important;--bg-body:#f4f7fa!important}body.theme-newyear:before{content:"";z-index:10000;background:repeating-linear-gradient(45deg,#d32f2f,#d32f2f 15px,#fff 15px 30px);height:5px;position:fixed;top:0;left:0;right:0;box-shadow:0 2px 10px #d32f2f66}body.theme-newyear{background-attachment:fixed;background-image:url("data:image/svg+xml;utf8,<svg width=\"120\" height=\"120\" viewBox=\"0 0 120 120\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M60 15 L60 105 M15 60 L105 60 M28 28 L92 92 M28 92 L92 28\" stroke=\"rgba(140, 170, 210, 0.4)\" stroke-width=\"2.5\"/><circle cx=\"60\" cy=\"60\" r=\"4\" fill=\"rgba(140, 170, 210, 0.5)\"/></svg>")!important}body.theme-newyear:after{content:"";pointer-events:none;z-index:9999;filter:drop-shadow(1px 3px 5px #46648273);background-image:radial-gradient(6px 6px at 10vw 10vh,#fff,#0000),radial-gradient(7px 7px at 30vw 30vh,#fff,#0000),radial-gradient(8px 8px at 50vw 60vh,#fff,#0000),radial-gradient(6px 6px at 70vw 20vh,#fff,#0000),radial-gradient(7px 7px at 90vw 80vh,#fff,#0000);background-size:100vw 100vh;height:200vh;animation:10s linear infinite snow-visible;position:fixed;top:-100vh;left:0;right:0}@keyframes snow-visible{0%{transform:translateY(0)}to{transform:translateY(100vh)}}body.theme-newyear #flashSaleBanner{border-radius:0 0 16px 16px;margin-top:15px;position:relative;background:radial-gradient(circle at 80%,#b71c1c,#d32f2f)!important;border:none!important;overflow:visible!important;box-shadow:0 15px 35px #d32f2f4d!important}body.theme-newyear #flashSaleBanner:before{content:"";z-index:2;background:url("data:image/svg+xml;utf8,<svg viewBox=\"0 0 100 20\" xmlns=\"http://www.w3.org/2000/svg\" preserveAspectRatio=\"none\"><path d=\"M0,0 Q10,20 20,0 T40,0 T60,0 T80,0 T100,0 L100,0 L0,0 Z\" fill=\"white\"/></svg>") 0 0/40px 12px repeat-x;height:12px;position:absolute;top:-1px;left:0;right:0}body.theme-newyear #flashSaleBanner:after{content:"🎁";filter:drop-shadow(0 10px 15px #0000004d);z-index:3;font-size:60px;animation:4s ease-in-out infinite alternate float-gift;position:absolute;top:-30px;right:5%}@keyframes float-gift{0%{transform:translateY(0)rotate(-10deg)scale(1)}to{transform:translateY(-15px)rotate(10deg)scale(1.05)}}body.theme-newyear #timerDays,body.theme-newyear #timerHours,body.theme-newyear #timerMinutes,body.theme-newyear #timerSeconds{text-shadow:0 0 15px #ffdf00cc;color:#ffdf00!important}body.theme-feb23{--primary:#2c3e50!important;background-color:#f4f6f7!important;background-image:url("data:image/svg+xml;utf8,<svg width=\"40\" height=\"69.282\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M40 17.32l-20 11.547L0 17.32V0l20 11.547L40 0v17.32zm0 34.64l-20 11.548-20-11.548V34.64l20 11.548 20-11.548v17.32zM20 46.188L0 34.64v-17.32l20 11.548 20-11.548v17.32L20 46.188z\" fill=\"rgba(44,62,80,0.03)\"/></svg>")!important}body.theme-feb23 #flashSaleBanner{z-index:1;border-radius:12px;position:relative;background:linear-gradient(135deg,#1a252c,#34495e)!important;border:1px solid #ffffff1a!important;overflow:hidden!important;box-shadow:0 20px 40px #2c3e504d,inset 0 0 40px #00000080!important}body.theme-feb23 #flashSaleBanner:before{content:"";z-index:-2;background:repeating-linear-gradient(45deg,#0000,#0000 5px,#00000026 5px 10px);position:absolute;inset:0}body.theme-feb23 #flashSaleBanner:after{content:"";z-index:-1;background:radial-gradient(circle at 30% 30%,#f39c12,#d35400,#111);border-radius:50%;width:170px;height:170px;animation:7s ease-in-out infinite alternate float-heavy;position:absolute;top:-50px;right:6%;box-shadow:0 20px 40px #0009}body.theme-feb23 #timerDays,body.theme-feb23 #timerHours,body.theme-feb23 #timerMinutes,body.theme-feb23 #timerSeconds{text-shadow:0 0 10px #f39c1280;z-index:2;position:relative;color:#f39c12!important}body.theme-feb23 .product-card:hover{border-color:#bdc3c7;box-shadow:0 10px 25px #2c3e5026}@keyframes float-heavy{0%{transform:translateY(0)}to{transform:translateY(20px)}}body.theme-spring{--primary:#e83e8c!important;background-color:#fffafb!important;background-image:radial-gradient(circle at 10% 20%,#e83e8c0d 0%,#0000 40%),repeating-linear-gradient(45deg,#e83e8c05 0 2px,#0000 2px 15px)!important}body.theme-spring #flashSaleBanner{z-index:1;border-radius:12px;position:relative;background:linear-gradient(135deg,#ff758c,#ff7eb3)!important;border:1px solid #fff6!important;overflow:hidden!important;box-shadow:0 20px 40px #e83e8c33,inset 0 0 20px #fff3!important}body.theme-spring #flashSaleBanner:before{content:"";z-index:-2;background-image:radial-gradient(#ffffff4d 20%,#0000 20%),radial-gradient(#fff3 20%,#0000 20%);background-position:0 0,25px 25px;background-size:50px 50px;position:absolute;inset:0}body.theme-spring #flashSaleBanner:after{content:"";z-index:-1;background:radial-gradient(circle at 30% 30%,#fff,#ffb8d2,#d63384);border-radius:50%;width:150px;height:150px;animation:4s ease-in-out infinite alternate float-sphere;position:absolute;top:-20px;right:10%;box-shadow:0 15px 30px #d6338466}body.theme-spring #timerDays,body.theme-spring #timerHours,body.theme-spring #timerMinutes,body.theme-spring #timerSeconds{text-shadow:0 0 10px #fffc;z-index:2;position:relative;color:#fff!important}body.theme-spring .product-card:hover{border-color:#ffb8d2;box-shadow:0 10px 25px #e83e8c26}body.theme-halloween{background-position:0 0,10px 10px;background-size:20px 20px;--primary:#e67e22!important;background-color:#f9f8fa!important;background-image:radial-gradient(circle at 90% 10%,#e67e220d 0%,#0000 40%),linear-gradient(45deg,#2b105508 25%,#0000 25% 75%,#2b105508 75%),linear-gradient(45deg,#2b105508 25%,#0000 25% 75%,#2b105508 75%)!important}body.theme-halloween #flashSaleBanner{z-index:1;border-radius:12px;position:relative;background:linear-gradient(135deg,#2b1055,#7a0e38)!important;border:1px solid #e67e2233!important;overflow:hidden!important;box-shadow:0 20px 40px #2b10554d,inset 0 0 30px #0006!important}body.theme-halloween #flashSaleBanner:before{content:"";z-index:-2;background:repeating-linear-gradient(-45deg,#0003,#0003 2px,#0000 2px 8px);position:absolute;inset:0}body.theme-halloween #flashSaleBanner:after{content:"";z-index:-1;background:radial-gradient(circle at 35% 35%,#f1c40f,#e67e22,#5c0a1f);border-radius:50%;width:170px;height:170px;animation:5.5s ease-in-out infinite alternate-reverse float-sphere;position:absolute;top:-40px;right:5%;box-shadow:0 0 40px #e67e2280}body.theme-halloween #timerDays,body.theme-halloween #timerHours,body.theme-halloween #timerMinutes,body.theme-halloween #timerSeconds{text-shadow:0 0 15px #e67e22cc;z-index:2;position:relative;color:#f39c12!important}body.theme-halloween .product-card:hover{border-color:#e67e22;box-shadow:0 10px 25px #e67e2226}body.theme-11-11{background-attachment:fixed;--primary:#e91e63!important;background-color:#f8f5fb!important;background-image:radial-gradient(circle at 10% 20%,#e91e6312 0%,#0000 40%),radial-gradient(circle at 90% 80%,#8e44ad12 0%,#0000 40%),linear-gradient(#8e44ad08 1px,#0000 1px),linear-gradient(90deg,#8e44ad08 1px,#0000 1px)!important;background-size:100% 100%,100% 100%,30px 30px,30px 30px!important}body.theme-11-11:before{content:"";z-index:10000;background:linear-gradient(90deg,#f05,#8e44ad,#00d2ff,#f05) 0 0/300% 100%;height:3px;animation:4s linear infinite neon-sweep;position:fixed;top:0;left:0;right:0;box-shadow:0 1px 8px #e91e6380}@keyframes neon-sweep{0%{background-position:100% 0}to{background-position:0 0}}body.theme-11-11 #flashSaleBanner{z-index:1;border-radius:12px;margin-top:15px;position:relative;background:linear-gradient(135deg,#2b0a5e,#d81159)!important;border:1px solid #ffffff26!important;overflow:hidden!important;box-shadow:0 20px 40px #d8115940,inset 0 0 30px #0003!important}body.theme-11-11 #flashSaleBanner:before{content:"";z-index:-2;background-image:radial-gradient(#ffffff26 1px,#0000 1px);background-size:14px 14px;position:absolute;inset:0}body.theme-11-11 #flashSaleBanner:after{content:"";z-index:-1;background:radial-gradient(circle at 30% 30%,#ff5e98,#8e44ad,#2b0a5e);border-radius:50%;width:180px;height:180px;animation:6s ease-in-out infinite alternate float-sphere;position:absolute;top:-40px;right:5%;box-shadow:0 0 30px #f056}@keyframes float-sphere{0%{transform:translateY(0)scale(1)}to{transform:translateY(30px)scale(1.05)}}body.theme-11-11 #timerDays,body.theme-11-11 #timerHours,body.theme-11-11 #timerMinutes,body.theme-11-11 #timerSeconds{text-shadow:0 0 10px #f72585,0 0 20px #f72585;z-index:2;position:relative;color:#fff!important}body.theme-11-11 .product-card:hover{border-color:#f72585;box-shadow:0 10px 25px #f725851f}body.theme-newyear .btn-primary,body.theme-newyear .cart__checkout-btn{background:linear-gradient(135deg,#d32f2f,#9b0000)!important;border:none!important;box-shadow:0 5px 15px #d32f2f4d!important}body.theme-11-11 .btn-primary,body.theme-11-11 .cart__checkout-btn{background:linear-gradient(135deg,#e91e63,#8e44ad)!important;border:none!important;box-shadow:0 5px 20px #e91e6366!important}body.theme-feb23 .btn-primary,body.theme-feb23 .cart__checkout-btn{background:linear-gradient(135deg,#2c3e50,#1a252c)!important;border:1px solid #ffffff1a!important;box-shadow:0 5px 15px #2c3e5066!important}body.theme-spring .btn-primary,body.theme-spring .cart__checkout-btn{background:linear-gradient(135deg,#ff758c,#ff7eb3)!important;border:none!important;box-shadow:0 5px 15px #e83e8c4d!important}body.theme-halloween .btn-primary,body.theme-halloween .cart__checkout-btn{background:linear-gradient(135deg,#e67e22,#d35400)!important;border:none!important;box-shadow:0 5px 20px #e67e2266!important}
