.nordic-cart-modal .modal-dialog {
  max-height: 90vh;
  margin: 1.75rem auto;
}

.nordic-cart-modal .modal-content {
  max-height: 90vh;
  background-color: #FFFFFF;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid #E2E8F0 !important;
}

.nordic-cart-modal .modal-body {
  overflow-y: auto;
  max-height: calc(90vh - 145px);
  background-color: #FFFFFF;
}

.nordic-cart-modal .bg-surface {
  background-color: #FFFFFF;
}

.nordic-cart-modal .bg-panel {
  background-color: #F1F5F9;
}

.nordic-cart-modal .text-primary-base {
  color: #0F172A !important;
}

.nordic-cart-modal .text-secondary {
  color: #64748B !important;
}

.nordic-cart-modal .tracking-wider {
  letter-spacing: 0.05em;
}

.nordic-cart-modal .nordic-brass-indicator {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #B45309;
  box-shadow: 0 0 0 2px #FEF3C7;
}

.nordic-cart-modal .cart-item-thumb {
  width: 64px;
  height: 64px;
  object-fit: cover;
  background-color: #F8FAFC;
  border: 1px solid #E2E8F0;
}

.nordic-cart-modal .cart-item-placeholder {
  width: 64px;
  height: 64px;
  background-color: #F1F5F9;
  border: 1px solid #E2E8F0;
}

.nordic-cart-modal .cart-item-title {
  color: #0F172A;
  font-size: 0.95rem;
}

.nordic-cart-modal .cart-qty-group {
  border-color: #CBD5E1 !important;
}

.nordic-cart-modal .cart-qty-group button:hover {
  background-color: #F1F5F9;
}

.nordic-cart-modal .cart-qty-display {
  min-width: 24px;
  text-align: center;
  color: #0F172A;
}

.nordic-cart-modal .btn-outline-nordic {
  color: #1E293B;
  border: 1px solid #CBD5E1;
  background-color: #FFFFFF;
  font-weight: 500;
  padding: 0.5rem 1.25rem;
  transition: all 0.2s ease;
}

.nordic-cart-modal .btn-outline-nordic:hover {
  background-color: #F1F5F9;
  color: #0F172A;
  border-color: #1E293B;
}

.nordic-cart-modal .btn-accent-nordic {
  background-color: #B45309;
  color: #FFFFFF !important;
  border: 1px solid #B45309;
  font-weight: 600;
  padding: 0.5rem 1.25rem;
  transition: all 0.2s ease;
}

.nordic-cart-modal .btn-accent-nordic:hover {
  background-color: #92400E;
  border-color: #92400E;
  color: #FFFFFF !important;
}

.nordic-cart-modal .text-secondary-subtle {
  color: #94A3B8 !important;
}

@media (max-width: 575.98px) {
  .nordic-cart-modal .modal-dialog {
    margin: 0.5rem;
    max-height: 96vh;
  }
  .nordic-cart-modal .modal-content {
    max-height: 96vh;
  }
  .nordic-cart-modal .modal-body {
    max-height: calc(96vh - 160px);
    padding: 0.75rem 1rem;
  }
  .nordic-cart-modal .cart-item-thumb,
  .nordic-cart-modal .cart-item-placeholder {
    width: 52px;
    height: 52px;
  }
}
/* Fix: Cart modal quantity buttons - make black and visible */
.nordic-cart-modal .cart-qty-group button,
.nordic-cart-modal .cart-qty-group .btn.btn-link,
.nordic-cart-modal .cart-qty-group .btn-link {
    color: #000000 !important;
    background-color: #F8FAFC !important;
    border: 1px solid #CBD5E1 !important;
    min-width: 32px;
    min-height: 32px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    text-decoration: none !important;
}
.nordic-cart-modal .cart-qty-group button:hover,
.nordic-cart-modal .cart-qty-group .btn-link:hover {
    background-color: #E2E8F0 !important;
    color: #000000 !important;
}
.nordic-cart-modal .cart-qty-group .fas,
.nordic-cart-modal .cart-qty-group i,
.nordic-cart-modal .cart-qty-group button .fas,
.nordic-cart-modal .cart-qty-group button i {
    color: #000000 !important;
}
.nordic-cart-modal .cart-qty-display {
    color: #000000 !important;
    font-weight: 700;
}

/* Fix: Cart page quantity buttons - make black and visible */
.bloom-qty-btn {
    color: #000000 !important;
    background-color: #F8FAFC !important;
    border: 1px solid #CBD5E1 !important;
    min-width: 36px;
    min-height: 36px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1.1rem;
}
.bloom-qty-btn:hover {
    background-color: #E2E8F0 !important;
    color: #000000 !important;
}
.product-quantity-input {
    color: #000000 !important;
    font-weight: 700;
    border: 1px solid #CBD5E1 !important;
    background-color: #FFFFFF !important;
}

/* Override MDB btn-link blue color in cart modal */
.nordic-cart-modal .btn-link.text-dark,
.nordic-cart-modal button.btn-link {
    color: #000000 !important;
}

/* AGGRESSIVE FIX: Cart modal +/- buttons must be visible black */
#cartDialog .cart-qty-group,
#cartDialog .cart-qty-group * {
    color: #000000 !important;
    background-color: #F1F5F9 !important;
    border-color: #CBD5E1 !important;
    opacity: 1 !important;
    visibility: visible !important;
}
#cartDialog .cart-qty-group button,
#cartDialog .cart-qty-group .btn,
#cartDialog .cart-qty-group .btn-link,
#cartDialog .cart-qty-group .btn-sm {
    color: #000000 !important;
    background-color: #FFFFFF !important;
    border: 1px solid #CBD5E1 !important;
    min-width: 34px !important;
    min-height: 34px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    box-shadow: 0 1px 2px rgba(0,0,0,0.05) !important;
}
#cartDialog .cart-qty-group button:hover,
#cartDialog .cart-qty-group .btn:hover,
#cartDialog .cart-qty-group .btn-link:hover {
    background-color: #E2E8F0 !important;
    color: #000000 !important;
}
#cartDialog .cart-qty-group i,
#cartDialog .cart-qty-group .fas,
#cartDialog .cart-qty-group .fa-minus,
#cartDialog .cart-qty-group .fa-plus,
#cartDialog .cart-qty-group .fa-xs {
    color: #000000 !important;
    background-color: transparent !important;
    opacity: 1 !important;
    visibility: visible !important;
    font-size: 0.75rem !important;
}
#cartDialog .cart-qty-display {
    color: #000000 !important;
    background-color: #F8FAFC !important;
    font-weight: 700 !important;
    min-width: 30px !important;
    display: inline-block !important;
    text-align: center !important;
    opacity: 1 !important;
}
