body{display:block;margin:0}:root{width:100%;font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.navbar{width:100%;max-width:1240px;height:100px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;padding:.75rem 2rem;background:#fff;color:#000;position:relative;box-sizing:border-box}.navbar-toggle{display:none;flex-direction:column;cursor:pointer;padding:.5rem;background:none;border:none;z-index:1001;position:relative;width:50px;height:570px;overflow:hidden;outline:none;-webkit-appearance:none;-moz-appearance:none;appearance:none}.navbar-container{width:100%;display:flex;align-items:center;justify-content:space-between;position:relative}.logo-img{width:130px;height:auto;max-width:100%}.nav-links{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0;align-items:center}.nav-links a{color:#000;text-decoration:none;font-size:1rem;font-weight:400;transition:color .2s,font-weight .2s;display:inline-block;white-space:nowrap}.nav-links a:hover{color:#000;font-weight:600}.nav-links a.active{font-weight:700;text-decoration:underline}.navbar-toggle{display:none;flex-direction:column;cursor:pointer;padding:.5rem;background:none;border:none;z-index:1001;position:relative;width:40px;height:40px}.navbar-toggle span{width:25px;height:3px;background-color:#000;margin:3px 0;transition:all .3s ease;border-radius:2px;display:block;transform-origin:center}.navbar-toggle.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.navbar-toggle.active span:nth-child(2){opacity:0;transform:translate(-20px)}.navbar-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(7px,-6px)}.cart-widget-mobile{margin-top:1rem;padding:1rem;border-top:1px solid #eee;width:100%;text-align:center}@media (max-width: 768px){.nav-links li a{width:calc(100% - 35px)}.cart-widget-mobile{display:block}.nav-links li:last-child{margin-top:1rem;padding-top:1rem;border-top:1px solid #eee}.navbar{padding:.75rem 1rem;height:auto;min-height:80px;position:relative;overflow-x:hidden}.navbar-container{width:100%;max-width:100%;overflow-x:hidden}.navbar-toggle{display:flex}.nav-links{position:fixed;top:0;left:-100%;width:100vw;height:100vh;background-color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:2rem;transition:left .3s ease-in-out;z-index:1000;box-shadow:0 0 20px #0000001a;padding:2rem 0;overflow-y:auto}.nav-links.active{left:0}.nav-links li{margin:0;width:100%;text-align:center}.nav-links a{font-size:1.2rem;padding:1rem 2rem;display:block;width:100%;text-align:center;transition:all .3s ease}.nav-links a:hover{background-color:#f8f9fa;color:#000}.logo-img{width:100px}}@media (max-width: 480px){.navbar{padding:.5rem 1rem;min-height:70px}.nav-links a{font-size:1.1rem;padding:.8rem 1.5rem}.logo-img{width:90px}}.cart-widget{text-decoration:none;color:inherit}.cart-icon{position:relative;font-size:1.5rem;padding:.5rem;border-radius:5px;transition:background-color .3s}.cart-icon img{width:24px;height:24px}.cart-icon:hover{background-color:#f8f9fa}.cart-badge{position:absolute;top:-5px;right:-5px;background-color:#dc3545;color:#fff;border-radius:50%;width:20px;height:20px;font-size:.8rem;display:flex;align-items:center;justify-content:center;font-weight:700}.product-card{border:1px solid #dee2e6;border-radius:10px;padding:1rem;background-color:#fff;box-shadow:0 2px 4px #0000001a;transition:transform .3s,box-shadow .3s;cursor:pointer;display:flex;flex-direction:column;height:100%}.product-card:hover{transform:translateY(-5px);box-shadow:0 4px 8px #00000026}.product-image{width:100%;height:200px;overflow:hidden;border-radius:8px;margin-bottom:1rem;display:flex;align-items:center;justify-content:center;background-color:#f8f9fa}.product-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.product-card:hover .product-image img{transform:scale(1.05)}.product-info{flex:1;display:flex;flex-direction:column;justify-content:space-between}.product-info h3{margin:0;font-size:1.1rem;color:#333;line-height:1.3;height:2rem;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.product-info h3 p{margin:0;font-size:.95rem;color:#555}.product-category{color:#6c757d;font-size:.9rem;margin:0;font-weight:500}.product-year{color:#6c757d;font-size:.85rem;margin:0}.product-price{color:#007bff;font-weight:700;font-size:1.2rem;margin:0}.product-stock{font-size:.9rem;margin:.5rem 0 0;padding:.25rem .5rem;border-radius:4px;text-align:center;font-weight:500}.product-stock:contains("Sin stock"){background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.product-stock:not(:contains("Sin stock")){background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.stock-available{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.stock-unavailable{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}@media (max-width: 768px){.product-card{padding:.75rem}.product-image{height:180px}.product-info h3{font-size:1rem;height:2.4rem}.product-price{font-size:1.1rem}}.item-list-container{max-width:1200px;margin:0 auto;padding:2rem}.item-list-container h2{text-align:center;margin-bottom:2rem;color:#333}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:3rem;margin-top:2rem;align-items:stretch}.loading-container,.error-container,.empty-container{text-align:center;padding:4rem 2rem}.error-container button{background-color:#007bff;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:5px;cursor:pointer;margin-top:1rem}.error-container button:hover{background-color:#0056b3}@media (max-width: 768px){.products-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.item-list-container{padding:1rem}}.item-count{display:flex;flex-direction:column;gap:1rem;margin-top:1rem}.quantity-controls{display:flex;align-items:center;gap:1rem;justify-content:center}.quantity-btn{background-color:#007bff;color:#fff;border:none;border-radius:50%;width:40px;height:40px;font-size:1.2rem;cursor:pointer;transition:background-color .3s}.quantity-btn:hover:not(:disabled){background-color:#0056b3}.quantity-btn:disabled{background-color:#ccc;cursor:not-allowed}.quantity{font-size:1.2rem;font-weight:700;min-width:30px;text-align:center}.add-to-cart-btn{background-color:#28a745;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:5px;font-size:1rem;cursor:pointer;transition:background-color .3s}.add-to-cart-btn:hover:not(:disabled){background-color:#218838}.add-to-cart-btn:disabled{background-color:#ccc;cursor:not-allowed}.no-stock{color:#dc3545;font-weight:700;text-align:center;padding:1rem;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:5px}.item-detail-container{max-width:1200px;margin:0 auto;padding:2rem}.back-btn{background-color:#6c757d;color:#fff;border:none;padding:.5rem 1rem;border-radius:5px;cursor:pointer;margin-bottom:2rem}.back-btn:hover{background-color:#5a6268}.detail-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.detail-imgs{display:flex;flex-direction:column;gap:1rem}.detail-img{width:100%;height:auto;border-radius:10px;box-shadow:0 4px 8px #0000001a}.detail-info{padding:1rem}.detail-info h2{color:#333;margin-bottom:1rem}.detail-info p{color:#333;margin-bottom:.5rem;font-size:1.1rem}.added-to-cart{color:#28a745;font-weight:700;background-color:#d4edda;padding:.5rem;border-radius:5px;text-align:center}.detail-loading{text-align:center;font-size:1.2rem;padding:2rem}@media (max-width: 768px){.detail-content{grid-template-columns:1fr}}.category-container{max-width:1200px;margin:0 auto;padding:2rem}.category-container h2{text-align:center;margin-bottom:2rem;color:#333}.products-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;margin-top:2rem;align-items:stretch}.category-loading,.category-error,.category-empty{text-align:center;padding:4rem 2rem}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.category-error button{background-color:#007bff;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:5px;cursor:pointer;margin-top:1rem}.category-error button:hover{background-color:#0056b3}@media (max-width: 768px){.products-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.category-container{padding:1rem}}@media (max-width: 480px){.products-grid{grid-template-columns:1fr;gap:1rem}}.cart-item{display:grid;grid-template-columns:100px 1fr auto auto;gap:1rem;align-items:center;padding:1rem;border:1px solid #dee2e6;border-radius:10px;background-color:#fff}.cart-summary .summary-line span{color:#333}.item-image img{width:100%;height:80px;object-fit:cover;border-radius:5px}.item-details h4{margin:0 0 .5rem;color:#333;font-size:1.1rem}.item-category{color:#6c757d;font-size:.9rem;margin:0 0 .5rem}.item-price{color:#007bff;font-weight:700;margin:0}.item-quantity{display:flex;align-items:center;gap:.5rem}.quantity-btn{background-color:#007bff;color:#fff;border:none;border-radius:50%;width:30px;height:30px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color .3s}.quantity-btn:hover{background-color:#0056b3}.quantity{font-weight:700;min-width:20px;text-align:center}.item-total{display:flex;flex-direction:column;align-items:center;gap:.5rem}.total-price{font-weight:700;font-size:1.1rem;color:#28a745}.remove-btn{background:none;border:none;cursor:pointer;font-size:1.2rem;padding:.25rem;border-radius:3px;transition:background-color .3s}.remove-btn img{width:20px;height:20px}.remove-btn:hover{background-color:#f8f9fa}@media (max-width: 768px){.cart-item{grid-template-columns:80px 1fr;grid-template-rows:auto auto}.item-quantity,.item-total{grid-column:1 / -1;justify-self:center}.item-total{flex-direction:row;justify-content:space-between;width:100%}}.cart-container{max-width:1200px;margin:0 auto;padding:2rem}.empty-cart{text-align:center;padding:4rem 2rem}.empty-cart h2{color:#6c757d;margin-bottom:1rem}.empty-cart p{color:#6c757d;margin-bottom:2rem}.cart-content{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-top:2rem}.cart-items{display:flex;flex-direction:column;gap:1rem}.cart-summary{background-color:#f3f1f1;padding:1.5rem;border-radius:10px;height:fit-content}.cart-summary h3{margin-bottom:1rem;color:#333}.summary-line{font-size:1.2rem;font-weight:700;padding:1rem 0;border-top:1px solid #dee2e6;margin-bottom:1rem}.cart-actions{display:flex;flex-direction:column;gap:.5rem}.clear-cart-btn{background-color:#dc3545;color:#fff;border:none;padding:.75rem;border-radius:5px;cursor:pointer;transition:background-color .3s}.clear-cart-btn:hover{background-color:#c82333}.checkout-btn{background-color:#28a745;color:#fff;text-decoration:none;padding:.75rem;border-radius:5px;text-align:center;transition:background-color .3s}.checkout-btn:hover{background-color:#218838}@media (max-width: 768px){.cart-content{grid-template-columns:1fr}}.checkout-container{max-width:1200px;margin:0 auto;padding:2rem}.checkout-content{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-top:2rem}.order-summary{background-color:#f3f1f1;padding:1.5rem;border-radius:10px;height:fit-content}.order-summary h3{margin-bottom:1rem;color:#333}.order-items{margin-bottom:1rem}.order-item{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #dee2e6}.order-item span{color:#333}.order-total{font-size:1.2rem;padding-top:1rem;border-top:2px solid #007bff;color:#007bff}.checkout-form{background-color:#f3f1f1;padding:1.5rem;border-radius:10px;box-shadow:0 2px 4px #0000001a}.checkout-form h3{margin-bottom:1.5rem;color:#333}.form-group{width:95%;margin-bottom:1rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:700;color:#333;text-align:left}.form-group input,.form-group textarea{width:100%;padding:.75rem;border:1px solid #ced4da;border-radius:5px;font-size:1rem;transition:border-color .3s}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 2px #007bff40}.submit-btn{width:100%;background-color:#28a745;color:#fff;border:none;padding:1rem;border-radius:5px;font-size:1.1rem;cursor:pointer;transition:background-color .3s;margin-top:1rem}.submit-btn:hover:not(:disabled){background-color:#218838}.submit-btn:disabled{background-color:#6c757d;cursor:not-allowed}.checkout-success,.checkout-empty{text-align:center;padding:4rem 2rem}.checkout-success h2{color:#28a745;margin-bottom:2rem}.success-content{background-color:#d4edda;padding:2rem;border-radius:10px;margin-bottom:2rem;border:1px solid #c3e6cb}.success-content p{margin-bottom:.5rem;font-size:1.1rem;color:#333}.continue-shopping-btn{background-color:#007bff;color:#fff;text-decoration:none;padding:.75rem 1.5rem;border-radius:5px;display:inline-block;transition:background-color .3s}.continue-shopping-btn:hover{background-color:#0056b3}@media (max-width: 768px){.checkout-content{grid-template-columns:1fr}}.error404{padding:2rem;text-align:center}.error404__title{margin-bottom:.5rem}.error404__desc{margin-bottom:1rem;color:#555}.error404__link{color:#007bff;text-decoration:underline}.error404__link:hover{text-decoration:none}#root{width:100%;margin:0 auto;padding:0;text-align:center}.logo:hover{filter:drop-shadow(0 0 2em #646cffaa)}.logo.react:hover{filter:drop-shadow(0 0 2em #61dafbaa)}@keyframes logo-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-reduced-motion: no-preference){a:nth-of-type(2) .logo{animation:logo-spin infinite 20s linear}}.card{padding:2em}.read-the-docs{color:#888}.footer{width:100%;background:#141414;color:#ecf0f1;margin-top:150px;padding:0}.footer-container{margin:0 auto;padding:3rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem}.footer-section h3{color:#fff;margin-bottom:1rem;font-size:1.5rem;font-weight:600}.footer-section h4{color:#ecf0f1;margin-bottom:1rem;font-size:1.2rem;font-weight:500}.footer-section p{margin-bottom:1rem;line-height:1.6;color:#bdc3c7}@media (max-width: 768px){.footer-container{grid-template-columns:1fr;padding:2rem 1rem 1rem;gap:1.5rem}}@media (max-width: 480px){.footer-container{padding:1.5rem 1rem 1rem}.footer-section h3{font-size:1.3rem}.footer-section h4{font-size:1.1rem}}
