/**
 * NuMart Base - Shared Component Styles
 */

/* ========================================
   BUTTONS
   ======================================== */
.button,
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--nm-spacing-2, 0.5rem) var(--nm-spacing-4, 1rem);
  font-weight: 600;
  text-align: center;
  text-decoration: none;
  border: 1px solid transparent;
  border-radius: var(--nm-radius, 4px);
  cursor: pointer;
  transition: all 0.2s ease;
}

.button--primary,
.btn-primary {
  background-color: var(--nm-primary, #0066cc);
  color: #fff;
  border-color: var(--nm-primary, #0066cc);
}


/* ========================================
   BADGES
   ======================================== */


/* ========================================
   MESSAGES
   ======================================== */


/* ========================================
   LOADING STATES
   ======================================== */
.loading {
  position: relative;
  pointer-events: none;
  opacity: 0.6;
}

.loading::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 24px;
  height: 24px;
  margin: -12px 0 0 -12px;
  border: 2px solid rgba(0, 0, 0, 0.1);
  border-top-color: var(--nm-primary, #0066cc);
  border-radius: 50%;
  animation: spin 0.8s linear infinite;
}


/* ========================================
   HEADER COUNT BADGES (unified: cart, wishlist, orders)
   ======================================== */
.wishlist-count-badge,
.cart-count-badge,
.orders-count-badge,
.cart-block--summary__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  font-size: 0.6rem;
  font-weight: 700;
  border: 1px solid var(--menu-text-color);
  border-radius: 50%;
  color: black;
}

/* Header: icon containers fixed height + center so icons align in one row */
.region-header .cart-block--link__expand,
.region-header .cart-block--summary,
.region-header .wishlist-header-link,
.region-header .orders-icon-wrapper,
.region-header .unprocessed-orders-count-block .orders-count-link,
.region-header .search-modal-trigger{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  height: 40px;
  padding: 0;
  box-sizing: border-box;
}
.region-header .cart-block--link__expand svg,
.region-header .wishlist-header-link svg,
.region-header .orders-bill-icon,
.region-header .orders-icon-wrapper svg,
.region-header .search-modal-trigger svg,
.region-header #search-icon,
.region-header .menu--account .menu-toggle svg {
  flex-shrink: 0;
  display: block;
  width: 20px;
  height: 20px;
   color: var(--sc-menu-icon-color);
}

/* Header: overlay position for cart and wishlist badges */
.region-header .cart-block--link__expand,
.region-header .wishlist-header-link,
.region-header .orders-icon-wrapper {
  position: relative;
}
/* Cart and wishlist: top-right of icon (same in LTR and RTL) */
.region-header .cart-block--summary__count,
.region-header .wishlist-count-badge,
.region-header .orders-count-badge {
  position: absolute;
  top: -8px;
  right: -8px;
}


