/* =============================
   AURIA PRO IMPROVEMENTS v1.0
   Injected globally via frontoffice.blade.php
   Safe override layer — all rules use !important.
   To revert: remove the <link> in frontoffice.blade.php and delete this file.
   ============================= */

/* --- GLOBAL --- */
html { scroll-behavior: smooth !important; }
* { box-sizing: border-box !important; }
::-webkit-scrollbar { width: 6px !important; }
::-webkit-scrollbar-track { background: #f1f1f1 !important; }
::-webkit-scrollbar-thumb { background: #FFD54F !important; border-radius: 3px !important; }
::-webkit-scrollbar-thumb:hover { background: #FF8C00 !important; }
input:focus, select:focus, textarea:focus {
  border-color: #FFD54F !important;
  box-shadow: 0 0 0 3px rgba(255,213,79,0.25) !important;
  outline: none !important;
}

/* --- PRODUCT CARDS --- */
.product-card {
  border-radius: 16px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.08) !important;
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
  overflow: hidden !important;
  border: 1px solid #f0f0f0 !important;
  background: #fff !important;
}
.product-card:hover {
  box-shadow: 0 8px 32px rgba(0,0,0,0.15) !important;
  transform: translateY(-6px) !important;
  border-color: #FFD54F !important;
}
.product-card__img--primary {
  transition: transform 0.4s ease !important;
}
.product-card:hover .product-card__img--primary {
  transform: scale(1.06) !important;
}
.product-card__title {
  font-size: 1.6rem !important;
  font-weight: 700 !important;
  color: #222 !important;
}
.product-card__title a {
  color: #222 !important;
  text-decoration: none !important;
}
.product-card__title a:hover { color: #FF8C00 !important; }
.product-card__action {
  background: rgba(255,255,255,0.95) !important;
  border-radius: 50% !important;
  width: 38px !important;
  height: 38px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 2px 10px rgba(0,0,0,0.15) !important;
  transition: all 0.25s ease !important;
  border: 1px solid #eee !important;
}
.product-card__action:hover {
  background: #FFD54F !important;
  transform: scale(1.1) !important;
  border-color: #FFD54F !important;
}

/* "Choisir mon lot" CTA button */
.product-card__choose-btn {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  background: linear-gradient(135deg, #FFD54F 0%, #FF9800 100%) !important;
  color: #061738 !important;
  font-weight: 800 !important;
  font-size: 1.35rem !important;
  border-radius: 30px !important;
  padding: 10px 20px !important;
  border: none !important;
  transition: all 0.3s ease !important;
  box-shadow: 0 4px 15px rgba(255,152,0,0.3) !important;
  text-decoration: none !important;
  letter-spacing: 0.3px !important;
}
.product-card__choose-btn:hover {
  background: linear-gradient(135deg, #FF9800 0%, #FF6D00 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(255,152,0,0.5) !important;
  color: #fff !important;
  text-decoration: none !important;
}

/* Promo badge */
.product-badge--promo {
  background: linear-gradient(135deg, #e53935, #c62828) !important;
  color: #fff !important;
  font-weight: 800 !important;
  border-radius: 20px !important;
  padding: 4px 12px !important;
  font-size: 1.2rem !important;
  box-shadow: 0 2px 8px rgba(229,57,53,0.4) !important;
  border: none !important;
}

/* --- PACK PILLS (on cards in homepage/shop) --- */
.pack-pills {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin: 10px 0 !important;
}
.pack-pill {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 2px !important;
  background: #fff9e6 !important;
  border: 1.5px solid #FFD54F !important;
  border-radius: 20px !important;
  padding: 6px 10px !important;
  font-size: 1.2rem !important;
  font-weight: 600 !important;
  color: #333 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  min-width: 85px !important;
  cursor: pointer !important;
}
.pack-pill:hover {
  background: #FFD54F !important;
  color: #222 !important;
  transform: scale(1.05) !important;
  text-decoration: none !important;
  box-shadow: 0 2px 8px rgba(255,213,79,0.4) !important;
}
.pack-pill:hover .pack-pill__qty {
  background: #fff !important;
  color: #061738 !important;
}
.pack-pill__qty {
  background: #061738 !important;
  color: #FFD54F !important;
  border-radius: 10px !important;
  padding: 1px 7px !important;
  font-size: 1.1rem !important;
  font-weight: 900 !important;
  display: inline-block !important;
  min-width: 28px !important;
  text-align: center !important;
}
.pack-pill__savings {
  background: #e53935 !important;
  color: #fff !important;
  border-radius: 10px !important;
  padding: 1px 6px !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
}
.pack-pill__sep { color: #bbb !important; font-size: 0.9rem !important; }

/* Savings bar below card CTA */
.auria-savings-bar {
  background: linear-gradient(90deg, #061738, #1a3a6e) !important;
  color: #FFD54F !important;
  text-align: center !important;
  font-size: 1.1rem !important;
  font-weight: 700 !important;
  padding: 5px 10px !important;
  border-radius: 0 0 12px 12px !important;
  margin-top: 6px !important;
  letter-spacing: 0.3px !important;
}

/* --- SECTION HEADINGS --- */
.section__heading--maintitle {
  font-size: 2.8rem !important;
  font-weight: 800 !important;
  color: #061738 !important;
  position: relative !important;
}
.section__heading--maintitle::after {
  content: '' !important;
  display: block !important;
  width: 60px !important;
  height: 4px !important;
  background: linear-gradient(90deg, #FFD54F, #FF8C00) !important;
  border-radius: 2px !important;
  margin: 10px auto 0 !important;
}

/* --- SECTIONS --- */
.packs-section {
  background: linear-gradient(180deg, #fff9f0, #fffef7) !important;
  padding: 40px 0 !important;
  position: relative !important;
}
.packs-section::before {
  content: '' !important;
  position: absolute !important;
  top: 0; left: 0; right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, #FFD54F, #FF8C00, #FFD54F) !important;
}
.packs-section .section__heading--subtitle::before { content: '💰 ' !important; }

.bestseller-section { position: relative !important; }
.bestseller-section::before {
  content: '' !important;
  position: absolute !important;
  top: 0; left: 0; right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, #FF6D00, #FFD54F, #FF6D00) !important;
}

.trust-section {
  background: linear-gradient(135deg, #061738, #1a3a6e) !important;
  border-radius: 20px !important;
  margin: 0 15px !important;
}

.newsletter-cta {
  background: linear-gradient(135deg, #FFD54F, #FF9800) !important;
  border-radius: 20px !important;
  margin: 0 15px 30px !important;
}

/* Trust badges */
.trust-badge {
  background: rgba(255,255,255,0.08) !important;
  border-radius: 12px !important;
  padding: 15px !important;
  transition: all 0.3s ease !important;
}
.trust-badge:hover {
  background: rgba(255,213,79,0.15) !important;
  transform: translateX(4px) !important;
}
.trust-badge__icon { color: #FFD54F !important; }

/* Testimonial cards */
.testimonial-card {
  border-radius: 16px !important;
  border-left: 4px solid #FFD54F !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.08) !important;
  transition: all 0.3s ease !important;
}
.testimonial-card:hover {
  box-shadow: 0 8px 24px rgba(0,0,0,0.14) !important;
  transform: translateY(-4px) !important;
}

/* Category cards */
.category-card {
  border-radius: 20px !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
}
.category-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.12) !important;
}

/* --- PRODUCT DETAIL PAGE --- */
/* Pack option selector (1 piece / 2 pieces) */
.pack-option {
  border-radius: 16px !important;
  border: 2px solid #e0e0e0 !important;
  background: #fafafa !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
  position: relative !important;
  overflow: hidden !important;
}
.pack-option:hover {
  border-color: #FFD54F !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(255,213,79,0.25) !important;
}
.pack-option--active {
  border-color: #FFD54F !important;
  background: linear-gradient(135deg, #fff9e6, #fff3cd) !important;
  box-shadow: 0 4px 16px rgba(255,213,79,0.3) !important;
}
.pack-option__check {
  background: #4CAF50 !important;
  border-color: #4CAF50 !important;
}

/* Main CTA buttons */
.action-btn--primary {
  background: linear-gradient(135deg, #FFD54F, #FF9800) !important;
  color: #061738 !important;
  border: none !important;
  border-radius: 30px !important;
  font-weight: 800 !important;
  font-size: 1.5rem !important;
  padding: 14px 25px !important;
  box-shadow: 0 5px 20px rgba(255,152,0,0.35) !important;
  transition: all 0.3s ease !important;
  letter-spacing: 0.5px !important;
}
.action-btn--primary:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 30px rgba(255,152,0,0.5) !important;
  background: linear-gradient(135deg, #FFCA28, #FF6D00) !important;
}
.action-btn--cart {
  background: #061738 !important;
  color: #FFD54F !important;
  border: 2px solid #061738 !important;
  border-radius: 30px !important;
  font-weight: 700 !important;
  font-size: 1.5rem !important;
  padding: 12px 25px !important;
  transition: all 0.3s ease !important;
}
.action-btn--cart:hover {
  background: transparent !important;
  color: #061738 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(6,23,56,0.25) !important;
}

/* WhatsApp + social order buttons */
.action-btn--whatsapp {
  background: linear-gradient(135deg, #25D366, #128C7E) !important;
  color: #fff !important;
  border-radius: 30px !important;
  font-weight: 700 !important;
  border: none !important;
  box-shadow: 0 4px 15px rgba(37,211,102,0.35) !important;
  transition: all 0.3s ease !important;
}
.action-btn--whatsapp:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(37,211,102,0.5) !important;
}
.action-btn--messenger {
  background: linear-gradient(135deg, #006AFF, #0095FF) !important;
  color: #fff !important;
  border-radius: 30px !important;
  font-weight: 700 !important;
  border: none !important;
  box-shadow: 0 4px 15px rgba(0,106,255,0.3) !important;
  transition: all 0.3s ease !important;
}
.action-btn--phone {
  background: #2e2e2e !important;
  color: #fff !important;
  border-radius: 30px !important;
  font-weight: 700 !important;
  border: none !important;
  transition: all 0.3s ease !important;
}

/* Sticky bottom bar */
.sticky-buy-btn {
  background: linear-gradient(135deg, #FFD54F, #FF9800) !important;
  color: #061738 !important;
  border-radius: 20px !important;
  font-weight: 800 !important;
  border: none !important;
  padding: 10px 20px !important;
  box-shadow: 0 4px 15px rgba(255,152,0,0.3) !important;
  transition: all 0.25s ease !important;
}
.sticky-buy-btn:hover { transform: translateY(-1px) !important; }
.sticky-add-btn {
  background: #061738 !important;
  color: #FFD54F !important;
  border-radius: 20px !important;
  font-weight: 700 !important;
  border: none !important;
  transition: all 0.25s ease !important;
}
.sticky-whatsapp-btn {
  background: #25D366 !important;
  color: #fff !important;
  border-radius: 20px !important;
  border: none !important;
}
.mobile-sticky-cart {
  box-shadow: 0 -4px 20px rgba(0,0,0,0.15) !important;
  backdrop-filter: blur(10px) !important;
  background: rgba(255,255,255,0.97) !important;
}

/* Quantity controls */
.quantity__value {
  background: #f5f5f5 !important;
  border-radius: 8px !important;
  border: 1px solid #ddd !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
}
.quantity__value:hover {
  background: #FFD54F !important;
  border-color: #FFD54F !important;
  color: #061738 !important;
}

/* Price breakdown box */
.price-breakdown {
  background: linear-gradient(135deg, #f8f9fa, #fff) !important;
  border-radius: 12px !important;
  border-left: 3px solid #FFD54F !important;
  padding: 15px !important;
}

/* Product tabs */
.product-tabs__btn {
  padding: 12px 20px !important;
  font-weight: 600 !important;
  color: #666 !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
  border-bottom: 3px solid transparent !important;
  background: transparent !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
}
.product-tabs__btn--active {
  color: #061738 !important;
  border-bottom-color: #FFD54F !important;
  font-weight: 800 !important;
}

/* Related product cards */
.related-card {
  border-radius: 14px !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.08) !important;
  transition: all 0.3s ease !important;
  overflow: hidden !important;
  border: 1px solid #f0f0f0 !important;
}
.related-card:hover {
  box-shadow: 0 8px 24px rgba(0,0,0,0.15) !important;
  transform: translateY(-4px) !important;
  border-color: #FFD54F !important;
}
.related-pill {
  background: #fff9e6 !important;
  border: 1.5px solid #FFD54F !important;
  border-radius: 16px !important;
  padding: 3px 8px !important;
  font-size: 1.1rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  display: inline-block !important;
}
.related-pill:hover {
  background: #FFD54F !important;
  color: #222 !important;
  text-decoration: none !important;
}
.related-pill__qty {
  background: #061738 !important;
  color: #FFD54F !important;
  border-radius: 8px !important;
  padding: 0 5px !important;
  font-weight: 900 !important;
  display: inline-block !important;
}

/* --- MEDIA thumbnails --- */
.product__media--nav__items {
  border-radius: 8px !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
  border: 2px solid transparent !important;
  overflow: hidden !important;
}
.product__media--nav__items:hover {
  border-color: #FFD54F !important;
  box-shadow: 0 2px 10px rgba(255,213,79,0.4) !important;
}

/* --- PACK SELECTOR SAVINGS BANNER --- */
.pack-selector__savings-banner {
  background: linear-gradient(90deg, #e53935, #c62828) !important;
  color: #fff !important;
  border-radius: 20px !important;
  padding: 4px 14px !important;
  font-weight: 800 !important;
  font-size: 1.2rem !important;
  display: inline-block !important;
}

/* --- HEADER --- */
.header__topbar {
  background: #061738 !important;
  color: #FFD54F !important;
  font-weight: 600 !important;
}
.announcement-marquee {
  background: linear-gradient(90deg, #061738, #1a3a6e, #061738) !important;
  color: #FFD54F !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
}

/* --- SWIPER pagination dots --- */
.swiper-pagination-bullet-active {
  background: #FFD54F !important;
  transform: scale(1.3) !important;
}

/* --- PRIMARY BUTTON (generic) --- */
.primary__btn {
  background: linear-gradient(135deg, #FFD54F, #FF9800) !important;
  color: #061738 !important;
  border: none !important;
  border-radius: 30px !important;
  font-weight: 800 !important;
  box-shadow: 0 4px 15px rgba(255,152,0,0.3) !important;
  transition: all 0.3s ease !important;
}
.primary__btn:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 25px rgba(255,152,0,0.5) !important;
}

/* --- CART PAGE --- */
.cart-item, [class*="cart__item"] {
  border-radius: 16px !important;
  border: 1px solid #f0f0f0 !important;
  box-shadow: 0 2px 12px rgba(0,0,0,0.06) !important;
  padding: 15px !important;
  transition: box-shadow 0.3s ease !important;
  background: #fff !important;
  margin-bottom: 15px !important;
}

/* Animations */
@keyframes packPillClick {
  0% { transform: scale(1); }
  50% { transform: scale(0.92); }
  100% { transform: scale(1.05); }
}
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Responsive */
@media (max-width: 768px) {
  .pack-pill { font-size: 1.1rem !important; padding: 4px 8px !important; min-width: 72px !important; }
  .pack-pill__qty { padding: 1px 5px !important; font-size: 1rem !important; }
  .product-card__choose-btn { font-size: 1.2rem !important; padding: 8px 15px !important; }
  .section__heading--maintitle { font-size: 2.2rem !important; }
  .action-btn--primary { font-size: 1.4rem !important; padding: 12px 20px !important; }
  .action-btn--cart { font-size: 1.4rem !important; padding: 10px 20px !important; }
}
