*{margin:0;padding:0;box-sizing:border-box}body{margin:0;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;background:#f5f5f5}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}#root{min-height:100vh}:root{--color-primary: #5C1F33;--color-primary-hover: #4A1829;--color-primary-dark: #3D1522;--color-secondary: #E8A598;--color-secondary-hover: #D98E7E;--color-accent-peach: #F5E6E3;--color-accent-warm: #D4A59A;--color-background: #FAFAFA;--color-surface: #FFFFFF;--color-text-primary: #2C2C2C;--color-text-secondary: #666666;--color-border: #E0E0E0;--color-border-light: #F0F0F0;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;--font-size-xs: 12px;--font-size-sm: 14px;--font-size-base: 16px;--font-size-lg: 18px;--font-size-xl: 20px;--font-size-2xl: 24px;--font-size-3xl: 32px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--border-radius-sm: 4px;--border-radius-md: 8px;--border-radius-lg: 12px;--shadow-sm: 0 1px 3px rgba(92, 31, 51, .08);--shadow-md: 0 2px 8px rgba(92, 31, 51, .12);--shadow-lg: 0 4px 16px rgba(92, 31, 51, .15);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease}.App{min-height:100vh;background:var(--color-background);display:flex;flex-direction:column}.main-content{flex:1;width:100%;max-width:1600px;margin:0 auto;padding:var(--spacing-lg)}.content-area{width:100%;display:flex;flex-direction:row;gap:var(--spacing-lg);align-items:flex-start;position:relative}.products-container{flex:1;min-width:0}.filter-toggle-container{margin-bottom:var(--spacing-md)}@media(max-width:768px){.main-content{padding:var(--spacing-sm)}.content-area{flex-direction:column;gap:var(--spacing-md)}}.controls-bar{background:var(--color-surface);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--border-radius-md);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center}.filter-toggle-btn{background:var(--color-secondary);color:#fff;border:none;padding:12px 24px;border-radius:var(--border-radius-sm);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);transition:all var(--transition-base);box-shadow:var(--shadow-md);display:flex;align-items:center;gap:var(--spacing-sm)}.filter-toggle-btn:hover{background:var(--color-secondary-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.search-bar{position:relative;flex:1;max-width:400px;min-width:200px}.search-input{width:100%;padding:10px 40px 10px 15px;border:2px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);transition:border-color var(--transition-base)}.search-input:focus{outline:none;border-color:var(--color-primary)}.search-input::placeholder{color:#999}.search-clear-btn{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:var(--color-border);color:var(--color-text-secondary);border:none;width:24px;height:24px;border-radius:50%;cursor:pointer;font-size:var(--font-size-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base)}.search-clear-btn:hover{background:var(--color-secondary);color:#fff}.sort-controls{display:flex;align-items:center;gap:10px}.sort-controls label{font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin:0}.sort-controls select{padding:var(--spacing-sm) 12px;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);cursor:pointer;background:var(--color-surface);transition:border-color var(--transition-base)}.sort-controls select:focus{outline:none;border-color:var(--color-primary)}.comparison-section{width:100%}.comparison-header{background:var(--color-surface);padding:var(--spacing-lg);border-radius:var(--border-radius-md);margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;box-shadow:var(--shadow-md)}.comparison-header h2{margin:0;color:var(--color-primary);font-weight:var(--font-weight-bold)}.clear-btn{background:var(--color-primary);color:#fff;border:none;padding:10px 20px;border-radius:var(--border-radius-sm);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-base)}.clear-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.comparison-panel{position:fixed;bottom:0;left:0;right:0;width:100%;background:#fff;box-shadow:0 -4px 12px #00000026;z-index:1000;transition:transform .3s ease;display:flex;flex-direction:column}.comparison-panel.collapsed{transform:translateY(calc(100% - 60px))}.comparison-panel.expanded{transform:translateY(0);height:90vh;max-height:none}.comparison-tab-toggle{height:60px;width:100%;background:var(--color-primary);color:#fff;border:none;cursor:pointer;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);padding:15px 20px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:15px;transition:all var(--transition-base);box-shadow:0 -2px 8px #5c1f3333}.comparison-tab-toggle:hover{background:var(--color-primary-hover)}.comparison-tab-toggle .tab-label{font-size:var(--font-size-base);letter-spacing:1px;white-space:nowrap}.comparison-panel-content{flex:1;overflow-y:auto;overflow-x:auto;padding:20px;min-height:0}.comparison-panel .comparison-header{margin-bottom:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:10;background:var(--color-surface);padding-bottom:10px;border-bottom:2px solid var(--color-border)}*{box-sizing:border-box}body{margin:0;font-family:var(--font-family);color:var(--color-text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.product-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-surface);border-radius:var(--border-radius-md);box-shadow:var(--shadow-md)}.product-count{grid-column:1 / -1;padding:10px 0;font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);border-bottom:1px solid var(--color-border);margin-bottom:10px}.no-products{grid-column:1 / -1;text-align:center;padding:60px 20px;color:var(--color-text-secondary)}.no-products p{font-size:var(--font-size-lg);margin:0}.product-card{background:var(--color-surface);border:2px solid var(--color-border);border-top:4px solid var(--color-secondary);border-radius:var(--border-radius-md);overflow:hidden;transition:all var(--transition-slow);cursor:pointer}.product-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg);border-color:var(--color-primary);border-top-color:var(--color-secondary)}.product-card.selected{border-color:var(--color-primary);border-top-color:var(--color-secondary);background:var(--color-accent-peach)}.product-image{width:100%;height:200px;background:var(--color-accent-peach);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.product-image img{width:100%;height:100%;object-fit:cover}.selected-badge{position:absolute;top:10px;right:10px;background:var(--color-primary);color:#fff;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-md)}.product-info{padding:var(--spacing-md)}.product-info h3{margin:0 0 6px;font-size:var(--font-size-lg);color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.brand{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:10px;font-weight:var(--font-weight-medium)}.quick-specs{display:flex;align-items:center;gap:var(--spacing-sm);margin:10px 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.quick-specs span{white-space:nowrap}.features{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin:12px 0}.feature-badge{background:var(--color-accent-peach);padding:4px 10px;border-radius:12px;font-size:.75em;color:var(--color-primary);font-weight:var(--font-weight-medium)}.price{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin:12px 0}.select-btn{width:100%;padding:10px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base)}.select-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.product-card.selected .select-btn{background:var(--color-secondary)}.product-card.selected .select-btn:hover{background:var(--color-secondary-hover)}@media(min-width:1400px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));max-width:100%}}@media(min-width:1200px)and (max-width:1399px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media(min-width:900px)and (max-width:1199px){.product-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}@media(min-width:600px)and (max-width:899px){.product-grid{grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);padding:var(--spacing-md)}}@media(max-width:599px){.product-grid{grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm);padding:var(--spacing-sm)}.product-image{height:150px}.product-info{padding:var(--spacing-sm)}.product-info h3{font-size:var(--font-size-base)}.price{font-size:var(--font-size-lg)}}@media(max-width:400px){.product-grid{grid-template-columns:1fr}}.multi-model-viewer{background:#fff;border-radius:8px;padding:20px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px}.viewer-placeholder{width:100%;height:500px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f5f5f5;border:2px dashed #e0e0e0;border-radius:8px;color:#888;text-align:center}.view-controls{display:flex;gap:10px;margin-bottom:15px;flex-wrap:wrap;justify-content:center;padding-bottom:15px;border-bottom:2px solid #f0f0f0}.view-controls button{background:#f5f5f5;border:2px solid #e0e0e0;padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;color:#555;transition:all .2s}.view-controls button:hover{background:#e8e8e8;border-color:#667eea;color:#333}.view-controls button.active{background:#667eea;border-color:#667eea;color:#fff}.viewer-legend{display:flex;gap:20px;margin-bottom:15px;padding:10px;background:#f8f9ff;border-radius:6px;flex-wrap:wrap;justify-content:center}.legend-item{display:flex;align-items:center;gap:8px;font-size:14px;color:#333}.color-indicator{width:16px;height:16px;border-radius:50%;border:2px solid white;box-shadow:0 1px 3px #0003}.canvas-container{width:100%;height:500px;border:1px solid #e0e0e0;border-radius:8px;overflow:hidden;background:linear-gradient(135deg,#f5f7fa,#c3cfe2)}.viewer-instructions{text-align:center;margin-top:10px;color:#888}.viewer-instructions small{font-size:12px}.model-number-label{background:#667eea;color:#fff;font-weight:700;font-size:16px;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000004d;border:2px solid white}@media(max-width:768px){.canvas-container{height:400px}.view-controls button{padding:6px 12px;font-size:12px}.viewer-legend{font-size:12px}.color-indicator{width:12px;height:12px}}.comparison-view{background:var(--color-accent-peach);border-radius:var(--border-radius-md);padding:var(--spacing-xl);box-shadow:var(--shadow-md)}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-lg)}.comparison-card{background:var(--color-surface);border:2px solid var(--color-border);border-top:4px solid var(--color-secondary);border-radius:var(--border-radius-md);padding:var(--spacing-lg);position:relative;transition:all var(--transition-slow)}.comparison-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.card-number-badge{position:absolute;top:10px;left:10px;background:var(--color-primary);color:#fff;font-weight:var(--font-weight-bold);font-size:var(--font-size-lg);width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);border:2px solid white;z-index:10}.remove-btn{position:absolute;top:10px;right:10px;background:var(--color-secondary);color:#fff;border:none;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:var(--font-size-lg);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);z-index:10}.remove-btn:hover{background:var(--color-secondary-hover);transform:scale(1.1)}.comparison-card h3{margin:0 0 5px;font-size:var(--font-size-xl);color:var(--color-primary);font-weight:var(--font-weight-bold);padding-right:40px;padding-left:50px}.comparison-card .brand{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin-bottom:15px;padding-left:50px;font-weight:var(--font-weight-medium)}.specs-table{margin:var(--spacing-lg) 0;border-top:2px solid var(--color-border-light);padding-top:15px}.spec-row{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid var(--color-border-light)}.spec-row:last-child{border-bottom:none}.spec-label{font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.spec-value{color:var(--color-text-primary);text-align:right;font-size:var(--font-size-sm)}.price-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:2px solid var(--color-border-light);display:flex;justify-content:space-between;align-items:center}.price-section .price{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-primary)}.buy-btn{background:var(--color-primary);color:#fff;border:none;padding:12px 24px;border-radius:var(--border-radius-sm);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base)}.buy-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.add-more-hint{text-align:center;padding:var(--spacing-xl);color:var(--color-text-secondary);font-size:var(--font-size-lg);background:var(--color-surface);border-radius:var(--border-radius-md);border:2px dashed var(--color-secondary)}@media(max-width:1200px){.comparison-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.comparison-grid{grid-template-columns:1fr}}.rc-slider{position:relative;width:100%;height:14px;padding:5px 0;border-radius:6px;touch-action:none;box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.rc-slider *{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.rc-slider-rail{position:absolute;width:100%;height:4px;background-color:#e9e9e9;border-radius:6px}.rc-slider-track,.rc-slider-tracks{position:absolute;height:4px;background-color:#abe2fb;border-radius:6px}.rc-slider-track-draggable{z-index:1;box-sizing:content-box;background-clip:content-box;border-top:5px solid rgba(0,0,0,0);border-bottom:5px solid rgba(0,0,0,0);transform:translateY(-5px)}.rc-slider-handle{position:absolute;z-index:1;width:14px;height:14px;margin-top:-5px;background-color:#fff;border:solid 2px #96dbfa;border-radius:50%;cursor:pointer;cursor:-webkit-grab;cursor:grab;opacity:.8;-webkit-user-select:none;user-select:none;touch-action:pan-x}.rc-slider-handle-dragging.rc-slider-handle-dragging.rc-slider-handle-dragging{border-color:#57c5f7;box-shadow:0 0 0 5px #96dbfa}.rc-slider-handle-dragging.rc-slider-handle-dragging.rc-slider-handle-dragging-delete{opacity:0}.rc-slider-handle:focus{outline:none;box-shadow:none}.rc-slider-handle:focus-visible{border-color:#2db7f5;box-shadow:0 0 0 3px #96dbfa}.rc-slider-handle-click-focused:focus{border-color:#96dbfa;box-shadow:unset}.rc-slider-handle:hover{border-color:#57c5f7}.rc-slider-handle:active{border-color:#57c5f7;box-shadow:0 0 5px #57c5f7;cursor:-webkit-grabbing;cursor:grabbing}.rc-slider-mark{position:absolute;top:18px;left:0;width:100%;font-size:12px}.rc-slider-mark-text{position:absolute;display:inline-block;color:#999;text-align:center;vertical-align:middle;cursor:pointer}.rc-slider-mark-text-active{color:#666}.rc-slider-step{position:absolute;width:100%;height:4px;background:transparent}.rc-slider-dot{position:absolute;bottom:-2px;width:8px;height:8px;vertical-align:middle;background-color:#fff;border:2px solid #e9e9e9;border-radius:50%;cursor:pointer}.rc-slider-dot-active{border-color:#96dbfa}.rc-slider-dot-reverse{margin-right:-4px}.rc-slider-disabled{background-color:#e9e9e9}.rc-slider-disabled .rc-slider-track{background-color:#ccc}.rc-slider-disabled .rc-slider-handle,.rc-slider-disabled .rc-slider-dot{background-color:#fff;border-color:#ccc;box-shadow:none;cursor:not-allowed}.rc-slider-disabled .rc-slider-mark-text,.rc-slider-disabled .rc-slider-dot{cursor:not-allowed!important}.rc-slider-vertical{width:14px;height:100%;padding:0 5px}.rc-slider-vertical .rc-slider-rail{width:4px;height:100%}.rc-slider-vertical .rc-slider-track{bottom:0;left:5px;width:4px}.rc-slider-vertical .rc-slider-track-draggable{border-top:0;border-right:5px solid rgba(0,0,0,0);border-bottom:0;border-left:5px solid rgba(0,0,0,0);transform:translate(-5px)}.rc-slider-vertical .rc-slider-handle{position:absolute;z-index:1;margin-top:0;margin-left:-5px;touch-action:pan-y}.rc-slider-vertical .rc-slider-mark{top:0;left:18px;height:100%}.rc-slider-vertical .rc-slider-step{width:4px;height:100%}.rc-slider-vertical .rc-slider-dot{margin-left:-2px}.rc-slider-tooltip-zoom-down-enter,.rc-slider-tooltip-zoom-down-appear,.rc-slider-tooltip-zoom-down-leave{display:block!important;animation-duration:.3s;animation-fill-mode:both;animation-play-state:paused}.rc-slider-tooltip-zoom-down-enter.rc-slider-tooltip-zoom-down-enter-active,.rc-slider-tooltip-zoom-down-appear.rc-slider-tooltip-zoom-down-appear-active{animation-name:rcSliderTooltipZoomDownIn;animation-play-state:running}.rc-slider-tooltip-zoom-down-leave.rc-slider-tooltip-zoom-down-leave-active{animation-name:rcSliderTooltipZoomDownOut;animation-play-state:running}.rc-slider-tooltip-zoom-down-enter,.rc-slider-tooltip-zoom-down-appear{transform:scale(0);animation-timing-function:cubic-bezier(.23,1,.32,1)}.rc-slider-tooltip-zoom-down-leave{animation-timing-function:cubic-bezier(.755,.05,.855,.06)}@keyframes rcSliderTooltipZoomDownIn{0%{transform:scale(0);transform-origin:50% 100%;opacity:0}to{transform:scale(1);transform-origin:50% 100%}}@keyframes rcSliderTooltipZoomDownOut{0%{transform:scale(1);transform-origin:50% 100%}to{transform:scale(0);transform-origin:50% 100%;opacity:0}}.rc-slider-tooltip{position:absolute;top:-9999px;left:-9999px;visibility:visible;box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.rc-slider-tooltip *{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0)}.rc-slider-tooltip-hidden{display:none}.rc-slider-tooltip-placement-top{padding:4px 0 8px}.rc-slider-tooltip-inner{min-width:24px;height:24px;padding:6px 2px;color:#fff;font-size:12px;line-height:1;text-align:center;text-decoration:none;background-color:#6c6c6c;border-radius:6px;box-shadow:0 0 4px #d9d9d9}.rc-slider-tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.rc-slider-tooltip-placement-top .rc-slider-tooltip-arrow{bottom:4px;left:50%;margin-left:-4px;border-width:4px 4px 0;border-top-color:#6c6c6c}.range-slider{padding:var(--spacing-md);margin-bottom:var(--spacing-sm)}.range-label{display:block;margin-bottom:var(--spacing-md);font-weight:var(--font-weight-semibold);color:var(--color-text-primary);font-size:var(--font-size-sm)}.range-values{color:var(--color-primary);font-weight:var(--font-weight-bold)}.range-slider .rc-slider{margin-left:0;margin-right:0;padding:5px 0}.range-slider .rc-slider-track{background-color:var(--color-primary)}.range-slider .rc-slider-rail{background-color:var(--color-accent-peach)}.range-slider .rc-slider-handle{border-color:var(--color-primary);opacity:1}.range-slider .rc-slider-handle:hover,.range-slider .rc-slider-handle:active,.range-slider .rc-slider-handle:focus{border-color:var(--color-primary-hover);box-shadow:0 3px 8px #5c1f3366}.range-slider .rc-slider-handle-dragging{box-shadow:0 0 0 5px #e8a59833}@media(max-width:768px){.range-slider{padding:var(--spacing-sm) var(--spacing-md)}.range-slider .rc-slider-handle{width:24px;height:24px;margin-top:-10px;border-width:4px}.range-slider .rc-slider-rail,.range-slider .rc-slider-track{height:6px}.range-label{font-size:var(--font-size-base);margin-bottom:var(--spacing-lg)}}.filter-panel{width:280px;min-width:280px;background:var(--color-surface);border-radius:var(--border-radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-md);max-height:calc(100vh - 180px);overflow-y:auto;position:sticky;top:20px;border:1px solid var(--color-border);transition:all var(--transition-base)}.filter-panel.hidden{transform:translate(-100%);opacity:0;pointer-events:none;position:absolute}.filter-panel.visible{transform:translate(0);opacity:1;pointer-events:auto}.filter-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding-bottom:15px;border-bottom:2px solid var(--color-secondary)}.filter-panel-header h2{margin:0;font-size:var(--font-size-2xl);color:var(--color-primary);font-weight:var(--font-weight-bold)}.filter-header-buttons{display:flex;gap:var(--spacing-sm);align-items:center}.reset-filters-btn,.close-filters-btn{background:var(--color-border-light);border:none;padding:6px 12px;border-radius:var(--border-radius-sm);cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);transition:all var(--transition-base)}.reset-filters-btn:hover,.close-filters-btn:hover{background:var(--color-border);transform:translateY(-1px)}.close-filters-btn{background:var(--color-primary);color:#fff;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);padding:4px 12px;min-width:32px;display:flex;align-items:center;justify-content:center}.close-filters-btn:hover{background:var(--color-primary-hover)}.filter-panel-content{display:flex;flex-direction:column;gap:0}.filter-section{margin-bottom:25px;padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--color-border-light)}.filter-section:last-child{border-bottom:none;margin-bottom:0}.filter-section h3{margin:0 0 15px;font-size:var(--font-size-base);color:var(--color-primary);font-weight:var(--font-weight-semibold)}.filter-select{width:100%;padding:var(--spacing-sm) 10px;border:1px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);cursor:pointer;background:var(--color-surface);transition:border-color var(--transition-base)}.filter-select:focus{outline:none;border-color:var(--color-primary)}.filter-select:hover{border-color:var(--color-secondary)}.filter-options{display:flex;flex-direction:column;gap:var(--spacing-xs)}.filter-checkbox{display:flex;align-items:center;padding:var(--spacing-sm) 0;cursor:pointer;font-size:var(--font-size-sm);color:var(--color-text-secondary);transition:all var(--transition-base);border-radius:var(--border-radius-sm);padding-left:var(--spacing-sm);margin-left:calc(var(--spacing-sm) * -1)}.filter-checkbox:hover{color:var(--color-text-primary);background:var(--color-accent-peach)}.filter-checkbox input[type=checkbox]{margin-right:10px;cursor:pointer;width:18px;height:18px;accent-color:var(--color-secondary)}.filter-checkbox span{-webkit-user-select:none;user-select:none}.filter-panel::-webkit-scrollbar{width:8px}.filter-panel::-webkit-scrollbar-track{background:var(--color-border-light);border-radius:var(--border-radius-sm)}.filter-panel::-webkit-scrollbar-thumb{background:var(--color-secondary);border-radius:var(--border-radius-sm)}.filter-panel::-webkit-scrollbar-thumb:hover{background:var(--color-secondary-hover)}@media(max-width:1024px){.filter-panel{width:240px;min-width:240px}}@media(max-width:768px){.filter-panel{position:fixed;top:0;left:0;width:100%;max-width:320px;min-width:0;height:100vh;max-height:100vh;z-index:1001;border-radius:0;box-shadow:2px 0 12px #0000004d}.filter-panel.hidden{transform:translate(-100%)}.filter-panel.visible{transform:translate(0)}.close-filters-btn{font-size:20px;min-width:40px;padding:6px 14px}}@media(max-width:480px){.filter-panel{max-width:280px}}.filter-panel-backdrop{display:none}@media(max-width:768px){.filter-panel-backdrop{display:block;position:fixed;inset:0;background:#00000080;z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}}.site-header{background:var(--color-primary);color:#fff;padding:var(--spacing-lg) var(--spacing-lg) var(--spacing-md);box-shadow:var(--shadow-lg)}.header-top{max-width:1600px;margin:0 auto;display:flex;align-items:center;gap:var(--spacing-lg)}.logo-link{display:inline-block;text-decoration:none;transition:transform var(--transition-base);flex-shrink:0}.logo-link:hover{transform:translateY(-2px)}.site-logo{height:60px;width:auto;display:block}.header-search{flex:1;max-width:600px;margin-right:var(--spacing-lg)}.search-bar-inline{position:relative;display:flex;align-items:center;background:#fff;border-radius:var(--border-radius-sm);padding:10px 16px;box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base)}.search-bar-inline:focus-within{box-shadow:0 2px 12px #0003}.search-icon{color:var(--color-text-secondary);flex-shrink:0;margin-right:10px}.search-input-inline{flex:1;border:none;outline:none;font-size:var(--font-size-base);color:var(--color-text-primary);background:transparent;padding:0}.search-input-inline::placeholder{color:var(--color-text-secondary)}.search-clear-inline{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:18px;padding:0 4px;margin-left:8px;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:all var(--transition-base);flex-shrink:0}.search-clear-inline:hover{background:var(--color-border-light);color:var(--color-primary)}.site-tagline{margin:0;font-size:var(--font-size-sm);opacity:.95;color:var(--color-accent-peach);font-weight:var(--font-weight-normal);white-space:nowrap;flex-shrink:0}@media(max-width:1024px){.header-search{max-width:400px}}@media(max-width:768px){.site-header{padding:var(--spacing-md)}.header-top{flex-wrap:wrap;gap:var(--spacing-sm)}.site-logo{height:50px}.header-search{flex:1 1 100%;max-width:none;order:2;margin-right:0}.site-tagline{order:3;font-size:12px;flex-basis:100%}.search-bar-inline{padding:8px 12px}.search-input-inline{font-size:var(--font-size-sm)}}@media(max-width:480px){.site-tagline{display:none}.header-top{gap:var(--spacing-sm)}}.site-footer{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;margin-top:auto;padding:var(--spacing-xl) var(--spacing-lg);border-top:4px solid var(--color-secondary)}.footer-content{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl);padding-bottom:var(--spacing-xl);border-bottom:1px solid rgba(255,255,255,.2)}.footer-section h3,.footer-section h4{margin:0 0 var(--spacing-md) 0;font-weight:var(--font-weight-bold)}.footer-logo{color:var(--color-accent-peach);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.footer-tagline{color:#ffffffd9;font-size:var(--font-size-sm);margin:var(--spacing-sm) 0 0 0;line-height:1.5}.footer-section h4{color:var(--color-accent-peach);font-size:var(--font-size-base);margin-bottom:var(--spacing-md)}.footer-nav{display:flex;flex-direction:column;gap:var(--spacing-sm)}.footer-nav a{color:#ffffffd9;text-decoration:none;font-size:var(--font-size-sm);transition:all var(--transition-base);padding:var(--spacing-xs) 0;display:inline-block}.footer-nav a:hover{color:var(--color-accent-peach);transform:translate(4px)}.footer-description{color:#ffffffbf;font-size:var(--font-size-sm);line-height:1.6;margin:0}.footer-bottom{max-width:1400px;margin:0 auto;padding-top:var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.footer-copyright,.footer-disclaimer{color:#ffffffb3;font-size:var(--font-size-xs);margin:0}.footer-disclaimer{font-weight:var(--font-weight-semibold);color:var(--color-accent-peach)}@media(max-width:768px){.site-footer{padding:var(--spacing-lg) var(--spacing-md)}.footer-content{grid-template-columns:1fr;gap:var(--spacing-lg)}.footer-section{text-align:center}.footer-nav a{padding:var(--spacing-sm) 0}.footer-bottom{flex-direction:column;text-align:center;gap:var(--spacing-sm)}}@media(max-width:480px){.footer-logo{font-size:var(--font-size-lg)}.footer-section h4{font-size:var(--font-size-sm)}}.admin-login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.admin-login-card{background:#fff;padding:40px;border-radius:8px;box-shadow:0 10px 25px #0003;width:100%;max-width:400px}.admin-login-card h1{margin:0 0 10px;font-size:2em;color:#333;text-align:center}.admin-login-subtitle{margin:0 0 30px;text-align:center;color:#666;font-size:.95em}.admin-login-form{display:flex;flex-direction:column;gap:20px}.admin-login-form .form-group{display:flex;flex-direction:column;gap:8px}.admin-login-form label{font-weight:500;color:#333;font-size:.95em}.admin-login-form input{padding:12px;border:1px solid #ddd;border-radius:4px;font-size:1em;transition:border-color .2s}.admin-login-form input:focus{outline:none;border-color:#667eea}.admin-login-form input:disabled{background:#f5f5f5;cursor:not-allowed}.login-btn{background:#667eea;color:#fff;border:none;padding:12px;border-radius:4px;font-size:1em;font-weight:500;cursor:pointer;transition:background .2s;margin-top:10px}.login-btn:hover:not(:disabled){background:#5568d3}.login-btn:disabled{background:#ccc;cursor:not-allowed}.error-message{background:#fee;color:#c33;padding:12px;border-radius:4px;border-left:4px solid #c33;font-size:.9em}.product-edit-form{display:flex;flex-direction:column;gap:30px}.form-message{padding:15px;border-radius:4px;margin-bottom:20px;text-align:center;font-weight:500}.form-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.form-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.form-section{border-bottom:2px solid #f0f0f0;padding-bottom:25px}.form-section h3{margin:0 0 20px;font-size:1.2em;color:#555;font-weight:600}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#555;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:2px solid #e0e0e0;border-radius:4px;font-size:14px;transition:border-color .2s;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea}.form-group input:disabled,.form-group select:disabled,.form-group textarea:disabled{background:#f5f5f5;cursor:not-allowed}.form-group textarea{resize:vertical;font-family:inherit}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:15px}.checkbox-label{display:flex;align-items:center;padding:10px;background:#f8f9fa;border-radius:4px;cursor:pointer;transition:background .2s;font-size:14px;font-weight:500;color:#555}.checkbox-label:hover{background:#e9ecef}.checkbox-label input[type=checkbox]{margin-right:10px;cursor:pointer;width:auto}.file-selected{margin-top:10px;padding:10px;background:#e7f3ff;border-radius:4px;font-size:13px;color:#06c;font-weight:500}.form-actions{display:flex;gap:15px;justify-content:flex-end;margin-top:10px;padding-top:20px;border-top:2px solid #f0f0f0}.btn-submit,.btn-cancel{padding:12px 30px;border:none;border-radius:4px;font-size:15px;font-weight:600;cursor:pointer;transition:background .2s}.btn-submit{background:#667eea;color:#fff}.btn-submit:hover:not(:disabled){background:#5568d3}.btn-submit:disabled{background:#ccc;cursor:not-allowed}.btn-cancel{background:#6c757d;color:#fff}.btn-cancel:hover:not(:disabled){background:#5a6268}.btn-cancel:disabled{background:#ccc;cursor:not-allowed}@media(max-width:768px){.form-row,.checkbox-grid{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}.btn-submit,.btn-cancel{width:100%}}.image-manager{background:#f5f5f5;border:1px solid #ddd;border-radius:8px;padding:20px;margin-top:15px}.image-manager h4{margin-top:0;color:#333;border-bottom:2px solid #007bff;padding-bottom:10px}.image-manager h5{color:#555;margin-top:15px;margin-bottom:10px;font-size:1em}.image-manager-message{padding:10px;border-radius:4px;margin-bottom:15px;font-size:.9em}.image-manager-message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.image-manager-message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.image-manager-section{margin-bottom:25px}.image-url-form,.image-upload-form{display:flex;gap:10px;align-items:center}.image-url-input,.image-file-input{flex:1;padding:8px 12px;border:1px solid #ccc;border-radius:4px;font-size:.9em}.btn-download,.btn-upload{padding:8px 16px;background:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9em;white-space:nowrap}.btn-download:hover,.btn-upload:hover{background:#0056b3}.btn-download:disabled,.btn-upload:disabled{background:#6c757d;cursor:not-allowed}.image-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:15px;margin-top:15px}.image-item{position:relative;border:2px solid #ddd;border-radius:8px;overflow:hidden;background:#fff;transition:transform .2s,box-shadow .2s}.image-item:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.image-item.primary{border-color:#28a745;box-shadow:0 0 10px #28a7454d}.image-item img{width:100%;height:150px;object-fit:cover;display:block}.primary-badge{position:absolute;top:5px;right:5px;background:#28a745;color:#fff;padding:4px 8px;border-radius:4px;font-size:.75em;font-weight:700}.image-actions{padding:8px;display:flex;flex-direction:column;gap:5px}.btn-set-primary,.btn-delete{padding:6px 10px;border:none;border-radius:4px;cursor:pointer;font-size:.85em;transition:background .2s}.btn-set-primary{background:#007bff;color:#fff}.btn-set-primary:hover{background:#0056b3}.btn-delete{background:#dc3545;color:#fff}.btn-delete:hover{background:#c82333}.btn-set-primary:disabled,.btn-delete:disabled{background:#6c757d;cursor:not-allowed}.no-images{color:#777;font-style:italic;text-align:center;padding:20px}.batch-upload{max-width:900px;margin:0 auto;padding:20px}.batch-upload-header{margin-bottom:30px;padding-bottom:15px;border-bottom:2px solid #eee}.batch-upload-header h2{margin:0 0 10px;color:#333}.batch-upload-header p{margin:0;color:#666}.batch-upload-instructions{background:#f8f9fa;padding:20px;border-radius:8px;margin-bottom:30px}.batch-upload-instructions h3{margin-top:0;color:#333}.batch-upload-instructions ol{margin:15px 0;padding-left:20px}.batch-upload-instructions li{margin:8px 0;line-height:1.6}.batch-upload-instructions code{background:#e9ecef;padding:2px 6px;border-radius:3px;font-family:Courier New,monospace;font-size:.9em}.template-section{margin-top:20px;padding-top:15px;border-top:1px solid #dee2e6}.btn-download-template{background:#28a745;color:#fff;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;font-size:14px;transition:background .2s}.btn-download-template:hover{background:#218838}.batch-upload-form{background:#fff;padding:25px;border-radius:8px;box-shadow:0 2px 4px #0000001a;margin-bottom:30px}.batch-upload-form .form-group{margin-bottom:20px}.batch-upload-form label{display:block;margin-bottom:8px;font-weight:600;color:#333}.batch-upload-form input[type=file]{width:100%;padding:10px;border:2px dashed #ccc;border-radius:5px;cursor:pointer;transition:border-color .2s}.batch-upload-form input[type=file]:hover{border-color:#007bff}.file-selected{margin-top:10px;padding:8px 12px;background:#e7f3ff;border-left:3px solid #007bff;color:#004085;font-size:14px}.btn-upload{background:#007bff;color:#fff;border:none;padding:12px 30px;border-radius:5px;cursor:pointer;font-size:16px;font-weight:600;transition:background .2s;width:100%}.btn-upload:hover:not(:disabled){background:#0056b3}.btn-upload:disabled{background:#ccc;cursor:not-allowed}.message{padding:15px;border-radius:5px;margin-bottom:20px;font-weight:500}.upload-results{background:#fff;padding:25px;border-radius:8px;box-shadow:0 2px 4px #0000001a}.upload-results h3{margin-top:0;margin-bottom:20px;color:#333}.results-summary{display:flex;gap:20px;margin-bottom:25px;flex-wrap:wrap}.result-stat{flex:1;min-width:150px;padding:15px;background:#f8f9fa;border-radius:5px;text-align:center}.result-stat.success{background:#d4edda;border:1px solid #c3e6cb}.result-stat.error{background:#f8d7da;border:1px solid #f5c6cb}.result-stat strong{display:block;margin-bottom:5px;color:#666;font-size:14px}.error-details,.success-details{margin-top:20px;padding-top:20px;border-top:1px solid #dee2e6}.error-details h4,.success-details h4{margin-top:0;margin-bottom:15px;color:#333}.error-details ul,.success-details ul{list-style:none;padding:0;margin:0}.error-details li{padding:10px;margin:8px 0;background:#fff3cd;border-left:3px solid #ffc107;border-radius:3px;color:#856404}.success-details li{padding:10px;margin:8px 0;background:#d4edda;border-left:3px solid #28a745;border-radius:3px;color:#155724}.admin-panel{max-width:900px;margin:40px auto;padding:var(--spacing-xl);background:var(--color-surface);border-radius:var(--border-radius-md);box-shadow:var(--shadow-lg)}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl)}.admin-panel h1{margin:0;color:var(--color-primary);font-weight:var(--font-weight-bold)}.logout-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-secondary);color:#fff;border:none;border-radius:var(--border-radius-sm);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);transition:all var(--transition-base)}.logout-btn:hover{background:var(--color-secondary-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.admin-tools-section{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg);background:var(--color-accent-peach);border-radius:var(--border-radius-md);border:2px solid var(--color-border)}.admin-tools-section h3{margin:0 0 var(--spacing-md) 0;color:var(--color-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg)}.admin-tools-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.tool-link{display:flex;align-items:center;justify-content:center;padding:var(--spacing-md);background:var(--color-surface);color:var(--color-primary);text-decoration:none;border:2px solid var(--color-border);border-radius:var(--border-radius-sm);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);transition:all var(--transition-base);text-align:center}.tool-link:hover{background:var(--color-primary);color:#fff;transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.tab-buttons{display:flex;gap:10px;margin-bottom:var(--spacing-xl);justify-content:center}.tab-buttons button{padding:10px 30px;background:var(--color-border-light);border:2px solid var(--color-border);border-radius:var(--border-radius-sm);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-secondary);transition:all var(--transition-base)}.tab-buttons button:hover{background:var(--color-border);color:var(--color-text-primary)}.tab-buttons button.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.message{padding:15px;border-radius:var(--border-radius-sm);margin-bottom:var(--spacing-lg);text-align:center;font-weight:var(--font-weight-medium)}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.product-form{display:flex;flex-direction:column;gap:var(--spacing-xl)}.form-section{border-bottom:2px solid var(--color-border-light);padding-bottom:25px}.form-section:last-of-type{border-bottom:none}.form-section h2{margin:0 0 var(--spacing-lg) 0;font-size:var(--font-size-xl);color:var(--color-primary);font-weight:var(--font-weight-bold)}.form-group{margin-bottom:var(--spacing-lg)}.form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px;border:2px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);transition:border-color var(--transition-base)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.feature-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:15px}.feature-checkbox{display:flex;align-items:center;padding:10px;background:var(--color-accent-peach);border-radius:var(--border-radius-sm);cursor:pointer;transition:all var(--transition-base)}.feature-checkbox:hover{background:var(--color-accent-warm)}.feature-checkbox input{margin-right:10px;cursor:pointer;accent-color:var(--color-secondary)}.file-info{margin-top:10px;padding:10px;background:var(--color-border-light);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.submit-btn{padding:15px 40px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--border-radius-sm);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);cursor:pointer;transition:all var(--transition-base);margin-top:10px}.submit-btn:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.submit-btn:disabled{background:var(--color-border);cursor:not-allowed}.products-list{margin-top:20px}.products-list h2{margin-bottom:var(--spacing-lg);color:var(--color-primary);font-weight:var(--font-weight-bold)}.admin-controls{display:flex;gap:var(--spacing-lg);align-items:center;margin-bottom:var(--spacing-lg);padding:15px;background:var(--color-accent-peach);border-radius:var(--border-radius-sm);flex-wrap:wrap}.admin-search-bar{position:relative;flex:1;min-width:250px}.admin-search-input{width:100%;padding:10px 40px 10px 15px;border:2px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);transition:border-color var(--transition-base)}.admin-search-input:focus{outline:none;border-color:var(--color-primary)}.admin-search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:var(--color-border);color:var(--color-text-secondary);border:none;width:24px;height:24px;border-radius:50%;cursor:pointer;font-size:var(--font-size-sm);display:flex;align-items:center;justify-content:center;transition:all var(--transition-base)}.admin-search-clear:hover{background:var(--color-secondary);color:#fff}.admin-filter{display:flex;align-items:center;gap:10px}.admin-filter label{font-weight:var(--font-weight-medium);color:var(--color-text-primary);font-size:var(--font-size-sm)}.admin-filter-select{padding:10px 12px;border:2px solid var(--color-border);border-radius:var(--border-radius-sm);font-size:var(--font-size-sm);cursor:pointer;background:var(--color-surface);transition:border-color var(--transition-base)}.admin-filter-select:focus{outline:none;border-color:var(--color-primary)}.admin-results-count{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-medium);margin-left:auto}.no-products{text-align:center;padding:40px;color:var(--color-text-secondary);font-size:var(--font-size-lg)}.products-table{overflow-x:auto}.products-table table{width:100%;border-collapse:collapse;background:var(--color-surface)}.products-table th{background:var(--color-accent-peach);padding:12px;text-align:left;font-weight:var(--font-weight-semibold);color:var(--color-primary);border-bottom:2px solid var(--color-secondary)}.products-table td{padding:12px;border-bottom:1px solid var(--color-border-light);vertical-align:middle}.products-table tr:hover{background:var(--color-accent-peach)}.product-thumbnail{width:60px;height:60px;object-fit:cover;border-radius:var(--border-radius-sm);border:1px solid var(--color-border)}.no-image{width:60px;height:60px;background:var(--color-border-light);border-radius:var(--border-radius-sm);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);font-size:11px}.edit-btn,.delete-btn{border:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-sm);cursor:pointer;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);transition:all var(--transition-base);margin-right:var(--spacing-sm)}.edit-btn{background:var(--color-primary);color:#fff}.edit-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.delete-btn{background:var(--color-secondary);color:#fff}.delete-btn:hover{background:var(--color-secondary-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.status-badge{padding:4px var(--spacing-sm);border-radius:var(--border-radius-sm);font-size:12px;font-weight:var(--font-weight-medium)}.status-badge.published{background:#d4edda;color:#155724}.status-badge.draft{background:#fff3cd;color:#856404}.toggle-publish-btn{background:var(--color-text-secondary);color:#fff;border:none;padding:6px 10px;border-radius:var(--border-radius-sm);cursor:pointer;font-size:var(--font-size-base);margin-right:5px;transition:all var(--transition-base)}.toggle-publish-btn:hover{background:var(--color-primary);transform:scale(1.1)}@media(max-width:768px){.form-row,.feature-grid{grid-template-columns:1fr}}.browser-3d{padding:40px 20px;max-width:1400px;margin:0 auto}.head-to-head-container{display:grid;grid-template-columns:1fr auto 1fr;gap:40px;align-items:center;margin-bottom:60px}.head-to-head-item{text-align:center}.model-canvas{width:100%;height:400px;background:#f8f9fa;border-radius:12px;margin-bottom:20px}.vs-divider{font-size:48px;font-weight:700;color:#667eea;padding:0 20px}.model-info h3{margin:0 0 5px;font-size:24px}.model-info .brand{color:#6c757d;margin-bottom:20px}.stats{display:flex;flex-direction:column;gap:15px}.stat-bar{text-align:left}.stat-label{font-weight:500;margin-bottom:5px;font-size:14px;color:#495057}.stat-bar-container{position:relative;background:#e9ecef;height:30px;border-radius:15px;overflow:hidden}.stat-bar-fill{height:100%;transition:width .3s ease;border-radius:15px}.stat-value{position:absolute;right:10px;top:50%;transform:translateY(-50%);font-weight:600;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.3)}.product-grid-selector h2{margin-bottom:30px;text-align:center}.browser3d-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:20px}.grid-item{background:#f8f9fa;border-radius:8px;padding:15px;cursor:pointer;transition:all .2s;border:2px solid transparent}.grid-item:hover{transform:translateY(-4px);box-shadow:0 4px 12px #0000001a}.grid-item.selected{border-color:#667eea;background:#e8eaf6}.grid-thumbnail{width:100%;height:100px;display:flex;align-items:center;justify-content:center;margin-bottom:10px;filter:grayscale(100%)}.grid-item.selected .grid-thumbnail{filter:grayscale(0%)}.grid-thumbnail img{max-width:100%;max-height:100%;object-fit:contain}.grid-thumbnail .no-image{font-size:48px;color:#dee2e6}.grid-name{font-size:12px;text-align:center;font-weight:500;line-height:1.3}.admin-qa-mode{padding:40px;max-width:1600px;margin:0 auto}.qa-layout{display:grid;grid-template-columns:300px 1fr;gap:30px;margin-top:30px}.qa-product-list{background:#fff;border-radius:8px;padding:20px;max-height:800px;overflow-y:auto}.qa-product-item{padding:15px;border-bottom:1px solid #e9ecef;cursor:pointer;transition:background .2s}.qa-product-item:hover{background:#f8f9fa}.qa-product-item.selected{background:#e8eaf6;border-left:4px solid #667eea}.qa-product-name{font-weight:600;margin-bottom:4px}.qa-product-brand{font-size:14px;color:#6c757d}.qa-viewer-section{background:#fff;border-radius:8px;padding:30px}.qa-model-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.qa-warning{background:#fff3cd;color:#856404;padding:8px 16px;border-radius:4px;font-weight:600}.qa-model-canvas{width:100%;height:500px;background:#f8f9fa;border-radius:8px;margin-bottom:30px}.qa-no-selection{height:500px;display:flex;align-items:center;justify-content:center;color:#6c757d;font-size:18px}.qa-dimensions h3{margin-bottom:15px}.qa-dim-table{width:100%;border-collapse:collapse}.qa-dim-table th,.qa-dim-table td{padding:12px;text-align:left;border-bottom:1px solid #dee2e6}.qa-dim-table th{background:#f8f9fa;font-weight:600}.qa-dim-table tr.discrepancy{background:#fff3cd}.qa-dim-table tr.discrepancy td{color:#856404;font-weight:600}.partner-tool{max-width:800px;margin:40px auto;padding:30px;background:#fff;border-radius:12px;box-shadow:0 4px 12px #0000001a}.partner-input-section{display:flex;gap:20px;align-items:flex-end;margin:30px 0}.input-group{flex:1}.input-group label{display:block;margin-bottom:8px;font-weight:500}.input-group input{width:100%;padding:10px;border:2px solid #e0e0e0;border-radius:6px;font-size:16px}.generate-btn{padding:10px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:6px;font-size:16px;font-weight:500;cursor:pointer}.generate-btn:hover{opacity:.9}.partner-model-viewer{width:100%;height:400px;background:#f8f9fa;border-radius:8px;position:relative;margin-top:30px}.dimension-label{position:absolute;top:20px;right:20px;background:#000000b3;color:#fff;padding:8px 16px;border-radius:4px;font-weight:500}.single-model-viewer{width:100%;height:500px;background:#f8f9fa;border-radius:8px;overflow:hidden;position:relative}.viewer-hint{position:absolute;bottom:10px;left:50%;transform:translate(-50%);background:#0009;color:#fff;padding:6px 12px;border-radius:4px;pointer-events:none}.no-model-placeholder,.model-error-placeholder{width:100%;height:500px;display:flex;align-items:center;justify-content:center;background:#f8f9fa;border-radius:8px;color:#6c757d}.product-detail-page{max-width:1400px;margin:0 auto;padding:20px}.btn-back-top{background:#f0f0f0;border:1px solid #ddd;padding:10px 20px;border-radius:6px;cursor:pointer;font-size:1em;margin-bottom:20px;transition:background .2s}.btn-back-top:hover{background:#e0e0e0}.product-detail-container{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:20px}@media(max-width:968px){.product-detail-container{grid-template-columns:1fr}}.product-images-section{position:sticky;top:20px;height:fit-content}.main-image-container{width:100%;aspect-ratio:1;background:#f5f5f5;border-radius:12px;overflow:hidden;border:1px solid #ddd;display:flex;align-items:center;justify-content:center}.main-image{width:100%;height:100%;object-fit:contain}.model-viewer-placeholder{text-align:center;padding:40px;color:#666}.model-viewer-placeholder p{font-size:1.2em;margin-bottom:10px}.model-viewer-placeholder small{font-size:.8em;color:#999;word-break:break-all}.no-image{color:#999;font-style:italic}.image-thumbnails{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:10px;margin-top:15px}.thumbnail{width:100%;aspect-ratio:1;object-fit:cover;border-radius:8px;border:2px solid #ddd;cursor:pointer;transition:border-color .2s,transform .2s}.thumbnail:hover{border-color:#007bff;transform:scale(1.05)}.thumbnail.active{border-color:#007bff;box-shadow:0 0 10px #007bff4d}.product-info-section{padding-left:20px}.product-header h1{font-size:2em;margin:0 0 10px;color:#333}.product-brand{font-size:1.2em;color:#666;margin-bottom:15px}.product-price{font-size:1.5em;color:#28a745;font-weight:700;margin-bottom:20px}.product-description{padding:20px 0;border-bottom:1px solid #eee;margin-bottom:25px}.product-description p{font-size:1.05em;line-height:1.6;color:#555}.specs-section{margin-bottom:30px}.specs-section h3{font-size:1.3em;margin-bottom:15px;color:#333;border-bottom:2px solid #007bff;padding-bottom:8px}.specs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.spec-item{display:flex;justify-content:space-between;padding:10px 0}.spec-label{font-weight:600;color:#555;margin-right:10px}.spec-value{color:#333}.features-list{display:flex;flex-wrap:wrap;gap:10px}.feature-badge{background:#007bff;color:#fff;padding:8px 14px;border-radius:20px;font-size:.9em;font-weight:500}.review-section{margin-bottom:30px;padding:20px;background:#f9f9f9;border-radius:8px;border-left:4px solid #ffc107}.review-section h3{margin-top:0;color:#333}.review-section p{color:#555;line-height:1.6}.buy-section{margin-top:30px;padding-top:20px;border-top:2px solid #eee}.btn-buy{background:#28a745;color:#fff;border:none;padding:15px 40px;font-size:1.2em;border-radius:8px;cursor:pointer;transition:background .2s,transform .1s;width:100%;max-width:300px}.btn-buy:hover{background:#218838;transform:translateY(-2px);box-shadow:0 4px 12px #28a7454d}.btn-buy:active{transform:translateY(0)}.product-detail-loading,.product-detail-error{text-align:center;padding:60px 20px;max-width:600px;margin:0 auto}.product-detail-error h2{color:#dc3545;margin-bottom:15px}.product-detail-error p{color:#666;margin-bottom:25px}.btn-back{background:#007bff;color:#fff;border:none;padding:12px 30px;border-radius:6px;cursor:pointer;font-size:1em;transition:background .2s}.btn-back:hover{background:#0056b3}@media(max-width:768px){.product-header h1{font-size:1.5em}.specs-grid{grid-template-columns:1fr}.product-info-section{padding-left:0}.btn-buy{width:100%}}
