.product-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));gap:1.5rem}@media (min-width:768px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.product-card{background-color:#fff;border-radius:8px;box-shadow:0 4px 6px rgba(0,0,0,.1);overflow:hidden;display:flex;flex-direction:column;transition:all .3s ease-in-out}.product-card img{width:100%;height:200px;object-fit:cover;background-color:#eee;transition:transform .3s ease-in-out}.product-card-content{padding:1rem;flex-grow:1}.product-card-content h2{font-size:1.2rem;margin-top:0;margin-bottom:.5rem}.product-card-content h2 a{text-decoration:none;color:inherit;transition:color .2s ease-in-out}.product-card-content h2 a:hover{color:var(--primary-color)}.product-card-content .price{font-size:1.1rem;font-weight:700;color:#007bff;margin-bottom:1rem}.product-card-actions{padding:0 1rem 1rem 1rem;display:flex;justify-content:space-between;opacity:1;transform:translateY(0);transition:opacity .3s ease-in-out,transform .3s ease-in-out}@media (min-width:768px){.product-card .product-card-actions{opacity:0;transform:translateY(10px)}.product-card:hover{transform:translateY(-5px) scale(1.03);box-shadow:0 10px 20px rgba(0,0,0,.15)}.product-card:hover img{transform:scale(1.05)}.product-card:hover .product-card-actions{opacity:1;transform:translateY(0)}}.category-filter{display:flex;justify-content:center;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.category-btn{display:inline-block;padding:.4rem .8rem;border:1px solid #ccc;border-radius:7px;text-decoration:none;color:#333;font-size:.8rem;font-weight:500;background-color:#fff;transition:all .2s ease-in-out}.category-btn:hover{background-color:#eee;border-color:#bbb}.category-btn.active{background-color:#007bff;color:#fff;border-color:#007bff;font-weight:700}@media (min-width:768px){.category-filter{gap:.75rem}.category-btn{padding:.5rem 1.25rem;font-size:1.1rem}}.btn{padding:.5rem .75rem;border:none;border-radius:5px;cursor:pointer;font-weight:700;font-size:.9rem;text-decoration:none;display:inline-block;text-align:center}.btn-primary{background-color:#007bff;color:#fff}.btn-primary:hover{background-color:#0056b3}.btn-secondary{background-color:#6c757d;color:#fff}.btn-secondary:hover{background-color:#5a6268}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.5);display:none;padding:2rem;box-sizing:border-box;overflow-y:auto;z-index:2000}#cart-modal-overlay .modal-content{max-width:400px;margin:0 0 0 auto;height:100vh;max-height:100vh;border-radius:0;transform:translateX(100%);transition:transform .3s ease-out}#cart-modal-overlay.is-open .modal-content{transform:translateX(0)}#cart-modal-body{display:flex;flex-direction:column;justify-content:space-between;height:100%;overflow:hidden}#cart-items-container{flex-grow:1;overflow-y:auto;padding-right:10px}.cart-item{display:flex;gap:1rem;padding:1rem 0;border-bottom:1px solid #eee;align-items:center}.cart-item img{width:60px;height:60px;object-fit:cover;border-radius:4px;flex-shrink:0}.cart-item-info{flex-grow:1;min-width:0}.cart-item-info h4{margin:0 0 .25rem 0;font-size:1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cart-item-info .price{font-size:.9rem;color:#555;display:block}.cart-item-actions.quantity-control{display:flex;align-items:center;flex-shrink:0}.btn-qty{background-color:#eee;border:1px solid #ccc;color:#333;width:25px;height:25px;font-size:1rem;cursor:pointer;border-radius:4px;line-height:23px;text-align:center}.btn-qty:hover{background-color:#ddd}.item-quantity{width:40px;text-align:center;border:1px solid #ccc;height:25px;margin:0 5px;border-radius:4px;-moz-appearance:textfield}.item-quantity::-webkit-inner-spin-button,.item-quantity::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}#cart-summary{padding:1rem 0 0 0;border-top:2px solid #333;margin-top:auto;background:#fff}.summary-row{display:flex;justify-content:space-between;font-size:1.2rem;font-weight:700;margin-bottom:1rem}.modal-content{background-color:#fff;border-radius:8px;width:90%;max-width:600px;position:relative;margin:auto;max-height:90vh;display:flex;flex-direction:column}.modal-header{padding:1.5rem;border-bottom:1px solid #dee2e6;display:flex;justify-content:space-between;align-items:center}.modal-header h2{margin:0;font-size:1.5rem}.modal-close{font-size:2rem;font-weight:700;cursor:pointer;line-height:1}.modal-body{padding:1.5rem;overflow-y:auto}.modal-product-layout{display:flex;flex-direction:column;gap:1.5rem}@media (min-width:600px){.modal-product-layout{flex-direction:row}.modal-product-layout>div{flex:1}}.modal-product-layout img{width:100%;border-radius:8px}.modal-product-layout .price{font-size:1.5rem;font-weight:700;color:#007bff;margin:.5rem 0}.tab-nav{display:flex;border-bottom:2px solid #dee2e6;margin-top:1.5rem}.tab-btn{padding:.75rem 1rem;cursor:pointer;border:none;background:0 0;font-size:1rem;font-weight:500;color:#6c757d}.tab-btn.active{color:#007bff;border-bottom:2px solid #007bff}.tab-content{display:none;padding:1rem 0;line-height:1.6;white-space:pre-wrap}.tab-content.active{display:block}