body {
  background-color: #edf6f1;
  color: #152f2a;
  font-family: 'Source Sans Pro', sans-serif;
}

.cart-container {
   max-width: 1200px;
   margin: 0 auto;
   padding: 20px;
   background-color: #f0f8f1;
 }
 
 .cart-title {
   color: #152f2a;
   margin-bottom: 30px;
   text-align: center;
 }
 
 .cart-layout {
   display: flex;
   gap: 30px;
 }
 
 .cart-items {
   flex: 2;
 }
 
 .cart-summary {
   flex: 1;
   background-color: #ffffff;
   padding: 20px;
   border-radius: 8px;
   box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
 }
 
 .cart-item {
   background-color: #ffffff;
   border-radius: 8px;
   padding: 20px;
   margin-bottom: 20px;
   box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
 }
 
 .cart-item h3 {
   color: #28a745;
   margin-top: 0;
 }
 
 .item-details {
   display: flex;
   justify-content: space-between;
   margin: 10px 0;
   background-color: #f0f8f1;
   padding: 10px;
   border-radius: 4px;
 }
 
 .item-variations {
   margin-top: 10px;
 }
 
 .item-variations h4 {
   color: #28a745;
   margin-bottom: 5px;
 }
 
 .item-variations ul {
   list-style-type: none;
   padding-left: 0;
 }
 
 .item-actions {
   margin-top: 15px;
   text-align: right;
 }
 
 .empty-cart {
   text-align: center;
   color: #666;
   font-style: italic;
 }
 
 .address-selection {
   margin-bottom: 20px;
 }
 
 .address-selection h3 {
   color: #28a745;
   margin-bottom: 10px;
 }
 
 .checkout-action {
   margin-top: 20px;
 }
 
 .btn {
   padding: 10px 20px;
   border: none;
   border-radius: 4px;
   cursor: pointer;
   transition: background-color 0.3s;
 }
 
 .btn-danger {
   background-color: #dc3545;
   color: #ffffff;
 }
 
 .btn-danger:hover {
   background-color: #c82333;
 }
 
 .btn-success {
   background-color: #28a745;
   color: #ffffff;
   width: 100%;
 }
 
 .btn-success:hover {
   background-color: #218838;
 }
 
 .btn-success:disabled {
   background-color: #6c757d;
   cursor: not-allowed;
 }
 
 .btn-secondary {
   background-color: #152f2a;
   color: #ffffff;
 }
 
 .btn-secondary:hover {
   background-color: #0f231f;
 }
 
 .alert-warning {
   background-color: #fff3cd;
   border: 1px solid #ffeeba;
   color: #856404;
   padding: 10px;
   border-radius: 4px;
   margin-top: 10px;
 }
 
 .back-link {
   display: inline-block;
   margin-top: 20px;
 }
 
 /* Responsive design */
 @media (max-width: 768px) {
   .cart-layout {
     flex-direction: column;
   }
 
   .cart-summary {
     order: -1;
   }
 }
 
 /* Styles for the address form */
 .form-group {
   margin-bottom: 15px;
 }
 
 .form-group label {
   display: block;
   margin-bottom: 5px;
   color: #152f2a;
   font-weight: bold;
 }
 
 .form-control {
   width: 100%;
   padding: 10px;
   border: 1px solid #28a745;
   border-radius: 4px;
   font-size: 16px;
   transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
 }
 
 .form-control:focus {
   border-color: #28a745;
   outline: 0;
   box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
 }
 
 select.form-control {
   background-color: #f0f8f1;
 }
 
 /* Additional green elements */
 .cart-summary h2 {
   color: #28a745;
   border-bottom: 2px solid #28a745;
   padding-bottom: 10px;
   margin-bottom: 20px;
 }
 
 .cart-item:hover {
   box-shadow: 0 4px 8px rgba(40, 167, 69, 0.2);
 }
 
 .item-details span {
   color: #28a745;
   font-weight: bold;
 }
 
 .address-list li {
   background-color: #f0f8f1;
   border: 1px solid #28a745;
 }