*{margin:0;padding:0;box-sizing:border-box}:root{--primary: #1a1a2e;--primary-dark: #16213e;--secondary: #e94560;--success: #0f3460;--error: #e94560;--warning: #f5a623;--gray-50: #fafafa;--gray-100: #f5f5f5;--gray-200: #e8e8e8;--gray-300: #d4d4d4;--gray-400: #a3a3a3;--gray-500: #737373;--gray-600: #525252;--gray-700: #404040;--gray-800: #262626;--gray-900: #171717;--accent: #e94560;--accent-hover: #d63851}html,body{width:100%;height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--gray-900);background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;font-size:16px}#root,.layout{display:flex;flex-direction:column;min-height:100vh}.layout-main{flex:1}.header{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--gray-200);position:sticky;top:0;z-index:100;box-shadow:0 1px 3px #0000001a}.header-content{max-width:1400px;margin:0 auto;padding:.75rem 1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;height:auto;flex-wrap:wrap}.logo{font-size:clamp(1.2rem,4vw,1.8rem);font-weight:700;background:linear-gradient(135deg,var(--primary) 0%,var(--secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.5px;white-space:nowrap}.search-bar{flex:1;min-width:200px;max-width:400px}.search-input{width:100%;padding:.6rem .8rem;border:1px solid var(--gray-200);border-radius:8px;font-size:1rem;transition:all .2s;background:var(--gray-50)}.search-input:focus{outline:none;border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px #6366f11a}.nav{display:none}.header-right{display:flex;gap:.5rem;align-items:center;white-space:nowrap}.menu-toggle{display:none;background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:var(--gray-900);padding:.5rem;transition:color .2s}.menu-toggle:hover{color:var(--primary)}.mobile-menu{display:none;flex-direction:column;gap:.5rem;padding:1rem;border-top:1px solid var(--gray-200);background:#fffffffa}.mobile-menu a{text-decoration:none;color:var(--gray-600);font-weight:500;padding:.75rem 1rem;border-radius:6px;transition:all .2s}.mobile-menu a:hover{background:var(--gray-100);color:var(--primary)}.hero{max-width:1400px;margin:0 auto;padding:clamp(2rem,8vw,4rem) 1rem;text-align:center;color:#fff}.hero h1{font-size:clamp(1.5rem,5vw,3.5rem);font-weight:700;margin-bottom:.75rem;line-height:1.2}.hero p{font-size:clamp(.95rem,2.5vw,1.1rem);margin-bottom:1.5rem;opacity:.95;max-width:600px;margin-left:auto;margin-right:auto}.hero-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.features{max-width:1400px;margin:0 auto;padding:clamp(2rem,5vw,3rem) 1rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.feature-card{background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);padding:1.25rem;border-radius:12px;text-align:center;color:#fff;transition:all .3s}.feature-card:hover{background:#ffffff26;transform:translateY(-3px)}.feature-icon{font-size:clamp(2rem,4vw,2.5rem);margin-bottom:.75rem}.feature-card h3{font-size:clamp(.9rem,2vw,1.2rem);margin-bottom:.5rem;font-weight:600}.feature-card p{font-size:clamp(.75rem,1.5vw,.9rem);opacity:.9}.container{max-width:1400px;margin:0 auto;padding:clamp(1.5rem,4vw,3rem) 1rem;flex:1;width:100%}.products-section{background:#fff;border-radius:12px;padding:clamp(1rem,3vw,2rem);box-shadow:0 20px 40px #00000026}.section-header{margin-bottom:1.5rem}.products-section h2{font-size:clamp(1.3rem,4vw,1.8rem);margin-bottom:.5rem;color:var(--gray-900)}.section-subtitle{color:var(--gray-500);font-size:clamp(.85rem,2vw,.95rem)}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;margin-bottom:1.5rem}.product-card{background:#fff;border:1px solid var(--gray-200);border-radius:10px;overflow:hidden;box-shadow:0 4px 12px #00000014;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;display:flex;flex-direction:column}.product-card:hover{transform:translateY(-6px);box-shadow:0 16px 32px #00000026;border-color:var(--primary)}.product-image-wrapper{position:relative;overflow:hidden;width:100%;aspect-ratio:1;background:var(--gray-100)}.product-image{width:100%;height:100%;object-fit:cover;display:block;transition:transform .3s}.product-card:hover .product-image{transform:scale(1.05)}.badge-warning,.badge-danger{position:absolute;top:.75rem;right:.75rem;padding:.4rem .8rem;border-radius:20px;font-size:.7rem;font-weight:600;z-index:10}.badge-warning{background:var(--warning);color:#fff}.badge-danger{background:var(--error);color:#fff}.product-body{padding:.9rem;flex:1;display:flex;flex-direction:column}.product-name{font-size:clamp(.9rem,2vw,1.1rem);font-weight:600;margin-bottom:.4rem;color:var(--gray-900);line-height:1.3}.product-desc{font-size:.8rem;color:var(--gray-500);margin-bottom:.75rem;flex:1;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.product-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--gray-200);gap:.5rem}.product-price{font-size:1rem;font-weight:700;color:var(--primary)}.product-stock{font-size:.75rem;color:var(--gray-500);text-align:right}button,.btn{border:none;border-radius:8px;padding:.65rem 1.2rem;font-size:clamp(.85rem,2vw,.95rem);font-weight:600;cursor:pointer;transition:all .2s;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:inherit}.btn-primary,.btn-primary:visited{background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);color:#fff}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #6366f166}.btn-primary:active:not(:disabled){transform:translateY(0)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:transparent;color:#fff;border:2px solid white}.btn-secondary:hover{background:#fff;color:var(--primary)}.btn-sm{padding:.5rem .9rem;font-size:.8rem}.btn-remove{background:transparent;color:var(--error);border:none;cursor:pointer;font-size:1.2rem;padding:.4rem;transition:transform .2s}.btn-remove:hover{transform:scale(1.2)}.close-btn{background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:var(--gray-600);transition:color .2s;padding:.4rem}.close-btn:hover{color:var(--gray-900)}.loading{display:flex;align-items:center;justify-content:center;padding:2rem 1rem;color:#fff;flex-direction:column;gap:1rem}.spinner{width:40px;height:40px;border:4px solid rgba(255,255,255,.3);border-top:4px solid white;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error-message{background:var(--error);color:#fff;padding:1rem;border-radius:8px;margin-bottom:1rem;font-size:clamp(.85rem,2vw,.95rem)}.empty-state{text-align:center;padding:2rem 1rem;color:var(--gray-500)}.empty-state h3{font-size:clamp(1.2rem,3vw,1.5rem);margin-bottom:.5rem;color:var(--gray-900)}.empty-state p{font-size:clamp(.9rem,2vw,1rem)}.cart-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:998;animation:fadeIn .3s ease-out}.cart-sidebar{position:fixed;right:0;top:0;width:100%;max-width:400px;height:100vh;background:#fff;box-shadow:-4px 0 12px #00000026;display:flex;flex-direction:column;z-index:999;animation:slideIn .3s ease-out;overflow-y:auto;padding-top:3rem}@keyframes slideIn{0%{transform:translate(100%)}to{transform:translate(0)}}.cart-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--gray-200);background:#fff;position:sticky;top:0}.cart-header h3{font-size:clamp(1.1rem,3vw,1.3rem);color:var(--gray-900)}.cart-items{flex:1;overflow-y:auto;padding:1rem}.empty-cart{text-align:center;color:var(--gray-500);padding:2rem 1rem;font-size:1rem}.cart-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;border:1px solid var(--gray-200);border-radius:8px;margin-bottom:.75rem;gap:.75rem}.cart-item-info{flex:1;min-width:0}.cart-item-name{font-weight:600;color:var(--gray-900);margin-bottom:.25rem;font-size:.95rem;word-break:break-word}.cart-item-price{font-size:.85rem;color:var(--primary);font-weight:600}.cart-footer{border-top:1px solid var(--gray-200);padding:1rem;background:var(--gray-50);position:sticky;bottom:0}.cart-total{display:flex;justify-content:space-between;margin-bottom:1rem;font-size:clamp(.95rem,2vw,1.1rem);color:var(--gray-900)}.about-section{max-width:1400px;margin:0 auto;padding:clamp(2rem,6vw,4rem) 1rem;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(255,255,255,.2);color:#fff;width:100%}.about-content{max-width:800px;margin:0 auto;text-align:center}.about-section h2{font-size:clamp(1.5rem,4vw,2rem);margin-bottom:1.5rem}.about-section p{font-size:clamp(.95rem,2.5vw,1rem);line-height:1.8;margin-bottom:1rem;opacity:.95}.footer{background:#00000080;color:#fff;padding:clamp(1.5rem,4vw,3rem) 1rem;border-top:1px solid rgba(255,255,255,.1)}.footer-content{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:clamp(1rem,3vw,2rem);margin-bottom:1.5rem}.footer-section h4{font-size:clamp(.9rem,2vw,1rem);margin-bottom:.75rem;font-weight:600}.footer-section ul{list-style:none}.footer-section a{color:#ffffffb3;text-decoration:none;font-size:clamp(.8rem,1.8vw,.9rem);transition:color .2s;display:block;margin-bottom:.4rem}.footer-section a:hover{color:#fff}.footer-bottom{max-width:1400px;margin:0 auto;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;font-size:clamp(.8rem,1.8vw,.9rem)}.social-links{display:flex;gap:1rem}.social-links a{color:#ffffffb3;text-decoration:none;transition:color .2s;font-size:1rem}.social-links a:hover{color:#fff}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out}.modal{background:#fff;border-radius:12px;max-width:500px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid var(--gray-200);position:sticky;top:0;background:#fff}.modal-header h2{font-size:clamp(1.3rem,3vw,1.8rem);color:var(--gray-900);margin:0}.form{padding:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:600;color:var(--gray-900);margin-bottom:.5rem;font-size:.95rem}.form-group input[type=text],.form-group input[type=email],.form-group input[type=tel],.form-group input[type=password]{width:100%;padding:.75rem;border:1px solid var(--gray-200);border-radius:8px;font-size:1rem;transition:all .2s;font-family:inherit}.form-group input[type=text]:focus,.form-group input[type=email]:focus,.form-group input[type=tel]:focus,.form-group input[type=password]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #6366f11a}.form-group input[type=radio]{margin-right:.5rem;cursor:pointer}.form-group label:has(input[type=radio]){display:flex;align-items:center;margin-bottom:.75rem;font-weight:500}.form-actions{display:flex;gap:1rem;margin-top:1.5rem}.form-actions .btn{flex:1}.form-text{text-align:center;margin-top:1rem;color:var(--gray-600);font-size:.9rem}.form-text a{color:var(--primary);text-decoration:none;font-weight:600}.form-text a:hover{text-decoration:underline}.checkout-summary{background:var(--gray-50);padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid var(--gray-200)}.checkout-summary p{display:flex;justify-content:space-between;margin:.5rem 0;color:var(--gray-900);font-size:.95rem}.checkout-summary p strong{color:var(--gray-700)}.form h3{font-size:1.1rem;color:var(--gray-900);margin-top:1.5rem;margin-bottom:1rem;border-bottom:2px solid var(--primary);padding-bottom:.5rem}.form h3:first-of-type{margin-top:0}@media (max-width: 480px){.modal{max-height:95vh;border-radius:12px 12px 0 0}.modal-overlay{padding:0;align-items:flex-end}.form{padding:1.25rem}.form-group{margin-bottom:1rem}.form-actions{gap:.75rem}.form-actions .btn{padding:.65rem .9rem;font-size:.85rem}}@media (max-width: 768px){body{font-size:14px}.header-content{padding:.6rem .75rem;gap:.75rem}.search-bar{order:3;flex-basis:100%;min-width:auto;max-width:100%}.search-input{padding:.5rem .75rem;font-size:.95rem}.menu-toggle{display:block}.mobile-menu{display:flex}.product-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.75rem}.product-card{border-radius:8px}.product-body{padding:.75rem}.product-name{font-size:.9rem}.product-desc{font-size:.75rem;margin-bottom:.5rem}.product-footer{padding-top:.5rem}.btn{padding:.55rem 1rem}.features{gap:.75rem}.feature-card{padding:1rem}.cart-sidebar{max-width:100vw;padding-top:0}.products-section{padding:1rem;border-radius:8px}.footer-bottom{flex-direction:column;text-align:center}}@media (max-width: 480px){body{font-size:13px}.header-content{padding:.5rem}.logo{font-size:1.2rem}.search-bar{flex-basis:100%}.search-input{font-size:.9rem;padding:.45rem .65rem}.btn-sm{padding:.45rem .75rem;font-size:.75rem}.hero{padding:1.5rem .75rem}.hero h1{font-size:1.4rem;margin-bottom:.5rem}.hero p{font-size:.9rem;margin-bottom:1rem}.hero-actions{gap:.5rem}.product-grid{grid-template-columns:repeat(2,1fr);gap:.6rem}.product-card{border-radius:8px}.product-image-wrapper{aspect-ratio:1}.product-body{padding:.6rem}.product-name{font-size:.8rem}.product-desc{font-size:.7rem;-webkit-line-clamp:1}.product-price{font-size:.9rem}.badge-warning,.badge-danger{font-size:.6rem;padding:.3rem .6rem}.container{padding:1rem .75rem}.features{grid-template-columns:repeat(2,1fr);gap:.5rem;padding:1.5rem .75rem}.feature-icon{font-size:1.8rem;margin-bottom:.5rem}.feature-card h3{font-size:.8rem}.feature-card p{font-size:.7rem}.about-section{padding:1.5rem .75rem}.footer{padding:1.25rem .75rem}.cart-item{padding:.75rem;margin-bottom:.5rem}.cart-item-name{font-size:.85rem}.cart-item-price{font-size:.75rem}.cart-footer{padding:.75rem}.cart-total{font-size:.95rem;margin-bottom:.75rem}}:root{--anim-duration-fast: .15s;--anim-duration-normal: .3s;--anim-duration-slow: .5s;--anim-easing: cubic-bezier(.4, 0, .2, 1);--anim-easing-bounce: cubic-bezier(.68, -.55, .265, 1.55)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.anim-fade-in{animation:fadeIn var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.anim-slide-up{animation:slideUp var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.anim-slide-down{animation:slideDown var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.anim-slide-in-left{animation:slideInLeft var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.anim-slide-in-right{animation:slideInRight var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.anim-scale-in{animation:scaleIn var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes hoverLift{0%{transform:translateY(0)}to{transform:translateY(-4px)}}.anim-hover-lift{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-hover-lift:hover{animation:hoverLift var(--anim-duration-fast) var(--anim-easing) forwards}.anim-hover-scale{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-hover-scale:hover{transform:scale(1.05)}.anim-hover-glow{transition:box-shadow var(--anim-duration-fast) var(--anim-easing)}.anim-hover-glow:hover{box-shadow:0 0 20px #e945604d}@keyframes productCardIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.anim-product-card{animation:productCardIn var(--anim-duration-slow) var(--anim-easing) forwards}@keyframes buttonPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.anim-button-pulse{animation:buttonPulse 2s var(--anim-easing) infinite}@keyframes buttonBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.anim-button-bounce{animation:buttonBounce .5s var(--anim-easing-bounce)}@keyframes modalOverlayIn{0%{opacity:0}to{opacity:1}}.anim-modal-overlay{animation:modalOverlayIn var(--anim-duration-fast) var(--anim-easing) forwards}@keyframes modalContentIn{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.anim-modal-content{animation:modalContentIn var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes cartSidebarIn{0%{transform:translate(100%)}to{transform:translate(0)}}.anim-cart-sidebar{animation:cartSidebarIn var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.anim-spin{animation:spin 1s linear infinite}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.anim-shake{animation:shake .3s var(--anim-easing)}.anim-fade-transition{transition:opacity var(--anim-duration-normal) var(--anim-easing)}.anim-scale-transition,.anim-slide-transition{transition:transform var(--anim-duration-normal) var(--anim-easing)}@keyframes skeleton{0%{background-position:-200% 0}to{background-position:200% 0}}.anim-skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:200% 100%;animation:skeleton 1.5s infinite}@keyframes toastIn{0%{opacity:0;transform:translateY(-20px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.anim-toast-in{animation:toastIn var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes toastOut{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-20px) scale(.9)}}.anim-toast-out{animation:toastOut var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes scrollFadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.anim-scroll-fade-in{animation:scrollFadeIn var(--anim-duration-slow) var(--anim-easing) forwards}@keyframes ripple{to{transform:scale(4);opacity:0}}.anim-button-ripple{position:relative;overflow:hidden}.anim-button-ripple:after{content:"";position:absolute;top:50%;left:50%;width:5px;height:5px;background:#ffffff80;border-radius:50%;transform:scale(0);opacity:0}.anim-button-ripple:active:after{animation:ripple .6s var(--anim-easing)}@keyframes textFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.anim-text-fade-in{animation:textFadeIn var(--anim-duration-normal) var(--anim-easing) forwards}.anim-img-zoom{overflow:hidden}.anim-img-zoom img{transition:transform var(--anim-duration-slow) var(--anim-easing)}.anim-img-zoom:hover img{transform:scale(1.1)}@keyframes imgFadeIn{0%{opacity:0}to{opacity:1}}.anim-img-fade-in{animation:imgFadeIn var(--anim-duration-slow) var(--anim-easing) forwards}@keyframes badgePop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.anim-badge-pop{animation:badgePop var(--anim-duration-normal) var(--anim-easing-bounce) forwards}.anim-nav-link{position:relative}.anim-nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--accent);transition:width var(--anim-duration-normal) var(--anim-easing)}.anim-nav-link:hover:after{width:100%}@keyframes dropdownIn{0%{opacity:0;transform:translateY(-10px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.anim-dropdown-in{animation:dropdownIn var(--anim-duration-fast) var(--anim-easing) forwards}@keyframes progress{0%{width:0}to{width:100%}}.anim-progress{animation:progress var(--anim-duration-slow) var(--anim-easing) forwards}@keyframes borderDraw{0%{stroke-dashoffset:1000}to{stroke-dashoffset:0}}.anim-border-draw{stroke-dasharray:1000;animation:borderDraw var(--anim-duration-slow) var(--anim-easing) forwards}@keyframes shadowPulse{0%,to{box-shadow:0 0 #e9456066}50%{box-shadow:0 0 0 10px #e9456000}}.anim-shadow-pulse{animation:shadowPulse 2s var(--anim-easing) infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.anim-gradient-shift{background-size:200% 200%;animation:gradientShift 3s var(--anim-easing) infinite}@keyframes pageLoad{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.anim-page-load{animation:pageLoad var(--anim-duration-slow) var(--anim-easing) forwards}@keyframes modalBackdrop{0%{-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}}.anim-modal-backdrop{animation:modalBackdrop var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes cardFlip{0%{transform:rotateY(0)}to{transform:rotateY(180deg)}}.anim-card-flip{animation:cardFlip var(--anim-duration-slow) var(--anim-easing) forwards}@keyframes cardShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.anim-card-shake{animation:cardShake .3s var(--anim-easing)}@keyframes iconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.anim-icon-bounce{animation:iconBounce .5s var(--anim-easing-bounce)}@keyframes iconSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.anim-icon-spin{animation:iconSpin var(--anim-duration-slow) linear infinite}.anim-action-btn{position:relative;overflow:hidden;transition:all var(--anim-duration-fast) var(--anim-easing)}.anim-action-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.anim-action-btn:active{transform:translateY(0)}.anim-stagger-children>*{animation:slideUp var(--anim-duration-normal) var(--anim-easing) forwards;opacity:0}.anim-stagger-children>*:nth-child(1){animation-delay:0ms}.anim-stagger-children>*:nth-child(2){animation-delay:50ms}.anim-stagger-children>*:nth-child(3){animation-delay:.1s}.anim-stagger-children>*:nth-child(4){animation-delay:.15s}.anim-stagger-children>*:nth-child(5){animation-delay:.2s}.anim-stagger-children>*:nth-child(6){animation-delay:.25s}.anim-stagger-children>*:nth-child(7){animation-delay:.3s}.anim-stagger-children>*:nth-child(8){animation-delay:.35s}.anim-stagger-children>*:nth-child(9){animation-delay:.4s}.anim-stagger-children>*:nth-child(10){animation-delay:.45s}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.anim-fade-out{animation:fadeOut var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes slideOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(30px)}}.anim-slide-out{animation:slideOut var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.anim-rotate{animation:rotate var(--anim-duration-slow) linear infinite}@keyframes scaleUp{0%{transform:scale(.8)}to{transform:scale(1)}}.anim-scale-up{animation:scaleUp var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes scaleDown{0%{transform:scale(1)}to{transform:scale(.8)}}.anim-scale-down{animation:scaleDown var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes opacityPulse{0%,to{opacity:1}50%{opacity:.5}}.anim-opacity-pulse{animation:opacityPulse 2s var(--anim-easing) infinite}@keyframes colorShift{0%{color:var(--accent)}50%{color:var(--primary)}to{color:var(--accent)}}.anim-color-shift{animation:colorShift 3s var(--anim-easing) infinite}@keyframes backgroundFade{0%{background-color:transparent}to{background-color:#00000080}}.anim-background-fade{animation:backgroundFade var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes borderPulse{0%,to{border-color:var(--accent)}50%{border-color:transparent}}.anim-border-pulse{animation:borderPulse 2s var(--anim-easing) infinite}@keyframes textGlow{0%,to{text-shadow:0 0 0 transparent}50%{text-shadow:0 0 10px var(--accent)}}.anim-text-glow{animation:textGlow 2s var(--anim-easing) infinite}.anim-img-grayscale{filter:grayscale(100%);transition:filter var(--anim-duration-slow) var(--anim-easing)}.anim-img-grayscale:hover{filter:grayscale(0%)}@keyframes buttonGradient{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.anim-button-gradient{background-size:200% 200%;animation:buttonGradient 3s var(--anim-easing) infinite}.anim-card-hover{transition:transform var(--anim-duration-fast) var(--anim-easing),box-shadow var(--anim-duration-fast) var(--anim-easing)}.anim-card-hover:hover{transform:translateY(-5px);box-shadow:0 10px 30px #0000001a}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.anim-modal-slide-up{animation:modalSlideUp var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes notificationSlideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.anim-notification-slide-in{animation:notificationSlideIn var(--anim-duration-normal) var(--anim-easing) forwards}@keyframes progressFill{0%{width:0}to{width:100%}}.anim-progress-fill{animation:progressFill var(--anim-duration-slow) var(--anim-easing) forwards}@keyframes loadingDots{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.anim-loading-dots{display:inline-flex;gap:4px}.anim-loading-dots span{width:8px;height:8px;background:var(--accent);border-radius:50%;animation:loadingDots 1.4s ease-in-out infinite}.anim-loading-dots span:nth-child(2){animation-delay:.2s}.anim-loading-dots span:nth-child(3){animation-delay:.4s}.anim-input-focus{transition:border-color var(--anim-duration-fast) var(--anim-easing),box-shadow var(--anim-duration-fast) var(--anim-easing)}.anim-input-focus:focus{border-color:var(--accent);box-shadow:0 0 0 3px #e945601a}.anim-submit-btn{position:relative;overflow:hidden}.anim-submit-btn:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;background:#fff3;border-radius:50%;transform:translate(-50%,-50%);transition:width .6s,height .6s}.anim-submit-btn:active:before{width:300px;height:300px}.anim-cancel-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-cancel-btn:hover{background-color:#f5f5f5}.anim-close-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-close-btn:hover{transform:rotate(90deg)}.anim-menu-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-menu-btn:hover{transform:scale(1.1)}.anim-search-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-search-btn:hover{transform:scale(1.05)}.anim-cart-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-cart-btn:hover{transform:scale(1.1)}.anim-favorite-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-favorite-btn:hover{transform:scale(1.2)}.anim-share-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-share-btn:hover{transform:scale(1.1)}.anim-download-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-download-btn:hover{transform:scale(1.1)}.anim-print-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-print-btn:hover{transform:scale(1.1)}.anim-help-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-help-btn:hover{transform:scale(1.1)}.anim-settings-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-settings-btn:hover{transform:rotate(90deg)}.anim-notification-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-notification-btn:hover{transform:scale(1.1)}.anim-profile-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-profile-btn:hover{transform:scale(1.1)}.anim-logout-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-logout-btn:hover{background-color:#ffebee}.anim-register-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-register-btn:hover{background-color:#e8f5e9}.anim-login-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-login-btn:hover{background-color:#e3f2fd}.anim-advanced-search-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-advanced-search-btn:hover{transform:scale(1.05)}.anim-filter-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-filter-btn:hover{transform:scale(1.05)}.anim-sort-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-sort-btn:hover{transform:scale(1.05)}.anim-pagination-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-pagination-btn:hover{background-color:#f5f5f5}.anim-nav-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-nav-btn:hover{transform:scale(1.1)}.anim-back-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-back-btn:hover{transform:translate(-3px)}.anim-next-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-next-btn:hover{transform:translate(3px)}.anim-save-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-save-btn:hover{background-color:#e8f5e9}.anim-delete-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-delete-btn:hover{background-color:#ffebee}.anim-edit-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-edit-btn:hover{background-color:#fff3e0}.anim-view-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-view-btn:hover{background-color:#e3f2fd}.anim-add-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-add-btn:hover{background-color:#e8f5e9}.anim-remove-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-remove-btn:hover{background-color:#ffebee}.anim-upload-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-upload-btn:hover{background-color:#e3f2fd}.anim-download-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-download-btn:hover{background-color:#fff3e0}.anim-share-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-share-btn:hover{background-color:#f3e5f5}.anim-like-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-like-btn:hover{transform:scale(1.2)}.anim-dislike-btn{transition:transform var(--anim-duration-fast) var(--anim-easing)}.anim-dislike-btn:hover{transform:scale(1.2)}.anim-comment-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-comment-btn:hover{background-color:#e3f2fd}.anim-bookmark-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-bookmark-btn:hover{background-color:#fff3e0}.anim-follow-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-follow-btn:hover{background-color:#e8f5e9}.anim-unfollow-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-unfollow-btn:hover{background-color:#ffebee}.anim-block-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-block-btn:hover{background-color:#ffebee}.anim-unblock-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-unblock-btn:hover{background-color:#e8f5e9}.anim-report-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-report-btn:hover{background-color:#ffebee}.anim-mute-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-mute-btn:hover{background-color:#f5f5f5}.anim-unmute-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-unmute-btn:hover{background-color:#e8f5e9}.anim-verify-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-verify-btn:hover{background-color:#e8f5e9}.anim-reject-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-reject-btn:hover{background-color:#ffebee}.anim-accept-btn{transition:background-color var(--anim-duration-fast) var(--anim-easing)}.anim-accept-btn:hover{background-color:#e8f5e9}.anim-custom{animation-duration:var(--anim-duration-normal);animation-timing-function:var(--anim-easing)}.anim-fast{animation-duration:var(--anim-duration-fast)}.anim-slow{animation-duration:var(--anim-duration-slow)}.anim-bounce{animation-timing-function:var(--anim-easing-bounce)}.anim-reverse{animation-direction:reverse}.anim-alternate{animation-direction:alternate}.anim-infinite{animation-iteration-count:infinite}.anim-delay-100{animation-delay:.1s}.anim-delay-200{animation-delay:.2s}.anim-delay-300{animation-delay:.3s}.anim-delay-400{animation-delay:.4s}.anim-delay-500{animation-delay:.5s}.anim-fill-forwards{animation-fill-mode:forwards}.anim-fill-backwards{animation-fill-mode:backwards}.anim-fill-both{animation-fill-mode:both}.anim-paused{animation-play-state:paused}.anim-running{animation-play-state:running}.category-nav{position:relative;display:inline-block}.category-nav-toggle{background:transparent;border:none;color:inherit;font-size:1rem;cursor:pointer;padding:.5rem 1rem;border-radius:4px;transition:background-color .2s ease}.category-nav-toggle:hover{background-color:#ffffff1a}.category-nav-dropdown{position:absolute;top:100%;left:0;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;min-width:250px;max-height:400px;overflow-y:auto;z-index:1000;padding:.5rem 0}.category-nav-item{display:flex;align-items:center;gap:.75rem;width:100%;padding:.75rem 1rem;background:transparent;border:none;cursor:pointer;text-align:left;transition:background-color .2s ease}.category-nav-item:hover{background-color:#f5f5f5}.category-nav-icon{font-size:1.25rem}.category-nav-name{font-weight:500;color:#1a1a2e;flex:1}.category-nav-dept{font-size:.75rem;color:#68736b;background:#f0f0f0;padding:.25rem .5rem;border-radius:4px}@media (max-width: 768px){.category-nav-dropdown{position:fixed;top:auto;left:0;right:0;bottom:0;border-radius:16px 16px 0 0;max-height:60vh}}.admin-panel{max-width:900px;width:90vw;max-height:80vh;display:flex;flex-direction:column}.admin-tabs{display:flex;gap:.5rem;padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb;overflow-x:auto}.admin-tab{padding:.5rem 1rem;border:none;background:transparent;cursor:pointer;border-radius:6px;font-size:.9rem;white-space:nowrap;transition:all .2s ease}.admin-tab:hover{background-color:#f5f5f5}.admin-tab.active{background-color:var(--accent);color:#fff}.admin-content{padding:1.5rem;overflow-y:auto;flex:1}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem}.stat-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:1.5rem;border-radius:12px;text-align:center}.stat-value{font-size:2rem;font-weight:700;margin-bottom:.5rem}.stat-label{font-size:.9rem;opacity:.9}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:.75rem;text-align:left;border-bottom:1px solid #e5e7eb}.admin-table th{background-color:#f9fafb;font-weight:600;font-size:.85rem;color:#6b7280}.admin-table tr:hover{background-color:#f9fafb}.role-select{padding:.25rem .5rem;border:1px solid #d1d5db;border-radius:4px;font-size:.85rem}.admin-btn{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;cursor:pointer;font-size:.85rem;transition:transform .2s ease}.admin-btn:hover{transform:scale(1.05)}
