:root {
  --cor-fundo:      #152e2f;
  --cor-card:       #1f3f42;
  --cor-header:     #122c31;
  --cor-footer:     #10282c;
  --cor-texto:      #f7f9f7;
  --cor-texto-sec:  #bfd6d5;
  --cor-destaque:   #c6edc4;
  --cor-destaque2:  #f4dfd2;
  --cor-banner:     #c6edc4;
  --cor-preco:      #5c8b68;
  --cor-destaque-dark: #9ebd9c;
  --cor-destaque-light: #ceefcc;
  --cor-header-2:   #243c41;
  --acc-05:         rgba(198,237,196,0.05);
  --acc-10:         rgba(198,237,196,0.1);
  --acc-15:         rgba(198,237,196,0.15);
  --acc-20:         rgba(198,237,196,0.2);
  --acc-30:         rgba(198,237,196,0.3);
  --acc-40:         rgba(198,237,196,0.4);
  --acc-60:         rgba(198,237,196,0.6);
  --gold: #c6edc4;
  --gold-solid: #c6edc4;
  --gold-dark: #94b193;
  --gold-light: #d1f0cf;
  --gold-gradient: linear-gradient(135deg, #c6edc4 0%, #f4dfd2 60%, #b2d5b0 100%);
  --on-accent: #111111;
  --bg: #152e2f;
  --bg-body: #152e2f;
  --bg-card: #1f3f42;
  --bg-header: #122c31;
  --bg-footer: #10282c;
  --text-main: #f7f9f7;
  --text-muted: #bfd6d5;
  --text-muted-safe: #bfd6d5;
  --price-color: #5c8b68;
  --banner-color: #c6edc4;
  --red-brand: #627760;
  --surface: #1f3f42;
  --surface-print: #ffffff;
  --surface-text: #24131c;
  --surface-muted: #5f5360;
  --surface-accent: #627760;
  --surface-accent-hover: #566854;
  --surface-accent-text: #ffffff;
  --border-accent: rgba(198,237,196,0.3);
  --shadow-accent: 0 6px 24px rgba(198,237,196,0.3);
  --radius: 16px;
  --radius-lg: 20px;
  --radius-sm: 8px;
  --transition: all 0.22s cubic-bezier(.4,0,.2,1);
  --theme-name: 'Primavera';
  --theme-description: 'Flores, vida e frescor para renovar a vitrine.';
  --theme-key: 'primavera';
}

::-webkit-scrollbar { width: 5px; height: 5px; }
::-webkit-scrollbar-track { background: #152e2f; }
::-webkit-scrollbar-thumb { background: #c6edc4; border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: #f4dfd2; }
::selection { background: rgba(198,237,196,0.3); color: #f7f9f7; }

body {
  background-color: #152e2f !important;
  color: #f7f9f7;
}
body.theme-primavera { }
a { color: inherit; }
a:hover { color: #c6edc4; }

.promo-bar {
  background: linear-gradient(90deg, #c6edc4, #f4dfd2, #c6edc4) !important;
  background-size: 200% 100% !important;
  animation: promoSlide 6s linear infinite !important;
  color: #111111 !important;
}
.promo-bar i { color: #8aa589 !important; }

.sticky-container {
  background: linear-gradient(180deg, #122c31 0%, #11292e 100%) !important;
  border-bottom: 1px solid rgba(198,237,196,0.3) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.5), inset 0 -1px 0 rgba(198,237,196,0.15) !important;
}
.app-header {
  background: transparent !important;
}
.brand-logo { color: #fff !important; }
.brand-logo i { color: #c6edc4 !important; }
.brand-name {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
.logo-icon { color: #c6edc4 !important; }
.logo-area .brand-name {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.btn-auth.btn-login {
  border: 1.5px solid rgba(198,237,196,0.4) !important;
  color: #fff !important;
  background: transparent !important;
}
.btn-auth.btn-login:hover { background: rgba(198,237,196,0.2) !important; }
.btn-auth.btn-cad {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  color: #111111 !important;
  border: none !important;
  font-weight: 900 !important;
}
.btn-auth.btn-cad:hover {
  box-shadow: 0 4px 14px rgba(198,237,196,0.4) !important;
  transform: translateY(-1px);
}

.search-input {
  background: rgba(255,255,255,0.97) !important;
  border: 2px solid transparent !important;
  color: #222 !important;
}
.search-input::placeholder { color: #999 !important; }
.search-input:focus {
  border-color: #c6edc4 !important;
  box-shadow: 0 0 0 3px rgba(198,237,196,0.2), 0 4px 15px rgba(0,0,0,0.15) !important;
  outline: none !important;
}
.search-icon { color: #c6edc4 !important; }
.search-results-dropdown { background: #fff !important; border-color: #eee !important; }
.search-item:hover { background: rgba(198,237,196,0.05) !important; }
.search-item span { color: #c6edc4 !important; }

.floor-btn {
  background: rgba(198,237,196,0.1) !important;
  border: 1.5px solid rgba(198,237,196,0.2) !important;
  color: #f7f9f7 !important;
  transition: var(--transition);
}
.floor-btn:hover {
  background: rgba(198,237,196,0.2) !important;
  border-color: rgba(198,237,196,0.4) !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(198,237,196,0.2) !important;
}
.floor-btn.active {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  border-color: transparent !important;
  color: #111111 !important;
  font-weight: 900 !important;
  box-shadow: 0 4px 18px rgba(198,237,196,0.4) !important;
}
.floor-btn.active span { color: #111111 !important; }
.floor-btn span { color: #c6edc4 !important; font-weight: 800 !important; }
.floor-btn.active span { color: #111111 !important; }

.sectors-area {
  background: rgba(198,237,196,0.05) !important;
  border-bottom: 1px solid rgba(198,237,196,0.15) !important;
}
.sector-header-bar {
  color: #c6edc4 !important;
  background: rgba(198,237,196,0.1) !important;
}
.sector-pill {
  background: rgba(198,237,196,0.1) !important;
  border: 1px solid rgba(198,237,196,0.2) !important;
  color: #bfd6d5 !important;
  transition: var(--transition);
}
.sector-pill:hover, .sector-pill.active {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  color: #111111 !important;
  font-weight: 700 !important;
  border-color: transparent !important;
  box-shadow: 0 3px 10px rgba(198,237,196,0.4) !important;
}

.hero-section { border-radius: 0 !important; margin: 0 !important; }
.banner-wrapper {
  border-color: rgba(198,237,196,0.3) !important;
  box-shadow: 0 8px 32px rgba(198,237,196,0.2) !important;
}
.hero-overlay { background: linear-gradient(180deg, rgba(0,0,0,0.10) 0%, rgba(0,0,0,0.60) 100%) !important; }
.hero-text span { color: #c6edc4 !important; }
.hero-text h1 { color: #fff !important; }
.theme-showcase {
  position: relative !important;
  overflow: hidden !important;
  min-height: clamp(260px, 36vw, 460px) !important;
  display: grid !important;
  align-items: stretch !important;
  background:
    radial-gradient(circle at 16% 18%, rgba(198,237,196,0.4) 0, transparent 30%),
    radial-gradient(circle at 86% 22%, rgba(244,223,210,0.28) 0, transparent 28%),
    linear-gradient(135deg, #122c31 0%, #152e2f 42%, #1f3f42 100%) !important;
}
.theme-showcase::before { content: ''; display: none; }
.theme-showcase::after {
  content: '';
  position: absolute;
  inset: auto 0 0 0;
  height: 40%;
  background: linear-gradient(180deg, transparent, #152e2f);
  pointer-events: none;
}
.theme-image-showcase {
  width: 100% !important;
  max-width: 1640px !important;
  margin: 0 auto 10px !important;
  min-height: 0 !important;
  display: block !important;
  background: transparent !important;
  border-radius: 0 !important;
}
.theme-image-showcase::after {
  display: none !important;
}
.theme-banner-img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1640 / 624 !important;
  object-fit: cover !important;
}
.theme-hero-art { display: none; }
.theme-hero-inner {
  position: relative;
  z-index: 2;
  width: min(860px, calc(100% - 28px));
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: clamp(40px, 6vw, 80px) 0;
}
.theme-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: max-content;
  max-width: 100%;
  padding: 8px 13px;
  border-radius: 999px;
  background: rgba(198,237,196,0.2);
  border: 1px solid rgba(198,237,196,0.4);
  color: #f4dfd2;
  font-weight: 900;
  font-size: 0.76rem;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}
.theme-headline {
  margin: 14px 0 10px;
  color: #f7f9f7;
  font-size: clamp(2rem, 6vw, 5.2rem);
  line-height: 0.92;
  letter-spacing: -0.07em;
  font-weight: 950;
  text-wrap: balance;
}
.theme-headline strong {
  color: #c6edc4;
  text-shadow: 0 0 28px rgba(198,237,196,0.4);
}
.theme-subtitle {
  max-width: 680px;
  color: #bfd6d5;
  font-size: clamp(1rem, 2vw, 1.22rem);
  line-height: 1.5;
  margin: 0 0 22px;
}
.theme-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}
.theme-cta, .theme-ghost {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border-radius: 999px;
  padding: 12px 18px;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 0.78rem;
  letter-spacing: 0.04em;
}
.theme-cta {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2);
  color: #111111 !important;
  box-shadow: 0 16px 36px rgba(198,237,196,0.3);
}
.theme-ghost {
  background: rgba(255,255,255,0.06);
  color: #f7f9f7 !important;
  border: 1px solid rgba(198,237,196,0.3);
}
.theme-date-card {
  position: relative;
  border-radius: 26px;
  padding: 22px;
  min-height: 260px;
  background:
    linear-gradient(145deg, rgba(255,255,255,0.12), rgba(255,255,255,0.04)),
    linear-gradient(135deg, rgba(198,237,196,0.2), transparent);
  border: 1px solid rgba(198,237,196,0.4);
  box-shadow: 0 24px 70px rgba(0,0,0,0.36), inset 0 1px 0 rgba(255,255,255,0.14);
  overflow: hidden;
}
.theme-date-card::before {
  content: 'primavera';
  position: absolute;
  right: -14px;
  bottom: 10px;
  color: #f4dfd2;
  opacity: 0.10;
  font-size: clamp(2.8rem, 8vw, 5rem);
  font-weight: 950;
  transform: rotate(-10deg);
}
.theme-symbol {
  width: 74px;
  height: 74px;
  display: grid;
  place-items: center;
  border-radius: 22px;
  background: linear-gradient(135deg, #c6edc4, #f4dfd2);
  color: #111111;
  font-size: 2.1rem;
  font-weight: 950;
  box-shadow: 0 14px 34px rgba(198,237,196,0.3);
}
.theme-date-card h3 {
  margin: 18px 0 8px;
  color: #f7f9f7;
  font-size: 1.55rem;
  line-height: 1.05;
}
.theme-date-card p {
  margin: 0;
  color: #bfd6d5;
  line-height: 1.45;
}
.theme-tag-row {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 18px;
}
.theme-mini-tag {
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(198,237,196,0.15);
  border: 1px solid rgba(198,237,196,0.2);
  color: #f7f9f7;
  font-size: 0.72rem;
  font-weight: 800;
}
.theme-strip {
  background: linear-gradient(90deg, rgba(198,237,196,0.1), rgba(198,237,196,0.2), rgba(198,237,196,0.1)) !important;
  border-top: 1px solid rgba(198,237,196,0.2);
  border-bottom: 1px solid rgba(198,237,196,0.2);
}
.theme-strip-track {
  display: flex;
  gap: 18px;
  overflow: hidden;
  white-space: nowrap;
  padding: 10px 0;
  color: #f4dfd2;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.76rem;
  animation: themeMarquee 24s linear infinite;
}
@keyframes themeMarquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

.content-header h2 { color: #f7f9f7 !important; }
.content-header small { color: #c6edc4 !important; }
.content-header .border-acc { border-left-color: #c6edc4 !important; }

.partner-card {
  background: rgba(198,237,196,0.05) !important;
  border: 1px solid rgba(198,237,196,0.2) !important;
  transition: var(--transition);
}
.partner-card:hover, .partner-card:active {
  background: rgba(198,237,196,0.15) !important;
  border-color: rgba(198,237,196,0.4) !important;
  transform: translateY(-3px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.4), 0 0 0 1px rgba(198,237,196,0.2) !important;
}
.partner-card img { border-color: #c6edc4 !important; }
.partner-card h4 { color: #fff !important; }
.partner-card span { color: #c6edc4 !important; }

.product-card {
  background: #1f3f42 !important;
  border: 1px solid rgba(255,255,255,0.07) !important;
  box-shadow: 0 4px 16px rgba(0,0,0,0.3) !important;
  transition: transform 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease !important;
}
.product-card:hover {
  border-color: rgba(198,237,196,0.4) !important;
  box-shadow: 0 12px 36px rgba(0,0,0,0.5), 0 0 0 1px rgba(198,237,196,0.2) !important;
  transform: translateY(-5px) !important;
}
.gift-ribbon {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  color: #111111 !important;
  font-weight: 900 !important;
}
.gift-ribbon::after { border-top-color: #809a7f !important; }
.p-name { color: #ddd !important; }
.product-details { background: #1f3f42 !important; }
.p-price .value { color: #5c8b68 !important; font-weight: 900 !important; }
.p-price .label { color: #bfd6d5 !important; }
.p-installments { color: #bfd6d5 !important; }
.p-installments strong { color: #c6edc4 !important; }
.p-price.consult .value { color: #c6edc4 !important; }
.consult { color: #c6edc4 !important; }
.slide-indicator {
  background: rgba(198,237,196,0.6) !important;
  color: #fff !important;
  backdrop-filter: blur(4px);
}
.nav-btn { background: rgba(0,0,0,0.7) !important; color: #fff !important; }
.nav-btn:hover { background: rgba(198,237,196,0.6) !important; }
.no-image-placeholder { background: rgba(255,255,255,0.04) !important; }
.no-image-placeholder i { color: rgba(198,237,196,0.3) !important; }
.no-image-placeholder span { color: #c6edc4 !important; }

.btn-card.btn-add {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  color: #111111 !important;
  font-weight: 900 !important;
  border: none !important;
  transition: var(--transition);
}
.btn-card.btn-add:hover, .btn-card.btn-add:active {
  box-shadow: 0 4px 18px rgba(198,237,196,0.4) !important;
  transform: translateY(-1px) !important;
}
.btn-card.btn-whats {
  background: transparent !important;
  border: 2px solid #087a3a !important;
  color: #087a3a !important;
}
.btn-card.btn-whats:hover { background: #087a3a !important; color: #fff !important; }
.btn-main.btn-buy {
  background: #627760 !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  box-shadow: 0 4px 18px rgba(198,237,196,0.4) !important;
}
.btn-main.btn-buy:hover {
  background: #566854 !important;
  box-shadow: 0 6px 24px rgba(198,237,196,0.4) !important;
  transform: translateY(-2px) !important;
}
.action-btn-add-cart {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  color: #111111 !important;
  font-weight: 900 !important;
}
.nav-pill {
  background: rgba(198,237,196,0.1) !important;
  border-color: rgba(198,237,196,0.2) !important;
  color: #f7f9f7 !important;
}
.nav-pill i { color: #c6edc4 !important; }
.nav-pill.active, .nav-pill:hover {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  border-color: transparent !important;
  color: #111111 !important;
  box-shadow: 0 4px 14px rgba(198,237,196,0.4) !important;
}
.nav-pill.active i { color: #111111 !important; }

.cart-float-btn {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  color: #111111 !important;
  box-shadow: 0 6px 24px rgba(198,237,196,0.4) !important;
  transition: transform 0.2s, box-shadow 0.2s !important;
}
.cart-float-btn:hover { box-shadow: 0 8px 30px rgba(198,237,196,0.4) !important; transform: scale(1.08) !important; }
.cart-float-btn i { color: #111111 !important; }
.cart-badge {
  background: #ff3b30 !important;
  border: 2px solid #152e2f !important;
  color: #fff !important;
}
.cart-sidebar {
  background: #1f3f42 !important;
  border-left: 2px solid rgba(198,237,196,0.3) !important;
}
.cart-header { border-bottom: 1px solid rgba(198,237,196,0.2) !important; }
.cart-header h3 { color: #c6edc4 !important; }
.close-cart { color: #bfd6d5 !important; }
.close-cart:hover { color: #c6edc4 !important; }
.cart-footer { background: #152e2f !important; border-top: 1px solid rgba(198,237,196,0.2) !important; }
.cart-total span { color: #bfd6d5 !important; }
.cart-total strong { color: #f7f9f7 !important; }
.cart-item { border-bottom-color: rgba(198,237,196,0.15) !important; }
.cart-item-info h4 { color: #ddd !important; }
.cart-item-info .price { color: #c6edc4 !important; }
.qty-btn {
  background: rgba(198,237,196,0.2) !important;
  border: 1px solid rgba(198,237,196,0.3) !important;
  color: #f7f9f7 !important;
  width: 26px; height: 26px; border-radius: 50%;
  cursor: pointer; display: inline-flex; align-items: center; justify-content: center;
  font-weight: 900; transition: var(--transition);
}
.qty-btn:hover { background: #c6edc4 !important; color: #111111 !important; }
.btn-checkout {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  color: #111111 !important;
  font-weight: 900 !important;
  border: none !important;
  box-shadow: 0 4px 18px rgba(198,237,196,0.4) !important;
  border-radius: 12px !important;
}
.btn-checkout:hover { box-shadow: 0 6px 24px rgba(198,237,196,0.4) !important; transform: translateY(-1px) !important; }
.security-badge { color: #bfd6d5 !important; }
.security-badge i { color: #c6edc4 !important; }
.method-card {
  background: rgba(198,237,196,0.05) !important;
  border: 2px solid rgba(198,237,196,0.2) !important;
  color: #bfd6d5 !important;
  transition: var(--transition);
}
.method-card.active, .method-card:hover {
  background: rgba(198,237,196,0.2) !important;
  border-color: #c6edc4 !important;
  color: #f7f9f7 !important;
}
.method-icon { color: #c6edc4 !important; }
.method-card.active .method-icon { color: #c6edc4 !important; }

#btn-topo {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  color: #111111 !important;
  box-shadow: 0 4px 14px rgba(198,237,196,0.4) !important;
}
#btn-topo:hover { transform: translateY(-3px) !important; box-shadow: 0 6px 20px rgba(198,237,196,0.4) !important; }

.app-footer {
  background: #10282c !important;
  border-top: 2px solid rgba(198,237,196,0.3) !important;
}
.app-footer h2, .footer-logo {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}
.app-footer p { color: #bfd6d5 !important; }
.copyright { color: rgba(255,255,255,0.3) !important; }

.login-modal { backdrop-filter: blur(8px) !important; }
.login-modal-content {
  background: #1f3f42 !important;
  border: 1px solid rgba(198,237,196,0.2) !important;
  box-shadow: 0 30px 80px rgba(0,0,0,0.7), 0 0 0 1px rgba(198,237,196,0.15) !important;
}
.login-modal-content h2 { color: #f7f9f7 !important; }
.login-modal-content p { color: #bfd6d5 !important; }
.close-modal { color: #bfd6d5 !important; }
.close-modal:hover { color: #c6edc4 !important; }

.modal-zoom, .cart-overlay {
  backdrop-filter: blur(4px);
}
.modal-conteudo { border-color: #c6edc4 !important; }
.modal-nav { color: #c6edc4 !important; }

.skeleton-card { background: rgba(198,237,196,0.05) !important; }
.skeleton-img, .skeleton-line {
  background: linear-gradient(90deg, rgba(198,237,196,0.05) 25%, rgba(198,237,196,0.15) 50%, rgba(198,237,196,0.05) 75%) !important;
  background-size: 400px 100% !important;
  animation: skeletonShimmer 1.5s infinite !important;
}

.thumb { background: rgba(255,255,255,0.95) !important; border-color: transparent !important; }
.thumb.active, .thumb:hover { border-color: #c6edc4 !important; box-shadow: 0 2px 10px rgba(198,237,196,0.3) !important; }
.main-img-box { border: 2px solid rgba(198,237,196,0.2) !important; box-shadow: 0 10px 30px rgba(0,0,0,0.3), 0 0 0 1px rgba(198,237,196,0.1) !important; }
.main-img-box:hover { border-color: rgba(198,237,196,0.4) !important; }
.badge-maes {
  background: rgba(198,237,196,0.15) !important;
  border-color: rgba(198,237,196,0.3) !important;
  color: #f7f9f7 !important;
}
.badge-maes i { color: #c6edc4 !important; }
.price-area { background: rgba(255,255,255,0.98) !important; color: #24131c !important; }
.price-val { color: #627760 !important; }
.label-from, .installments { color: #5f5360 !important; }
.installments strong { color: #627760 !important; }
.desc-box { background: rgba(255,255,255,0.98) !important; color: #24131c !important; }
.desc-box h3, .btn-ver-mais { color: #627760 !important; }
.desc-text { color: #5f5360 !important; }
.buy-card { background: rgba(255,255,255,0.98) !important; color: #24131c !important; }
.stock-msg { color: #24131c !important; }
.stock-msg i { color: #087a3a !important; }
.shipping-fake { color: #627760 !important; }
.related-section .section-header { color: #c6edc4 !important; }
.p-card { background: rgba(255,255,255,0.98) !important; color: #24131c !important; }
.policy-alert { background: rgba(255,255,255,0.98) !important; color: #5f5360 !important; border-left-color: #627760 !important; }
.policy-alert strong { color: #24131c !important; }
.btn-zap { border-color: #087a3a !important; color: #087a3a !important; }
.btn-zap:hover { background: #087a3a !important; color: #ffffff !important; }
.ai-badge { background: rgba(198,237,196,0.6) !important; border: 1px solid rgba(198,237,196,0.3) !important; }

.btn-gold, .btn-destaque {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  color: #111111 !important;
  border: none !important;
  font-weight: 900 !important;
}

input[type='text'], input[type='email'], input[type='tel'],
input[type='number'], input[type='password'], select, textarea {
  transition: border-color 0.2s, box-shadow 0.2s !important;
}
input:focus, select:focus, textarea:focus {
  border-color: #c6edc4 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(198,237,196,0.2) !important;
}

.stock-low-badge { background: rgba(220,50,50,0.92) !important; }

.gerador-header, .gen-topbar {
  background: #122c31 !important;
  border-bottom-color: rgba(198,237,196,0.3) !important;
}
.gen-btn-primary {
  background: linear-gradient(135deg, #c6edc4, #f4dfd2) !important;
  color: #111111 !important;
  font-weight: 900 !important;
}
.gen-accent { color: #c6edc4 !important; }

@keyframes promoSlide {
  0% { background-position: 0% 50%; }
  100% { background-position: 200% 50%; }
}

@keyframes skeletonShimmer {
  0% { background-position: -400px 0; }
  100% { background-position: 400px 0; }
}

@keyframes themeGlow {
  0%, 100% { box-shadow: 0 0 8px rgba(198,237,196,0.2); }
  50%       { box-shadow: 0 0 24px rgba(198,237,196,0.4), 0 0 48px rgba(198,237,196,0.2); }
}

@keyframes themeFloat {
  0%, 100% { transform: translateY(0); }
  50%       { transform: translateY(-8px); }
}

@keyframes themePulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.85; transform: scale(0.97); }
}

@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

@keyframes particleFloat {
  0%   { transform: translateY(-20px) rotate(0deg) scale(0.8); opacity: 0; }
  5%   { opacity: 1; }
  95%  { opacity: 0.7; }
  100% { transform: translateY(110vh) rotate(720deg) scale(0.3); opacity: 0; }
}

@keyframes confettiFall {
  0%   { transform: translateY(-20px) rotateX(0) rotateY(0) rotateZ(0); opacity: 0; }
  10%  { opacity: 1; }
  100% { transform: translateY(110vh) rotateX(360deg) rotateY(180deg) rotateZ(720deg); opacity: 0; }
}

@keyframes heartBeat {
  0%, 100% { transform: scale(1); }
  50%       { transform: scale(1.3); }
}

.tema-particula {
  position: fixed;
  pointer-events: none;
  z-index: 99998;
  opacity: 0;
  animation: particleFloat var(--pdur, 9s) linear var(--pdelay, 0s) infinite;
}
.tema-confetti {
  position: fixed;
  pointer-events: none;
  z-index: 99998;
  opacity: 0;
  width: 8px;
  height: 8px;
  border-radius: 2px;
  animation: confettiFall var(--pdur, 7s) linear var(--pdelay, 0s) infinite;
}

@media (max-width: 767px) {
  .promo-bar { font-size: 0.7rem !important; padding: 6px 8px !important; }
  .theme-showcase { min-height: auto !important; }
  .theme-hero-inner { padding: 32px 0 36px !important; }
  .theme-actions a { flex: 1 1 140px !important; justify-content: center !important; }
  .floor-btn { font-size: 0.68rem !important; padding: 8px 2px !important; }
  .cart-sidebar { max-width: 100% !important; }
  .product-card:hover { transform: none !important; }
  .partner-card:hover { transform: none !important; }
}

@media (min-width: 768px) {
  .product-card:hover { transform: translateY(-5px) !important; }
  .partner-card:hover { transform: translateY(-3px) !important; }
}
