.cart-container { max-width: 1200px; margin: 0 auto; padding: 30px 20px; } .cart-container h1 { margin-bottom: 30px; color: #333; font-size: 2em; } .cart-items { background: white; border-radius: 12px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); overflow: hidden; } .cart-table { width: 100%; border-collapse: collapse; } .cart-table thead { background: #f8f9fa; border-bottom: 2px solid #dee2e6; } .cart-table th { padding: 20px; text-align: left; font-weight: 600; color: #495057; font-size: 0.9em; text-transform: uppercase; letter-spacing: 0.5px; } .cart-table tbody tr { border-bottom: 1px solid #e9ecef; transition: background-color 0.2s; } .cart-table tbody tr:hover { background-color: #f8f9fa; } .cart-table td { padding: 20px; vertical-align: top; } .product-info { display: flex; gap: 20px; align-items: center; } .product-image { width: 100px; height: 100px; flex-shrink: 0; border-radius: 8px; overflow: hidden; background-color: #f8f9fa; display: flex; align-items: center; justify-content: center; padding: 10px; } .product-image img { width: 100%; height: 100%; object-fit: contain; } .product-details { flex: 1; } .product-details h4 { margin: 0 0 8px 0; font-size: 1.1em; color: #333; } .product-description { color: #666; font-size: 0.9em; line-height: 1.4; margin-bottom: 10px; } .stock-info { font-size: 0.85em; } .in-stock { color: #28a745; font-weight: 500; } .low-stock { color: #ffc107; font-weight: 500; } .out-of-stock { color: #dc3545; font-weight: 500; } .quantity-form { display: flex; flex-direction: column; gap: 8px; max-width: 150px; } .quantity-input { padding: 10px; border: 1px solid #ddd; border-radius: 6px; font-size: 1em; width: 100%; text-align: center; } .btn-update { padding: 8px 12px; background: #007bff; color: white; border: none; border-radius: 6px; font-size: 0.9em; cursor: pointer; transition: background-color 0.2s; } .btn-update:hover { background: #0056b3; } .max-quantity { font-size: 0.8em; color: #666; text-align: center; } .price, .subtotal { font-weight: 600; color: #007bff; font-size: 1.1em; } .actions { text-align: center; } .btn-remove { padding: 8px 16px; background: #dc3545; color: white; border: none; border-radius: 6px; font-size: 0.9em; cursor: pointer; transition: background-color 0.2s; } .btn-remove:hover { background: #c82333; } .cart-summary { padding: 30px; border-top: 1px solid #e9ecef; } .summary-card { max-width: 400px; margin-left: auto; background: #f8f9fa; padding: 25px; border-radius: 8px; } .summary-card h3 { margin: 0 0 20px 0; color: #333; font-size: 1.2em; } .summary-row { display: flex; justify-content: space-between; padding: 12px 0; border-bottom: 1px solid #e9ecef; } .summary-row.total { font-size: 1.2em; font-weight: 700; color: #333; border-bottom: none; padding-top: 20px; margin-top: 10px; } .cart-actions { display: flex; flex-wrap: wrap; gap: 15px; margin-top: 25px; } .btn-continue, .btn-clear, .btn-checkout { padding: 12px 24px; border-radius: 6px; font-weight: 500; text-decoration: none; display: inline-flex; align-items: center; justify-content: center; transition: all 0.2s; font-size: 0.95em; } .btn-continue { background: #6c757d; color: white; border: none; cursor: pointer; } .btn-continue:hover { background: #5a6268; color: white; text-decoration: none; } .btn-clear { background: #dc3545; color: white; border: none; cursor: pointer; } .btn-clear:hover { background: #c82333; } .btn-checkout { background: #28a745; color: white; flex: 1; min-width: 200px; font-size: 1em; } .btn-checkout:hover { background: #218838; color: white; text-decoration: none; } .empty-cart { text-align: center; padding: 60px 40px; background: white; border-radius: 12px; box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); max-width: 600px; margin: 40px auto; } .empty-icon { font-size: 4em; margin-bottom: 20px; opacity: 0.5; } .empty-cart h3 { margin: 0 0 10px 0; color: #333; font-size: 1.5em; } .empty-cart p { color: #666; margin-bottom: 25px; font-size: 1.1em; } .btn-shop { display: inline-block; padding: 12px 30px; background: #007bff; color: white; text-decoration: none; border-radius: 6px; font-weight: 500; font-size: 1em; } .btn-shop:hover { background: #0056b3; color: white; text-decoration: none; } @media (max-width: 768px) { .cart-table { display: block; overflow-x: auto; } .product-info { flex-direction: column; align-items: flex-start; } .product-image { width: 80px; height: 80px; } .cart-actions { flex-direction: column; } .btn-checkout { min-width: 100%; } }