/** Shopify CDN: Minification failed

Line 120:14 Expected identifier but found whitespace
Line 120:16 Unexpected "{"
Line 120:26 Expected ":"
Line 120:63 Expected ":"
Line 124:14 Expected identifier but found whitespace
Line 124:16 Unexpected "{"
Line 124:26 Expected ":"
Line 124:63 Expected ":"
Line 128:14 Expected identifier but found whitespace
Line 128:16 Unexpected "{"
... and 22 more hidden warnings

**/
/* ============================================
   RNA OPTIMIZED: Enhanced Product Badge System
   ============================================ */

/* Badge Container */
.rn-badge-container {
  position: absolute;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  pointer-events: none;
}

/* Position Variants */
.rn-badge-container--top-left {
  top: 12px;
  left: 12px;
}

.rn-badge-container--top-center {
  top: 12px;
  left: 50%;
  transform: translateX(-50%);
  align-items: center;
}

.rn-badge-container--top-right {
  top: 12px;
  right: 12px;
  align-items: flex-end;
}

.rn-badge-container--bottom-left {
  bottom: 12px;
  left: 12px;
}

.rn-badge-container--bottom-center {
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  align-items: center;
}

.rn-badge-container--bottom-right {
  bottom: 12px;
  right: 12px;
  align-items: flex-end;
}

/* Individual Badge Styling */
.rn-badge {
  display: inline-block;
  line-height: 1.2;
  white-space: nowrap;
  pointer-events: auto;
  transition: transform 0.2s ease, opacity 0.2s ease;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.rn-badge:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

/* Mobile Responsive Adjustments */
@media screen and (max-width: 699px) {
  .rn-badge-container--top-left,
  .rn-badge-container--bottom-left {
    left: 8px;
  }

  .rn-badge-container--top-right,
  .rn-badge-container--bottom-right {
    right: 8px;
  }

  .rn-badge-container--top-left,
  .rn-badge-container--top-center,
  .rn-badge-container--top-right {
    top: 8px;
  }

  .rn-badge-container--bottom-left,
  .rn-badge-container--bottom-center,
  .rn-badge-container--bottom-right {
    bottom: 8px;
  }

  /* Center positions maintain their centering on mobile */
  .rn-badge-container--top-center,
  .rn-badge-container--bottom-center {
    left: 50%;
    transform: translateX(-50%);
  }

  .rn-badge {
    /* Mobile font sizes are controlled via inline styles from settings */
    font-size: var(--badge-mobile-size, 11px) !important;
  }

  /* Apply mobile font sizes from settings */
  .rn-badge--sold-out {
    font-size: {{ settings.badge_sold_out_font_size_mobile }}px !important;
  }

  .rn-badge--discount {
    font-size: {{ settings.badge_discount_font_size_mobile }}px !important;
  }

  .rn-badge--preorder {
    font-size: {{ settings.badge_preorder_font_size_mobile }}px !important;
  }

  .rn-badge--new {
    font-size: {{ settings.badge_new_font_size_mobile }}px !important;
  }

  .rn-badge--restocked {
    font-size: {{ settings.badge_restocked_font_size_mobile }}px !important;
  }

  .rn-badge--custom1 {
    font-size: {{ settings.badge_custom1_font_size_mobile }}px !important;
  }

  .rn-badge--custom2 {
    font-size: {{ settings.badge_custom2_font_size_mobile }}px !important;
  }

  .rn-badge--custom3 {
    font-size: {{ settings.badge_custom3_font_size_mobile }}px !important;
  }
}

/* Tablet Adjustments */
@media screen and (min-width: 700px) and (max-width: 999px) {
  .rn-badge-container--top-left,
  .rn-badge-container--bottom-left {
    left: 10px;
  }

  .rn-badge-container--top-right,
  .rn-badge-container--bottom-right {
    right: 10px;
  }

  .rn-badge-container--top-left,
  .rn-badge-container--top-center,
  .rn-badge-container--top-right {
    top: 10px;
  }

  .rn-badge-container--bottom-left,
  .rn-badge-container--bottom-center,
  .rn-badge-container--bottom-right {
    bottom: 10px;
  }
}

/* Badge Type Specific Classes (for additional styling if needed) */
.rn-badge--sold-out {
  /* Sold out specific styles handled via inline from settings */
}

.rn-badge--discount {
  /* Discount specific styles handled via inline from settings */
  animation: badge-pulse 2s ease-in-out infinite;
}

.rn-badge--preorder {
  /* Preorder specific styles handled via inline from settings */
}

.rn-badge--new {
  /* New release specific styles handled via inline from settings */
  position: relative;
  overflow: hidden;
}

.rn-badge--new::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: linear-gradient(
    45deg,
    transparent,
    rgba(255, 255, 255, 0.1),
    transparent
  );
  transform: rotate(45deg);
  animation: shine 3s infinite;
}

.rn-badge--restocked {
  /* Restocked specific styles handled via inline from settings */
}

.rn-badge--custom1,
.rn-badge--custom2,
.rn-badge--custom3 {
  /* Custom badge specific styles handled via inline from settings */
}

/* Animations */
@keyframes badge-pulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.85;
  }
}

@keyframes shine {
  0% {
    left: -50%;
  }
  100% {
    left: 150%;
  }
}

/* Loading State */
.rn-badge-container--loading .rn-badge {
  opacity: 0.5;
  animation: badge-loading 1.5s ease-in-out infinite;
}

@keyframes badge-loading {
  0%, 100% {
    opacity: 0.5;
  }
  50% {
    opacity: 0.8;
  }
}

/* Accessibility: High Contrast Mode */
@media (prefers-contrast: high) {
  .rn-badge {
    border-width: 2px !important;
    font-weight: 700 !important;
  }
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
  .rn-badge {
    transition: none;
    animation: none !important;
  }

  .rn-badge:hover {
    transform: none;
  }

  .rn-badge--new::before {
    animation: none;
  }
}

/* Print Styles */
@media print {
  .rn-badge-container {
    position: relative;
    display: inline-flex;
    flex-direction: row;
    gap: 8px;
    margin-bottom: 8px;
  }

  .rn-badge {
    box-shadow: none;
    border: 1px solid #000 !important;
  }

  .rn-badge:hover {
    transform: none;
    box-shadow: none;
  }
}

/* Product Card Integration */
.product-card {
  position: relative;
}

.product-card .rn-badge-container {
  /* Ensures badges are positioned relative to product card */
}

/* Product Page Integration */
.product-page .rn-badge-container {
  position: relative;
  margin-bottom: 16px;
  flex-direction: row;
  flex-wrap: wrap;
}

.product-page .rn-badge-container--top-left,
.product-page .rn-badge-container--top-right,
.product-page .rn-badge-container--bottom-left,
.product-page .rn-badge-container--bottom-right {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  bottom: auto;
}

/* Stack badges vertically on mobile for better readability */
@media screen and (max-width: 699px) {
  .product-page .rn-badge-container {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* Badge overflow handling */
.rn-badge-container[data-max-badges] .rn-badge:not(:first-child) {
  margin-top: 6px;
}

@media screen and (max-width: 699px) {
  .rn-badge-container[data-max-badges] .rn-badge:not(:first-child) {
    margin-top: 4px;
  }
}

/* Ensure badges don't overflow product card boundaries */
.product-card__wrapper {
  overflow: visible;
  position: relative;
}

/* Badge hover effects for product cards */
.product-card:hover .rn-badge {
  opacity: 1;
}

/* Subtle animation on card hover */
.product-card:hover .rn-badge {
  animation: subtle-bounce 0.4s ease;
}

@keyframes subtle-bounce {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-2px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .product-card:hover .rn-badge {
    animation: none;
  }
}
