main.svelte-uk8mco{padding:2rem 0;min-height:calc(100vh - 200px)}.page-container.svelte-uk8mco{max-width:1800px;margin:0 auto;padding:0 2rem;display:grid;grid-template-columns:280px 1fr;gap:2rem}.content.svelte-uk8mco{min-width:0}@keyframes svelte-uk8mco-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.breadcrumbs.svelte-uk8mco{margin-bottom:2rem;color:#666;font-size:.9rem}.breadcrumbs.svelte-uk8mco a:where(.svelte-uk8mco){color:var(--primary-color);text-decoration:none}.breadcrumbs.svelte-uk8mco a:where(.svelte-uk8mco):hover{text-decoration:underline}.separator.svelte-uk8mco{margin:0 .5rem}.current.svelte-uk8mco{color:#333}.product-detail.svelte-uk8mco{display:grid;grid-template-columns:1fr 1fr;gap:4rem;background:#fff;padding:3rem;border-radius:12px;box-shadow:0 2px 8px #00000014}.product-images-section.svelte-uk8mco{display:flex;flex-direction:column;gap:1rem}.main-image.svelte-uk8mco{width:100%;aspect-ratio:1;border-radius:12px;overflow:hidden;background:#f8f8f8;border:none;padding:0;cursor:pointer;transition:transform .2s}.main-image.svelte-uk8mco:hover{transform:scale(1.02)}.main-image.svelte-uk8mco img:where(.svelte-uk8mco){width:100%;height:100%;object-fit:contain}.color-preview.svelte-uk8mco,.placeholder.svelte-uk8mco{width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column}.placeholder.svelte-uk8mco span:where(.svelte-uk8mco){font-size:6rem;margin-bottom:1rem}.placeholder.svelte-uk8mco p:where(.svelte-uk8mco){color:#999}.image-thumbnails.svelte-uk8mco{display:flex;gap:.75rem;overflow-x:auto;padding-bottom:.5rem}.thumbnail.svelte-uk8mco{width:90px;aspect-ratio:3 / 4;border:2px solid #e0e0e0;border-radius:8px;overflow:hidden;cursor:pointer;transition:all .2s;background:#f8f8f8;padding:0;flex-shrink:0}.thumbnail.svelte-uk8mco:hover{border-color:var(--primary-color)}.thumbnail.active.svelte-uk8mco{border-color:var(--primary-color);box-shadow:0 0 0 2px #2563eb33}.thumbnail.svelte-uk8mco img:where(.svelte-uk8mco){width:100%;height:100%;object-fit:cover}.product-info.svelte-uk8mco h1:where(.svelte-uk8mco){font-size:2rem;color:#333;margin:0 0 1rem}.category.svelte-uk8mco{margin:0 0 1rem;display:flex;gap:.5rem;align-items:center}.category-label.svelte-uk8mco{color:#999}.category-value.svelte-uk8mco{background:#f0f0f0;color:var(--primary-color);padding:.25rem .75rem;border-radius:4px;font-weight:500}.volume.svelte-uk8mco{color:#666;margin:0 0 1rem}.color-info.svelte-uk8mco{margin:1.5rem 0}.color-info.svelte-uk8mco p:where(.svelte-uk8mco){margin:0 0 .5rem;color:#666}.color-display.svelte-uk8mco{display:flex;align-items:center;gap:1rem}.color-box.svelte-uk8mco{width:60px;height:60px;border-radius:8px;border:2px solid rgba(0,0,0,.15)}.price-section.svelte-uk8mco{margin:1.5rem 0;padding:1.25rem 0;border-top:1px solid #e0e0e0;border-bottom:1px solid #e0e0e0}.price-row.svelte-uk8mco{display:flex;align-items:center;gap:1rem;margin-bottom:1rem}.price.svelte-uk8mco{font-size:1.75rem;font-weight:700;color:var(--primary-color);white-space:nowrap}.stock-status.svelte-uk8mco{font-size:.875rem}.in-stock.svelte-uk8mco{color:#059669;font-weight:500;background:#d1fae5;padding:.25rem .75rem;border-radius:999px;display:inline-block}.out-of-stock.svelte-uk8mco{color:#dc2626;font-weight:500;background:#fee2e2;padding:.25rem .75rem;border-radius:999px;display:inline-block}.product-extra.svelte-uk8mco{margin-top:1.5rem;background:#fff;padding:2rem;border-radius:12px;box-shadow:0 2px 8px #00000014}.description.svelte-uk8mco{margin:0 0 2rem}.description.svelte-uk8mco h3:where(.svelte-uk8mco){font-size:1.125rem;margin:0 0 .75rem;color:#333}.description.svelte-uk8mco p:where(.svelte-uk8mco){color:#555;line-height:1.7;max-width:800px}.specifications.svelte-uk8mco{margin:0}.specifications.svelte-uk8mco h3:where(.svelte-uk8mco){font-size:1.125rem;margin:0 0 .75rem;color:#333}.specifications.svelte-uk8mco table:where(.svelte-uk8mco){width:100%;border-collapse:collapse}.specifications.svelte-uk8mco tr:where(.svelte-uk8mco){border-bottom:1px solid #e0e0e0}.specifications.svelte-uk8mco tr:where(.svelte-uk8mco):last-child{border-bottom:none}.spec-key.svelte-uk8mco{padding:.75rem 1rem .75rem 0;color:#999;font-size:.9rem;width:40%}.spec-value.svelte-uk8mco{padding:.75rem 0;color:#333;font-weight:500}.cart-action.svelte-uk8mco{min-height:48px}.add-to-cart.svelte-uk8mco{width:100%;padding:.875rem 2rem;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);background:var(--primary-color);color:#fff;animation:svelte-uk8mco-fadeScaleIn .25s cubic-bezier(.4,0,.2,1)}.add-to-cart.svelte-uk8mco:hover:not(:disabled){background:var(--primary-dark);transform:translateY(-2px);box-shadow:0 4px 12px #2563eb4d}.add-to-cart.svelte-uk8mco:active:not(:disabled){transform:scale(.98)}.add-to-cart.svelte-uk8mco:disabled{background:#ccc;cursor:not-allowed}.qty-control.svelte-uk8mco{display:flex;align-items:center;justify-content:center;border:2px solid var(--primary-color);border-radius:8px;overflow:hidden;animation:svelte-uk8mco-fadeScaleIn .25s cubic-bezier(.4,0,.2,1)}.qty-btn.svelte-uk8mco{background:var(--primary-color);color:#fff;border:none;width:48px;height:48px;font-size:1.25rem;font-weight:600;cursor:pointer;transition:background .15s ease;display:flex;align-items:center;justify-content:center}.qty-btn.svelte-uk8mco:hover{background:var(--primary-dark)}.qty-btn.svelte-uk8mco:active{transform:scale(.9)}.qty-value.svelte-uk8mco{flex:1;text-align:center;font-weight:700;font-size:1.125rem;color:var(--primary-color);padding:.5rem}@keyframes svelte-uk8mco-fadeScaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.image-modal.svelte-uk8mco{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:2rem}.modal-content.svelte-uk8mco{position:relative;max-width:90vw;max-height:90vh}.modal-content.svelte-uk8mco img:where(.svelte-uk8mco){max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px}.modal-close.svelte-uk8mco{position:absolute;top:-3rem;right:0;background:#fff;border:none;width:40px;height:40px;border-radius:50%;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.modal-close.svelte-uk8mco:hover{background:#f0f0f0}.reviews-section.svelte-uk8mco h3:where(.svelte-uk8mco){font-size:1.125rem;margin:0 0 1.25rem;color:#333}.reviews-list.svelte-uk8mco{display:flex;flex-direction:column;gap:1.25rem}.review-card.svelte-uk8mco{padding-bottom:1.25rem;border-bottom:1px solid #e0e0e0}.review-card.svelte-uk8mco:last-child{padding-bottom:0;border-bottom:none}.review-header.svelte-uk8mco{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.review-author.svelte-uk8mco{font-weight:600;color:#333}.review-stars.svelte-uk8mco{display:flex;gap:1px}.star.svelte-uk8mco{color:#d1d5db;font-size:1rem}.star.filled.svelte-uk8mco{color:#f59e0b}.review-date.svelte-uk8mco{color:#999;font-size:.8rem}.review-body.svelte-uk8mco{color:#555;line-height:1.7;margin:0 0 .75rem}.review-photos.svelte-uk8mco{display:flex;gap:.5rem;flex-wrap:wrap}.review-photo.svelte-uk8mco{width:80px;height:80px;border-radius:8px;overflow:hidden;cursor:pointer;border:1px solid #e0e0e0;padding:0;background:#f8f8f8;transition:transform .2s,box-shadow .2s}.review-photo.svelte-uk8mco:hover{transform:scale(1.05);box-shadow:0 2px 8px #00000026}.review-photo.svelte-uk8mco img:where(.svelte-uk8mco){width:100%;height:100%;object-fit:cover}.color-box-link.svelte-uk8mco{display:inline-block;text-decoration:none;transition:all .2s;position:relative}.color-box-link.svelte-uk8mco .color-box:where(.svelte-uk8mco){cursor:pointer;border:3px solid transparent;transition:all .2s}.color-box-link.svelte-uk8mco:hover .color-box:where(.svelte-uk8mco){transform:scale(1.1);box-shadow:0 2px 8px #0003}.color-box-link.active.svelte-uk8mco .color-box:where(.svelte-uk8mco){border-color:var(--primary-color);box-shadow:0 0 0 2px #6c9fff4d}.color-box-link.unavailable.svelte-uk8mco .color-box:where(.svelte-uk8mco){opacity:.4;cursor:not-allowed}.color-box-link.unavailable.svelte-uk8mco:after{content:"✕";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#ef4444;font-size:1.5rem;font-weight:700;pointer-events:none}.color-name.svelte-uk8mco{margin-left:.5rem}@media (max-width: 968px){.page-container.svelte-uk8mco{grid-template-columns:1fr}.product-detail.svelte-uk8mco{grid-template-columns:1fr;gap:2rem;padding:2rem}.product-info.svelte-uk8mco h1:where(.svelte-uk8mco){font-size:1.5rem}.price.svelte-uk8mco{font-size:1.5rem}}
