@layer theme,base;@layer components{@keyframes store-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton-box,.skeleton-line{background:linear-gradient(90deg, var(--border-subtle) 25%, var(--surface-secondary) 50%, var(--border-subtle) 75%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.8s ease-in-out infinite store-shimmer}.skeleton-line{height:.875rem}.skeleton-box{aspect-ratio:1}.store-header{margin-bottom:2rem}.store-title{color:var(--text-primary);letter-spacing:-.02em;font-size:2rem;font-weight:800;line-height:1.1}.store-subtitle{color:var(--text-muted);margin-top:.375rem;font-size:1rem}.store-empty{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;padding:5rem 2rem;display:flex}.store-empty-icon{color:var(--text-muted);opacity:.3}.store-empty-title{color:var(--text-primary);font-size:1.25rem;font-weight:600}.store-empty-text{color:var(--text-muted);max-width:28rem;font-size:.9375rem}.store-grid{grid-template-columns:repeat(1,1fr);gap:1.25rem;display:grid}@media (min-width:480px){.store-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.store-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1280px){.store-grid{grid-template-columns:repeat(4,1fr);gap:1.5rem}}.store-grid[data-classic]{grid-template-columns:repeat(1,1fr)}@media (min-width:480px){.store-grid[data-classic]{grid-template-columns:repeat(2,1fr)}}@media (min-width:768px){.store-grid[data-classic]{grid-template-columns:repeat(3,1fr)}}.product-card{border-radius:var(--radius-xl);background-color:var(--store-card-bg,var(--surface-secondary));border:1px solid var(--store-card-border,var(--border-subtle));color:inherit;flex-direction:column;text-decoration:none;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;overflow:hidden}.product-card:hover{border-color:var(--store-card-hover,var(--border-primary));box-shadow:var(--shadow-lg);transform:translateY(-2px)}.product-card-image{aspect-ratio:4/5;background-color:var(--surface-primary);position:relative;overflow:hidden}.product-card-image img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.product-card:hover .product-card-image img{transform:scale(1.06)}.product-card-image-placeholder{width:100%;height:100%;color:var(--text-muted);opacity:.4;justify-content:center;align-items:center;display:flex}.product-card-badges{pointer-events:none;justify-content:space-between;display:flex;position:absolute;top:.625rem;left:.625rem;right:.625rem}.product-card-body{flex-direction:column;flex:1;gap:.25rem;padding:.875rem 1rem 1.125rem;display:flex}.product-card-name{color:var(--text-primary);font-size:.9375rem;font-weight:600;line-height:1.3}.product-card-desc{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.8125rem;line-height:1.45;display:-webkit-box;overflow:hidden}.product-card-footer{align-items:baseline;gap:.5rem;margin-top:auto;padding-top:.5rem;display:flex}.product-card-price{color:var(--text-primary);font-size:1.0625rem;font-weight:700}.product-card-compare-price{color:var(--text-muted);font-size:.8125rem;font-weight:400;text-decoration:line-through}.product-card-badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:.25rem;padding:.1875rem .5rem;font-size:.6875rem;font-weight:700;line-height:1;display:inline-flex}.product-card-badge-sale{background-color:var(--store-sale-bg,var(--color-danger-600));color:#fff}.product-card-badge-digital{background-color:var(--store-digital-badge-bg,var(--color-accent-600));color:#fff}.store-toolbar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:2rem;display:flex}.store-search{flex:1;min-width:200px;max-width:360px;position:relative}.store-search-icon{width:1rem;height:1rem;color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.store-search input{border-radius:var(--radius-lg);border:1px solid var(--border-primary);background-color:var(--surface-secondary);width:100%;height:2.5rem;color:var(--text-primary);outline:none;padding:0 .75rem 0 2.375rem;font-size:.875rem;transition:border-color .15s,box-shadow .15s}.store-search input::placeholder{color:var(--text-muted)}.store-search input:focus{border-color:var(--color-brand-400);box-shadow:var(--store-focus-ring,0 0 0 3px oklch(.7 .15 var(--brand-hue) / .12))}.store-sort{border-radius:var(--radius-lg);border:1px solid var(--border-primary);background-color:var(--surface-secondary);height:2.5rem;color:var(--text-secondary);cursor:pointer;outline:none;padding:0 2rem 0 .75rem;font-size:.875rem;transition:border-color .15s}.store-sort:focus{border-color:var(--color-brand-400)}.store-loading-dot{background-color:var(--store-cta-color,var(--color-brand-500));border-radius:9999px;width:.5rem;height:.5rem;animation:1s ease-in-out infinite alternate store-shimmer}.store-breadcrumb{color:var(--text-muted);align-items:center;gap:.5rem;margin-bottom:1.5rem;font-size:.8125rem;display:flex}.store-breadcrumb a{color:var(--text-muted);text-decoration:none;transition:color .15s}.store-breadcrumb a:hover{color:var(--text-primary)}.store-breadcrumb span:last-child{color:var(--text-secondary);font-weight:500}.quantity-control{border-radius:var(--radius-lg);border:1.5px solid var(--border-primary);align-items:center;display:flex;overflow:hidden}.quantity-control button{background:var(--surface-secondary);width:2.75rem;height:2.75rem;color:var(--text-secondary);cursor:pointer;border:none;justify-content:center;align-items:center;font-size:1.125rem;font-weight:500;transition:background-color .15s,color .15s;display:flex}.quantity-control button:hover:not(:disabled){background-color:var(--surface-hover);color:var(--text-primary)}.quantity-control button:disabled{opacity:.4;cursor:not-allowed}.quantity-control span{width:3rem;height:2.75rem;color:var(--text-primary);border-inline:1.5px solid var(--border-primary);background:var(--surface-primary);justify-content:center;align-items:center;font-size:.9375rem;font-weight:600;display:flex}.quantity-control-sm{transform-origin:0}.quantity-control-sm button{width:2.25rem;height:2.25rem;font-size:.875rem}.quantity-control-sm span{width:2.5rem;height:2.25rem;font-size:.8125rem}.store-hero{border-radius:var(--radius-xl);background-color:var(--surface-secondary);border:1px solid var(--border-subtle);color:inherit;grid-template-columns:1fr;gap:0;margin-bottom:2.5rem;text-decoration:none;transition:border-color .2s,box-shadow .2s;display:grid;overflow:hidden}.store-hero:hover{border-color:var(--border-primary);box-shadow:var(--shadow-lg)}@media (min-width:768px){.store-hero{grid-template-columns:1fr 1fr}}.store-hero-image{aspect-ratio:4/3;background-color:var(--surface-primary);overflow:hidden}@media (min-width:768px){.store-hero-image{aspect-ratio:1}}.store-hero-image img{object-fit:cover;width:100%;height:100%;transition:transform .4s}.store-hero:hover .store-hero-image img{transform:scale(1.04)}.store-hero-content{flex-direction:column;justify-content:center;align-items:flex-start;gap:.75rem;padding:2rem;display:flex}@media (min-width:768px){.store-hero-content{padding:2.5rem 3rem}}.store-hero-title{color:var(--text-primary);letter-spacing:-.02em;font-size:1.5rem;font-weight:800;line-height:1.15}@media (min-width:768px){.store-hero-title{font-size:2rem}}.store-hero-desc{color:var(--text-secondary);font-size:.9375rem;line-height:1.6}.store-hero-price{align-items:baseline;gap:.625rem;display:flex}.store-hero-price-current{color:var(--text-primary);font-size:1.5rem;font-weight:700}.store-hero-price-compare{color:var(--text-muted);font-size:1rem;text-decoration:line-through}.store-hero-cta{color:var(--store-cta-color,var(--color-brand-500));align-items:center;gap:.375rem;margin-top:.25rem;font-size:.9375rem;font-weight:600;transition:gap .2s;display:inline-flex}.store-hero:hover .store-hero-cta{gap:.625rem}.store-category-tabs{flex-wrap:wrap;gap:.375rem;margin-bottom:1rem;display:flex}.store-category-tab{border-radius:var(--radius-full);border:1px solid var(--border-primary);color:var(--text-secondary);cursor:pointer;background:0 0;padding:.375rem .875rem;font-size:.8125rem;font-weight:500;text-decoration:none;transition:all .15s}.store-category-tab:hover{border-color:var(--color-brand-400);color:var(--text-primary)}.store-category-tab[data-active=true]{border-color:var(--store-cta-color,var(--color-brand-500));background-color:var(--store-cta-color,var(--color-brand-500));color:#fff}}@layer utilities;
