﻿.bs-cart-modal { position: fixed; top: 0; left: 0; width: 100vw; height: 100vh; display: none; z-index: 10050; align-items: center; justify-content: center; }
.bs-cart-modal.bs-cart-open { display: flex; }
body.bs-cart-locked { overflow: hidden; }
.bs-cart-backdrop { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(4, 10, 24, 0.85); backdrop-filter: blur(4px); }
.bs-cart-dialog { position: relative; width: 100%; max-width: 860px; max-height: 90vh; margin: 1rem; background: #12203B; border: 1px solid #26395C; border-radius: 12px; color: #F0F4FB; z-index: 10; display: flex; flex-direction: column; box-shadow: 0 10px 40px rgba(0,0,0,0.6); overflow: hidden; }
.bs-cart-content { display: flex; flex-direction: column; max-height: 90vh; width: 100%; }
.bs-cart-header { background: #0D1830; border-color: #26395C !important; }
.bs-close-icon-btn { background: transparent; border: none; font-size: 1.75rem; line-height: 1; color: #A5B4D0; cursor: pointer; transition: color 0.2s; }
.bs-close-icon-btn:hover { color: #4D9EFF; }
.bs-cart-body { overflow-y: auto; background: #081226; flex: 1 1 auto; }
.bs-cart-item { background: #0D1830; border: 1px solid #26395C; }
.bs-item-img { width: 56px; height: 56px; object-fit: cover; border: 1px solid #26395C; background: #12203B; }
.bs-item-name { color: #F0F4FB; font-size: 0.95rem; }
.bs-item-price { color: #A5B4D0; }
.bs-qty-pill { background: #081226; border: 1px solid #26395C; border-radius: 50px; overflow: hidden; }
.bs-btn-qty { background: transparent; border: none; color: #F0F4FB; width: 28px; height: 28px; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: background 0.2s; }
.bs-btn-qty:hover { background: #26395C; color: #6CD7FF; }
.bs-qty-num { font-size: 0.85rem; font-weight: bold; min-width: 20px; text-align: center; color: #F0F4FB; }
.bs-item-subtotal { color: #6CD7FF; font-size: 0.95rem; }
.bs-btn-remove { background: transparent; border: none; color: #A5B4D0; font-size: 1.3rem; cursor: pointer; line-height: 1; transition: color 0.2s; padding: 0 4px; }
.bs-btn-remove:hover { color: #4D9EFF; }
.bs-shipping-selection { background: #0D1830; border: 1px solid #26395C; }
.bs-shipping-selection .custom-radio { display: flex; align-items: center; gap: 12px; margin-bottom: 15px !important; }
.bs-shipping-selection .custom-radio:last-child { margin-bottom: 0 !important; }
.bs-shipping-selection .custom-control-input { flex-shrink: 0; margin: 0; accent-color: #4D9EFF; }
.bs-shipping-selection .custom-control-label { flex: 1; margin: 0; cursor: pointer; }
.bs-cart-summary { background: #0D1830; border-color: #26395C !important; }
.bs-total-amount { color: #6CD7FF; font-size: 1.15rem; }
.btn-primary-custom { background: #4D9EFF; color: #111111; font-weight: 600; border: none; border-radius: 6px; padding: 0.55rem 1.5rem; transition: background 0.2s; }
.btn-primary-custom:hover { background: #2E85F0; color: #111111; }
.bs-checkout-form .d-flex.justify-content-between { gap: 18px; }
.bs-checkout-form .btn { flex: 1 1 0; min-height: 46px; display: inline-flex; align-items: center; justify-content: center; }
.bs-checkout-form .btn[data-close-cart] { margin-bottom: 0 !important; }
@media (max-width: 575.98px) {
.bs-checkout-form .d-flex.justify-content-between { flex-direction: column; }
}
.bs-cart-empty-text { color: #A5B4D0; font-size: 1rem; }
.form-control { background: #0D1830; border: 1px solid #26395C; color: #FFFFFF; border-radius: 6px; }
.form-control:focus { background: #0D1830; border-color: #4D9EFF; color: #FFFFFF; box-shadow: 0 0 0 0.2rem rgba(77, 158, 255, 0.25); }
.form-control::placeholder { color: #8A98B8; opacity: 1; }
.bs-cart-badge { position: absolute; top: -5px; right: -5px; background: #6CD7FF; color: #111111; font-size: 0.7rem; font-weight: bold; width: 18px; height: 18px; border-radius: 50%; display: flex; align-items: center; justify-content: center; }
.bs-toast-container { position: fixed; top: 20px; right: 20px; z-index: 10100; pointer-events: none; }
.bs-cart-toast { background: #12203B; border: 1px solid #4D9EFF; color: #F0F4FB; box-shadow: 0 4px 15px rgba(0,0,0,0.5); opacity: 0; transform: translateY(-10px); transition: all 0.3s ease; margin-bottom: 8px; min-width: 240px; pointer-events: auto; }
.bs-cart-toast.bs-toast-show { opacity: 1; transform: translateY(0); }
.bs-toast-img { width: 36px; height: 36px; object-fit: cover; }
.bs-toast-muted { font-size: 0.75rem; color: #6CD7FF; }