body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; margin: 0; background-color: #f8f9fa; }
.page-header { background: #343a40; color: white; padding: 30px 20px; text-align: center; }
.page-header h1 { margin: 0; }
.cart-container { max-width: 960px; margin: 40px auto; padding: 20px; background: #fff; border-radius: 8px; box-shadow: 0 5px 15px rgba(0,0,0,0.07); }
.cart-empty { text-align: center; padding: 50px; }
.cart-empty p { font-size: 1.2em; color: #6c757d; margin-bottom: 25px; }
.cart-table { width: 100%; border-collapse: collapse; }
.cart-table thead { border-bottom: 2px solid #dee2e6; }
.cart-table th { padding: 15px; text-align: left; color: #6c757d; font-weight: 500; }
.cart-table tbody tr { border-bottom: 1px solid #e9ecef; }
.cart-table td { padding: 20px 15px; vertical-align: middle; }
.cart-table img { width: 60px; height: 60px; object-fit: cover; border-radius: 5px; margin-right: 15px; }
.quantity-input { width: 60px; padding: 8px; text-align: center; border: 1px solid #ced4da; border-radius: 4px; }
.btn-remove { background: #dc3545; color: white; border: none; width: 28px; height: 28px; border-radius: 50%; font-size: 1.2em; cursor: pointer; line-height: 1; }
.cart-actions { text-align: right; padding-top: 20px; }
.cart-summary { margin-top: 30px; padding-top: 20px; border-top: 2px solid #dee2e6; text-align: right; }
.cart-summary .total { font-size: 1.5em; margin-bottom: 20px; }
.cart-summary .total span { font-weight: bold; color: #007bff; }
.btn-primary { background-color: #007bff; color: white; text-decoration: none; padding: 12px 25px; border-radius: 5px; border: none; cursor: pointer; font-size: 1.1em; }
.btn-primary:hover { background-color: #0056b3; }
.btn-secondary { background-color: #6c757d; color: white; padding: 10px 20px; border: none; border-radius: 5px; cursor: pointer; }
.btn-secondary:hover { background-color: #5a6268; }