.product-gallery.no-images .main-image{background:#f8f9fa;border:2px dashed #dee2e6}.main-image{position:relative;aspect-ratio:1;overflow:hidden;border-radius:12px;background:#f5f5f5;box-shadow:0 2px 8px #0000001a;cursor:pointer}.main-image-img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.main-image-img.clickable{cursor:zoom-in}.main-image:hover .main-image-img{transform:scale(1.05)}.zoom-overlay{position:absolute;inset:0;background:#0009;display:flex;flex-direction:column;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease;color:#fff;font-size:.9rem;font-weight:600;text-align:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.main-image:hover .zoom-overlay{opacity:1}.zoom-icon{font-size:2rem;margin-bottom:.5rem}.image-counter{position:absolute;bottom:12px;right:12px;background:#000c;color:#fff;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.gif-badge{position:absolute;top:12px;right:12px;background:#ff6b6be6;color:#fff;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.placeholder{display:flex;align-items:center;justify-content:center;height:100%;color:#6c757d;background:#f8f9fa;font-size:.9rem}.primary-badge{position:absolute;top:12px;left:12px;background:#007bffe6;color:#fff;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.thumbnails{display:flex;gap:.75rem;overflow-x:auto;padding:4px;scrollbar-width:thin;scrollbar-color:#dee2e6 transparent}.thumbnails::-webkit-scrollbar{height:6px}.thumbnails::-webkit-scrollbar-track{background:transparent}.thumbnails::-webkit-scrollbar-thumb{background:#dee2e6;border-radius:3px}.thumbnail{position:relative;flex-shrink:0;width:70px;height:70px;border:3px solid transparent;border-radius:8px;overflow:hidden;cursor:pointer;background:none;padding:0;transition:all .2s ease}.thumbnail:hover{border-color:#06c;transform:translateY(-2px);box-shadow:0 4px 12px #06c3}.thumbnail.active{border-color:#007bff;box-shadow:0 0 0 2px #007bff33}.thumbnail-img{width:100%;height:100%;object-fit:cover}.primary-indicator{position:absolute;top:4px;right:4px;background:#ffd700f2;color:#000;font-size:.65rem;padding:2px 4px;border-radius:4px;line-height:1;font-weight:700}.gif-indicator{position:absolute;bottom:4px;left:4px;background:#ff6b6bf2;color:#fff;font-size:.6rem;padding:2px 4px;border-radius:4px;line-height:1;font-weight:700}.product-card{background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 2px 12px #00000014;transition:all .3s ease;cursor:pointer;display:flex;flex-direction:column;height:100%}.product-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.product-card.out-of-stock{opacity:.7;cursor:not-allowed}.product-image{position:relative;aspect-ratio:1;overflow:hidden;background:#f8f9fa}.product-card-img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.product-card:hover .product-card-img{transform:scale(1.1)}.no-image{display:flex;align-items:center;justify-content:center;height:100%;color:#6c757d;background:#f8f9fa;font-size:.9rem}.image-count{position:absolute;bottom:8px;right:8px;background:#000000b3;color:#fff;padding:4px 8px;border-radius:12px;font-size:.75rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.primary-badge{position:absolute;top:8px;left:8px;background:#ffd700e6;color:#000;padding:4px 6px;border-radius:8px;font-size:.7rem;font-weight:700}.stock-badge{position:absolute;top:8px;right:8px;padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.stock-badge.out-of-stock{background:#dc3545e6;color:#fff}.stock-badge.low-stock{background:#ffc107e6;color:#000}.product-info{padding:1.5rem;display:flex;flex-direction:column;flex-grow:1}.product-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem;gap:1rem}.product-name{margin:0;font-size:1.1rem;font-weight:600;color:#212529;line-height:1.3;flex:1}.product-price{font-size:1.25rem;font-weight:700;color:#007bff;white-space:nowrap}.product-description{margin:0 0 1rem;color:#6c757d;font-size:.9rem;line-height:1.5;flex-grow:1}.product-meta{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem;font-size:.8rem;color:#6c757d}.product-sku,.product-size{background:#f8f9fa;padding:2px 8px;border-radius:12px;border:1px solid #dee2e6}.stock-info{margin-bottom:1rem}.stock-count{font-size:.85rem;font-weight:600;padding:4px 8px;border-radius:8px;background:#d4edda;color:#155724}.stock-count.low{background:#fff3cd;color:#856404}.stock-count.out{background:#f8d7da;color:#721c24}.product-actions{display:flex;gap:.75rem;margin-top:auto}.btn{padding:.75rem 1rem;border-radius:8px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-decoration:none;text-align:center;border:none;flex:1}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-outline{background:transparent;color:#007bff;border:2px solid #007bff}.btn-outline:hover:not(:disabled){background:#007bff;color:#fff}.btn-primary{background:#007bff;color:#fff;border:2px solid #007bff}.btn-primary:hover:not(:disabled){background:#0056b3;border-color:#0056b3}.product-list{width:100%}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;padding:1rem 0}.product-list.loading,.product-list.error,.product-list.empty{display:flex;align-items:center;justify-content:center;min-height:200px;padding:2rem}.loading-message,.error-message,.empty-message{text-align:center;color:#6c757d;font-size:1.1rem}.error-message{color:#dc3545}@media(min-width:768px){.product-gallery{flex-direction:row;gap:2rem}.main-image{flex:1;max-width:500px}.thumbnails{flex-direction:column;width:90px;height:fit-content;max-height:400px;overflow-y:auto;overflow-x:hidden}.thumbnail{width:80px;height:80px}.products-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2.5rem}.product-detail{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.product-gallery-section{position:sticky;top:2rem}}.product-detail-page{padding:2rem 0;min-height:100vh}.product-detail{display:flex;flex-direction:column;gap:2rem}.product-gallery-section{width:100%}.product-info-section{display:flex;flex-direction:column;gap:1.5rem}.product-title{font-size:2rem;font-weight:700;color:#212529;margin:0;line-height:1.2}.product-description{font-size:1.1rem;color:#6c757d;line-height:1.6}.product-metadata{display:flex;flex-wrap:wrap;gap:1rem;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px solid #dee2e6}.metadata-item{font-size:.9rem;color:#495057}.metadata-item strong{color:#212529}.stock-section{padding:1rem;border-radius:8px;border:2px solid #d4edda;background:#d4edda}.stock-section.low{border-color:#ffeaa7;background:#ffeaa7}.stock-section.out{border-color:#fab1a0;background:#fab1a0}.stock-status{font-weight:600;font-size:1rem}.stock-status.available{color:#155724}.stock-status.low{color:#856404}.stock-status.out{color:#721c24}.images-info{padding:.75rem;background:#e3f2fd;border-radius:8px;border-left:4px solid #2196f3}.images-info p{margin:0;font-size:.9rem;color:#1565c0}.btn-large{padding:1rem 2rem;font-size:1.1rem;font-weight:600;min-height:3rem}.additional-info{margin-top:2rem}.additional-info details{margin-bottom:1rem;border:1px solid #dee2e6;border-radius:8px;overflow:hidden}.additional-info summary{padding:1rem;background:#f8f9fa;cursor:pointer;font-weight:600;color:#495057;transition:background-color .2s ease}.additional-info summary:hover{background:#e9ecef}.additional-info details[open] summary{border-bottom:1px solid #dee2e6}.additional-info details p{padding:1rem;margin:0;color:#6c757d;line-height:1.5}.loading-spinner{display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:#6c757d;min-height:200px}.container{max-width:1200px;margin:0 auto;padding:0 1rem}.page-header{text-align:center;margin-bottom:3rem}.page-header h1{font-size:2.5rem;font-weight:700;color:#212529;margin-bottom:.5rem}.page-header p{font-size:1.2rem;color:#6c757d;margin:0}.gallery-demo{padding:2rem 0;min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.demo-header{text-align:center;margin-bottom:3rem;padding:2rem;background:#fff;border-radius:16px;box-shadow:0 4px 20px #0000001a}.demo-header h1{font-size:3rem;font-weight:800;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem}.demo-header p{font-size:1.3rem;color:#6c757d;margin:0}.demo-content{display:flex;flex-direction:column;gap:3rem}.demo-section{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 4px 20px #0000001a}.demo-section h2{font-size:1.8rem;font-weight:700;color:#212529;margin-bottom:.5rem}.demo-section p{color:#6c757d;margin-bottom:2rem;font-size:1.1rem}.gallery-container{max-width:600px;margin:0 auto}.features-section{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 4px 20px #0000001a}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:2rem}.feature-card{background:linear-gradient(135deg,#f8f9fa,#e9ecef);padding:1.5rem;border-radius:12px;border:1px solid #dee2e6;transition:transform .2s ease,box-shadow .2s ease}.feature-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.feature-card h3{font-size:1.2rem;font-weight:600;color:#495057;margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem}.feature-card p{color:#6c757d;margin:0;line-height:1.6;font-size:.95rem}.instructions-section{background:#fff;padding:2rem;border-radius:16px;box-shadow:0 4px 20px #0000001a}.instructions{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem}.instruction-group{background:#f8f9fa;padding:1.5rem;border-radius:12px;border-left:4px solid #007bff}.instruction-group h3{font-size:1.3rem;font-weight:600;color:#495057;margin-bottom:1rem}.instruction-group ul{margin:0;padding-left:1.5rem;color:#6c757d}.instruction-group li{margin-bottom:.5rem;line-height:1.5}@media(max-width:768px){.demo-header h1{font-size:2.2rem}.demo-header p{font-size:1.1rem}.demo-section{padding:1.5rem}.features-grid,.instructions{grid-template-columns:1fr}}@media(min-width:1024px){.products-grid{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:3rem}}@media(max-width:480px){.product-header{flex-direction:column;align-items:flex-start;gap:.5rem}.product-actions{flex-direction:column}.products-grid{grid-template-columns:1fr;gap:1.5rem}}.product-gallery{display:flex;flex-direction:column;gap:1rem;max-width:100%}.product-gallery__main{position:relative;width:100%;margin-bottom:1rem}.product-gallery__main-image{width:100%;height:auto;max-height:500px;object-fit:cover;border-radius:8px;box-shadow:0 4px 8px #0000001a}.product-gallery__main-container{position:relative}.product-gallery__thumbnails{display:flex;gap:.5rem;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;padding:.25rem 0}.product-gallery__thumbnail{border:2px solid transparent;border-radius:6px;overflow:hidden;cursor:pointer;transition:all .2s ease;background:none;padding:0;position:relative;width:80px;height:80px;flex-shrink:0}.product-gallery__thumbnail:hover{border-color:#007bff;transform:scale(1.05)}.product-gallery__thumbnail.active{border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.product-gallery__thumbnail-image{width:100%;height:100%;object-fit:cover}.product-gallery__gif-badge{position:absolute;top:8px;right:8px;background:linear-gradient(135deg,#ff6b6b,#ff4757);color:#fff;padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.3);box-shadow:0 2px 4px #0003;animation:gifPulse 2s infinite}.product-gallery__thumbnail-gif-badge{position:absolute;top:2px;right:2px;background:linear-gradient(135deg,#ff6b6b,#ff4757);color:#fff;padding:2px 4px;border-radius:2px;font-size:.6rem;font-weight:700;text-shadow:0 1px 1px rgba(0,0,0,.3);box-shadow:0 1px 2px #0003}@keyframes gifPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}.campaign-modal-overlay{position:fixed;inset:0;background-color:#000000b3;display:flex;justify-content:center;align-items:center;z-index:9999;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fadeIn .3s ease-out}.campaign-modal{position:relative;background:#fff;border-radius:12px;box-shadow:0 20px 40px #0000004d;max-height:90vh;overflow-y:auto;animation:slideIn .4s ease-out;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.campaign-modal-small{max-width:400px;width:90%}.campaign-modal-medium{max-width:600px;width:90%}.campaign-modal-large{max-width:800px;width:95%}.campaign-modal-close{position:absolute;top:15px;right:15px;background:#00000080;color:#fff;border:none;border-radius:50%;width:35px;height:35px;font-size:20px;line-height:1;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.campaign-modal-close:hover{background:#000000b3;transform:scale(1.1)}.campaign-navigation{position:absolute;top:15px;left:15px;display:flex;align-items:center;gap:10px;background:#ffffffe6;padding:8px 12px;border-radius:20px;font-size:14px;z-index:10}.campaign-nav-btn{background:#2c5530;color:#fff;border:none;border-radius:50%;width:30px;height:30px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:16px;transition:all .2s ease}.campaign-nav-btn:hover:not(:disabled){background:#1e3a21;transform:scale(1.1)}.campaign-nav-btn:disabled{background:#ccc;cursor:not-allowed}.campaign-counter{font-weight:500;color:#333;min-width:40px;text-align:center}.campaign-modal-content{padding:0}.campaign-text-content{padding:40px 30px 30px}.campaign-title{margin:0 0 20px;font-size:28px;font-weight:700;line-height:1.3;text-align:center}.campaign-content{margin:20px 0;line-height:1.6;font-size:16px}.campaign-content p{margin:15px 0}.campaign-content strong{font-weight:600;color:inherit}.campaign-content code{background:#f0f0f0;padding:4px 8px;border-radius:4px;font-family:Courier New,monospace;font-size:14px}.campaign-actions{margin:30px 0 20px;text-align:center}.campaign-action-btn{background:#2c5530;color:#fff;border:none;padding:15px 30px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:150px}.campaign-action-btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2c55304d}.campaign-footer{margin-top:20px;padding-top:20px;border-top:1px solid rgba(0,0,0,.1);font-size:14px;text-align:center;opacity:.8}.campaign-image-content{padding:0;display:flex;justify-content:center;align-items:center}.campaign-image{width:100%;height:auto;display:block;border-radius:12px;max-height:90vh;object-fit:contain;transition:transform .2s ease}.campaign-image:hover{transform:scale(1.02)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:scale(.7) translateY(-50px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(max-width:768px){.campaign-modal{margin:20px;max-height:calc(100vh - 40px)}.campaign-modal-small,.campaign-modal-medium,.campaign-modal-large{width:calc(100% - 40px);max-width:none}.campaign-text-content{padding:50px 20px 20px}.campaign-title{font-size:24px}.campaign-content{font-size:15px}.campaign-action-btn{width:100%;padding:12px 20px;font-size:15px}.campaign-navigation{top:10px;left:10px;padding:6px 8px;font-size:12px}.campaign-nav-btn{width:25px;height:25px;font-size:14px}.campaign-modal-close{top:10px;right:10px;width:30px;height:30px;font-size:18px}}@media(max-width:480px){.campaign-modal{margin:10px;max-height:calc(100vh - 20px);border-radius:8px}.campaign-text-content{padding:45px 15px 15px}.campaign-title{font-size:20px;margin-bottom:15px}.campaign-content{font-size:14px}}@media(prefers-color-scheme:dark){.campaign-modal-overlay{background-color:#000c}.campaign-navigation{background:#2c5530e6;color:#fff}.campaign-counter{color:#fff}}.campaign-modal.premium{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #2c5530}.campaign-modal.premium .campaign-title{background:linear-gradient(45deg,#2c5530,#4a7c59);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.campaign-modal.loading{opacity:.7}.campaign-modal.loading:after{content:"";position:absolute;top:50%;left:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border:3px solid #f3f3f3;border-top:3px solid #2c5530;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
