@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--primary:#6c5ce7;--primary-dark:#5a4bcc;--primary-light:#a29bfe;--secondary:#00b894;--accent:#fd79a8;--dark:#2d3436;--darker:#1e272e;--light-bg:#f8f9fa;--white:#fff;--gray-100:#f1f2f6;--gray-200:#dfe4ea;--gray-300:#ced6e0;--gray-400:#a4b0be;--gray-500:#747d8c;--success:#00b894;--warning:#fdcb6e;--error:#e17055;--border-radius-sm:8px;--border-radius-md:12px;--border-radius-lg:20px;--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 10px 25px #0000001a;--transition:all .3s cubic-bezier(.25, .8, .25, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--light-bg);color:var(--dark);font-family:Inter,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:Inter,sans-serif}ul{list-style:none}.app-container{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1}.text-primary{color:var(--primary)}.text-secondary{color:var(--secondary)}.text-dark{color:var(--dark)}.text-error{color:var(--error)}.text-gray{color:var(--gray-500)}.bg-primary{background-color:var(--primary);color:#fff}.bg-white{background-color:var(--white)}.btn{border-radius:var(--border-radius-sm);transition:var(--transition);justify-content:center;align-items:center;gap:8px;padding:10px 24px;font-size:15px;font-weight:600;display:inline-flex}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-dark);box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-outline{border:2px solid var(--primary);color:var(--primary);background:0 0}.btn-outline:hover{background-color:var(--primary);color:#fff}.btn-danger{background-color:var(--error);color:#fff}.btn-danger:hover{opacity:.9;transform:translateY(-2px)}.card{background:var(--white);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);transition:var(--transition);border:1px solid var(--gray-200);padding:24px}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.form-group{margin-bottom:20px}.form-label{color:var(--dark);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-input{border:1px solid var(--gray-300);border-radius:var(--border-radius-sm);width:100%;transition:var(--transition);background-color:var(--white);padding:12px 16px;font-family:Inter,sans-serif;font-size:15px}.form-input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 4px #6c5ce71a}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 20px}.flex{display:flex}.flex-col{flex-direction:column}.gap-1{gap:4px}.gap-3{gap:12px}.gap-5{gap:20px}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:8px}.gap-4{gap:16px}.gap-6{gap:24px}.grid{gap:24px;display:grid}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (width<=1024px){.grid-cols-4{grid-template-columns:repeat(3,1fr)}}@media (width<=768px){.grid{gap:16px}.grid-cols-2{grid-template-columns:repeat(1,1fr)}.grid-cols-3,.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media (width<=480px){.grid{gap:10px}.grid-cols-4{grid-template-columns:repeat(2,1fr)!important}}.product-grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}@media (width>=768px){.product-grid{grid-template-columns:repeat(4,1fr);gap:20px}}@media (width>=1200px){.product-grid{grid-template-columns:repeat(5,1fr)}}.profile-dropdown{cursor:pointer;padding:4px;position:relative}.dropdown-menu{z-index:1000;border:1px solid var(--gray-100);background:#fff;border-radius:12px;width:220px;margin-top:12px;padding:8px;animation:.2s ease-out fadeIn;display:none;position:absolute;top:100%;right:0;box-shadow:0 10px 30px #00000026}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.profile-dropdown:hover .dropdown-menu{display:block}.dropdown-menu:before{content:"";background:0 0;width:100%;height:25px;position:absolute;top:-20px;left:0}.dropdown-item{color:var(--dark);border-radius:8px;align-items:center;gap:10px;padding:12px 16px;font-weight:500;transition:all .2s;display:flex}.dropdown-item:hover{background:var(--gray-100);color:var(--primary)}.avatar-circle{background:var(--primary);color:#fff;width:42px;height:42px;box-shadow:0 0 0 1px var(--gray-200);border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;font-size:16px;font-weight:700;display:flex}.avatar-circle:hover{box-shadow:0 0 0 2px var(--primary-light);transform:scale(1.05)}.search-layout{grid-template-columns:280px 1fr;align-items:start;gap:30px;display:grid}.category-filter-list{flex-direction:column;gap:8px;display:flex}.filter-btn{text-align:left;color:var(--dark);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:10px 14px;font-size:14px;transition:all .2s}.filter-btn:hover{background:var(--gray-100)}.filter-btn.active{background:var(--primary);color:#fff;font-weight:600}@media (width<=992px){.search-layout{grid-template-columns:1fr}.search-sidebar{margin-bottom:20px}.category-filter-list{-ms-overflow-style:none;scrollbar-width:none;flex-direction:row;padding-bottom:10px;overflow-x:auto}.category-filter-list::-webkit-scrollbar{display:none}.filter-btn{white-space:nowrap;border:1px solid var(--gray-200)}}.category-slider{-ms-overflow-style:none;scrollbar-width:none;gap:16px;margin:0 -5px;padding:15px 5px 25px;display:flex;overflow-x:auto}.category-slider::-webkit-scrollbar{display:none}.category-item{border:1px solid var(--gray-100);cursor:pointer;background:#fff;border-radius:20px;flex-direction:column;flex:0 0 110px;justify-content:center;align-items:center;width:110px;height:110px;padding:12px;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;box-shadow:0 2px 8px #0000000a}.category-item:hover{border-color:var(--primary-light);transform:translateY(-6px);box-shadow:0 12px 20px #6c5ce71f}.category-icon{color:var(--primary);justify-content:center;align-items:center;margin-bottom:8px;font-size:26px;display:flex}.category-text{color:var(--darker);text-align:center;word-break:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11px;font-weight:600;line-height:1.2;display:-webkit-box;overflow:hidden}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton-pulse{background:linear-gradient(90deg, var(--gray-200) 25%, var(--gray-100) 50%, var(--gray-200) 75%);background-size:800px 100%;border-radius:6px;animation:1.4s linear infinite shimmer}.product-card{border:1px solid var(--gray-200);background:#fff;border-radius:16px;flex-direction:column;transition:box-shadow .25s,transform .25s;display:flex;overflow:hidden}.product-card:hover{transform:translateY(-4px);box-shadow:0 8px 28px #0000001a}.product-card__image-wrap{aspect-ratio:1;background:var(--gray-100);cursor:pointer;display:block;position:relative;overflow:hidden}.product-card__img{object-fit:cover;width:100%;height:100%;transition:transform .45s cubic-bezier(.25,.8,.25,1),opacity .3s}.product-card__img--hover{opacity:0;position:absolute;inset:0}.product-card__image-wrap:hover .product-card__img--primary{transform:scale(1.06)}.product-card__image-wrap:hover .product-card__img--hover{opacity:1}.product-card__no-img{width:100%;height:100%;color:var(--gray-300);justify-content:center;align-items:center;display:flex}.product-card__badges{z-index:2;flex-direction:column;gap:4px;display:flex;position:absolute;top:10px;left:10px}.badge{border-radius:6px;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.4;display:inline-block}.badge--discount{color:#fff;background:#e74c3c}.badge--hot{color:#fff;background:#f39c12}.badge--new{background:var(--primary);color:#fff}.product-card__wishlist{z-index:2;width:32px;height:32px;color:var(--gray-400);cursor:pointer;background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:14px;transition:transform .2s,box-shadow .2s;display:flex;position:absolute;top:10px;right:10px;box-shadow:0 2px 8px #0000001f}.product-card__wishlist:hover{transform:scale(1.15);box-shadow:0 4px 12px #0000002e}.product-card__overlay{z-index:3;background:linear-gradient(#0000 0%,#0000008c 100%);padding:12px;transition:transform .3s cubic-bezier(.25,.8,.25,1);position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.product-card__image-wrap:hover .product-card__overlay{transform:translateY(0)}.product-card__add-btn{width:100%;color:var(--darker);cursor:pointer;background:#fff;border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:13px;font-weight:700;transition:background .2s,color .2s;display:flex}.product-card__add-btn:hover{background:var(--primary);color:#fff}.product-card__info{flex-direction:column;flex:1;gap:4px;padding:12px 14px 14px;display:flex}.product-card__brand{color:var(--primary);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.product-card__name{color:var(--darker);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:500;line-height:1.4;transition:color .2s;display:-webkit-box;overflow:hidden}.product-card__name:hover{color:var(--primary)}.product-card__rating{align-items:center;gap:2px;margin:2px 0;display:flex}.product-card__review-count{color:var(--gray-400);margin-left:2px;font-size:11px}.product-card__price-row{flex-wrap:wrap;align-items:baseline;gap:8px;margin-top:auto;padding-top:6px;display:flex}.product-card__price{color:var(--darker);font-size:16px;font-weight:800}.product-card__currency{font-size:12px;font-weight:600}.product-card__compare-price{color:var(--gray-400);font-size:12px;text-decoration:line-through}.product-card__stock-warn{color:var(--error);font-size:11px;font-weight:600}.pdp-grid{grid-template-columns:1fr 1fr;align-items:start;gap:40px;display:grid}@media (width<=900px){.pdp-grid{grid-template-columns:1fr;gap:24px}}.pdp-gallery{gap:12px;display:flex}.pdp-thumbs{flex-direction:column;flex-shrink:0;gap:8px;display:flex}.pdp-thumb{border:2px solid var(--gray-200);cursor:pointer;background:#fff;border-radius:10px;flex-shrink:0;width:68px;height:68px;padding:0;transition:border-color .2s;overflow:hidden}.pdp-thumb img{object-fit:cover;width:100%;height:100%}.pdp-thumb--active{border-color:var(--primary)}.pdp-thumb:hover{border-color:var(--primary-light)}.pdp-main-img{aspect-ratio:1;border:1px solid var(--gray-200);cursor:zoom-in;background:#fff;border-radius:16px;flex:1;position:relative;overflow:hidden}.pdp-main-img img{object-fit:contain;-webkit-user-select:none;user-select:none;width:100%;height:100%;transition:opacity .2s;display:block}.pdp-img-hidden{opacity:0}.pdp-main-img--zoom{cursor:crosshair;background-repeat:no-repeat}.pdp-no-img{width:100%;height:100%;color:var(--gray-300);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.pdp-arrow{z-index:4;cursor:pointer;width:36px;height:36px;color:var(--dark);background:#fff;border:none;border-radius:50%;justify-content:center;align-items:center;font-size:13px;transition:background .2s,transform .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 2px 10px #00000026}.pdp-arrow:hover{background:var(--primary);color:#fff}.pdp-arrow--left{left:10px}.pdp-arrow--right{right:10px}.pdp-dots{z-index:4;justify-content:center;gap:6px;display:flex;position:absolute;bottom:12px;left:0;right:0}.pdp-dot{background:var(--gray-300);cursor:pointer;border:none;border-radius:50%;width:8px;height:8px;padding:0;transition:background .2s,transform .2s}.pdp-dot--active{background:var(--primary);transform:scale(1.3)}.pdp-info{flex-direction:column;gap:0;display:flex}.pdp-brand-link{color:var(--primary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;margin-bottom:10px;font-size:12px;font-weight:700;transition:opacity .2s;display:inline-flex}.pdp-brand-link:hover{opacity:.75}.pdp-title{color:var(--darker);margin-bottom:14px;font-size:clamp(20px,3vw,28px);font-weight:800;line-height:1.25}.pdp-breadcrumb-title{white-space:nowrap;text-overflow:ellipsis;vertical-align:bottom;max-width:260px;display:inline-block;overflow:hidden}.pdp-price-box{background:var(--gray-100);border-radius:14px;margin-bottom:20px;padding:18px 20px}.pdp-price{color:var(--darker);font-size:28px;font-weight:900}.pdp-compare-price{color:var(--gray-400);font-size:16px;text-decoration:line-through}.pdp-discount-label{color:#e74c3c;background:#fdecea;border-radius:20px;padding:3px 10px;font-size:13px;font-weight:700}.pdp-desc{border:1px solid var(--gray-200);background:#fff;border-radius:12px;margin-bottom:18px;padding:16px 18px}.pdp-meta{flex-direction:column;gap:8px;margin-bottom:24px;display:flex}.pdp-meta-row{gap:8px;font-size:13px;display:flex}.pdp-meta-label{color:var(--gray-400);min-width:80px}.pdp-meta-value{color:var(--darker);font-weight:500}.pdp-meta-link{color:var(--primary);font-weight:600}.pdp-meta-link:hover{text-decoration:underline}.pdp-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:24px;display:flex}.pdp-qty{border:1.5px solid var(--gray-300);background:#fff;border-radius:12px;flex-shrink:0;align-items:center;display:flex;overflow:hidden}.pdp-qty-btn{width:42px;height:48px;color:var(--dark);cursor:pointer;background:0 0;border:none;font-size:20px;font-weight:600;transition:background .2s}.pdp-qty-btn:hover{background:var(--gray-100)}.pdp-qty-val{text-align:center;min-width:40px;font-size:16px;font-weight:700}.pdp-cart-btn{border-radius:12px;flex:1;gap:10px;min-width:180px;padding:14px 20px;font-size:15px}.pdp-cart-btn:disabled{background:var(--gray-300);color:var(--gray-500);cursor:not-allowed;box-shadow:none;transform:none}.pdp-wish-btn{border:1.5px solid var(--gray-300);width:48px;height:48px;color:var(--gray-400);cursor:pointer;background:#fff;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;transition:all .2s;display:flex}.pdp-wish-btn:hover{color:#e74c3c;border-color:#e74c3c}.pdp-wish-btn--active{color:#e74c3c;background:#fdecea;border-color:#e74c3c}.pdp-guarantees{flex-wrap:wrap;gap:8px;display:flex}.pdp-guarantee-item{color:var(--gray-500);background:var(--gray-100);border-radius:8px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;font-weight:500;display:flex}.pdp-spinner{border:4px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;width:44px;height:44px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}
