﻿/* FIRELAX - Products List Page Styles */
/* ========== MODERNES PRODUCT LISTING DESIGN - FRELAX STYLE ==========
        Weißes, sauberes Design mit horizontalem Filter
        ===================================================================== */

         /* Basis-Reset */
         *, *::before, *::after {
             box-sizing: border-box;
         }

         /* Main Wrapper - Heller Hintergrund */
         .products-wrapper {
             display: flex;
             flex-direction: column;
             min-height: calc(100vh - 200px);
             background: #ffffff;
             font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
         }

         /* ========== HORIZONTALER FILTER - STICKY & HELLER ALS HEADER ========== */
         .filter-bar {
             background: linear-gradient(180deg, #4a5159 0%, #424850 100%);
             border-top: 1px solid #5a6068;
             border-bottom: 1px solid #353a42;
              padding: 16px 30px; /* Gleich wie Header */
             padding-top: 34px; /* Mehr Abstand oben für den Inhalt */
             padding-bottom: 18px;
             position: fixed;
             top: 76px; /* Unter dem Header */
             left: 0;
             right: 0;
             z-index: 99;
             box-shadow: 0 4px 15px rgba(0,0,0,0.25);
         }

         /* Platzhalter für den fixed Filter */
         .filter-bar-spacer {
             height: 88px; /* Angepasste Höhe des Filter-Bars */
         }

         .filter-bar-inner {
              max-width: 1600px;
             width: 100%;
             margin: 0 auto;
              padding: 0; /* Kein extra padding - wird von filter-bar übernommen */
         }

         .filter-bar-row {
             display: flex;
             align-items: center;
             flex-wrap: wrap;
             gap: 15px;
         }

         .filter-bar-group {
             display: flex;
             align-items: center;
             gap: 8px;
         }

         .filter-bar-group label {
             font-size: 13px;
             font-weight: 600;
             color: #d0d5dc;
             white-space: nowrap;
         }

         .filter-bar .form-select,
         .filter-bar .form-control {
             background: #353a42;
             border: 1px solid #5a6068;
             color: #e8eaed;
             font-size: 13px;
             border-radius: 6px;
             padding: 8px 12px;
             min-width: 140px;
             transition: all 0.2s ease;
         }

         .filter-bar .form-select:focus,
         .filter-bar .form-control:focus {
             border-color: #feaf39;
             box-shadow: 0 0 0 2px rgba(254, 175, 57, 0.2);
             outline: none;
             background: #2a2e35;
         }

         .filter-bar .form-select option {
             background: #353a42;
             color: #e8eaed;
         }

         .filter-bar .price-inputs {
             display: flex;
             align-items: center;
             gap: 6px;
         }

         .filter-bar .price-inputs span {
             color: #888;
         }

         .filter-bar .price-inputs .form-control {
             width: 80px;
             min-width: 80px;
         }

         .filter-bar .filter-checkbox {
             display: flex;
             align-items: center;
             gap: 6px;
             padding: 8px 12px;
             background: #353a42;
             border: 1px solid #5a6068;
             border-radius: 6px;
             cursor: pointer;
             transition: all 0.2s ease;
             font-size: 13px;
             color: #d0d5dc;
         }

         .filter-bar .filter-checkbox:hover {
             border-color: #feaf39;
             color: #feaf39;
             background: #3d434b;
         }

         .filter-bar .filter-checkbox input {
             accent-color: #feaf39;
             width: 14px;
             height: 14px;
         }

         .filter-bar .btn-filter {
             background: linear-gradient(135deg, #feaf39, #f59e0b);
             color: #1a1d23;
             border: none;
             padding: 8px 18px;
             border-radius: 6px;
             font-weight: 600;
             font-size: 13px;
             cursor: pointer;
             transition: all 0.2s ease;
             display: flex;
             align-items: center;
             gap: 6px;
         }

         .filter-bar .btn-filter:hover {
             background: linear-gradient(135deg, #ffbf4d, #feaf39);
             transform: translateY(-1px);
             box-shadow: 0 4px 12px rgba(254, 175, 57, 0.3);
         }

         .filter-bar .btn-reset {
             background: transparent;
             color: #b0b5bc;
             border: 1px solid #5a6068;
             padding: 8px 14px;
             border-radius: 6px;
             font-size: 13px;
             cursor: pointer;
             transition: all 0.2s ease;
             text-decoration: none;
             display: flex;
             align-items: center;
             gap: 6px;
         }

         .filter-bar .btn-reset:hover {
             background: #5a6068;
             color: #e8eaed;
             border-color: #6a7078;
         }

         .filter-bar .filter-count {
             background: linear-gradient(135deg, #feaf39, #f59e0b);
             color: #1a1d23;
             padding: 6px 14px;
             border-radius: 20px;
             font-size: 12px;
             font-weight: 700;
             margin-left: auto;
         }

         /* Main Content - Gleiche Breite wie Header und Filter */
         .products-main-content {
             flex: 1;
             padding: 30px 30px; /* Gleich wie Header/Filter horizontal */
             background: #ffffff;
             min-height: calc(100vh - 200px);
             max-width: 1660px; /* 1600px + 2x30px padding */
             margin: 0 auto;
             width: 100%;
         }

         .filter-body {
             padding: 0;
         }

         /* Filter Sections */
         .filter-section {
             border-bottom: 1px solid #f0f0f0;
             background: #ffffff;
         }

             .filter-section:last-child {
                 border-bottom: none;
             }

         .filter-section-header {
             padding: 18px 24px;
             cursor: pointer;
             display: flex;
             align-items: center;
             justify-content: space-between;
             transition: all 0.3s ease;
             color: #212121;
             font-weight: 600;
             font-size: 14px;
             user-select: none;
         }

             .filter-section-header:hover {
                 background: #fafafa;
             }

             .filter-section-header i:first-child {
                 color: #feaf39;
                 margin-right: 12px;
                 width: 18px;
                 text-align: center;
                 font-size: 14px;
             }

             .filter-section-header .toggle-icon {
                 color: #999;
                 font-size: 12px;
                 transition: transform 0.3s ease;
             }

         .filter-section.collapsed .toggle-icon {
             transform: rotate(-90deg);
         }

         .filter-section-content {
             padding: 0 24px 20px;
         }

         /* Form Controls - Hellere Variante */
         .filter-sidebar .form-control,
         .filter-sidebar .form-select {
             background: #ffffff;
             border: 1px solid #d0d0d0;
             color: #212121;
             font-size: 13px;
             border-radius: 8px;
             padding: 11px 14px;
             transition: all 0.3s ease;
         }

         .filter-sidebar .form-select {
             padding-right: 40px;
             background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
             background-repeat: no-repeat;
             background-position: right 12px center;
             background-size: 12px;
         }

             .filter-sidebar .form-control:focus,
             .filter-sidebar .form-select:focus {
                 border-color: #feaf39;
                 box-shadow: 0 0 0 3px rgba(254, 175, 57, 0.1);
                 outline: none;
             }

         .filter-sidebar .form-control::placeholder {
             color: #999;
         }

         .filter-sidebar .form-select option {
             background: #ffffff;
             color: #212121;
         }

         /* Checkboxes */
         .filter-checkbox {
             display: flex;
             align-items: center;
             padding: 10px 0;
             cursor: pointer;
             transition: all 0.2s ease;
             color: #444;
             border-radius: 8px;
             margin: 2px -8px;
             padding-left: 8px;
             padding-right: 8px;
         }

             .filter-checkbox:hover {
                 color: #feaf39;
                 background: rgba(254, 175, 57, 0.05);
             }

             .filter-checkbox input[type="checkbox"] {
                 width: 18px;
                 height: 18px;
                 margin-right: 12px;
                 accent-color: #feaf39;
                 cursor: pointer;
                 border-radius: 4px;
             }

             .filter-checkbox .count {
                 margin-left: auto;
                 background: #f0f0f0;
                 color: #666;
                 padding: 3px 10px;
                 border-radius: 12px;
                 font-size: 11px;
                 font-weight: 600;
             }

         /* Category List */
         .category-list {
             list-style: none;
             padding: 0;
             margin: 0;
         }

             .category-list li {
                 padding: 0;
             }

             .category-list a,
             .category-list label {
                 display: flex;
                 align-items: center;
                 padding: 10px 8px;
                 color: #444;
                 text-decoration: none;
                 font-size: 13px;
                 transition: all 0.2s ease;
                 cursor: pointer;
                 border-radius: 8px;
                 margin: 2px -8px;
             }

                 .category-list a:hover,
                 .category-list label:hover {
                     color: #feaf39;
                     background: rgba(254, 175, 57, 0.05);
                 }

                 .category-list a.active,
                 .category-list input:checked + label {
                     color: #feaf39;
                     font-weight: 700;
                     background: rgba(254, 175, 57, 0.1);
                 }

                 .category-list a i,
                 .category-list label i {
                     color: #999;
                     margin-right: 10px;
                     transition: color 0.2s ease;
                 }

                 .category-list a:hover i,
                 .category-list label:hover i,
                 .category-list a.active i {
                     color: #feaf39;
                 }

         /* Price Range */
         .price-range {
             display: flex;
             gap: 12px;
             align-items: center;
         }

             .price-range .form-control {
                 flex: 1;
             }

         .price-range-info {
             font-size: 11px;
             color: #666;
             margin-top: 10px;
             display: flex;
             align-items: center;
             gap: 6px;
         }

             .price-range-info i {
                 color: #feaf39;
             }

         /* Filter Actions */
         .filter-actions {
             padding: 20px 24px;
             background: #ffffff;
             border-top: 1px solid #f0f0f0;
             position: sticky;
             bottom: 0;
             box-shadow: 0 -2px 10px rgba(0,0,0,0.05);
         }

             .filter-actions .btn-primary {
                 background: #feaf39;
                 border: none;
                 color: #fff;
                 font-weight: 700;
                 padding: 13px;
                 border-radius: 8px;
                 font-size: 13px;
                 transition: all 0.3s ease;
                 width: 100%;
                 margin-bottom: 10px;
                 display: flex;
                 align-items: center;
                 justify-content: center;
                 gap: 8px;
             }

                 .filter-actions .btn-primary:hover {
                     background: #e5981f;
                     transform: translateY(-2px);
                     box-shadow: 0 4px 15px rgba(254, 175, 57, 0.3);
                 }

             .filter-actions .btn-outline-secondary {
                 border: 1px solid #d0d0d0;
                 color: #666;
                 font-weight: 600;
                 padding: 12px;
                 border-radius: 8px;
                 font-size: 13px;
                 background: #ffffff;
                 transition: all 0.3s ease;
                 width: 100%;
                 display: flex;
                 align-items: center;
                 justify-content: center;
                 gap: 8px;
                 text-decoration: none;
             }

                 .filter-actions .btn-outline-secondary:hover {
                     border-color: #feaf39;
                     color: #feaf39;
                     background: rgba(254, 175, 57, 0.05);
                 }

         /* Main Content Area */
         /* Breadcrumb - Wie Details.cshtml */
         .breadcrumb {
             background: transparent;
             padding: 0;
             margin-bottom: 20px;
             border-bottom: 1px solid #f0f0f0;
             padding-bottom: 15px;
         }

         .breadcrumb-item a {
             color: #666;
             text-decoration: none;
             font-size: 13px;
             transition: color 0.2s ease;
         }

             .breadcrumb-item a:hover {
                 color: #feaf39;
             }

         .breadcrumb-item.active {
             color: #999;
             font-size: 13px;
         }

         .breadcrumb-item + .breadcrumb-item::before {
             color: #ccc;
             content: "×";
             font-weight: bold;
             margin: 0 8px;
         }

         /* Page Title */
         .products-main-content h1 {
             color: #212121;
             font-weight: 700;
             font-size: 1.8rem;
             margin-bottom: 5px;
         }

             .products-main-content h1 small {
                 color: #666 !important;
                 font-weight: 400;
                 font-size: 0.9rem;
             }

         /* Sale Banner - Angepasst */
         .sale-banner {
             background: linear-gradient(135deg, #fff5f5 0%, #fff7f0 100%);
             border: 1px solid #ffe0e0;
             border-radius: 12px;
             padding: 24px 32px;
             margin-bottom: 30px;
             display: flex;
             align-items: center;
             justify-content: space-between;
             box-shadow: 0 4px 10px rgba(0,0,0,0.05);
         }

         .sale-banner-content {
             display: flex;
             align-items: center;
             gap: 16px;
         }

         .sale-banner-icon {
             width: 60px;
             height: 60px;
             background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
             border-radius: 50%;
             display: flex;
             align-items: center;
             justify-content: center;
             animation: pulse-fire 2s ease-in-out infinite;
         }

             .sale-banner-icon i {
                 font-size: 24px;
                 color: white;
             }

         @keyframes pulse-fire {
             0%, 100% {
                 transform: scale(1);
                 box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.4);
             }

             50% {
                 transform: scale(1.05);
                 box-shadow: 0 0 20px 5px rgba(239, 68, 68, 0.2);
             }
         }

         .sale-banner-text h2 {
             color: #ef4444;
             font-weight: 800;
             margin: 0 0 4px 0;
             font-size: 1.5rem;
         }

         .sale-banner-text p {
             color: #666;
             margin: 0;
             font-size: 0.9rem;
         }

         .sale-banner-badge {
             background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
             color: white;
             padding: 12px 24px;
             border-radius: 50px;
             font-weight: 700;
             font-size: 1.1rem;
             box-shadow: 0 4px 15px rgba(239, 68, 68, 0.4);
         }

         /* View Toggle & Sort - Moderne Buttons */
         .view-toggle .btn {
             padding: 10px 14px;
             border: 1px solid #d0d0d0;
             color: #666;
             background: #ffffff;
             transition: all 0.3s ease;
         }

             .view-toggle .btn:first-child {
                 border-radius: 8px 0 0 8px;
             }

             .view-toggle .btn:last-child {
                 border-radius: 0 8px 8px 0;
             }

             .view-toggle .btn:hover {
                 border-color: #feaf39;
                 color: #feaf39;
                 background: rgba(254, 175, 57, 0.05);
             }

             .view-toggle .btn.active {
                 background: #feaf39;
                 border-color: #feaf39;
                 color: #ffffff;
                 box-shadow: 0 2px 8px rgba(254, 175, 57, 0.3);
             }

         .sort-select {
             background: #ffffff;
             border: 1px solid #d0d0d0;
             color: #212121;
             border-radius: 8px;
             padding: 10px 40px 10px 14px;
             font-size: 13px;
             min-width: 160px;
             font-weight: 500;
             transition: all 0.3s ease;
             background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23666' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");
             background-repeat: no-repeat;
             background-position: right 12px center;
             background-size: 12px;
             cursor: pointer;
         }

             .sort-select:focus {
                 border-color: #feaf39;
                 box-shadow: 0 0 0 3px rgba(254, 175, 57, 0.1);
                 outline: none;
             }

             .sort-select option {
                 background: #ffffff;
                 color: #212121;
             }

         /* Product Grid - Moderne Cards wie Details.cshtml */
         .product-grid {
             display: grid;
             grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
             gap: 25px;
             margin-bottom: 40px;
         }

         .product-card {
             background: #ffffff;
             border: 1px solid #e0e0e0;
             border-radius: 12px;
             overflow: hidden;
             transition: all 0.3s ease;
             box-shadow: 0 2px 8px rgba(0,0,0,0.05);
             height: 100%;
             display: flex;
             flex-direction: column;
         }

             .product-card:hover {
                 transform: translateY(-5px);
                 box-shadow: 0 8px 25px rgba(0,0,0,0.15);
                 border-color: #feaf39;
             }

         .product-image-container {
             position: relative;
             width: 100%;
             aspect-ratio: 1;
             background: #fafafa;
             border-bottom: 1px solid #f0f0f0;
         }

         .product-image {
             width: 100%;
             height: 100%;
             object-fit: contain;
             padding: 20px;
             transition: transform 0.3s ease;
         }

         .product-card:hover .product-image {
             transform: scale(1.05);
         }

         .product-badge {
             position: absolute;
             top: 12px;
             right: 12px;
             background: #ef4444;
             color: white;
             padding: 6px 12px;
             border-radius: 6px;
             font-size: 11px;
             font-weight: 700;
             box-shadow: 0 2px 8px rgba(239, 68, 68, 0.3);
         }

             .product-badge.sale {
                 background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
             }

         .product-info {
             padding: 20px;
             flex-grow: 1;
             display: flex;
             flex-direction: column;
         }

         .product-category {
             color: #feaf39;
             font-size: 11px;
             font-weight: 700;
             text-transform: uppercase;
             letter-spacing: 0.5px;
             margin-bottom: 8px;
             text-decoration: none;
             display: block;
         }

         .product-category:hover {
             color: #e5981f;
         }

         .product-title {
             color: #212121;
             font-size: 15px;
             font-weight: 600;
             margin-bottom: 10px;
             line-height: 1.4;
             flex-grow: 1;
             text-decoration: none;
             display: block;
             transition: color 0.2s ease;
         }

             .product-title:hover {
                 color: #feaf39;
             }

         /* Produktbeschreibung Dropdown in Produktkarten */
         .product-card-desc {
             margin-bottom: 6px;
             font-size: 0.8rem;
             color: #6b7280;
         }

         .product-card-desc summary {
             cursor: pointer;
             font-weight: 500;
             color: #374151;
             user-select: none;
         }

         .product-card-desc summary:hover {
             color: #feaf39;
         }

         .product-card-desc p {
             margin: 4px 0 0;
             line-height: 1.4;
         }

         .product-sku {
             color: #999;
             font-size: 11px;
             margin-bottom: 15px;
         }

         .product-price-section {
             margin-top: auto;
             padding-top: 15px;
             border-top: 1px solid #f0f0f0;
         }

         .price-wrapper {
             display: flex;
             align-items: center;
             gap: 10px;
             flex-wrap: wrap;
             margin-bottom: 10px;
         }

         .price-current {
             color: #212121;
             font-size: 20px;
             font-weight: 800;
         }

         .price-original {
             color: #999;
             font-size: 14px;
             text-decoration: line-through;
         }

         /* Rabatt-Badge auf Produktkarte (Products/Index) */
         .badge-discount {
             position: absolute;
             top: 10px;
             left: 10px;
             background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
             color: white;
             padding: 4px 10px;
             border-radius: 4px;
             font-size: 12px;
             font-weight: 700;
             z-index: 2;
         }

         /* Streichpreis im Sale-Widget */
         .price-sale-original {
             color: #999;
             font-size: 12px;
             text-decoration: line-through;
             margin-right: 6px;
         }

         /* Discount-Badge Overlay im Sale-Mini-Widget */
         .sale-badge-mini {
             position: absolute;
             top: 4px;
             right: 4px;
             background: #ef4444;
             color: white;
             padding: 2px 6px;
             border-radius: 3px;
             font-size: 10px;
             font-weight: 700;
         }

         .discount-badge {
             background: linear-gradient(135deg, #ef4444 0%, #dc2626 100%);
             color: white;
             padding: 4px 8px;
             border-radius: 4px;
             font-size: 11px;
             font-weight: 700;
         }

         .product-stock {
             display: flex;
             align-items: center;
             gap: 6px;
             font-size: 12px;
             margin-bottom: 15px;
             padding: 6px 0;
         }

         .stock-available {
             color: #22c55e;
         }

         .stock-low {
             color: #ef4444;
         }

         .stock-unavailable {
             color: #999;
         }

         .product-actions {
             display: flex;
             gap: 10px;
         }

         .btn-add-cart {
             flex: 1;
             background: #feaf39;
             border: none;
             color: #1a1d23;
             font-weight: 700;
             font-size: 13px;
             padding: 12px;
             border-radius: 8px;
             transition: all 0.3s ease;
             display: flex;
             align-items: center;
             justify-content: center;
             gap: 8px;
             min-height: 44px;
         }

             .btn-add-cart:hover:not(:disabled) {
                 background: #e5981f;
                 transform: translateY(-2px);
                 box-shadow: 0 4px 15px rgba(254, 175, 57, 0.3);
             }

             .btn-add-cart:disabled {
                 background: #ccc;
                 cursor: not-allowed;
             }

         .btn-details {
             background: #ffffff;
             border: 1px solid #d0d0d0;
             color: #666;
             font-weight: 600;
             font-size: 13px;
             padding: 12px;
             border-radius: 8px;
             transition: all 0.3s ease;
             display: flex;
             align-items: center;
             justify-content: center;
             gap: 8px;
             min-width: 80px;
             min-height: 44px;
             text-decoration: none;
         }

             .btn-details:hover {
                 border-color: #feaf39;
                 color: #feaf39;
                 background: rgba(254, 175, 57, 0.05);
             }

         /* List View */
         .product-grid.list-view {
             grid-template-columns: 1fr;
             gap: 15px;
         }

             .product-grid.list-view .product-card {
                 flex-direction: row;
                 min-height: 180px;
                 height: auto;
             }

             .product-grid.list-view .product-image-container {
                 width: 180px;
                 min-width: 180px;
                 aspect-ratio: 1;
                 border-bottom: none;
                 border-right: 1px solid #f0f0f0;
             }

             .product-grid.list-view .product-info {
                 flex: 1;
                 padding: 20px 25px;
                 display: flex;
                 flex-direction: row;
                 flex-wrap: wrap;
                 align-items: center;
                 gap: 15px;
             }

             .product-grid.list-view .product-category {
                 width: 100%;
                 margin-bottom: 0;
             }

             .product-grid.list-view .product-title {
                 flex: 1;
                 min-width: 200px;
                 font-size: 16px;
                 margin-bottom: 0;
             }

             .product-grid.list-view .product-sku {
                 width: 100%;
                 margin-bottom: 0;
                 order: -1;
             }

             .product-grid.list-view .product-price-section {
                 margin-top: 0;
                 padding-top: 0;
                 border-top: none;
                 min-width: 120px;
             }

             .product-grid.list-view .product-stock {
                 margin-bottom: 0;
                 min-width: 120px;
             }

             .product-grid.list-view .product-actions {
                 min-width: 280px;
                 margin-left: auto;
             }

         /* Pagination */
         .pagination-info {
             font-size: 14px;
         }
         
         .pagination {
             gap: 5px;
         }
         
         .pagination .page-item .page-link {
             background: #ffffff;
             border: 1px solid #d0d0d0;
             color: #666;
             border-radius: 8px;
             padding: 10px 16px;
             font-weight: 600;
             font-size: 14px;
             transition: all 0.2s ease;
             text-decoration: none;
             min-width: 44px;
             min-height: 44px;
             display: flex;
             align-items: center;
             justify-content: center;
             text-align: center;
         }
         
         .pagination .page-item .page-link:hover {
             background: #feaf39;
             border-color: #feaf39;
             color: #ffffff;
             transform: translateY(-2px);
             box-shadow: 0 4px 12px rgba(254, 175, 57, 0.3);
         }
         
         .pagination .page-item.active .page-link {
             background: #feaf39;
             border-color: #feaf39;
             color: #ffffff;
             box-shadow: 0 2px 8px rgba(254, 175, 57, 0.3);
         }
         
         .pagination .page-item.disabled .page-link {
             background: #f5f5f5;
             border-color: #e0e0e0;
             color: #bbb;
             cursor: not-allowed;
             transform: none;
             box-shadow: none;
         }
         
         .pagination .page-item.disabled .page-link:hover {
             background: #f5f5f5;
             transform: none;
             box-shadow: none;
         }

         /* Responsive */
         @media (max-width: 1200px) {
             .filter-bar-row {
                 flex-wrap: wrap;
             }
             .filter-bar-group {
                 flex: 1 1 auto;
                 min-width: 140px;
             }
         }

         @media (max-width: 991px) {
             .filter-bar {
                 padding: 12px 20px;
             }
             .filter-bar-row {
                 gap: 10px;
             }
             .filter-bar-group label {
                 display: none;
             }
             .products-main-content {
                 padding: 25px;
             }

             .product-grid {
                 grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
                 gap: 20px;
             }
         }

         @media (max-width: 767px) {
             .filter-bar {
                 position: relative;
                 top: 0;
                 padding: 12px 15px;
             }
             .filter-bar-spacer {
                 display: none;
             }
             .filter-bar-row {
                 flex-direction: column;
                 align-items: stretch;
                 gap: 10px;
             }
             .filter-bar-group {
                 width: 100%;
             }
             .filter-bar-group label {
                 min-width: 80px;
             }
             .filter-bar .form-select,
             .filter-bar .form-control {
                 flex: 1;
             }
             .filter-bar .price-inputs {
                 width: 100%;
             }
             .filter-bar .price-inputs .form-control {
                 flex: 1;
                 min-width: 0;
             }
             .filter-bar .filter-checkbox {
                 justify-content: center;
             }
             .filter-bar .btn-filter,
             .filter-bar .btn-reset {
                 width: 100%;
                 justify-content: center;
             }
             .filter-bar .filter-count {
                 margin: 0 auto;
             }

             .products-main-content {
                 padding: 20px 15px;
             }

             .product-grid {
                 grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
                 gap: 15px;
             }

                 .product-grid.list-view .product-card {
                     flex-direction: column;
                     height: auto;
                 }

                 .product-grid.list-view .product-image-container {
                     width: 100%;
                     min-width: 100%;
                     border-right: none;
                     border-bottom: 1px solid #f0f0f0;
                 }

                 .product-grid.list-view .product-info {
                     flex-direction: column;
                     align-items: stretch;
                 }

                 .product-grid.list-view .product-title {
                     min-width: 100%;
                 }

                 .product-grid.list-view .product-actions {
                     min-width: 100%;
                     margin-left: 0;
                 }
         }

         @media (max-width: 576px) {
             .product-grid {
                 grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
             }

             .sale-banner {
                 flex-direction: column;
                 text-align: center;
                 gap: 20px;
             }

             /* View Toggle und Sort auf Mobile kompakter */
             .view-toggle .btn {
                 padding: 10px 12px;
                 min-height: 44px;
             }

             .sort-select {
                 min-width: 120px;
                 font-size: 12px;
                 min-height: 44px;
             }

             .pagination {
                 flex-wrap: wrap;
                 justify-content: center;
             }

             .pagination-info {
                 font-size: 13px;
                 text-align: center;
             }
         }
