/* ============================================
   NEBULA MARKET 1:1 OVERRIDE (ALL !important)
   ============================================ */

/* === GLOBAL === */
html, body {
  max-width: 100% !important;
  overflow-x: hidden !important;
  background: #050005 !important;
}
::-webkit-scrollbar { width: 8px !important; }
::-webkit-scrollbar-track { background: #050005 !important; }
::-webkit-scrollbar-thumb { background: #1a0a2e !important; border-radius: 4px !important; }
* { scrollbar-width: thin !important; scrollbar-color: #1a0a2e #050005 !important; }

/* === HIDE ANNOUNCEMENT BAR === */
.announcement { display: none !important; }

/* === NAVBAR — FLAT NEBULA STYLE + STICKY === */
.navbar {
  background: rgba(5,0,5,0.85) !important;
  border: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  padding: 0.75rem 0 !important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 9999 !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  transition: background 0.3s ease !important;
}

/* Push content down so it doesn't hide behind fixed navbar */
body { padding-top: 0 !important; }
.hero { padding-top: 80px !important; min-height: 100vh !important; box-sizing: border-box !important; }
.navbar .navbar-inner {
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  padding: 0.5rem 2rem !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
}
.navbar .navbar-brand {
  gap: 0.75rem !important;
  padding: 0 !important;
  border: none !important;
}
.navbar .navbar-brand img {
  height: 32px !important;
  border-radius: 8px !important;
}
.navbar-nav .nav-link {
  color: rgba(255,255,255,0.7) !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  padding: 0.5rem 1rem !important;
  border-radius: 8px !important;
  transition: all 0.2s !important;
}
.navbar-nav .nav-link:hover {
  color: #fff !important;
  background: rgba(147,51,234,0.1) !important;
}
.navbar .btn-outline-primary {
  background: linear-gradient(135deg, #9333ea, #7c3aed) !important;
  border: none !important;
  color: #fff !important;
  border-radius: 25px !important;
  padding: 0.5rem 1.25rem !important;
  font-weight: 600 !important;
}
.navbar .btn-outline-primary:hover {
  background: linear-gradient(135deg, #a855f7, #8b5cf6) !important;
  box-shadow: 0 4px 16px rgba(147,51,234,0.4) !important;
  transform: translateY(-1px) !important;
}
.navbar .user .btn:not(.btn-outline-primary),
.navbar .cart .btn:not(.btn-outline-primary) {
  background: rgba(255,255,255,0.05) !important;
  border: 1px solid rgba(255,255,255,0.1) !important;
  border-radius: 50% !important;
}

/* === HERO — CLEAN NEBULA === */
.hero {
  background: #050005 !important;
  min-height: 100vh !important;
}
.hero .gradient-bg {
  background: radial-gradient(ellipse at 50% 0%, rgba(147,51,234,0.08) 0%, transparent 70%) !important;
}
.hero .shapes-container { display: none !important; }
.hero .elegant-shape { display: none !important; }
.hero .bg-overlay { display: none !important; }

.hero .hero-badge {
  background: rgba(147,51,234,0.1) !important;
  border: 1px solid rgba(147,51,234,0.25) !important;
  border-radius: 50px !important;
  padding: 0.5rem 1.25rem !important;
}
.hero .hero-badge span,
.hero .hero-badge i {
  color: #c084fc !important;
  font-size: 0.8rem !important;
}

.hero h1 {
  font-size: clamp(2.5rem, 5vw, 4rem) !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  text-align: center !important;
}
.hero .title-line-1 {
  background: none !important;
  -webkit-text-fill-color: #fff !important;
  color: #fff !important;
  display: block !important;
}
.hero .title-line-accent {
  background: linear-gradient(135deg, #bf5af2, #d88aff) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  display: block !important;
  filter: brightness(1.2) !important;
}

.hero p,
.hero .hero-subtitle {
  color: rgba(220,200,245,0.7) !important;
  font-size: 1.1rem !important;
}
.hero .accent-text {
  color: #bf5af2 !important;
  font-weight: 600 !important;
}

/* Trust Badge Pills */
.hero .trust-badges-row {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 0.75rem !important;
  margin-top: 2rem !important;
  margin-bottom: 0.5rem !important;
}
.hero .trust-badge-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  padding: 0.5rem 1rem !important;
  background: rgba(255,255,255,0.03) !important;
  border: 1px solid rgba(255,255,255,0.08) !important;
  border-radius: 50px !important;
  color: rgba(255,255,255,0.8) !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
}
.tbp-emoji { font-size: 0.85rem !important; flex-shrink: 0 !important; line-height: 1 !important; }

/* Hero Buttons */
.hero .hero-buttons {
  gap: 1rem !important;
  margin-top: 1.5rem !important;
}
.hero .hero-btn {
  padding: 0.85rem 2rem !important;
  border-radius: 14px !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  transition: all 0.3s !important;
}
.hero .hero-btn-primary {
  background: linear-gradient(135deg, #9333ea, #7c3aed) !important;
  color: #fff !important;
  border: none !important;
}
.hero .hero-btn-primary:hover {
  background: linear-gradient(135deg, #a855f7, #8b5cf6) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(147,51,234,0.4) !important;
}
.hero .hero-btn-secondary {
  background: transparent !important;
  color: #c084fc !important;
  border: 1px solid rgba(147,51,234,0.3) !important;
}
.hero .hero-btn-secondary:hover {
  background: rgba(147,51,234,0.1) !important;
  border-color: rgba(147,51,234,0.5) !important;
  transform: translateY(-2px) !important;
}

/* Scroll Indicator */
.hero .scroll-indicator {
  position: absolute !important;
  bottom: 2.5rem !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  z-index: 20 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0.5rem !important;
}
.hero .scroll-mouse {
  width: 22px !important;
  height: 36px !important;
  border: 2px solid rgba(192,132,252,0.25) !important;
  border-radius: 12px !important;
}
.hero .scroll-wheel {
  width: 3px !important;
  height: 8px !important;
  background: rgba(192,132,252,0.4) !important;
  border-radius: 2px !important;
  margin: 6px auto 0 !important;
  animation: scrollWheelAnim 2s ease infinite !important;
}
@keyframes scrollWheelAnim {
  0% { opacity:1; transform:translateY(0); }
  50% { opacity:0.2; transform:translateY(8px); }
  100% { opacity:1; transform:translateY(0); }
}
.hero .scroll-indicator > span {
  font-size: 0.6rem !important;
  font-weight: 700 !important;
  color: rgba(192,132,252,0.3) !important;
  letter-spacing: 0.2em !important;
}

/* === SECTION TITLES — NEBULA STYLE === */
.section-title {
  margin-bottom: 0.5rem !important;
}
.section-title h2 {
  font-size: clamp(1.75rem, 4vw, 2.5rem) !important;
  font-weight: 800 !important;
  color: #fff !important;
}
.section-subtitle p {
  color: rgba(200,180,230,0.5) !important;
  font-size: 0.9rem !important;
}

/* === PRODUCT CARDS === */
.product-card {
  border: 1px solid rgba(147,51,234,0.1) !important;
  border-radius: 16px !important;
  background: rgba(147,51,234,0.02) !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
}
.product-card:hover {
  border-color: rgba(147,51,234,0.25) !important;
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 32px rgba(0,0,0,0.4), 0 0 20px rgba(147,51,234,0.08) !important;
}
.product-image-wrapper {
  background: linear-gradient(135deg, #0a0510, #120a1e) !important;
}
.product-info {
  background: rgba(5,0,5,0.95) !important;
  padding: 1rem 1.25rem !important;
}
.product-info::before {
  background: linear-gradient(90deg, transparent, rgba(147,51,234,0.15), transparent) !important;
}

/* === FEATURES SECTION === */
.feature-card {
  border-color: rgba(147,51,234,0.12) !important;
  background: rgba(147,51,234,0.03) !important;
}
.feature-card:hover {
  border-color: rgba(147,51,234,0.3) !important;
}
.feature-icon { color: #c084fc !important; }
.feature-indicator { background: rgba(147,51,234,0.3) !important; }
.feature-card:hover .feature-indicator { background: #9333ea !important; }
.feature-description { color: rgba(200,180,230,0.6) !important; }

/* === FAQ SECTION === */
.faq-card {
  border-color: rgba(147,51,234,0.15) !important;
  background: rgba(147,51,234,0.03) !important;
}
.faq-card:hover { border-color: rgba(147,51,234,0.3) !important; }
.faq-card.active { border-color: rgba(147,51,234,0.4) !important; }
.faq-indicator { background: rgba(147,51,234,0.2) !important; }
.faq-card:hover .faq-indicator,
.faq-card.active .faq-indicator { background: #9333ea !important; }

/* === FEEDBACK CARDS === */
.feedback-card-inner {
  background: rgba(147,51,234,0.03) !important;
  border: 1px solid rgba(147,51,234,0.12) !important;
}
.feedback-card-inner::before {
  background: linear-gradient(90deg, transparent, rgba(147,51,234,0.3), transparent) !important;
}
.feedback-card-inner:hover {
  border-color: rgba(147,51,234,0.25) !important;
  background: rgba(147,51,234,0.06) !important;
}
.feedback-stars svg { color: #c084fc !important; }
.feedback-quote-icon svg { color: #c084fc !important; }
.feedback-footer { border-top-color: rgba(147,51,234,0.1) !important; }

/* === PAYMENT SECTION === */
.payment-method-icon {
  background: linear-gradient(135deg, rgba(147,51,234,0.2), rgba(88,28,135,0.15)) !important;
  border-radius: 12px !important;
}

/* === FOOTER === */
.footer {
  border-top: 1px solid rgba(147,51,234,0.1) !important;
  background: rgba(5,0,5,0.95) !important;
}

/* === VS SECTION ACCENT === */
.neb-heading .accent,
.accent {
  color: #c084fc !important;
}

/* === LIVE DOT === */
.live-dot-sm {
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  background: #22c55e !important;
  flex-shrink: 0 !important;
  display: inline-block !important;
}

/* === BOTTOM FADE === */
.hero .bottom-fade {
  background: linear-gradient(to top, #050005, transparent 50%, rgba(5,0,5,0.5)) !important;
}

/* === HIDE OLD SEARCHBAR === */
.hero .fake-searchbar { display: none !important; }

/* === HERO STATS (hidden for Nebula look) === */
.hero .hero-stats { display: none !important; }

/* ============================================
   PRODUCT PAGE — PURPLE THEME OVERRIDE
   ============================================ */

/* Variant Cards */
.product-form .variants .variant {
  background: linear-gradient(to bottom, rgba(15,5,25,0.95), rgba(8,4,14,0.95)) !important;
  border: 1px solid rgba(147,51,234,0.15) !important;
  border-radius: 12px !important;
  transition: all 0.3s ease !important;
}
.product-form .variants .variant:hover:not(:disabled) {
  background: linear-gradient(to bottom, rgba(25,10,40,0.95), rgba(15,8,25,0.95)) !important;
  border-color: rgba(147,51,234,0.3) !important;
}
.product-form .variants .variant.active {
  background: linear-gradient(to bottom, rgba(147,51,234,0.12), rgba(88,28,135,0.1)) !important;
  border-color: rgba(147,51,234,0.5) !important;
  box-shadow: 0 0 0 2px rgba(147,51,234,0.15), 0 4px 16px rgba(147,51,234,0.1) !important;
}

/* Stock Badge — purple instead of green */
.stock-badge.in-stock {
  background: rgba(147,51,234,0.15) !important;
  color: #c084fc !important;
  border: 1px solid rgba(147,51,234,0.3) !important;
}

/* Buy / Add to Cart Button */
.product-info-section .btn-primary,
.product-form .btn-primary {
  background: linear-gradient(135deg, #9333ea, #7c3aed) !important;
  color: #fff !important;
  border: none !important;
  font-weight: 700 !important;
  border-radius: 12px !important;
}
.product-info-section .btn-primary:hover,
.product-form .btn-primary:hover {
  background: linear-gradient(135deg, #a855f7, #8b5cf6) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(147,51,234,0.4) !important;
  color: #fff !important;
}

/* Product Price */
.product-price {
  color: #fff !important;
}
.product-price .price {
  color: #fff !important;
  font-weight: 800 !important;
}

/* Price Section Box */
.product-price-section {
  border-color: rgba(147,51,234,0.15) !important;
  background: rgba(147,51,234,0.03) !important;
}

/* Product Page Background */
.product-page-wrapper {
  background: #050005 !important;
}
.product-gradient-bg {
  background: radial-gradient(ellipse at 50% 0%, rgba(147,51,234,0.08) 0%, transparent 70%) !important;
}

/* Product Image */
.product-image-wrapper {
  border: 1px solid rgba(147,51,234,0.12) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
}

/* Tabs / Description Section */
.product-tabs-section .nav-link {
  color: rgba(200,180,230,0.6) !important;
}
.product-tabs-section .nav-link.active {
  color: #c084fc !important;
  border-bottom-color: #9333ea !important;
}
.product-tabs-section .tab-content {
  color: rgba(200,180,230,0.7) !important;
}
.product-tabs-section {
  border-color: rgba(147,51,234,0.1) !important;
  background: rgba(147,51,234,0.02) !important;
}

/* Product Description Content */
.product-description-content {
  border-color: rgba(147,51,234,0.1) !important;
}
.product-description-content ul li::before {
  color: #c084fc !important;
}

/* Form Controls on Product Page */
.product-info-section .form-control,
.product-info-section .form-select {
  background: rgba(15,5,25,0.6) !important;
  border: 1px solid rgba(147,51,234,0.15) !important;
  color: #fff !important;
}
.product-info-section .form-control:focus,
.product-info-section .form-select:focus {
  border-color: rgba(147,51,234,0.4) !important;
  box-shadow: 0 0 0 3px rgba(147,51,234,0.1) !important;
}

/* Quantity Buttons */
.product-form .input-group .btn {
  background: rgba(147,51,234,0.1) !important;
  border-color: rgba(147,51,234,0.2) !important;
  color: #c084fc !important;
}
.product-form .input-group .btn:hover {
  background: rgba(147,51,234,0.2) !important;
}
.product-form .input-group .form-control {
  background: rgba(15,5,25,0.6) !important;
  border-color: rgba(147,51,234,0.15) !important;
  color: #fff !important;
}

/* Upsells Section */
.upsells-section {
  background: rgba(147,51,234,0.03) !important;
  border: 1px solid rgba(147,51,234,0.12) !important;
}
.upsells-header {
  border-bottom-color: rgba(147,51,234,0.1) !important;
}

/* Notification Popup */
.notification-popup {
  background: linear-gradient(to bottom, rgba(15,5,25,0.95), rgba(8,4,14,0.95)) !important;
  border: 1px solid rgba(147,51,234,0.2) !important;
}

/* Crossed-out old price */
.product-form .variants .variant .price del,
.product-price del {
  color: rgba(200,180,230,0.35) !important;
}

/* "X people viewing" badge on product page */
.product-viewers-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.4rem !important;
  padding: 0.4rem 0.875rem !important;
  background: rgba(239,68,68,0.08) !important;
  border: 1px solid rgba(239,68,68,0.2) !important;
  border-radius: 50px !important;
  font-size: 0.75rem !important;
  font-weight: 600 !important;
  color: #f87171 !important;
  margin-top: 0.75rem !important;
  animation: urgencyPulse 3s ease infinite !important;
}
@keyframes urgencyPulse {
  0%,100% { opacity: 1; }
  50% { opacity: 0.7; }
}
