 .checkout-container {
     max-width: 1200px;
     margin: -40px auto 50px;
     padding: 0 15px;
     flex: 1;
 }

 .checkout-card {
     background: rgba(0, 0, 0, 0.9);
     border-radius: 16px;
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
     overflow: hidden;
     margin-bottom: 30px;
     border: 1px solid rgba(255, 215, 0, 0.1);
     backdrop-filter: blur(5px);
 }

 .card-header {
     background: rgba(0, 0, 0, 0.7);
     color: #fff;
     padding: 18px 25px;
     font-size: 1.3rem;
     font-weight: 700;
     letter-spacing: 1px;
     border-bottom: 1px solid rgba(255, 215, 0, 0.1);
     display: flex;
     align-items: center;
     text-shadow: 0 0 8px rgba(255, 215, 0, 0.5);
 }

 .card-header i {
     margin-right: 12px;
     color: #fff;
     font-size: 1.4rem;
 }

 .card-body {
     padding: 25px;
 }

 .cart-item {
     display: flex;
     align-items: center;
     padding: 20px 0;
     border-bottom: 1px solid rgba(255, 255, 255, 0.1);
 }

 .cart-item:last-child {
     border-bottom: none;
 }

 .item-image {
     width: 90px;
     height: 90px;
     border-radius: 12px;
     overflow: hidden;
     margin-right: 20px;
     background: #1e293b;
     display: flex;
     align-items: center;
     justify-content: center;
     border: 2px solid rgba(255, 215, 0, 0.3);
     box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
     flex-shrink: 0;
 }

 .item-image img {
     max-width: 80%;
     max-height: 80%;
 }

 .item-details {
     flex: 1;
     min-width: 0;
 }

 .item-name {
     font-weight: 700;
     font-size: 1.2rem;
     margin-bottom: 5px;
     color: white;
     letter-spacing: 0.5px;
 }

 .item-game {
     font-size: 0.9rem;
     color: var(--gray);
     margin-bottom: 10px;
 }

 .item-price {
     font-weight: 700;
     color: #fff;
     font-size: 1.3rem;
     text-shadow: 0 0 8px rgba(255, 215, 0, 0.3);
 }

 .item-actions {
     display: flex;
     align-items: center;
     flex-shrink: 0;
 }

 .quantity-selector {
     display: flex;
     align-items: center;
     margin-right: 15px;
     background: rgba(0, 0, 0, 0.7);
     border-radius: 8px;
     padding: 5px;
     border: 1px solid rgba(255, 215, 0, 0.2);
 }

 .quantity-btn {
     width: 30px;
     height: 30px;
     background: rgba(255, 215, 0, 0.1);
     border: none;
     border-radius: 6px;
     font-size: 16px;
     cursor: pointer;
     display: flex;
     align-items: center;
     justify-content: center;
     color: #fff;
     transition: all 0.3s;
 }

 .quantity-btn:hover {
     background: rgba(255, 215, 0, 0.3);
 }

 .quantity-input {
     width: 45px;
     height: 30px;
     text-align: center;
     background: transparent;
     border: 1px solid rgba(255, 255, 255, 0.1);
     border-radius: 6px;
     margin: 0 6px;
     font-weight: 700;
     color: white;
 }



 /* Cupom de desconto */
 .coupon-container {
     background: rgba(0, 0, 0, 0.7);
     border-radius: 12px;
     padding: 20px;
     margin: 25px 0;
     border: 1px solid rgba(255, 215, 0, 0.2);
 }

 .coupon-header {
     display: flex;
     align-items: center;
     margin-bottom: 15px;
 }

 .coupon-header i {
     font-size: 1.5rem;
     color: #fff;
     margin-right: 10px;
 }

 .coupon-form {
     display: flex;
     gap: 8px;
     /* espaço entre input e botão */
     align-items: center;
     /* alinha verticalmente */
     width: 100%
 }

 .coupon-input {
     flex: 1;
     background: rgba(0, 0, 0, 0.5);
     border: 1px solid rgba(255, 255, 255, 0.1);
     border-radius: 8px;
     padding: 12px 15px;
     color: white;
     font-size: 1rem;
     width: 100%
 }

 .coupon-input:focus {
     border-color: #ffd90096;
     outline: none;
     box-shadow: 0 0 0 3px rgba(255, 215, 0, 0.1);
 }

 .coupon-select {
     flex: 1;
     background: rgba(0, 0, 0, 0.5);
     border: 1px solid rgba(255, 255, 255, 0.1);
     border-radius: 8px;
     padding: 12px 15px;
     color: white;
     font-size: 1rem;
     cursor: pointer;
 }

 .coupon-select:focus {
     border-color: #ffd90096;
     outline: none;
     box-shadow: 0 0 0 3px rgba(255, 215, 0, 0.1);
 }

 .coupon-select option {
     background: #ffd90096;
     font-weight: 900;
 }

 .summary-card {
     background: rgba(0, 0, 0, 0.9);
     border-radius: 16px;
     box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
     padding: 25px;
     border: 1px solid rgba(255, 215, 0, 0.1);
     backdrop-filter: blur(5px);
 }

 .summary-row {
     display: flex;
     justify-content: space-between;
     padding: 10px 0;
     border-bottom: 1px solid rgba(255, 255, 255, 0.1);
     font-size: 1.05rem;
 }

 .summary-row.total {
     font-weight: 700;
     font-size: 1.35rem;
     border-bottom: none;
     padding-top: 18px;
     margin-top: 10px;
     color: #fff;
     text-shadow: 0 0 8px rgba(255, 215, 0, 0.3);
 }

 .discount-badge {
     background: #ffd900af;
     color: #ffffff;
     border-radius: 20px;
     padding: 2px 10px;
     font-size: 0.85rem;
     font-weight: 600;
     margin-left: 8px;
 }

 .payment-methods {
     margin-top: 25px;
 }

 .payment-title {
     font-size: 1.2rem;
     font-weight: 600;
     margin-bottom: 15px;
     color: #fff;
 }

 .payment-options {
     display: flex;
     flex-wrap: wrap;
     gap: 15px;
 }

 .payment-option {
     flex: 1;
     min-width: 150px;
     background: rgba(0, 0, 0, 0.7);
     border: 1px solid rgba(255, 255, 255, 0.1);
     border-radius: 12px;
     padding: 15px;
     cursor: pointer;
     transition: all 0.3s;
     text-align: center;
 }

 .payment-option:hover {
     border-color: #ffd90096;
     transform: translateY(-3px);
 }

 .payment-option.active {
     border-color: #ffd90096;
     background: rgba(255, 215, 0, 0.05);
     box-shadow: 0 0 15px rgba(255, 215, 0, 0.1);
 }

 .payment-icon {
     font-size: 2rem;
     color: #ffd900af;
     margin-bottom: 10px;
 }

 .payment-option p {
     font-size: 0.9rem;
     margin-bottom: 0;
 }

 .payment-methods input[type="radio"]:checked+img {
     filter: brightness(1.2);
     transform: scale(1.05);
 }

 .payment-methods input[type="radio"]:checked~span {
     font-weight: bold;
 }

 .payment-methods input[type="radio"]:checked~* {
     color: #ffd900af;
 }

 .payment-methods input[type="radio"]:checked {
     color: #ffd900af;
 }

 @media (max-width: 768px) {
     .card-header {
         font-size: 1.1rem;
         padding: 15px 20px;
     }

     .cart-item {
         flex-direction: column;
         align-items: flex-start;
     }

     .item-image {
         margin-bottom: 15px;
     }

     .item-actions {
         width: 100%;
         margin-top: 15px;
         justify-content: space-between;
     }

     .coupon-form {
         flex-direction: column;
     }

     .payment-option {
         min-width: calc(50% - 15px);
     }

 }

 @media (max-width: 576px) {

     .summary-row,
     .summary-row.total {
         font-size: 0.95rem;
     }

     .summary-row.total {
         font-size: 1.15rem;
     }

     .card-body {
         padding: 20px;
     }
 }

 .cart-sidebar {
     display: none !important;
 }


 .select2-container--default .coupon-select.select2-selection--single {
     flex: 1;
     background: rgb(0, 0, 0);
     border: 1px solid rgba(255, 255, 255, 0.1);
     border-radius: 8px;
     padding: 15px 20px;
     color: rgba(255, 217, 0, 0.664);
     font-size: 1rem;
     cursor: pointer;
     height: auto;
 }


 .select2-container--default .coupon-select .select2-selection__rendered {
     color: rgba(255, 217, 0, 0.664);
     line-height: 1.2rem;
 }

 .select2-container--default .coupon-select.select2-selection--single:focus,
 .select2-container--default .coupon-select.select2-selection--single:active {
     border-color: rgba(255, 217, 0, 0.664);
     /* box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.5); */
     outline: none;
 }

 .select2-container--default .coupon-select-dropdown .select2-results__option {
     background-color: rgb(0, 0, 0);
     color: rgba(255, 217, 0, 0.664);
 }

 .select2-container--default .select2-search--dropdown .select2-search__field {
     color: white;
     background-color: rgb(0, 0, 0);
 }


 .select2-container--default .select2-results__option--highlighted {
     background-color: rgb(0, 0, 0);
     color: rgba(255, 217, 0, 0.664);
 }

 .text-booster {
     color: #F47FFF;
     display: flex;
     align-items: center;
 }

 .discount-booster-icon {
     width: 22px;
     height: 22px;
     vertical-align: middle;
 }