/* Wrapper */
.ignitix-productaddons {
  margin: 12px 0 30px 0;
}

/* Grid (2-column, wraps on small screens) */
.ignitix-pa-grid {
  display: flex;
  flex-wrap: nowrap;
  gap: 24px;
}

/* Card */
.ignitix-pa-card {
  position: relative;
  display: flex;
  align-items: center;
  flex: 1 1 calc(50% - 12px);
  max-width: calc(50% - 12px);
  min-width: 220px;
  padding: 14px 16px;
  border-radius: 4px;
  background: #fff;
  border: 1px solid #E5E5E5;
  box-sizing: border-box;
  overflow: hidden;
  gap: 12px;
}

/* Clickable for addons */
.ignitix-pa-card--addon {
  cursor: pointer;
  user-select: none;
}

/* Hidden checkbox (addon only) */
.ignitix-pa-input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  display:none;
}

/* Image box */
.ignitix-pa-media {
  width: 76px;
  height: 76px;
  flex: 0 0 76px;
  border-radius: 12px;
  background: #F5F5F5;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.ignitix-pa-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

/* Text body */
.ignitix-pa-body {
  flex: 1 1 auto;
  min-width: 0;
}

.ignitix-pa-type {
  font-weight: 700;
  display: block;
  font-size: 15px;
  margin-bottom: 2px;
  color: #0E0D0D;
}

.ignitix-pa-msg {
  display: -webkit-box;
  font-size: 13px;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  color: #7A7A7A;
  line-height: 1.35;
}

/* Price */
.ignitix-pa-price {
  margin-top: 4px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  line-height: 1.2;
  white-space: nowrap;
}

.ignitix-pa-price-old {
  text-decoration: line-through;
  opacity: .55;
  font-weight: 500;
}

.ignitix-pa-price-new {
  font-weight: 700;
  color: #0E0D0D;
}

.ignitix-pa-price--free .ignitix-pa-price-new {
  font-weight: 700;
}

/* Action icon area (right side of card, top-aligned) */
.ignitix-pa-action {
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  margin-inline-start: auto;
}

/* Gift icon */
.ignitix-pa-gift-icon {
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.ignitix-pa-gift-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

/* Addon rounded-square checkbox */
.ignitix-pa-check {
  width: 28px;
  height: 28px;
  border-radius: 8px;
  background: #C4C4C4;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  transition: background 0.15s;
}

.ignitix-pa-check::after {
  content: "\2713";
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  color: #fff;
}

/* Addon selected state */
.ignitix-pa-input:checked ~ .ignitix-pa-action .ignitix-pa-check {
  background: #F37021;
}

/* ============================
   Cart / Minicart addon cards
   ============================ */
.ignitix-pa-cart-addon {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 4px 0;
}

.ignitix-pa-cart-media {
  width: 48px;
  height: 48px;
  flex: 0 0 48px;
  border-radius: 6px;
  background: #F5F5F5;
  overflow: hidden;
}

.ignitix-pa-cart-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
}

.ignitix-pa-cart-info {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.ignitix-pa-cart-name {
  font-size: 13px;
  font-weight: 600;
  color: #0E0D0D;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ignitix-pa-cart-price {
  font-size: 13px;
  font-weight: 700;
  color: #0E0D0D;
  line-height: 1.3;
}

/* Mobile: stack cards full-width */
@media (max-width: 767px) {
  .ignitix-pa-grid {
    flex-wrap: wrap;
  }

  .ignitix-pa-card {
    flex: 1 1 100%;
    max-width: 100%;
    min-width: 0;
  }
}

/* Header links color override */
@media screen and (min-width: 768px) {
  .header-links li span,
  .header-links a span {
    color: #808080!important;
  }
}
