/* Lightweight TikTok covers keep the third-party player off the initial load. */
html body [data-tiktok-card] [data-tiktok-stage] {
  background: #f8f5f6 !important;
}
html body [data-tiktok-card] .tiktok-cover {
  position: absolute !important;
  inset: 0 !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  padding: 28% !important;
  box-sizing: border-box !important;
  object-fit: contain !important;
  border: 0 !important;
  border-radius: inherit !important;
}
html body [data-tiktok-card].has-cover .tiktok-cover {
  padding: 0 !important;
  object-fit: cover !important;
}
html body [data-tiktok-card] .tiktok-cover-trigger {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2;
  display: grid !important;
  place-items: center !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: transparent !important;
  box-shadow: none !important;
  cursor: pointer;
  touch-action: pan-x pan-y;
}
html body [data-tiktok-card] .tiktok-cover-trigger:focus-visible {
  outline: 3px solid var(--season-primary) !important;
  outline-offset: -5px;
}
html body [data-tiktok-card] .tiktok-cover-play {
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  border: 4px solid rgba(40, 40, 40, .35);
  border-radius: 50%;
  background: #fff;
  color: #111;
  box-shadow: 0 3px 12px rgba(0, 0, 0, .14);
}
html body [data-tiktok-card] .tiktok-cover-play svg {
  width: 28px !important;
  height: 28px !important;
  margin-left: 3px;
  fill: currentColor;
  stroke-width: 1;
}
html body [data-tiktok-card]:not(.has-cover) .tiktok-cover-play {
  transform: translateY(105px);
}
html body [data-tiktok-card].has-player .tiktok-cover-trigger {
  display: none !important;
}
html body [data-tiktok-card] iframe[data-tiktok-iframe] {
  position: absolute !important;
  inset: 0 !important;
  z-index: 3;
  opacity: 0;
}
html body [data-tiktok-card].player-ready iframe[data-tiktok-iframe] { opacity: 1; }
html body [data-tiktok-card] [data-tiktok-loader] {
  position: relative;
  z-index: 4;
  pointer-events: none;
}
html body [data-tiktok-card] [data-tiktok-loader][hidden] { display: none !important; }
html body [data-tiktok-card].is-loading [data-tiktok-loader] {
  border-color: rgba(40, 40, 40, .2) !important;
  border-top-color: var(--season-primary, #a61c4f) !important;
}
html body [data-tiktok-card] .tiktok-load-status {
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 12px;
  z-index: 4;
  padding: 6px;
  background: #fff;
  color: #222;
  font: 11px/1.4 Arial, sans-serif !important;
  text-align: center;
  pointer-events: none;
}
html body [data-tiktok-card] .tiktok-load-status:empty { display: none; }
html body.admin-body .admin-preview-card:not(.has-cover) .tiktok-cover-play { transform: translateY(62px); }
html body.admin-body .admin-preview-card .tiktok-cover-play { width: 44px; height: 44px; }
@media (max-width: 1024px), (pointer: coarse) {
  html body:not(.admin-body) .home-tiktok-section .tiktok-product-overlay {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
    background: rgba(var(--theme-heading-rgb), .96) !important;
    box-shadow: none !important;
  }
  html body:not(.admin-body) .home-tiktok-section .tiktok-reel-card,
  html body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card {
    box-shadow: none !important;
  }
  html body:not(.admin-body) .home-tiktok-section .tiktok-reel-card {
    scroll-snap-stop: normal !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  html body [data-tiktok-card] [data-tiktok-loader] { animation: none !important; }
  html body:not(.admin-body) .home-tiktok-section .tiktok-video-grid.tiktok-carousel { scroll-behavior: auto !important; }
}

/* Brand loading screen. The logo stays upright; only its outer ring rotates. */
html.page-is-loading,
html.page-is-loading body {
  overflow: hidden !important;
  overscroll-behavior: none;
}

#page-loader {
  --loader-primary: var(--season-primary, #b5184b);
  --loader-deep: var(--season-secondary, #8f0f38);
  --loader-highlight: color-mix(in srgb, var(--loader-primary), #fff 24%);
  --loader-tint: color-mix(in srgb, var(--loader-primary), #fff 94%);
  position: fixed;
  inset: 0;
  z-index: 2147483000;
  display: grid;
  place-items: center;
  box-sizing: border-box;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  padding: max(24px, env(safe-area-inset-top)) 20px max(24px, env(safe-area-inset-bottom));
  background: linear-gradient(145deg, #fff 12%, var(--loader-tint) 100%);
  color: var(--theme-primary-text, #b5184b);
  opacity: 1;
  visibility: visible;
  transition: opacity .5s ease, visibility .5s ease;
  touch-action: none;
  user-select: none;
}

#page-loader[hidden] { display: none !important; }
#page-loader.is-hidden { opacity: 0; visibility: hidden; pointer-events: none; }

#page-loader .loader-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: min(100%, 380px);
  min-width: 0;
  text-align: center;
}

#page-loader .loader-emblem {
  position: relative;
  isolation: isolate;
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 168px;
  height: 168px;
  margin-bottom: 26px;
}

#page-loader .loader-emblem::before {
  content: "";
  position: absolute;
  inset: 0;
  border: 1px solid rgba(var(--theme-primary-rgb, 181, 24, 75), .1);
  border-radius: 50%;
}

#page-loader .loader-ring {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: conic-gradient(from 0deg, transparent 0deg 70deg, var(--loader-highlight) 160deg, var(--loader-primary) 240deg, var(--loader-deep) 300deg, transparent 350deg);
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 2px));
  mask: radial-gradient(farthest-side, transparent calc(100% - 3px), #000 calc(100% - 2px));
  animation: encantosLoaderTurn 1.4s linear infinite;
}

#page-loader .loader-logo {
  display: block;
  width: 128px;
  height: 128px;
  object-fit: contain;
  aspect-ratio: 1;
  filter: drop-shadow(0 6px 16px rgba(var(--theme-primary-rgb, 181, 24, 75), .18));
  animation: encantosLoaderBreathe 2.6s ease-in-out infinite;
  -webkit-user-drag: none;
}

html body #page-loader .loader-brand {
  margin: 0 0 22px;
  color: var(--theme-secondary-text, #8f0f38) !important;
  font-family: "Cinzel", Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  letter-spacing: 0 !important;
  text-transform: uppercase;
  overflow-wrap: anywhere;
  max-width: 100%;
}

html body #page-loader .loader-caption,
html body #page-loader .loader-percentage,
html body #page-loader .loader-dots,
html body #page-loader .loader-dots i {
  font-family: "Poppins", Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  font-style: normal;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  color: var(--theme-primary-text, #b5184b) !important;
}

#page-loader .loader-caption { margin: 0 0 14px; text-transform: uppercase; }
#page-loader .loader-dots { display: inline-flex; width: 15px; margin-left: 2px; }
#page-loader .loader-dots i { display: inline-block; width: 5px; animation: encantosLoaderDot 1.4s ease-in-out infinite; }
#page-loader .loader-dots i:nth-child(2) { animation-delay: .16s; }
#page-loader .loader-dots i:nth-child(3) { animation-delay: .32s; }

#page-loader .loader-progress {
  width: 180px;
  max-width: 75%;
  height: 3px;
  overflow: hidden;
  border-radius: 3px;
  background: rgba(var(--theme-primary-rgb, 181, 24, 75), .12);
}

#page-loader .loader-progress-bar {
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--loader-deep), var(--loader-primary), var(--loader-highlight));
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform .25s ease-out;
}

html body #page-loader .loader-percentage {
  min-width: 4ch;
  margin: 9px 0 0;
  font-size: 10px !important;
  font-variant-numeric: tabular-nums;
}

#page-loader .loader-status {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

@keyframes encantosLoaderTurn { to { transform: rotate(1turn); } }
@keyframes encantosLoaderBreathe { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.025); } }
@keyframes encantosLoaderDot { 0%, 65%, 100% { opacity: .3; } 30% { opacity: 1; } }

@media (max-width: 600px) {
  #page-loader .loader-emblem { width: 140px; height: 140px; margin-bottom: 24px; }
  #page-loader .loader-logo { width: 106px; height: 106px; }
  html body #page-loader .loader-brand { font-size: 18px !important; margin-bottom: 20px; }
  #page-loader .loader-progress { width: 160px; }
}

@media (max-height: 420px) {
  #page-loader { padding-block: 16px; }
  #page-loader .loader-emblem { width: 112px; height: 112px; margin-bottom: 12px; }
  #page-loader .loader-logo { width: 86px; height: 86px; }
  html body #page-loader .loader-brand { font-size: 16px !important; margin-bottom: 12px; }
}

@media (prefers-reduced-motion: reduce) {
  #page-loader,
  #page-loader .loader-progress-bar { transition: none; }
  #page-loader .loader-logo,
  #page-loader .loader-ring,
  #page-loader .loader-dots i { animation: none; }
}

/* Navbar final claro: referencia compacta con paleta Encantos. */
@media (min-width: 992px) {
  body:not(.admin-body) .site-header,
  body:not(.admin-body) .campaign-search-row,
  body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    display: grid !important;
    grid-template-columns: minmax(150px, 220px) minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 18px !important;
    width: min(1200px, calc(100% - 48px)) !important;
    min-height: 58px !important;
    height: 58px !important;
    margin: 14px auto 0 !important;
    padding: 6px 16px 6px 20px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .9) !important;
    border-radius: 20px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(var(--theme-soft-rgb, 242, 242, 242), .95)) !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: 0 14px 34px rgba(var(--theme-primary-rgb, 166, 28, 79), .1) !important;
    backdrop-filter: blur(14px) !important;
  }

  body:not(.admin-body) .top-strip,
  body:not(.admin-body) .desktop-nav-search,
  body:not(.admin-body) .campaign-search-icon,
  body:not(.admin-body) .site-header > .menu-toggle,
  body:not(.admin-body) .campaign-search-row > .menu-toggle {
    display: none !important;
  }

  body:not(.admin-body) .site-header .logo-brand,
  body:not(.admin-body) .campaign-logo {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 190px !important;
    height: 42px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
  }

  body:not(.admin-body) .site-header .brand-logo,
  body:not(.admin-body) .campaign-logo img {
    width: auto !important;
    max-width: 145px !important;
    max-height: 34px !important;
    object-fit: contain !important;
    filter: drop-shadow(0 7px 14px rgba(var(--theme-primary-rgb, 166, 28, 79), .13)) !important;
  }

  body:not(.admin-body) .site-header .main-nav,
  body:not(.admin-body) .campaign-search-row .campaign-menu {
    position: static !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 620px !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body:not(.admin-body) .site-header .main-nav > .mobile-nav-close,
  body:not(.admin-body) .site-header .main-nav > .mobile-nav-search,
  body:not(.admin-body) .campaign-menu > .mobile-nav-close,
  body:not(.admin-body) .campaign-menu > .mobile-nav-search {
    display: none !important;
  }

  body:not(.admin-body) .site-header .main-nav > a,
  body:not(.admin-body) .site-header .main-nav > .nav-category > a,
  body:not(.admin-body) .site-header .main-nav summary,
  body:not(.admin-body) .campaign-menu > a,
  body:not(.admin-body) .campaign-menu > .nav-category > a,
  body:not(.admin-body) .campaign-menu summary {
    min-height: 34px !important;
    height: 34px !important;
    padding: 0 9px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: rgba(var(--theme-secondary-text-rgb), 0.72) !important;
    font-family: var(--font-body, "Poppins", sans-serif) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-transform: none !important;
    white-space: nowrap !important;
    box-shadow: none !important;
  }

  body:not(.admin-body) .site-header .main-nav > a:hover,
  body:not(.admin-body) .site-header .main-nav > .nav-category > a:hover,
  body:not(.admin-body) .site-header .main-nav summary:hover,
  body:not(.admin-body) .site-header .main-nav details[open] > summary,
  body:not(.admin-body) .campaign-menu > a:hover,
  body:not(.admin-body) .campaign-menu > .nav-category > a:hover,
  body:not(.admin-body) .campaign-menu summary:hover,
  body:not(.admin-body) .campaign-menu details[open] > summary {
    background: rgba(var(--theme-primary-rgb, 166, 28, 79), .09) !important;
    color: var(--nav-primary, #A61C4F) !important;
  }

  body:not(.admin-body) .header-actions,
  body:not(.admin-body) .campaign-actions {
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 9px !important;
    min-width: max-content !important;
    margin: 0 !important;
  }

  body:not(.admin-body) .header-icon-link,
  body:not(.admin-body) .campaign-icon-link,
  body:not(.admin-body) .cart-btn.header-cart-icon,
  body:not(.admin-body) .cart-btn.campaign-cart-icon {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .75) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .72) !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: 0 8px 18px rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
  }

  body:not(.admin-body) .header-icon-link:hover,
  body:not(.admin-body) .campaign-icon-link:hover,
  body:not(.admin-body) .cart-btn.header-cart-icon:hover,
  body:not(.admin-body) .cart-btn.campaign-cart-icon:hover {
    border-color: var(--nav-primary, #A61C4F) !important;
    background: var(--nav-primary, #A61C4F) !important;
    color: #fff !important;
  }

  body:not(.admin-body) [data-cart-count] {
    top: -8px !important;
    right: -4px !important;
    background: var(--nav-primary, #A61C4F) !important;
    color: #fff !important;
    box-shadow: 0 0 0 2px #fff !important;
  }

  body:not(.admin-body) .nav-mega-panel {
    top: 84px !important;
    border-color: rgba(var(--theme-primary-rgb, 166, 28, 79), .24) !important;
    background:
      radial-gradient(circle at 82% 0, rgba(var(--theme-primary-rgb, 166, 28, 79), .2), transparent 320px),
      var(--theme-heading) !important;
  }

  body:not(.admin-body) .nav-mega-panel.nav-mega-compact {
    width: min(850px, calc(100vw - 72px)) !important;
  }

  body:not(.admin-body) .nav-mega-grid {
    display: grid !important;
    grid-template-columns: minmax(190px, .85fr) repeat(2, minmax(230px, 1fr)) minmax(320px, .95fr) !important;
    min-height: 360px !important;
    background: #fff !important;
  }

  body:not(.admin-body) .nav-mega-compact .nav-mega-grid {
    grid-template-columns: minmax(210px, .8fr) minmax(280px, 1fr) minmax(280px, .9fr) !important;
    min-height: 340px !important;
  }

  body:not(.admin-body) .nav-mega-col {
    display: grid !important;
    align-content: start !important;
    gap: 10px !important;
    padding: 30px 28px !important;
    border-left: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .45) !important;
    background: linear-gradient(180deg, #fff, rgba(var(--theme-soft-rgb, 242, 242, 242), .45)) !important;
  }

  body:not(.admin-body) .nav-mega-col:first-child {
    border-left: 0 !important;
  }

  body:not(.admin-body) .nav-mega-col small,
  body:not(.admin-body) .nav-mega-spotlight small {
    color: var(--nav-primary, #A61C4F) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
  }

  body:not(.admin-body) .nav-mega-item {
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr) !important;
    gap: 12px !important;
    align-items: center !important;
    min-height: 54px !important;
    padding: 8px 10px !important;
    border: 1px solid transparent !important;
    border-radius: 14px !important;
    background: transparent !important;
    color: var(--nav-secondary, #8A1640) !important;
    text-decoration: none !important;
  }

  body:not(.admin-body) .nav-mega-item:hover {
    border-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .72) !important;
    background: rgba(var(--theme-primary-rgb, 166, 28, 79), .06) !important;
  }

  body:not(.admin-body) .nav-mega-item i {
    display: grid !important;
    width: 28px !important;
    height: 28px !important;
    place-items: center !important;
    border-radius: 10px !important;
    background: rgba(var(--theme-primary-rgb, 166, 28, 79), .09) !important;
    color: var(--nav-primary, #A61C4F) !important;
    font-size: 14px !important;
    font-style: normal !important;
  }

  body:not(.admin-body) .nav-mega-item strong {
    display: block !important;
    color: var(--theme-heading) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.25 !important;
  }

  body:not(.admin-body) .nav-mega-item em {
    display: block !important;
    margin-top: 2px !important;
    color: rgba(var(--theme-heading-rgb), 0.58) !important;
    font-size: 11px !important;
    font-style: normal !important;
    line-height: 1.3 !important;
  }

  body:not(.admin-body) .nav-mega-item:hover strong {
    color: var(--nav-primary, #A61C4F) !important;
  }

  body:not(.admin-body) .nav-mega-spotlight {
    position: relative !important;
    display: grid !important;
    align-content: end !important;
    min-height: 100% !important;
    padding: 0 !important;
    overflow: hidden !important;
    border-left: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .45) !important;
    border-radius: 0 24px 24px 0 !important;
    background: var(--theme-heading) !important;
    color: #fff !important;
    text-decoration: none !important;
  }

  body:not(.admin-body) .nav-mega-compact .nav-mega-spotlight {
    border-radius: 0 24px 24px 0 !important;
  }

  body:not(.admin-body) .nav-mega-media {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: auto !important;
    max-width: none !important;
    min-width: 100% !important;
    height: auto !important;
  }

  body:not(.admin-body) .nav-mega-spotlight > .nav-mega-media {
    max-width: none !important;
  }

  body:not(.admin-body) .nav-mega-media::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background:
      linear-gradient(180deg, rgba(var(--theme-heading-rgb), 0.08), rgba(var(--theme-heading-rgb), 0.78)),
      linear-gradient(90deg, rgba(var(--theme-primary-rgb, 166, 28, 79), .52), rgba(var(--theme-heading-rgb), 0.32)) !important;
  }

  body:not(.admin-body) .nav-mega-media img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    opacity: 0 !important;
    transform: scale(1.04) !important;
    transition: opacity .55s ease, transform 2.8s ease !important;
  }

  body:not(.admin-body) .nav-mega-media img.active {
    opacity: 1 !important;
    transform: scale(1) !important;
  }

  body:not(.admin-body) .nav-mega-copy {
    position: relative !important;
    z-index: 1 !important;
    display: grid !important;
    gap: 11px !important;
    padding: 34px !important;
  }

  body:not(.admin-body) .nav-mega-copy small {
    color: rgba(var(--theme-tint-rgb), 0.9) !important;
  }

  body:not(.admin-body) .nav-mega-copy strong {
    color: #fff !important;
    font-size: 26px !important;
    font-weight: 600 !important;
    line-height: 1.05 !important;
  }

  body:not(.admin-body) .nav-mega-copy span {
    max-width: none !important;
    color: rgba(255, 255, 255, .82) !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
  }

  body:not(.admin-body) .nav-mega-copy em {
    color: var(--theme-tint) !important;
    font-size: 13px !important;
    font-style: normal !important;
    font-weight: 500 !important;
  }
}

/* Mobile final flow: keep the navbar above banners/images and keep menus clickable. */
@media (max-width: 991px) {
  html body:not(.admin-body) .site-header,
  html body:not(.admin-body) .campaign-search-row,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    position: sticky !important;
    top: 8px !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: calc(100% - 18px) !important;
    max-width: 430px !important;
    margin: 8px auto !important;
    z-index: 1400 !important;
  }

  html body.public-home .home-campaign-hero,
  html body.public-home .encantos-home,
  html body.public-catalog main,
  html body.public-product main {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  html body.public-home .home-campaign-hero .campaign-stage,
  html body.public-home .home-campaign-hero .campaign-banner-carousel,
  html body.public-home .home-campaign-hero .campaign-banner-slide,
  html body.public-catalog .catalog-hero,
  html body.public-product .product-breadcrumb,
  html body.public-product .product-detail {
    margin-top: 0 !important;
  }

  html body.public-catalog .catalog-hero {
    padding-top: 0 !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav,
  html body:not(.admin-body) header.site-header nav.main-nav.open,
  html body.public-home .home-campaign-hero > .campaign-menu,
  html body.public-home .home-campaign-hero > .campaign-menu.open,
  html body:not(.admin-body) .campaign-menu,
  html body:not(.admin-body) .campaign-menu.open {
    position: fixed !important;
    top: 68px !important;
    left: 8px !important;
    right: 8px !important;
    bottom: auto !important;
    width: auto !important;
    max-width: none !important;
    max-height: calc(100dvh - 78px) !important;
    z-index: 1390 !important;
    justify-content: flex-start !important;
    align-content: flex-start !important;
    transform: translateY(-8px) scale(.98) !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav.open,
  html body.public-home .home-campaign-hero > .campaign-menu.open,
  html body:not(.admin-body) .campaign-menu.open {
    transform: translateY(0) scale(1) !important;
  }
}

/* Cart drawer count/header cleanup: navbar badge styles must not affect the title. */
body:not(.admin-body) .drawer-panel header {
  min-height: 70px !important;
  padding: 16px 18px !important;
  background: linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-primary) 100%) !important;
}

body:not(.admin-body) .drawer-panel header::after {
  right: -38px !important;
  top: -44px !important;
  width: 112px !important;
  height: 112px !important;
  opacity: .55 !important;
}

body:not(.admin-body) .drawer-panel header h2 {
  display: flex !important;
  align-items: center !important;
  gap: 3px !important;
  margin: 0 !important;
  color: var(--theme-heading) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  text-transform: none !important;
}

body:not(.admin-body) .drawer-panel header h2 [data-cart-count] {
  position: static !important;
  inset: auto !important;
  display: inline !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  box-shadow: none !important;
  transform: none !important;
  font: inherit !important;
  line-height: inherit !important;
}

body:not(.admin-body) .drawer-panel header button {
  display: grid !important;
  place-items: center !important;
  width: 34px !important;
  height: 34px !important;
  border: 1px solid rgba(255, 255, 255, .75) !important;
  background: rgba(255, 255, 255, .18) !important;
  color: var(--theme-heading) !important;
  font-size: 24px !important;
}

@media (max-width: 991px) {
  html body.public-home .home-campaign-hero .campaign-search-row,
  html body.public-catalog header.site-header,
  html body.public-product header.site-header,
  html body:not(.admin-body) header.site-header {
    position: sticky !important;
    top: 8px !important;
    left: auto !important;
    right: auto !important;
    width: calc(100% - 18px) !important;
    max-width: 430px !important;
    margin: 8px auto !important;
    transform: none !important;
  }
}

body:not(.admin-body) .drawer {
  z-index: 2200 !important;
}

@media (max-width: 991px) {
  body:not(.admin-body) .site-header,
  body:not(.admin-body) .campaign-search-row,
  body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    width: calc(100% - 20px) !important;
    min-height: 56px !important;
    margin-top: 10px !important;
    padding: 7px 10px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .9) !important;
    border-radius: 18px !important;
    background: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(var(--theme-soft-rgb, 242, 242, 242), .94)) !important;
    box-shadow: 0 12px 28px rgba(var(--theme-primary-rgb, 166, 28, 79), .1) !important;
  }

  body:not(.admin-body) .site-header .brand-logo,
  body:not(.admin-body) .campaign-logo img {
    max-height: 32px !important;
    filter: drop-shadow(0 7px 14px rgba(var(--theme-primary-rgb, 166, 28, 79), .13)) !important;
  }

  body:not(.admin-body) .campaign-search-icon,
  body:not(.admin-body) .site-header .menu-toggle,
  body:not(.admin-body) .campaign-menu-toggle,
  body:not(.admin-body) .header-icon-link,
  body:not(.admin-body) .campaign-icon-link,
  body:not(.admin-body) .cart-btn.header-cart-icon,
  body:not(.admin-body) .cart-btn.campaign-cart-icon {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    border-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .8) !important;
    background: #fff !important;
    color: var(--nav-primary, #A61C4F) !important;
    box-shadow: 0 8px 18px rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
  }

  body:not(.admin-body) .nav-mega-grid {
    background: #fff !important;
  }

  body:not(.admin-body) .nav-mega-col {
    gap: 8px !important;
    padding: 14px !important;
    border-top-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .5) !important;
    background: #fff !important;
  }

  body:not(.admin-body) .nav-mega-col small {
    color: var(--nav-primary, #A61C4F) !important;
  }

  body:not(.admin-body) .nav-mega-item {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    gap: 10px !important;
    align-items: center !important;
    padding: 8px !important;
    border-radius: 12px !important;
    color: var(--theme-heading) !important;
  }

  body:not(.admin-body) .nav-mega-item i {
    display: grid !important;
    width: 24px !important;
    height: 24px !important;
    place-items: center !important;
    border-radius: 9px !important;
    background: rgba(var(--theme-primary-rgb, 166, 28, 79), .09) !important;
    color: var(--nav-primary, #A61C4F) !important;
    font-style: normal !important;
  }

  body:not(.admin-body) .nav-mega-item strong {
    color: var(--theme-heading) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
  }

  body:not(.admin-body) .nav-mega-item em {
    color: rgba(var(--theme-heading-rgb), 0.58) !important;
  }

  body:not(.admin-body) .nav-mega-spotlight {
    position: relative !important;
    min-height: 230px !important;
    overflow: hidden !important;
    border-radius: 18px !important;
    background: var(--theme-heading) !important;
  }

  body:not(.admin-body) .nav-mega-media,
  body:not(.admin-body) .nav-mega-media img,
  body:not(.admin-body) .nav-mega-media::after {
    position: absolute !important;
    inset: 0 !important;
    max-width: none !important;
  }

  body:not(.admin-body) .nav-mega-media img {
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
    opacity: 0 !important;
    transition: opacity .45s ease !important;
  }

  body:not(.admin-body) .nav-mega-media img.active {
    opacity: 1 !important;
  }

  body:not(.admin-body) .nav-mega-media::after {
    content: "" !important;
    background: linear-gradient(180deg, rgba(var(--theme-heading-rgb), 0.08), rgba(var(--theme-heading-rgb), 0.78)) !important;
  }

  body:not(.admin-body) .nav-mega-copy {
    position: relative !important;
    z-index: 1 !important;
    display: grid !important;
    gap: 9px !important;
    padding: 24px !important;
    align-content: end !important;
    min-height: 230px !important;
  }

  body:not(.admin-body) .nav-mega-copy strong {
    color: #fff !important;
    font-size: 22px !important;
  }

  body:not(.admin-body) .nav-mega-copy span,
  body:not(.admin-body) .nav-mega-copy em,
  body:not(.admin-body) .nav-mega-copy small {
    color: rgba(255, 255, 255, .86) !important;
  }
}

/* Admin navbar final: same compact light capsule used by the storefront */
body.admin-body {
  background: var(--theme-surface) !important;
  padding-top: 0 !important;
}

body.admin-body .admin-layout,
body.admin-body.admin-sidebar-collapsed .admin-layout,
body.admin-body .admin-layout.admin-sidebar-collapsed {
  display: block !important;
  grid-template-columns: none !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
  background: var(--theme-surface) !important;
}

body.admin-body .admin-navbar {
  position: sticky !important;
  top: 10px !important;
  z-index: 1100 !important;
  display: grid !important;
  grid-template-columns: minmax(118px, 168px) minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 18px !important;
  width: min(1210px, calc(100% - 28px)) !important;
  max-width: min(1210px, calc(100% - 28px)) !important;
  min-width: 0 !important;
  min-height: 56px !important;
  height: auto !important;
  margin: 12px auto 18px !important;
  padding: 7px 14px 7px 18px !important;
  border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .88) !important;
  border-radius: 18px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .99), rgba(var(--theme-soft-rgb, 242, 242, 242), .94)),
    #fff !important;
  box-shadow: 0 14px 34px rgba(var(--theme-primary-rgb, 166, 28, 79), .11) !important;
  overflow: visible !important;
  transform: none !important;
}

body.admin-body .admin-navbar-head {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.admin-body .admin-navbar .brand,
body.admin-body .admin-navbar .logo-brand {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: auto !important;
  min-width: 0 !important;
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.admin-body .admin-navbar .brand-logo {
  display: block !important;
  width: auto !important;
  max-width: 116px !important;
  height: auto !important;
  max-height: 32px !important;
  object-fit: contain !important;
  filter: drop-shadow(0 7px 14px rgba(var(--theme-primary-rgb, 166, 28, 79), .12)) !important;
}

body.admin-body .admin-nav {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 8px !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 40px !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  scrollbar-width: none !important;
}

body.admin-body .admin-nav::-webkit-scrollbar {
  display: none !important;
}

body.admin-body .admin-nav > a,
body.admin-body .admin-nav-group > summary {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  min-height: 36px !important;
  height: 36px !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .78) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .76) !important;
  box-shadow: none !important;
  color: var(--nav-secondary, #8A1640) !important;
  font-family: "Poppins", Arial, sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  transform: none !important;
}

body.admin-body .admin-nav > a:hover,
body.admin-body .admin-nav > a.active,
body.admin-body .admin-nav-group.active > summary,
body.admin-body .admin-nav-group[open] > summary,
body.admin-body .admin-nav-group > summary:hover {
  border-color: var(--nav-primary, #A61C4F) !important;
  background: var(--nav-primary, #A61C4F) !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(var(--theme-primary-rgb, 166, 28, 79), .18) !important;
}

body.admin-body .admin-nav-icon {
  display: grid !important;
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
  place-items: center !important;
  color: currentColor !important;
}

body.admin-body .admin-nav-icon svg {
  display: block !important;
  width: 17px !important;
  height: 17px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

body.admin-body .admin-nav-text {
  display: inline !important;
  color: currentColor !important;
  font: inherit !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

body.admin-body .admin-nav-group {
  position: relative !important;
  display: inline-flex !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.admin-body .admin-nav-group > summary {
  list-style: none !important;
  cursor: pointer !important;
}

body.admin-body .admin-nav-group > summary::-webkit-details-marker {
  display: none !important;
}

body.admin-body .admin-nav-group > summary b {
  display: grid !important;
  width: 15px !important;
  height: 15px !important;
  place-items: center !important;
  color: currentColor !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  transform: none !important;
}

body.admin-body .admin-nav-submenu {
  position: absolute !important;
  top: calc(100% + 10px) !important;
  right: 0 !important;
  z-index: 1200 !important;
  display: grid !important;
  gap: 6px !important;
  width: max-content !important;
  min-width: 210px !important;
  max-width: 280px !important;
  padding: 9px !important;
  border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .8) !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .98) !important;
  box-shadow: 0 18px 38px rgba(var(--theme-heading-rgb), 0.16) !important;
}

body.admin-body .admin-nav-submenu a {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 8px !important;
  min-height: 34px !important;
  height: auto !important;
  padding: 8px 10px !important;
  border: 1px solid transparent !important;
  border-radius: 12px !important;
  background: transparent !important;
  color: var(--nav-secondary, #8A1640) !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

body.admin-body .admin-nav-submenu a:hover,
body.admin-body .admin-nav-submenu a.active {
  border-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .68) !important;
  background: rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
  color: var(--nav-primary, #A61C4F) !important;
  box-shadow: none !important;
}

body.admin-body .admin-main {
  width: min(1210px, calc(100% - 28px)) !important;
  max-width: min(1210px, calc(100% - 28px)) !important;
  margin: 0 auto !important;
  padding-top: 0 !important;
}

@media (max-width: 1180px) {
  body.admin-body .admin-navbar {
    grid-template-columns: 112px minmax(0, 1fr) !important;
    gap: 12px !important;
    padding-inline: 12px !important;
  }

  body.admin-body .admin-navbar .brand-logo {
    max-width: 100px !important;
    max-height: 29px !important;
  }

  body.admin-body .admin-nav {
    justify-content: flex-start !important;
  }
}

@media (max-width: 760px) {
  body.admin-body .admin-navbar {
    top: 8px !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    width: calc(100% - 16px) !important;
    max-width: calc(100% - 16px) !important;
    min-height: 0 !important;
    margin: 8px auto 12px !important;
    padding: 8px !important;
    border-radius: 16px !important;
  }

  body.admin-body .admin-navbar-head {
    justify-content: center !important;
  }

  body.admin-body .admin-navbar .brand,
  body.admin-body .admin-navbar .logo-brand {
    height: 32px !important;
    min-height: 32px !important;
  }

  body.admin-body .admin-navbar .brand-logo {
    max-width: 92px !important;
    max-height: 26px !important;
  }

  body.admin-body .admin-nav {
    justify-content: flex-start !important;
    gap: 6px !important;
    min-height: 34px !important;
    padding-bottom: 1px !important;
  }

  body.admin-body .admin-nav > a,
  body.admin-body .admin-nav-group > summary {
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 10px !important;
    font-size: 10.5px !important;
  }

  body.admin-body .admin-nav-icon {
    flex-basis: 16px !important;
    width: 16px !important;
    height: 16px !important;
  }

  body.admin-body .admin-nav-icon svg {
    width: 15px !important;
    height: 15px !important;
  }

  body.admin-body .admin-nav-submenu {
    position: fixed !important;
    top: 92px !important;
    left: 12px !important;
    right: 12px !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
  }

  body.admin-body .admin-main {
    width: calc(100% - 12px) !important;
    max-width: calc(100% - 12px) !important;
  }
}

/* Admin navbar visibility rescue: beat older white-on-light pill rules */
body.admin-body .admin-navbar .admin-nav,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav {
  overflow-x: auto !important;
  overflow-y: visible !important;
  scrollbar-width: none !important;
  scrollbar-color: transparent transparent !important;
}

body.admin-body .admin-navbar .admin-nav::-webkit-scrollbar,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
}

body.admin-body .admin-navbar .admin-nav > a,
body.admin-body .admin-navbar .admin-nav-group > summary,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
  border-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .82) !important;
  background: rgba(255, 255, 255, .82) !important;
  color: var(--nav-secondary, #8A1640) !important;
  opacity: 1 !important;
  filter: none !important;
  text-shadow: none !important;
}

body.admin-body .admin-navbar .admin-nav > a .admin-nav-text,
body.admin-body .admin-navbar .admin-nav-group > summary .admin-nav-text,
body.admin-body .admin-navbar .admin-nav > a .admin-nav-icon,
body.admin-body .admin-navbar .admin-nav-group > summary .admin-nav-icon,
body.admin-body .admin-navbar .admin-nav-group > summary b,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a .admin-nav-text,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary .admin-nav-text,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a .admin-nav-icon,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary .admin-nav-icon,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary b {
  color: currentColor !important;
  opacity: 1 !important;
  filter: none !important;
  text-shadow: none !important;
}

body.admin-body .admin-navbar .admin-nav > a.active,
body.admin-body .admin-navbar .admin-nav > a:hover,
body.admin-body .admin-navbar .admin-nav-group.active > summary,
body.admin-body .admin-navbar .admin-nav-group[open] > summary,
body.admin-body .admin-navbar .admin-nav-group:hover > summary,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a.active,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a:hover,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group.active > summary,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group[open] > summary,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group:hover > summary {
  border-color: var(--nav-primary, #A61C4F) !important;
  background: var(--nav-primary, #A61C4F) !important;
  color: #fff !important;
  opacity: 1 !important;
}

body.admin-body .admin-navbar .admin-nav-submenu a,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-submenu a {
  background: transparent !important;
  color: var(--nav-secondary, #8A1640) !important;
  opacity: 1 !important;
}

/* Admin navbar fit: keep every section visible on desktop */
@media (min-width: 1181px) {
  body.admin-body .admin-navbar,
  body.admin-body.admin-sidebar-collapsed .admin-navbar {
    grid-template-columns: 128px minmax(0, 1fr) !important;
    gap: 10px !important;
    width: min(1480px, calc(100% - 28px)) !important;
    max-width: min(1480px, calc(100% - 28px)) !important;
    min-height: 54px !important;
    padding: 7px 10px 7px 14px !important;
  }

  body.admin-body .admin-navbar .brand-logo,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .brand-logo {
    max-width: 96px !important;
    max-height: 28px !important;
  }

  body.admin-body .admin-navbar .admin-nav,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav {
    justify-content: space-between !important;
    gap: 5px !important;
    overflow: visible !important;
    min-height: 36px !important;
  }

  body.admin-body .admin-navbar .admin-nav > a,
  body.admin-body .admin-navbar .admin-nav-group > summary,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
    flex: 0 1 auto !important;
    height: 34px !important;
    min-height: 34px !important;
    padding: 0 9px !important;
    gap: 6px !important;
    font-size: 11px !important;
    font-weight: 500 !important;
  }

  body.admin-body .admin-navbar .admin-nav-icon,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-icon {
    flex: 0 0 16px !important;
    width: 16px !important;
    height: 16px !important;
  }

  body.admin-body .admin-navbar .admin-nav-icon svg,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-icon svg {
    width: 15px !important;
    height: 15px !important;
  }

  body.admin-body .admin-navbar .admin-nav-text,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-text {
    max-width: 142px !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
}

@media (min-width: 1181px) and (max-width: 1370px) {
  body.admin-body .admin-navbar,
  body.admin-body.admin-sidebar-collapsed .admin-navbar {
    grid-template-columns: 94px minmax(0, 1fr) !important;
    width: calc(100% - 18px) !important;
    max-width: calc(100% - 18px) !important;
    padding-inline: 8px !important;
  }

  body.admin-body .admin-navbar .brand-logo,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .brand-logo {
    max-width: 78px !important;
    max-height: 24px !important;
  }

  body.admin-body .admin-navbar .admin-nav > a,
  body.admin-body .admin-navbar .admin-nav-group > summary,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
    padding: 0 7px !important;
    gap: 5px !important;
    font-size: 10px !important;
  }

  body.admin-body .admin-navbar .admin-nav-text,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-text {
    max-width: 116px !important;
  }
}

/* Admin navbar mobile: show every section instead of hiding them in a long row */
@media (max-width: 760px) {
  body.admin-body .admin-navbar,
  body.admin-body.admin-sidebar-collapsed .admin-navbar {
    position: sticky !important;
    top: 6px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 7px !important;
    width: calc(100% - 12px) !important;
    max-width: calc(100% - 12px) !important;
    margin: 6px auto 10px !important;
    padding: 8px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .9) !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg, #fff, rgba(var(--theme-soft-rgb, 242, 242, 242), .95)) !important;
    overflow: visible !important;
  }

  body.admin-body .admin-navbar-head,
  body.admin-body.admin-sidebar-collapsed .admin-navbar-head {
    justify-content: center !important;
    height: 26px !important;
    min-height: 26px !important;
  }

  body.admin-body .admin-navbar .brand,
  body.admin-body .admin-navbar .logo-brand,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .brand,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .logo-brand {
    height: 26px !important;
    min-height: 26px !important;
  }

  body.admin-body .admin-navbar .brand-logo,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .brand-logo {
    max-width: 86px !important;
    max-height: 23px !important;
  }

  body.admin-body .admin-navbar .admin-nav,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    width: 100% !important;
    min-height: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.admin-body .admin-navbar .admin-nav > a,
  body.admin-body .admin-navbar .admin-nav-group,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group {
    width: 100% !important;
    min-width: 0 !important;
  }

  body.admin-body .admin-navbar .admin-nav > a,
  body.admin-body .admin-navbar .admin-nav-group > summary,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
    width: 100% !important;
    height: 31px !important;
    min-height: 31px !important;
    padding: 0 7px !important;
    gap: 5px !important;
    font-size: 9.2px !important;
    line-height: 1 !important;
  }

  body.admin-body .admin-navbar .admin-nav-icon,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-icon {
    flex: 0 0 14px !important;
    width: 14px !important;
    height: 14px !important;
  }

  body.admin-body .admin-navbar .admin-nav-icon svg,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-icon svg {
    width: 14px !important;
    height: 14px !important;
    stroke-width: 1.9 !important;
  }

  body.admin-body .admin-navbar .admin-nav-text,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-text {
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  body.admin-body .admin-navbar .admin-nav-group > summary b,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary b {
    display: none !important;
  }

  body.admin-body .admin-navbar .admin-nav-submenu,
  body.admin-body .admin-navbar .admin-nav-group[open] .admin-nav-submenu,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-submenu,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group[open] .admin-nav-submenu {
    position: fixed !important;
    top: 154px !important;
    left: 10px !important;
    right: 10px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    max-height: calc(100dvh - 176px) !important;
    overflow: auto !important;
    padding: 10px !important;
    border-radius: 14px !important;
  }

  body.admin-body .admin-navbar .admin-nav-group:not([open]) .admin-nav-submenu,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group:not([open]) .admin-nav-submenu {
    display: none !important;
  }
}

@media (max-width: 420px) {
  body.admin-body .admin-navbar .admin-nav,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.admin-body .admin-navbar .admin-nav > a,
  body.admin-body .admin-navbar .admin-nav-group > summary,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 8px !important;
    font-size: 9px !important;
  }

  body.admin-body .admin-navbar .admin-nav-submenu,
  body.admin-body .admin-navbar .admin-nav-group[open] .admin-nav-submenu,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-submenu,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group[open] .admin-nav-submenu {
    top: 186px !important;
  }
}

.fa-solid,
.fa-regular,
.fa-brands {
  line-height: 1;
}

body:not(.admin-body) .desktop-nav-search button i,
body:not(.admin-body) .mobile-nav-search i,
body:not(.admin-body) .header-icon-link i,
body:not(.admin-body) .campaign-icon-link i,
body:not(.admin-body) .cart-btn.header-cart-icon i,
body:not(.admin-body) .cart-btn.campaign-cart-icon i {
  display: inline-grid;
  place-items: center;
  color: currentColor;
  font-size: 17px;
  line-height: 1;
}

body:not(.admin-body) .desktop-nav-search button i,
body:not(.admin-body) .mobile-nav-search i {
  font-size: 16px;
}

body:not(.admin-body) .cart-btn.header-cart-icon i,
body:not(.admin-body) .cart-btn.campaign-cart-icon i {
  transform: translateY(-.5px);
}

body.admin-body .admin-nav-icon i {
  display: inline-grid;
  place-items: center;
  width: 1em;
  height: 1em;
  color: currentColor;
  font-size: 15px;
  line-height: 1;
}

body.admin-body .admin-nav-submenu .admin-nav-icon i {
  font-size: 8px;
}

body.admin-body .action-icon i,
body.admin-body .table-actions .action-icon i,
body.admin-body .stock-inline-form button i {
  display: inline-grid;
  place-items: center;
  color: currentColor;
  font-size: 15px;
  line-height: 1;
}

/* Loader final: blush background and visible store name */
.site-preloader {
  display: flex !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 99999 !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--theme-surface) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity .25s ease, visibility .25s ease !important;
}

.site-preloader.is-hidden {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.site-preloader-card {
  display: grid !important;
  place-items: center !important;
  gap: 10px !important;
  width: auto !important;
  max-width: min(360px, calc(100vw - 40px)) !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  isolation: isolate !important;
}

.site-preloader-card::before,
.site-preloader-card::after,
.site-preloader-flower,
.site-preloader-leaves {
  display: none !important;
}

.site-preloader-gif {
  display: block !important;
  width: 400px !important;
  max-width: 72vw !important;
  height: auto !important;
  object-fit: contain !important;
  filter: none !important;
  mix-blend-mode: normal !important;
  user-select: none !important;
  -webkit-user-drag: none !important;
}

.site-preloader span {
  display: block !important;
  margin: -8px 0 0 !important;
  color: var(--nav-primary, #A61C4F) !important;
  font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
  font-size: clamp(18px, 2vw, 26px) !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  letter-spacing: .04em !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

@media (max-width: 520px) {
  .site-preloader-card {
    gap: 8px !important;
  }

  .site-preloader-gif {
    width: 320px !important;
    max-width: 78vw !important;
  }

  .site-preloader span {
    margin-top: -6px !important;
    font-size: 17px !important;
  }
}

/* Public mobile navbar absolute override: no black drawer, no left-shifted subcategories */
@media (max-width: 991px) {
  html body:not(.admin-body) header.site-header nav.main-nav,
  html body:not(.admin-body) header.site-header nav.main-nav.open,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu.open,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row nav.campaign-menu,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row nav.campaign-menu.open {
    left: 10px !important;
    right: auto !important;
    top: 10px !important;
    bottom: 10px !important;
    inset: 10px auto 10px 10px !important;
    width: min(365px, calc(100vw - 20px)) !important;
    max-width: calc(100vw - 20px) !important;
    height: auto !important;
    max-height: calc(100dvh - 20px) !important;
    margin: 0 !important;
    padding: 20px 16px 18px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .9) !important;
    border-radius: 22px !important;
    background:
      radial-gradient(circle at 0 0, rgba(var(--theme-primary-rgb, 166, 28, 79), .08), transparent 220px),
      linear-gradient(180deg, #ffffff 0%, rgba(var(--theme-soft-rgb, 242, 242, 242), .98) 100%) !important;
    color: var(--theme-heading) !important;
    box-shadow: 0 26px 70px rgba(var(--theme-primary-rgb, 166, 28, 79), .22) !important;
    transform: none !important;
    translate: none !important;
    opacity: 1 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav.open,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu.open,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row nav.campaign-menu.open {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-content: start !important;
    gap: 9px !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav > a,
  html body:not(.admin-body) header.site-header nav.main-nav > .nav-category > a,
  html body:not(.admin-body) header.site-header nav.main-nav summary,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu > a,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu > .nav-category > a,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu summary {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    border-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .62) !important;
    background: rgba(255, 255, 255, .9) !important;
    color: var(--theme-heading) !important;
    box-shadow: 0 8px 18px rgba(var(--theme-primary-rgb, 166, 28, 79), .06) !important;
    transform: none !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav > .nav-category,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu > .nav-category {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav details.nav-category[open] > .nav-submenu,
  html body:not(.admin-body) header.site-header nav.main-nav details.nav-category[open] > .nav-submenu.nav-mega-panel,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu details.nav-category[open] > .nav-submenu,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu details.nav-category[open] > .nav-submenu.nav-mega-panel,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row nav.campaign-menu details.nav-category[open] > .nav-submenu,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row nav.campaign-menu details.nav-category[open] > .nav-submenu.nav-mega-panel {
    position: static !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 8px 0 4px !important;
    padding: 0 !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .62) !important;
    border-radius: 16px !important;
    background: #fff !important;
    color: var(--theme-heading) !important;
    box-shadow: none !important;
    transform: none !important;
    translate: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: hidden !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav details.nav-category:not([open]) > .nav-submenu,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu details.nav-category:not([open]) > .nav-submenu {
    display: none !important;
  }

  html body:not(.admin-body) nav.main-nav .nav-mega-grid,
  html body:not(.admin-body) nav.main-nav .nav-mega-compact .nav-mega-grid,
  html body:not(.admin-body) nav.campaign-menu .nav-mega-grid,
  html body:not(.admin-body) nav.campaign-menu .nav-mega-compact .nav-mega-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 0 !important;
    background: #fff !important;
    transform: none !important;
  }

  html body:not(.admin-body) nav.main-nav .nav-mega-col,
  html body:not(.admin-body) nav.campaign-menu .nav-mega-col {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    padding: 11px !important;
    border: 0 !important;
    border-top: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .42) !important;
    background: linear-gradient(180deg, #fff, rgba(var(--theme-soft-rgb, 242, 242, 242), .54)) !important;
    transform: none !important;
  }

  html body:not(.admin-body) nav.main-nav .nav-mega-col:first-child,
  html body:not(.admin-body) nav.campaign-menu .nav-mega-col:first-child {
    border-top: 0 !important;
  }

  html body:not(.admin-body) nav.main-nav .nav-mega-item,
  html body:not(.admin-body) nav.campaign-menu .nav-mega-item {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    background: #fff !important;
    color: var(--theme-heading) !important;
    transform: none !important;
  }

  html body:not(.admin-body) nav.main-nav .nav-mega-spotlight,
  html body:not(.admin-body) nav.campaign-menu .nav-mega-spotlight {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 178px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
    overflow: hidden !important;
    transform: none !important;
  }
}

@media (max-width: 420px) {
  html body:not(.admin-body) header.site-header nav.main-nav,
  html body:not(.admin-body) header.site-header nav.main-nav.open,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu,
  html body:not(.admin-body) .campaign-search-row nav.campaign-menu.open,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row nav.campaign-menu,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row nav.campaign-menu.open {
    inset: 8px auto 8px 8px !important;
    width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important;
    padding: 18px 12px 16px !important;
  }
}

/* Heart loader final: CSS animation on blush background */
.site-preloader {
  display: flex !important;
  position: fixed !important;
  inset: 0 !important;
  z-index: 99999 !important;
  align-items: center !important;
  justify-content: center !important;
  background: var(--theme-surface) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition: opacity .25s ease, visibility .25s ease !important;
}

.site-preloader.is-hidden {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

.site-preloader-card {
  display: grid !important;
  place-items: center !important;
  gap: 16px !important;
  width: auto !important;
  max-width: min(360px, calc(100vw - 40px)) !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

.site-preloader-gif,
.site-preloader-card::before,
.site-preloader-card::after,
.site-preloader-flower,
.site-preloader-leaves {
  display: none !important;
}

.heart-preloader {
  position: relative !important;
  display: block !important;
  width: 154px !important;
  height: 154px !important;
  overflow: visible !important;
  isolation: isolate !important;
}

.heart-loader-glow {
  position: absolute !important;
  inset: 18px !important;
  border-radius: 999px !important;
  background:
    radial-gradient(circle, rgba(var(--theme-primary-rgb, 166, 28, 79), .22), transparent 62%),
    radial-gradient(circle, rgba(var(--theme-accent-rgb, 217, 145, 171), .18), transparent 70%) !important;
  animation: heartLoaderGlow 1.8s ease-in-out infinite !important;
}

.heart-loader-ring {
  position: absolute !important;
  inset: 24px !important;
  border: 1px solid rgba(var(--theme-primary-rgb, 166, 28, 79), .18) !important;
  border-radius: 999px !important;
  animation: heartLoaderRing 1.8s ease-out infinite !important;
}

.heart-loader-heart,
.heart-loader-spark {
  position: absolute !important;
  display: block !important;
  width: 48px !important;
  height: 48px !important;
  background: linear-gradient(135deg, var(--nav-primary, #A61C4F), var(--nav-accent, #D991AB)) !important;
  border-radius: 12px 12px 6px 12px !important;
  transform: translate(-50%, -50%) rotate(-45deg) !important;
}

.heart-loader-heart {
  left: 50% !important;
  top: 54% !important;
  z-index: 3 !important;
  box-shadow: 0 18px 34px rgba(var(--theme-primary-rgb, 166, 28, 79), .22) !important;
  animation: heartLoaderBeat 1.18s cubic-bezier(.22, 1, .36, 1) infinite !important;
}

.heart-loader-heart::before,
.heart-loader-heart::after,
.heart-loader-spark::before,
.heart-loader-spark::after {
  content: "" !important;
  position: absolute !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  border-radius: 999px !important;
  background: inherit !important;
}

.heart-loader-heart::before,
.heart-loader-spark::before {
  top: -50% !important;
  left: 0 !important;
}

.heart-loader-heart::after,
.heart-loader-spark::after {
  top: 0 !important;
  left: 50% !important;
}

.heart-loader-spark {
  --tx: 0px;
  --ty: -60px;
  --scale: .42;
  left: 50% !important;
  top: 54% !important;
  z-index: 2 !important;
  width: 13px !important;
  height: 13px !important;
  border-radius: 4px 4px 2px 4px !important;
  opacity: 0 !important;
  animation: heartLoaderSpark 2s ease-in-out infinite !important;
}

.heart-loader-spark.spark-1 { --tx: -54px; --ty: -52px; --scale: .48; background: var(--brand-accent) !important; animation-delay: 0s !important; }
.heart-loader-spark.spark-2 { --tx: -26px; --ty: -70px; --scale: .36; background: var(--brand-primary) !important; animation-delay: .18s !important; }
.heart-loader-spark.spark-3 { --tx: 32px; --ty: -68px; --scale: .42; background: var(--brand-primary) !important; animation-delay: .34s !important; }
.heart-loader-spark.spark-4 { --tx: 58px; --ty: -36px; --scale: .32; background: var(--brand-accent) !important; animation-delay: .52s !important; }
.heart-loader-spark.spark-5 { --tx: 54px; --ty: 26px; --scale: .38; background: var(--brand-primary) !important; animation-delay: .74s !important; }
.heart-loader-spark.spark-6 { --tx: 14px; --ty: 58px; --scale: .30; background: var(--brand-primary) !important; animation-delay: .98s !important; }
.heart-loader-spark.spark-7 { --tx: -38px; --ty: 44px; --scale: .34; background: var(--brand-accent) !important; animation-delay: 1.16s !important; }
.heart-loader-spark.spark-8 { --tx: -62px; --ty: 4px; --scale: .28; background: var(--brand-primary) !important; animation-delay: 1.34s !important; }

.site-preloader span {
  display: block !important;
  margin: 0 !important;
  color: var(--nav-primary, #A61C4F) !important;
  font-family: "Cinzel", Georgia, "Times New Roman", serif !important;
  font-size: clamp(18px, 2vw, 26px) !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  letter-spacing: .04em !important;
  text-align: center !important;
  text-transform: uppercase !important;
}

@keyframes heartLoaderBeat {
  0%,
  100% {
    transform: translate(-50%, -50%) rotate(-45deg) scale(.92);
  }

  35% {
    transform: translate(-50%, -50%) rotate(-45deg) scale(1.08);
  }

  54% {
    transform: translate(-50%, -50%) rotate(-45deg) scale(.98);
  }

  72% {
    transform: translate(-50%, -50%) rotate(-45deg) scale(1.04);
  }
}

@keyframes heartLoaderRing {
  0% {
    opacity: .7;
    transform: scale(.64);
  }

  100% {
    opacity: 0;
    transform: scale(1.28);
  }
}

@keyframes heartLoaderGlow {
  0%,
  100% {
    opacity: .68;
    transform: scale(.92);
  }

  50% {
    opacity: 1;
    transform: scale(1.08);
  }
}

@keyframes heartLoaderSpark {
  0% {
    opacity: 0;
    transform: translate(-50%, -50%) rotate(-45deg) scale(.2);
  }

  22% {
    opacity: .95;
  }

  72% {
    opacity: .78;
  }

  100% {
    opacity: 0;
    transform: translate(calc(-50% + var(--tx)), calc(-50% + var(--ty))) rotate(-45deg) scale(var(--scale));
  }
}

@media (max-width: 520px) {
  .site-preloader-card {
    gap: 12px !important;
  }

  .heart-preloader {
    width: 128px !important;
    height: 128px !important;
  }

  .heart-loader-heart {
    width: 40px !important;
    height: 40px !important;
  }

  .heart-loader-spark {
    width: 10px !important;
    height: 10px !important;
  }

  .site-preloader span {
    font-size: 17px !important;
  }
}

/* Home hero final: float navbar over the banner to remove the white gap */
body:not(.admin-body) .home-campaign-hero {
  position: relative !important;
  padding-top: 0 !important;
  overflow: visible !important;
  background: var(--theme-surface) !important;
}

body:not(.admin-body) .home-campaign-hero .campaign-stage {
  position: relative !important;
  z-index: 1 !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
}

@media (min-width: 992px) {
  body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    position: absolute !important;
    top: 16px !important;
    left: 50% !important;
    right: auto !important;
    z-index: 25 !important;
    width: min(1200px, calc(100% - 48px)) !important;
    margin: 0 !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(var(--theme-surface-rgb), 0.84)),
      rgba(255, 255, 255, .86) !important;
    border-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .78) !important;
    box-shadow: 0 18px 48px rgba(var(--theme-primary-rgb, 166, 28, 79), .16) !important;
    backdrop-filter: blur(16px) saturate(1.08) !important;
    transform: translateX(-50%) !important;
  }

  body:not(.admin-body) .home-campaign-hero .campaign-banner-carousel,
  body:not(.admin-body) .home-campaign-hero .campaign-banner-slide {
    margin-top: 0 !important;
  }

  body:not(.admin-body) .home-campaign-hero .campaign-banner-slide img {
    display: block !important;
  }
}

@media (max-width: 991px) {
  body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    position: absolute !important;
    top: 10px !important;
    left: 50% !important;
    right: auto !important;
    z-index: 25 !important;
    width: calc(100% - 20px) !important;
    margin: 0 !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, .92), rgba(var(--theme-surface-rgb), 0.88)),
      rgba(255, 255, 255, .88) !important;
    border-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .82) !important;
    box-shadow: 0 12px 30px rgba(var(--theme-primary-rgb, 166, 28, 79), .16) !important;
    backdrop-filter: blur(14px) saturate(1.05) !important;
    transform: translateX(-50%) !important;
  }

  body:not(.admin-body) .home-campaign-hero .campaign-stage {
    padding-top: 0 !important;
  }
}

/* Public mobile navbar final: keep drawer light with Encantos palette */
@media (max-width: 991px) {
  body:not(.admin-body) .site-header,
  body:not(.admin-body) .campaign-search-row,
  body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    background: linear-gradient(180deg, #fff, rgba(var(--theme-soft-rgb, 242, 242, 242), .96)) !important;
    border-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .9) !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: 0 12px 28px rgba(var(--theme-primary-rgb, 166, 28, 79), .1) !important;
  }

  body:not(.admin-body) .site-header .brand-logo,
  body:not(.admin-body) .campaign-logo img {
    filter: drop-shadow(0 7px 14px rgba(var(--theme-primary-rgb, 166, 28, 79), .13)) !important;
  }

  body:not(.admin-body) .site-header .main-nav,
  body:not(.admin-body) .campaign-menu {
    position: fixed !important;
    inset: 10px auto 10px 10px !important;
    z-index: 1300 !important;
    display: none !important;
    width: min(365px, calc(100vw - 20px)) !important;
    max-width: calc(100vw - 20px) !important;
    max-height: calc(100dvh - 20px) !important;
    padding: 20px 16px 18px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .9) !important;
    border-radius: 22px !important;
    background: linear-gradient(180deg, #fff, rgba(var(--theme-soft-rgb, 242, 242, 242), .98)) !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: 0 26px 70px rgba(var(--theme-primary-rgb, 166, 28, 79), .22) !important;
    scrollbar-width: thin !important;
    scrollbar-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .75) transparent !important;
  }

  body:not(.admin-body) .site-header .main-nav.open,
  body:not(.admin-body) .campaign-menu.open {
    display: grid !important;
    align-content: start !important;
    gap: 9px !important;
  }

  body:not(.admin-body) .site-header .main-nav::before,
  body:not(.admin-body) .campaign-menu::before {
    content: "Explora Encantos" !important;
    display: block !important;
    margin: 26px 8px 4px !important;
    color: var(--nav-primary, #A61C4F) !important;
    font-family: "Cinzel", serif !important;
    font-size: 21px !important;
    font-weight: 800 !important;
    line-height: 1.05 !important;
    letter-spacing: .03em !important;
    text-transform: uppercase !important;
  }

  body:not(.admin-body) .site-header .main-nav::after,
  body:not(.admin-body) .campaign-menu::after {
    content: "Flores, regalos y detalles para hoy" !important;
    order: -1 !important;
    display: block !important;
    margin: 52px 8px -46px !important;
    color: rgba(var(--theme-secondary-text-rgb), 0.72) !important;
    font-family: var(--font-body, "Poppins", sans-serif) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    line-height: 1.35 !important;
  }

  body:not(.admin-body) .site-header .main-nav .mobile-nav-close,
  body:not(.admin-body) .campaign-menu .mobile-nav-close {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    display: grid !important;
    width: 42px !important;
    height: 42px !important;
    place-items: center !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .85) !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: var(--nav-primary, #A61C4F) !important;
    box-shadow: 0 10px 20px rgba(var(--theme-primary-rgb, 166, 28, 79), .1) !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
  }

  body:not(.admin-body) .mobile-nav-search {
    display: grid !important;
    grid-template-columns: 22px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 54px !important;
    margin: 12px 0 10px !important;
    padding: 0 16px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .75) !important;
    border-radius: 18px !important;
    background: #fff !important;
    color: var(--nav-primary, #A61C4F) !important;
    box-shadow: 0 10px 22px rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
  }

  body:not(.admin-body) .mobile-nav-search input {
    width: 100% !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: var(--theme-heading) !important;
    font-size: 14px !important;
  }

  body:not(.admin-body) .mobile-nav-search input::placeholder {
    color: rgba(var(--theme-heading-rgb), 0.48) !important;
  }

  body:not(.admin-body) .site-header .main-nav > a,
  body:not(.admin-body) .site-header .main-nav > .nav-category > a,
  body:not(.admin-body) .site-header .main-nav summary,
  body:not(.admin-body) .campaign-menu > a,
  body:not(.admin-body) .campaign-menu > .nav-category > a,
  body:not(.admin-body) .campaign-menu summary {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 46px !important;
    height: auto !important;
    padding: 0 14px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .62) !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .86) !important;
    color: var(--theme-heading) !important;
    box-shadow: 0 8px 18px rgba(var(--theme-primary-rgb, 166, 28, 79), .06) !important;
    font-family: var(--font-body, "Poppins", sans-serif) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    line-height: 1.1 !important;
    text-transform: none !important;
  }

  body:not(.admin-body) .site-header .main-nav > a:hover,
  body:not(.admin-body) .site-header .main-nav > .nav-category > a:hover,
  body:not(.admin-body) .site-header .main-nav summary:hover,
  body:not(.admin-body) .site-header .main-nav details[open] > summary,
  body:not(.admin-body) .campaign-menu > a:hover,
  body:not(.admin-body) .campaign-menu > .nav-category > a:hover,
  body:not(.admin-body) .campaign-menu summary:hover,
  body:not(.admin-body) .campaign-menu details[open] > summary {
    border-color: rgba(var(--theme-primary-rgb, 166, 28, 79), .42) !important;
    background: rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
    color: var(--nav-primary, #A61C4F) !important;
  }

  body:not(.admin-body) .site-header .main-nav summary i,
  body:not(.admin-body) .campaign-menu summary i {
    display: grid !important;
    width: 30px !important;
    height: 30px !important;
    place-items: center !important;
    border-radius: 999px !important;
    background: #fff !important;
    color: var(--nav-primary, #A61C4F) !important;
    box-shadow: 0 6px 14px rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
  }

  body:not(.admin-body) .nav-mega-panel {
    position: static !important;
    display: none !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 8px 0 4px !important;
    padding: 0 !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .62) !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: none !important;
    transform: none !important;
    opacity: 1 !important;
    overflow: hidden !important;
  }

  body:not(.admin-body) details[open] > .nav-mega-panel {
    display: block !important;
  }

  body:not(.admin-body) .nav-mega-grid,
  body:not(.admin-body) .nav-mega-compact .nav-mega-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
    background: #fff !important;
  }

  body:not(.admin-body) .nav-mega-col {
    display: grid !important;
    gap: 7px !important;
    padding: 12px !important;
    border: 0 !important;
    border-top: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .45) !important;
    background: linear-gradient(180deg, #fff, rgba(var(--theme-soft-rgb, 242, 242, 242), .55)) !important;
  }

  body:not(.admin-body) .nav-mega-col:first-child {
    border-top: 0 !important;
  }

  body:not(.admin-body) .nav-mega-col small,
  body:not(.admin-body) .nav-mega-spotlight small {
    color: var(--nav-primary, #A61C4F) !important;
  }

  body:not(.admin-body) .nav-mega-item {
    display: grid !important;
    grid-template-columns: 24px minmax(0, 1fr) !important;
    gap: 9px !important;
    min-height: 46px !important;
    padding: 7px 8px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .38) !important;
    border-radius: 12px !important;
    background: #fff !important;
    color: var(--theme-heading) !important;
  }

  body:not(.admin-body) .nav-mega-item strong {
    color: var(--theme-heading) !important;
    font-size: 12.5px !important;
    font-weight: 500 !important;
  }

  body:not(.admin-body) .nav-mega-item em {
    color: rgba(var(--theme-heading-rgb), 0.56) !important;
    font-size: 10.5px !important;
  }

  body:not(.admin-body) .nav-mega-spotlight {
    min-height: 190px !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #fff !important;
  }

  body:not(.admin-body) .nav-mega-media::after {
    background:
      linear-gradient(180deg, rgba(var(--theme-heading-rgb), 0.08), rgba(var(--theme-heading-rgb), 0.58)),
      linear-gradient(90deg, rgba(var(--theme-primary-rgb, 166, 28, 79), .36), rgba(var(--theme-heading-rgb), 0.18)) !important;
  }
}

@media (max-width: 420px) {
  body:not(.admin-body) .site-header .main-nav,
  body:not(.admin-body) .campaign-menu {
    inset: 8px auto 8px 8px !important;
    width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important;
    padding: 18px 12px 16px !important;
    border-radius: 20px !important;
  }

  body:not(.admin-body) .site-header .main-nav::before,
  body:not(.admin-body) .campaign-menu::before {
    margin-inline: 6px !important;
    font-size: 19px !important;
  }

  body:not(.admin-body) .site-header .main-nav > a,
  body:not(.admin-body) .site-header .main-nav > .nav-category > a,
  body:not(.admin-body) .site-header .main-nav summary,
  body:not(.admin-body) .campaign-menu > a,
  body:not(.admin-body) .campaign-menu > .nav-category > a,
  body:not(.admin-body) .campaign-menu summary {
    min-height: 44px !important;
    padding-inline: 12px !important;
    font-size: 13.2px !important;
  }
}

/* Font Awesome interface icons */
.fa-solid,
.fa-regular,
.fa-brands {
  line-height: 1;
}

body:not(.admin-body) .desktop-nav-search button i,
body:not(.admin-body) .mobile-nav-search i,
body:not(.admin-body) .header-icon-link i,
body:not(.admin-body) .campaign-icon-link i,
body:not(.admin-body) .cart-btn.header-cart-icon i,
body:not(.admin-body) .cart-btn.campaign-cart-icon i {
  display: inline-grid !important;
  place-items: center !important;
  color: currentColor !important;
  font-size: 17px !important;
  line-height: 1 !important;
}

body:not(.admin-body) .desktop-nav-search button i,
body:not(.admin-body) .mobile-nav-search i {
  font-size: 16px !important;
}

body:not(.admin-body) .cart-btn.header-cart-icon i,
body:not(.admin-body) .cart-btn.campaign-cart-icon i {
  transform: translateY(-.5px);
}

body.admin-body .admin-nav-icon i {
  display: inline-grid !important;
  place-items: center !important;
  width: 1em !important;
  height: 1em !important;
  color: currentColor !important;
  font-size: 15px !important;
  line-height: 1 !important;
}

body.admin-body .admin-nav-submenu .admin-nav-icon i {
  font-size: 8px !important;
}

body.admin-body .action-icon i,
body.admin-body .table-actions .action-icon i,
body.admin-body .stock-inline-form button i {
  display: inline-grid !important;
  place-items: center !important;
  color: currentColor !important;
  font-size: 15px !important;
  line-height: 1 !important;
}

/* Home banner overlay navbar: final layer */
body.public-home .encantos-home,
body.public-home .home-campaign-hero {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.public-home .home-campaign-hero {
  position: relative !important;
  overflow: visible !important;
  background: var(--theme-surface) !important;
}

body.public-home .home-campaign-hero .campaign-stage {
  position: relative !important;
  z-index: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.public-home .home-campaign-hero .campaign-banner-carousel,
body.public-home .home-campaign-hero .campaign-banner-slide {
  margin-top: 0 !important;
}

body.public-home .home-campaign-hero .campaign-banner-slide img {
  display: block !important;
}

body.public-home .home-campaign-hero .campaign-search-row {
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  z-index: 50 !important;
  margin: 0 !important;
  border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .78) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(var(--theme-surface-rgb), 0.82)),
    rgba(255, 255, 255, .86) !important;
  color: var(--nav-secondary, #8A1640) !important;
  box-shadow: 0 16px 42px rgba(var(--theme-primary-rgb, 166, 28, 79), .16) !important;
  backdrop-filter: blur(16px) saturate(1.08) !important;
  -webkit-backdrop-filter: blur(16px) saturate(1.08) !important;
  transform: translateX(-50%) !important;
}

@media (min-width: 992px) {
  body.public-home .home-campaign-hero .campaign-search-row {
    top: 14px !important;
    width: min(1200px, calc(100% - 48px)) !important;
    min-height: 54px !important;
    height: 54px !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }

  body.public-home .home-campaign-hero .campaign-banner-carousel,
  body.public-home .home-campaign-hero .campaign-banner-slide {
    min-height: clamp(300px, 31vw, 520px) !important;
  }

}

@media (max-width: 991px) {
  body.public-home .home-campaign-hero .campaign-search-row {
    top: 8px !important;
    width: calc(100% - 18px) !important;
    min-height: 52px !important;
    height: 52px !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    box-shadow: 0 12px 28px rgba(var(--theme-primary-rgb, 166, 28, 79), .14) !important;
  }

  body.public-home .home-campaign-hero .campaign-stage,
  body.public-home .home-campaign-hero .campaign-banner-carousel,
  body.public-home .home-campaign-hero .campaign-banner-slide {
    margin-top: 0 !important;
  }
}

/* Public catalog/product overlay navbar */
body.public-catalog .top-strip,
body.public-product .top-strip {
  display: none !important;
}

body.public-catalog .site-header,
body.public-product .site-header {
  border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .78) !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(var(--theme-surface-rgb), 0.82)),
    rgba(255, 255, 255, .86) !important;
  color: var(--nav-secondary, #8A1640) !important;
  box-shadow: 0 16px 42px rgba(var(--theme-primary-rgb, 166, 28, 79), .16) !important;
  backdrop-filter: blur(16px) saturate(1.08) !important;
  -webkit-backdrop-filter: blur(16px) saturate(1.08) !important;
}

body.public-catalog .site-header {
  position: absolute !important;
  left: 50% !important;
  right: auto !important;
  z-index: 50 !important;
  margin: 0 !important;
  transform: translateX(-50%) !important;
}

body.public-catalog main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.public-catalog .catalog-hero {
  margin-top: 0 !important;
}

body.public-catalog .catalog-hero.has-image {
  background-position: center center !important;
}

body.public-product .site-header {
  position: relative !important;
  z-index: 30 !important;
}

body.public-product .product-breadcrumb {
  margin-top: 14px !important;
}

@media (min-width: 992px) {
  body.public-catalog .site-header {
    top: 14px !important;
    width: min(1200px, calc(100% - 48px)) !important;
    min-height: 56px !important;
    height: 56px !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }

  body.public-catalog .catalog-hero {
    min-height: clamp(270px, 25vw, 430px) !important;
    padding-top: 104px !important;
  }

  body.public-product .site-header {
    margin-top: 12px !important;
    margin-bottom: 10px !important;
    min-height: 56px !important;
    height: 56px !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }
}

@media (max-width: 991px) {
  body.public-catalog .site-header {
    top: 8px !important;
    width: calc(100% - 18px) !important;
    min-height: 52px !important;
    height: 52px !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }

  body.public-catalog .catalog-hero {
    min-height: clamp(190px, 48vw, 280px) !important;
    padding-top: 86px !important;
  }

  body.public-product .site-header {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
  }
}

/* Mobile navbar mirrors desktop glass style */
body:not(.admin-body) .menu-toggle .menu-icon,
body:not(.admin-body) .mobile-nav-close i,
body:not(.admin-body) .campaign-banner-arrow i,
body:not(.admin-body) .category-arrow i,
body:not(.admin-body) .google-review-arrow i,
body:not(.admin-body) .catalog-mobile-filter-button i {
  display: inline-grid !important;
  place-items: center !important;
  color: currentColor !important;
  font-size: 1em !important;
  line-height: 1 !important;
}

@media (max-width: 991px) {
  body:not(.admin-body) .site-header,
  body:not(.admin-body) .campaign-search-row,
  body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    display: grid !important;
    grid-template-columns: auto minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 8px !important;
    width: calc(100% - 18px) !important;
    min-height: 54px !important;
    height: 54px !important;
    margin: 8px auto !important;
    padding: 5px 10px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .78) !important;
    border-radius: 20px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(var(--theme-surface-rgb), 0.82)),
      rgba(255, 255, 255, .86) !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: 0 12px 30px rgba(var(--theme-primary-rgb, 166, 28, 79), .15) !important;
    backdrop-filter: blur(16px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(16px) saturate(1.08) !important;
  }

  body.public-home .home-campaign-hero .campaign-search-row,
  body.public-catalog .site-header {
    position: absolute !important;
    top: 8px !important;
    left: 50% !important;
    right: auto !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
  }

  body:not(.admin-body) .site-header .logo-brand,
  body:not(.admin-body) .campaign-logo {
    grid-column: 2 !important;
    justify-self: center !important;
    width: auto !important;
    max-width: 128px !important;
    height: 40px !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body:not(.admin-body) .site-header .brand-logo,
  body:not(.admin-body) .campaign-logo img {
    width: auto !important;
    max-width: 118px !important;
    max-height: 34px !important;
    object-fit: contain !important;
  }

  body:not(.admin-body) .site-header > .menu-toggle,
  body:not(.admin-body) .campaign-menu-toggle {
    grid-column: 1 !important;
    justify-self: start !important;
    display: grid !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    place-items: center !important;
    padding: 0 !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .82) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .76) !important;
    color: var(--nav-primary, #A61C4F) !important;
    box-shadow: 0 8px 18px rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
    font-size: 17px !important;
  }

  body:not(.admin-body) .site-header > .menu-toggle span,
  body:not(.admin-body) .campaign-menu-toggle span {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
  }

  body:not(.admin-body) .site-header > .menu-toggle[aria-expanded="true"] .menu-icon-open,
  body:not(.admin-body) .campaign-menu-toggle[aria-expanded="true"] .menu-icon-open,
  body:not(.admin-body) .site-header > .menu-toggle:not([aria-expanded="true"]) .menu-icon-close,
  body:not(.admin-body) .campaign-menu-toggle:not([aria-expanded="true"]) .menu-icon-close {
    display: none !important;
  }

  body:not(.admin-body) .header-actions,
  body:not(.admin-body) .campaign-actions {
    grid-column: 3 !important;
    justify-self: end !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 6px !important;
    min-width: max-content !important;
  }

  body:not(.admin-body) .header-icon-link,
  body:not(.admin-body) .campaign-icon-link,
  body:not(.admin-body) .cart-btn.header-cart-icon,
  body:not(.admin-body) .cart-btn.campaign-cart-icon {
    display: grid !important;
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    place-items: center !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .82) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .76) !important;
    color: var(--nav-primary, #A61C4F) !important;
    box-shadow: 0 8px 18px rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
  }

  body:not(.admin-body) .header-icon-link i,
  body:not(.admin-body) .campaign-icon-link i,
  body:not(.admin-body) .cart-btn.header-cart-icon i,
  body:not(.admin-body) .cart-btn.campaign-cart-icon i {
    font-size: 15px !important;
  }

  body:not(.admin-body) .site-header .main-nav,
  body:not(.admin-body) .campaign-menu {
    position: fixed !important;
    inset: 10px auto 10px 10px !important;
    z-index: 1300 !important;
    width: min(368px, calc(100vw - 20px)) !important;
    max-width: calc(100vw - 20px) !important;
    max-height: calc(100dvh - 20px) !important;
    padding: 20px 16px 18px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .78) !important;
    border-radius: 22px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(var(--theme-surface-rgb), 0.92)),
      rgba(255, 255, 255, .9) !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: 0 24px 70px rgba(var(--theme-primary-rgb, 166, 28, 79), .24) !important;
    backdrop-filter: blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.08) !important;
  }

  body:not(.admin-body) .site-header .main-nav > a,
  body:not(.admin-body) .site-header .main-nav > .nav-category > a,
  body:not(.admin-body) .site-header .main-nav summary,
  body:not(.admin-body) .campaign-menu > a,
  body:not(.admin-body) .campaign-menu > .nav-category > a,
  body:not(.admin-body) .campaign-menu summary {
    background: rgba(255, 255, 255, .78) !important;
    border-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .58) !important;
    color: var(--nav-secondary, #8A1640) !important;
  }
}

@media (max-width: 430px) {
  body:not(.admin-body) .header-actions,
  body:not(.admin-body) .campaign-actions {
    gap: 4px !important;
  }

  body:not(.admin-body) .header-icon-link,
  body:not(.admin-body) .campaign-icon-link,
  body:not(.admin-body) .cart-btn.header-cart-icon,
  body:not(.admin-body) .cart-btn.campaign-cart-icon,
  body:not(.admin-body) .site-header > .menu-toggle,
  body:not(.admin-body) .campaign-menu-toggle {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
  }

  body:not(.admin-body) .site-header .brand-logo,
  body:not(.admin-body) .campaign-logo img {
    max-width: 96px !important;
  }
}

/* Inline icon fallback: avoids webfont squares on hosting/mobile browsers */
.ui-icon {
  display: block;
  width: 1em;
  height: 1em;
  flex: 0 0 auto;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.ui-icon-fill {
  fill: currentColor;
  stroke: none;
}

body:not(.admin-body) .desktop-nav-search .ui-icon,
body:not(.admin-body) .mobile-nav-search .ui-icon {
  width: 18px !important;
  height: 18px !important;
}

body:not(.admin-body) .header-icon-link .ui-icon,
body:not(.admin-body) .campaign-icon-link .ui-icon,
body:not(.admin-body) .cart-btn.header-cart-icon .ui-icon,
body:not(.admin-body) .cart-btn.campaign-cart-icon .ui-icon {
  width: 17px !important;
  height: 17px !important;
}

body:not(.admin-body) .menu-toggle .menu-icon.ui-icon,
body:not(.admin-body) .mobile-nav-close .ui-icon {
  width: 18px !important;
  height: 18px !important;
}

body:not(.admin-body) .nav-chevron {
  display: inline-grid !important;
  place-items: center !important;
  width: 13px !important;
  height: 13px !important;
  color: currentColor !important;
  line-height: 1 !important;
}

body:not(.admin-body) .nav-chevron .ui-icon {
  width: 12px !important;
  height: 12px !important;
}

body:not(.admin-body) .nav-inline-icon {
  display: inline-grid !important;
  place-items: center !important;
  color: var(--nav-primary, #A61C4F) !important;
  line-height: 1 !important;
}

body:not(.admin-body) .nav-inline-icon .ui-icon {
  width: 12px !important;
  height: 12px !important;
}

body:not(.admin-body) .campaign-banner-arrow .ui-icon,
body:not(.admin-body) .category-arrow .ui-icon,
body:not(.admin-body) .google-review-arrow .ui-icon,
body:not(.admin-body) .catalog-mobile-filter-button .ui-icon {
  width: 17px !important;
  height: 17px !important;
}

body.admin-body .admin-nav-icon .ui-icon {
  width: 16px !important;
  height: 16px !important;
}

body.admin-body .admin-nav-submenu .admin-nav-icon .ui-icon {
  width: 7px !important;
  height: 7px !important;
}

body.admin-body .admin-actions .ui-icon,
body.admin-body .icon-button .ui-icon,
body.admin-body .admin-card-actions .ui-icon,
body.admin-body .button .ui-icon {
  width: 15px !important;
  height: 15px !important;
}

/* Mobile Gladia-inspired capsule adapted to Encantos palette */
@media (max-width: 991px) {
  body:not(.admin-body) .top-strip,
  body:not(.admin-body) .desktop-nav-search,
  body:not(.admin-body) .campaign-search-icon {
    display: none !important;
  }

  html body:not(.admin-body) .site-header,
  html body:not(.admin-body) .campaign-search-row,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    display: grid !important;
    grid-template-columns: minmax(94px, 1fr) auto auto !important;
    align-items: center !important;
    gap: 8px !important;
    width: calc(100% - 16px) !important;
    max-width: 430px !important;
    min-height: 48px !important;
    height: 48px !important;
    padding: 5px 7px 5px 12px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .72) !important;
    border-radius: 18px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, .9), rgba(var(--theme-surface-rgb), 0.82)),
      rgba(var(--theme-surface-rgb), 0.86) !important;
    box-shadow: 0 14px 36px rgba(var(--theme-primary-rgb, 166, 28, 79), .16) !important;
    color: var(--nav-secondary, #8A1640) !important;
    overflow: visible !important;
    backdrop-filter: blur(16px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(16px) saturate(1.08) !important;
  }

  html body.public-home .home-campaign-hero .campaign-search-row,
  html body.public-catalog .site-header,
  html body.public-product .site-header,
  html body:not(.admin-body) .site-header {
    position: absolute !important;
    top: 8px !important;
    left: 50% !important;
    right: auto !important;
    margin: 0 !important;
    transform: translateX(-50%) !important;
    z-index: 1200 !important;
  }

  html body:not(.admin-body) .site-header .logo-brand,
  html body:not(.admin-body) .campaign-logo {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: start !important;
    align-self: center !important;
    width: auto !important;
    max-width: 116px !important;
    height: 38px !important;
    min-height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body:not(.admin-body) .site-header .brand-logo,
  html body:not(.admin-body) .campaign-logo img {
    width: auto !important;
    max-width: 112px !important;
    max-height: 32px !important;
    object-fit: contain !important;
  }

  html body:not(.admin-body) .header-actions,
  html body:not(.admin-body) .campaign-actions {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    min-width: 0 !important;
  }

  html body:not(.admin-body) .header-icon-link,
  html body:not(.admin-body) .campaign-icon-link,
  html body:not(.admin-body) .cart-btn.header-cart-icon,
  html body:not(.admin-body) .cart-btn.campaign-cart-icon {
    width: 35px !important;
    height: 35px !important;
    min-width: 35px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .78) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .78) !important;
    color: var(--nav-primary, #A61C4F) !important;
    box-shadow: none !important;
  }

  html body:not(.admin-body) .site-header > .menu-toggle,
  html body:not(.admin-body) .campaign-menu-toggle {
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
    width: 35px !important;
    height: 35px !important;
    min-width: 35px !important;
    padding: 0 !important;
    display: grid !important;
    place-items: center !important;
    border: 1px solid rgba(var(--theme-secondary-rgb, 138, 22, 64), .18) !important;
    border-radius: 999px !important;
    background: rgba(var(--theme-secondary-rgb, 138, 22, 64), .1) !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: none !important;
    font-size: 17px !important;
  }

  html body:not(.admin-body) .site-header > .menu-toggle span,
  html body:not(.admin-body) .campaign-menu-toggle span {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    clip: rect(0 0 0 0) !important;
  }

  html body:not(.admin-body) .site-header > .menu-toggle.open .menu-icon-open,
  html body:not(.admin-body) .campaign-menu-toggle.open .menu-icon-open,
  html body:not(.admin-body) .site-header > .menu-toggle[aria-expanded="true"] .menu-icon-open,
  html body:not(.admin-body) .campaign-menu-toggle[aria-expanded="true"] .menu-icon-open,
  html body:not(.admin-body) .site-header > .menu-toggle:not(.open):not([aria-expanded="true"]) .menu-icon-close,
  html body:not(.admin-body) .campaign-menu-toggle:not(.open):not([aria-expanded="true"]) .menu-icon-close {
    display: none !important;
  }

  html body:not(.admin-body) .site-header .main-nav,
  html body:not(.admin-body) .campaign-menu {
    position: fixed !important;
    top: 62px !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    z-index: 1199 !important;
    transform: translate(-50%, -8px) scale(.98) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    width: calc(100vw - 16px) !important;
    max-width: 430px !important;
    max-height: calc(100dvh - 76px) !important;
    padding: 14px 12px 76px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .62) !important;
    border-radius: 18px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(var(--theme-surface-rgb), 0.94)),
      rgba(var(--theme-surface-rgb), 0.96) !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: 0 22px 60px rgba(var(--theme-primary-rgb, 166, 28, 79), .22) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    backdrop-filter: blur(18px) saturate(1.08) !important;
    -webkit-backdrop-filter: blur(18px) saturate(1.08) !important;
    transition: opacity .18s ease, transform .18s ease, visibility .18s ease !important;
  }

  html body:not(.admin-body) .site-header .main-nav.open,
  html body:not(.admin-body) .campaign-menu.open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate(-50%, 0) scale(1) !important;
  }

  html body:not(.admin-body) .mobile-nav-close {
    display: none !important;
  }

  html body:not(.admin-body) .mobile-nav-search {
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    height: 54px !important;
    margin: 0 0 10px !important;
    padding: 0 16px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .5) !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, .86) !important;
    color: var(--nav-primary, #A61C4F) !important;
  }

  html body:not(.admin-body) .mobile-nav-search input {
    width: 100% !important;
    min-width: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: var(--nav-secondary, #8A1640) !important;
    font: 600 14px/1.2 Poppins, sans-serif !important;
  }

  html body:not(.admin-body) .mobile-nav-search input::placeholder {
    color: rgba(var(--theme-secondary-rgb, 138, 22, 64), .48) !important;
  }

  html body:not(.admin-body) .site-header .main-nav > a,
  html body:not(.admin-body) .site-header .main-nav > .nav-category > a,
  html body:not(.admin-body) .site-header .main-nav summary,
  html body:not(.admin-body) .campaign-menu > a,
  html body:not(.admin-body) .campaign-menu > .nav-category > a,
  html body:not(.admin-body) .campaign-menu summary {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    min-height: 50px !important;
    margin: 0 !important;
    padding: 0 6px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .3) !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: none !important;
    font: 800 14px/1.15 Poppins, sans-serif !important;
    text-align: left !important;
  }

  html body:not(.admin-body) .site-header .main-nav details[open] > summary,
  html body:not(.admin-body) .campaign-menu details[open] > summary {
    color: var(--nav-primary, #A61C4F) !important;
  }

  html body:not(.admin-body) .nav-category {
    width: 100% !important;
    display: block !important;
  }

  html body:not(.admin-body) .nav-chevron {
    margin-left: auto !important;
    color: currentColor !important;
    transition: transform .18s ease !important;
  }

  html body:not(.admin-body) details[open] > summary .nav-chevron {
    transform: rotate(180deg) !important;
  }

  html body:not(.admin-body) .nav-submenu,
  html body:not(.admin-body) .nav-mega-panel {
    position: static !important;
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: auto !important;
    margin: 0 !important;
    padding: 10px 0 12px !important;
    transform: none !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  html body:not(.admin-body) details[open] > .nav-submenu,
  html body:not(.admin-body) details[open] > .nav-mega-panel {
    display: block !important;
  }

  html body:not(.admin-body) .nav-mega-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  html body:not(.admin-body) .nav-mega-col {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  html body:not(.admin-body) .nav-mega-col small {
    margin: 6px 8px 2px !important;
    color: rgba(var(--theme-primary-rgb, 166, 28, 79), .7) !important;
    font: 800 10px/1 Poppins, sans-serif !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
  }

  html body:not(.admin-body) .nav-mega-item,
  html body:not(.admin-body) .nav-submenu a.nav-mega-item {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 54px !important;
    padding: 9px 10px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .38) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, .72) !important;
    color: var(--nav-secondary, #8A1640) !important;
    text-align: left !important;
  }

  html body:not(.admin-body) .nav-inline-icon {
    width: 30px !important;
    height: 30px !important;
    border-radius: 10px !important;
    background: rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
    color: var(--nav-primary, #A61C4F) !important;
  }

  html body:not(.admin-body) .nav-mega-item strong {
    display: block !important;
    max-width: 100% !important;
    color: var(--theme-heading) !important;
    font: 800 13px/1.2 Poppins, sans-serif !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  html body:not(.admin-body) .nav-mega-item em {
    display: block !important;
    margin-top: 2px !important;
    color: rgba(var(--theme-heading-rgb), 0.58) !important;
    font: 500 11px/1.25 Poppins, sans-serif !important;
    white-space: normal !important;
  }

  html body:not(.admin-body) .nav-mega-spotlight {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-height: 132px !important;
    margin-top: 8px !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .42) !important;
    background: var(--nav-secondary, #8A1640) !important;
    color: #fff !important;
  }

  html body:not(.admin-body) .nav-mega-media,
  html body:not(.admin-body) .nav-mega-media img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  html body:not(.admin-body) .nav-mega-spotlight::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: linear-gradient(90deg, rgba(var(--theme-heading-rgb), 0.8), rgba(var(--theme-heading-rgb), 0.25)) !important;
    z-index: 1 !important;
  }

  html body:not(.admin-body) .nav-mega-copy {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    min-height: 132px !important;
    padding: 16px !important;
    color: #fff !important;
  }

  html body:not(.admin-body) .nav-mega-copy small {
    color: var(--theme-border) !important;
    font: 800 9px/1 Poppins, sans-serif !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
  }

  html body:not(.admin-body) .nav-mega-copy strong {
    margin-top: 7px !important;
    color: #fff !important;
    font: 900 22px/1 Poppins, sans-serif !important;
  }

  html body:not(.admin-body) .nav-mega-copy span {
    margin-top: 6px !important;
    color: rgba(255, 255, 255, .82) !important;
    font: 700 12px/1.25 Poppins, sans-serif !important;
  }

  html body:not(.admin-body) .nav-mega-copy em {
    margin-top: 9px !important;
    color: var(--theme-border) !important;
    font: 800 12px/1 Poppins, sans-serif !important;
  }

}

@media (max-width: 390px) {
  html body:not(.admin-body) .site-header,
  html body:not(.admin-body) .campaign-search-row,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    grid-template-columns: minmax(80px, 1fr) auto auto !important;
    padding-left: 10px !important;
  }

  html body:not(.admin-body) .header-actions,
  html body:not(.admin-body) .campaign-actions {
    gap: 4px !important;
  }

  html body:not(.admin-body) .header-icon-link,
  html body:not(.admin-body) .campaign-icon-link,
  html body:not(.admin-body) .cart-btn.header-cart-icon,
  html body:not(.admin-body) .cart-btn.campaign-cart-icon,
  html body:not(.admin-body) .site-header > .menu-toggle,
  html body:not(.admin-body) .campaign-menu-toggle {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
  }

  html body:not(.admin-body) .header-icon-link .ui-icon,
  html body:not(.admin-body) .campaign-icon-link .ui-icon,
  html body:not(.admin-body) .cart-btn.header-cart-icon .ui-icon,
  html body:not(.admin-body) .cart-btn.campaign-cart-icon .ui-icon,
  html body:not(.admin-body) .menu-toggle .menu-icon.ui-icon {
    width: 15px !important;
    height: 15px !important;
  }

  html body:not(.admin-body) .site-header .brand-logo,
  html body:not(.admin-body) .campaign-logo img {
    max-width: 88px !important;
  }
}

/* Mobile navbar hotfix: keep the top capsule visible and light on very small phones. */
@media (min-width: 992px) {
  html body.public-home .home-campaign-hero {
    position: relative !important;
  }

  html body.public-home .home-campaign-hero > .campaign-menu {
    position: absolute !important;
    top: 16px !important;
    left: 50% !important;
    right: auto !important;
    z-index: 1201 !important;
    transform: translateX(-50%) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    width: min(620px, calc(100vw - 420px)) !important;
    min-width: 420px !important;
    height: 72px !important;
    min-height: 72px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  html body.public-home .home-campaign-hero > .campaign-menu > .mobile-nav-close,
  html body.public-home .home-campaign-hero > .campaign-menu > .mobile-nav-search {
    display: none !important;
  }

  html body.public-home .home-campaign-hero > .campaign-menu > a,
  html body.public-home .home-campaign-hero > .campaign-menu > .nav-category > a,
  html body.public-home .home-campaign-hero > .campaign-menu summary {
    min-height: 40px !important;
    padding: 0 8px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: transparent !important;
    color: rgba(var(--theme-secondary-text-rgb), 0.72) !important;
    font-family: var(--font-body, "Poppins", sans-serif) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-transform: none !important;
    white-space: nowrap !important;
    box-shadow: none !important;
  }

  html body.public-home .home-campaign-hero > .campaign-menu > a:hover,
  html body.public-home .home-campaign-hero > .campaign-menu > .nav-category > a:hover,
  html body.public-home .home-campaign-hero > .campaign-menu summary:hover,
  html body.public-home .home-campaign-hero > .campaign-menu details[open] > summary {
    background: rgba(var(--theme-primary-rgb, 166, 28, 79), .09) !important;
    color: var(--nav-primary, #A61C4F) !important;
  }
}

@media (max-width: 991px) {
  html body:not(.admin-body) .site-header,
  html body:not(.admin-body) .campaign-search-row,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    display: grid !important;
    grid-template-columns: minmax(92px, 1fr) max-content 34px !important;
    align-items: center !important;
    column-gap: 7px !important;
    width: min(430px, calc(100vw - 16px)) !important;
    height: 48px !important;
    min-height: 48px !important;
    padding: 5px 7px 5px 12px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .82) !important;
    border-radius: 18px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, .94), rgba(var(--theme-surface-rgb), 0.9)),
      var(--theme-surface) !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: 0 14px 34px rgba(var(--theme-primary-rgb, 166, 28, 79), .16) !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
  }

  html body.public-home .home-campaign-hero .campaign-search-row,
  html body.public-catalog .site-header,
  html body.public-product .site-header,
  html body:not(.admin-body) .site-header {
    position: absolute !important;
    top: 8px !important;
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
  }

  html body:not(.admin-body) .site-header .logo-brand,
  html body:not(.admin-body) .campaign-logo {
    display: flex !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
    align-items: center !important;
    justify-content: flex-start !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 112px !important;
    height: 38px !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }

  html body:not(.admin-body) .site-header .brand-logo,
  html body:not(.admin-body) .campaign-logo img {
    display: block !important;
    width: auto !important;
    max-width: 106px !important;
    max-height: 31px !important;
    object-fit: contain !important;
    opacity: 1 !important;
    visibility: visible !important;
    filter: drop-shadow(0 6px 12px rgba(var(--theme-primary-rgb, 166, 28, 79), .12)) !important;
  }

  html body:not(.admin-body) .header-actions,
  html body:not(.admin-body) .campaign-actions {
    display: inline-flex !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 4px !important;
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
  }

  html body:not(.admin-body) .header-icon-link,
  html body:not(.admin-body) .campaign-icon-link,
  html body:not(.admin-body) .cart-btn.header-cart-icon,
  html body:not(.admin-body) .cart-btn.campaign-cart-icon,
  html body:not(.admin-body) .site-header > .menu-toggle,
  html body:not(.admin-body) .campaign-menu-toggle {
    display: grid !important;
    place-items: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .82) !important;
    border-radius: 999px !important;
    background: rgba(255, 255, 255, .82) !important;
    color: var(--nav-primary, #A61C4F) !important;
    opacity: 1 !important;
    visibility: visible !important;
    box-shadow: none !important;
  }

  html body:not(.admin-body) .site-header > .menu-toggle,
  html body:not(.admin-body) .campaign-menu-toggle {
    grid-column: 3 !important;
    grid-row: 1 !important;
    background: rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
    color: var(--nav-secondary, #8A1640) !important;
  }

  html body:not(.admin-body) .header-icon-link .ui-icon,
  html body:not(.admin-body) .campaign-icon-link .ui-icon,
  html body:not(.admin-body) .cart-btn.header-cart-icon .ui-icon,
  html body:not(.admin-body) .cart-btn.campaign-cart-icon .ui-icon,
  html body:not(.admin-body) .menu-toggle .menu-icon.ui-icon {
    display: block !important;
    width: 15px !important;
    height: 15px !important;
    color: currentColor !important;
    stroke: currentColor !important;
  }

  html body:not(.admin-body) .site-header .main-nav,
  html body.public-home .home-campaign-hero > .campaign-menu,
  html body:not(.admin-body) .campaign-menu {
    left: 50% !important;
    top: 68px !important;
    right: auto !important;
    bottom: auto !important;
    position: fixed !important;
    z-index: 1199 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    width: min(430px, calc(100vw - 16px)) !important;
    max-width: calc(100vw - 16px) !important;
    max-height: calc(100dvh - 82px) !important;
    margin: 0 !important;
    padding: 14px 12px 76px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .68) !important;
    border-radius: 18px !important;
    transform: translate(-50%, -8px) scale(.98) !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(var(--theme-surface-rgb), 0.96)),
      var(--theme-surface) !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: 0 22px 60px rgba(var(--theme-primary-rgb, 166, 28, 79), .24) !important;
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  html body:not(.admin-body) .site-header .main-nav.open,
  html body.public-home .home-campaign-hero > .campaign-menu.open,
  html body:not(.admin-body) .campaign-menu.open {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate(-50%, 0) scale(1) !important;
  }

  html body.public-home .home-campaign-hero > .campaign-menu > .mobile-nav-close,
  html body:not(.admin-body) .site-header .main-nav > .mobile-nav-close,
  html body:not(.admin-body) .campaign-menu > .mobile-nav-close {
    display: none !important;
  }
}

@media (max-width: 350px) {
  html body:not(.admin-body) .site-header,
  html body:not(.admin-body) .campaign-search-row,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    grid-template-columns: minmax(78px, 1fr) max-content 31px !important;
    column-gap: 5px !important;
    padding-left: 9px !important;
    padding-right: 6px !important;
  }

  html body:not(.admin-body) .site-header .brand-logo,
  html body:not(.admin-body) .campaign-logo img {
    max-width: 86px !important;
  }

  html body:not(.admin-body) .header-icon-link,
  html body:not(.admin-body) .campaign-icon-link,
  html body:not(.admin-body) .cart-btn.header-cart-icon,
  html body:not(.admin-body) .cart-btn.campaign-cart-icon,
  html body:not(.admin-body) .site-header > .menu-toggle,
  html body:not(.admin-body) .campaign-menu-toggle {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
  }
}

/* Final mobile drawer cleanup: no duplicate controls, no overlapped generated labels. */
@media (max-width: 991px) {
  html body.public-home .home-campaign-hero .campaign-search-row,
  html body.public-catalog header.site-header,
  html body.public-product header.site-header,
  html body:not(.admin-body) header.site-header {
    grid-template-areas: none !important;
    grid-template-columns: minmax(86px, 1fr) max-content 32px !important;
    left: 8px !important;
    right: 8px !important;
    width: auto !important;
    max-width: none !important;
    transform: none !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav,
  html body:not(.admin-body) header.site-header nav.main-nav.open {
    position: fixed !important;
    top: 68px !important;
    left: 8px !important;
    right: 8px !important;
    bottom: auto !important;
    width: auto !important;
    max-width: none !important;
    height: auto !important;
    max-height: calc(100dvh - 82px) !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 14px 12px 76px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .68) !important;
    border-radius: 18px !important;
    background:
      linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(var(--theme-surface-rgb), 0.96)),
      var(--theme-surface) !important;
    color: var(--nav-secondary, #8A1640) !important;
    box-shadow: 0 22px 60px rgba(var(--theme-primary-rgb, 166, 28, 79), .24) !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    transform: translateY(-8px) scale(.98) !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav.open {
    transform: translateY(0) scale(1) !important;
  }

  html body:not(.admin-body) .campaign-search-icon {
    display: none !important;
  }

  html body:not(.admin-body) header.site-header .logo-brand {
    grid-area: auto !important;
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  html body:not(.admin-body) header.site-header .header-actions {
    grid-area: auto !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
  }

  html body:not(.admin-body) header.site-header > .menu-toggle {
    grid-area: auto !important;
    grid-column: 3 !important;
    grid-row: 1 !important;
    justify-self: end !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav {
    grid-area: auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
  }

  html body:not(.admin-body) .site-header > .menu-toggle .menu-icon,
  html body:not(.admin-body) .campaign-menu-toggle .menu-icon {
    grid-column: 1 !important;
    grid-row: 1 !important;
  }

  html body:not(.admin-body) .site-header > .menu-toggle.open .menu-icon-open,
  html body:not(.admin-body) .campaign-menu-toggle.open .menu-icon-open,
  html body:not(.admin-body) .site-header > .menu-toggle[aria-expanded="true"] .menu-icon-open,
  html body:not(.admin-body) .campaign-menu-toggle[aria-expanded="true"] .menu-icon-open {
    display: none !important;
  }

  html body:not(.admin-body) .site-header > .menu-toggle.open .menu-icon-close,
  html body:not(.admin-body) .campaign-menu-toggle.open .menu-icon-close,
  html body:not(.admin-body) .site-header > .menu-toggle[aria-expanded="true"] .menu-icon-close,
  html body:not(.admin-body) .campaign-menu-toggle[aria-expanded="true"] .menu-icon-close {
    display: block !important;
  }

  html body:not(.admin-body) .site-header > .menu-toggle:not(.open):not([aria-expanded="true"]) .menu-icon-open,
  html body:not(.admin-body) .campaign-menu-toggle:not(.open):not([aria-expanded="true"]) .menu-icon-open {
    display: block !important;
  }

  html body:not(.admin-body) .site-header > .menu-toggle:not(.open):not([aria-expanded="true"]) .menu-icon-close,
  html body:not(.admin-body) .campaign-menu-toggle:not(.open):not([aria-expanded="true"]) .menu-icon-close {
    display: none !important;
  }

  html body:not(.admin-body) .site-header .main-nav::before,
  html body:not(.admin-body) .site-header .main-nav::after,
  html body:not(.admin-body) .campaign-menu::before,
  html body:not(.admin-body) .campaign-menu::after {
    content: none !important;
    display: none !important;
  }

  html body:not(.admin-body) .mobile-nav-search {
    order: 0 !important;
    margin-top: 0 !important;
  }

  html body:not(.admin-body) .site-header .main-nav.has-open-category > .mobile-nav-search,
  html body:not(.admin-body) .campaign-menu.has-open-category > .mobile-nav-search {
    display: none !important;
  }

  html body:not(.admin-body) .site-header .main-nav > a,
  html body:not(.admin-body) .site-header .main-nav > .nav-category,
  html body:not(.admin-body) .campaign-menu > a,
  html body:not(.admin-body) .campaign-menu > .nav-category {
    order: 2 !important;
  }

  html body:not(.admin-body) .site-header .main-nav.has-open-category > a,
  html body:not(.admin-body) .site-header .main-nav.has-open-category > .nav-category:not([open]),
  html body:not(.admin-body) .campaign-menu.has-open-category > a,
  html body:not(.admin-body) .campaign-menu.has-open-category > .nav-category:not([open]) {
    display: none !important;
  }

  html body:not(.admin-body) .site-header .main-nav.has-open-category > details.nav-category[open],
  html body:not(.admin-body) .campaign-menu.has-open-category > details.nav-category[open] {
    display: block !important;
    order: 1 !important;
    width: 100% !important;
  }

  html body:not(.admin-body) .site-header .main-nav.has-open-category > details.nav-category[open] > summary,
  html body:not(.admin-body) .campaign-menu.has-open-category > details.nav-category[open] > summary {
    margin-bottom: 8px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .42) !important;
    background: rgba(255, 255, 255, .74) !important;
    padding: 0 12px !important;
  }

  html body:not(.admin-body) .site-header .main-nav details.nav-category > .nav-submenu,
  html body:not(.admin-body) .site-header .main-nav details.nav-category > .nav-submenu.nav-mega-panel,
  html body:not(.admin-body) .campaign-menu details.nav-category > .nav-submenu,
  html body:not(.admin-body) .campaign-menu details.nav-category > .nav-submenu.nav-mega-panel,
  html body.public-home .home-campaign-hero > .campaign-menu details.nav-category > .nav-submenu,
  html body.public-home .home-campaign-hero > .campaign-menu details.nav-category > .nav-submenu.nav-mega-panel {
    position: static !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    display: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 10px 0 12px !important;
    transform: none !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  html body:not(.admin-body) .site-header .main-nav details.nav-category[open] > .nav-submenu,
  html body:not(.admin-body) .site-header .main-nav details.nav-category[open] > .nav-submenu.nav-mega-panel,
  html body:not(.admin-body) .campaign-menu details.nav-category[open] > .nav-submenu,
  html body:not(.admin-body) .campaign-menu details.nav-category[open] > .nav-submenu.nav-mega-panel,
  html body.public-home .home-campaign-hero > .campaign-menu details.nav-category[open] > .nav-submenu,
  html body.public-home .home-campaign-hero > .campaign-menu details.nav-category[open] > .nav-submenu.nav-mega-panel {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  html body:not(.admin-body) .site-header .main-nav details.nav-category[open],
  html body:not(.admin-body) .campaign-menu details.nav-category[open],
  html body.public-home .home-campaign-hero > .campaign-menu details.nav-category[open] {
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: visible !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-grid,
  html body:not(.admin-body) .campaign-menu .nav-mega-grid,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-grid {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-col,
  html body:not(.admin-body) .campaign-menu .nav-mega-col,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-col {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-item,
  html body:not(.admin-body) .campaign-menu .nav-mega-item,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-item {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-spotlight,
  html body:not(.admin-body) .campaign-menu .nav-mega-spotlight,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-spotlight {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 176px !important;
    min-height: 176px !important;
    margin: 12px 0 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .48) !important;
    border-radius: 16px !important;
    background: var(--nav-secondary, #8A1640) !important;
    color: #fff !important;
    box-shadow: 0 14px 28px rgba(var(--theme-primary-rgb, 166, 28, 79), .14) !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-media,
  html body:not(.admin-body) .campaign-menu .nav-mega-media,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-media {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-media img,
  html body:not(.admin-body) .campaign-menu .nav-mega-media img,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-media img {
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-spotlight::after,
  html body:not(.admin-body) .campaign-menu .nav-mega-spotlight::after,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-spotlight::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    z-index: 1 !important;
    background:
      linear-gradient(90deg, rgba(var(--theme-heading-rgb), 0.76), rgba(var(--theme-heading-rgb), 0.34) 58%, rgba(var(--theme-heading-rgb), 0.12)),
      linear-gradient(0deg, rgba(0, 0, 0, .45), transparent 62%) !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-copy,
  html body:not(.admin-body) .campaign-menu .nav-mega-copy,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-copy {
    position: relative !important;
    z-index: 2 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: flex-end !important;
    align-items: flex-start !important;
    width: 100% !important;
    min-height: 176px !important;
    margin: 0 !important;
    padding: 18px !important;
    color: #fff !important;
    text-align: left !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-copy small,
  html body:not(.admin-body) .campaign-menu .nav-mega-copy small,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-copy small {
    color: var(--theme-border) !important;
    font: 800 9px/1 Poppins, sans-serif !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-copy strong,
  html body:not(.admin-body) .campaign-menu .nav-mega-copy strong,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-copy strong {
    max-width: 100% !important;
    margin: 8px 0 0 !important;
    color: #fff !important;
    font: 900 24px/1.02 Poppins, sans-serif !important;
    white-space: normal !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-copy span,
  html body:not(.admin-body) .campaign-menu .nav-mega-copy span,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-copy span {
    max-width: 100% !important;
    margin-top: 7px !important;
    color: rgba(255, 255, 255, .86) !important;
    font: 800 12px/1.2 Poppins, sans-serif !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  html body:not(.admin-body) .site-header .main-nav .nav-mega-copy em,
  html body:not(.admin-body) .campaign-menu .nav-mega-copy em,
  html body.public-home .home-campaign-hero > .campaign-menu .nav-mega-copy em {
    margin-top: 10px !important;
    color: var(--theme-border) !important;
    font: 800 12px/1 Poppins, sans-serif !important;
    white-space: normal !important;
  }
}

/* Mobile final flow: keep the navbar above banners/images and keep menus clickable. */
@media (max-width: 991px) {
  html body:not(.admin-body) .site-header,
  html body:not(.admin-body) .campaign-search-row,
  html body:not(.admin-body) .home-campaign-hero .campaign-search-row {
    position: sticky !important;
    top: 8px !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
    width: calc(100% - 18px) !important;
    max-width: 430px !important;
    margin: 8px auto !important;
    z-index: 1400 !important;
  }

  html body.public-home .home-campaign-hero,
  html body.public-home .encantos-home,
  html body.public-catalog main,
  html body.public-product main {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  html body.public-home .home-campaign-hero .campaign-stage,
  html body.public-home .home-campaign-hero .campaign-banner-carousel,
  html body.public-home .home-campaign-hero .campaign-banner-slide,
  html body.public-catalog .catalog-hero,
  html body.public-product .product-breadcrumb,
  html body.public-product .product-detail {
    margin-top: 0 !important;
  }

  html body.public-catalog .catalog-hero {
    padding-top: 0 !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav,
  html body:not(.admin-body) header.site-header nav.main-nav.open,
  html body.public-home .home-campaign-hero > .campaign-menu,
  html body.public-home .home-campaign-hero > .campaign-menu.open,
  html body:not(.admin-body) .campaign-menu,
  html body:not(.admin-body) .campaign-menu.open {
    position: fixed !important;
    top: 68px !important;
    left: 8px !important;
    right: 8px !important;
    bottom: auto !important;
    width: auto !important;
    max-width: none !important;
    max-height: calc(100dvh - 78px) !important;
    z-index: 1390 !important;
    transform: translateY(-8px) scale(.98) !important;
  }

  html body:not(.admin-body) header.site-header nav.main-nav.open,
  html body.public-home .home-campaign-hero > .campaign-menu.open,
  html body:not(.admin-body) .campaign-menu.open {
    transform: translateY(0) scale(1) !important;
  }
}

/* Cart drawer count/header cleanup: navbar badge styles must not affect the title. */
body:not(.admin-body) .drawer-panel header {
  min-height: 70px !important;
  padding: 16px 18px !important;
  background: linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-primary) 100%) !important;
}

body:not(.admin-body) .drawer-panel header::after {
  right: -38px !important;
  top: -44px !important;
  width: 112px !important;
  height: 112px !important;
  opacity: .55 !important;
}

body:not(.admin-body) .drawer-panel header h2 {
  display: flex !important;
  align-items: center !important;
  gap: 3px !important;
  margin: 0 !important;
  color: var(--theme-heading) !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  line-height: 1.15 !important;
  text-transform: none !important;
}

body:not(.admin-body) .drawer-panel header h2 [data-cart-count] {
  position: static !important;
  inset: auto !important;
  display: inline !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: inherit !important;
  box-shadow: none !important;
  transform: none !important;
  font: inherit !important;
  line-height: inherit !important;
}

body:not(.admin-body) .drawer-panel header button {
  display: grid !important;
  place-items: center !important;
  width: 34px !important;
  height: 34px !important;
  border: 1px solid rgba(255, 255, 255, .75) !important;
  background: rgba(255, 255, 255, .18) !important;
  color: var(--theme-heading) !important;
  font-size: 24px !important;
}

@media (max-width: 991px) {
  html body.public-home .home-campaign-hero .campaign-search-row,
  html body.public-catalog header.site-header,
  html body.public-product header.site-header,
  html body:not(.admin-body) header.site-header {
    position: sticky !important;
    top: 8px !important;
    left: auto !important;
    right: auto !important;
    width: calc(100% - 18px) !important;
    max-width: 430px !important;
    margin: 8px auto !important;
    transform: none !important;
  }
}

body:not(.admin-body) .drawer {
  z-index: 2200 !important;
}

@media (max-width: 991px) {
  html body:not(.admin-body) header.site-header nav.main-nav,
  html body.public-home .home-campaign-hero > .campaign-menu,
  html body:not(.admin-body) .campaign-menu {
    justify-content: flex-start !important;
    align-content: flex-start !important;
  }
}

/* Admin navbar content polish: clearer modules, compact actions, stable dropdowns. */
body.admin-body .admin-navbar,
body.admin-body.admin-sidebar-collapsed .admin-navbar {
  grid-template-columns: minmax(110px, 138px) minmax(0, 1fr) !important;
  width: min(1480px, calc(100% - 28px)) !important;
  max-width: min(1480px, calc(100% - 28px)) !important;
  min-height: 58px !important;
  margin: 10px auto 18px !important;
  padding: 8px 10px 8px 14px !important;
  border-radius: 18px !important;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .96), rgba(var(--theme-surface-rgb), 0.9)),
    rgba(255, 255, 255, .88) !important;
  box-shadow: 0 18px 40px rgba(var(--theme-primary-rgb, 166, 28, 79), .1) !important;
}

body.admin-body .admin-navbar .brand-logo,
body.admin-body.admin-sidebar-collapsed .admin-navbar .brand-logo {
  max-width: 104px !important;
  max-height: 30px !important;
}

body.admin-body .admin-navbar .admin-nav,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 7px !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  padding: 0 2px !important;
}

body.admin-body .admin-navbar .admin-nav > a,
body.admin-body .admin-navbar .admin-nav-group > summary,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
  height: 38px !important;
  min-height: 38px !important;
  padding: 0 13px !important;
  gap: 7px !important;
  border-color: rgba(var(--theme-accent-rgb, 217, 145, 171), .76) !important;
  background: rgba(255, 255, 255, .76) !important;
  color: var(--nav-secondary, #8A1640) !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

body.admin-body .admin-navbar .admin-nav > a.active,
body.admin-body .admin-navbar .admin-nav > a:hover,
body.admin-body .admin-navbar .admin-nav-group.active > summary,
body.admin-body .admin-navbar .admin-nav-group[open] > summary,
body.admin-body .admin-navbar .admin-nav-group:hover > summary {
  border-color: var(--nav-primary, #A61C4F) !important;
  background: var(--nav-primary, #A61C4F) !important;
  color: #fff !important;
  box-shadow: 0 12px 24px rgba(var(--theme-primary-rgb, 166, 28, 79), .2) !important;
}

body.admin-body .admin-navbar .admin-nav-icon,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-icon {
  flex: 0 0 18px !important;
  width: 18px !important;
  height: 18px !important;
}

body.admin-body .admin-navbar .admin-nav-text,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-text {
  max-width: none !important;
  overflow: visible !important;
  text-overflow: clip !important;
  color: currentColor !important;
}

body.admin-body .admin-navbar .admin-nav-group > summary b,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary b {
  width: 16px !important;
  height: 16px !important;
  margin-left: 1px !important;
  border-radius: 999px !important;
  background: rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
  font-size: 12px !important;
  font-weight: 800 !important;
}

body.admin-body .admin-navbar .admin-nav-group[open] > summary b {
  background: rgba(255, 255, 255, .22) !important;
}

body.admin-body .admin-navbar .admin-nav-external {
  margin-left: auto !important;
}

body.admin-body .admin-navbar .admin-nav-external,
body.admin-body .admin-navbar .admin-nav-logout {
  background: rgba(255, 255, 255, .92) !important;
}

body.admin-body .admin-navbar .admin-nav-logout {
  color: var(--theme-secondary-text) !important;
}

body.admin-body .admin-navbar .admin-nav-submenu,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-submenu {
  top: calc(100% + 12px) !important;
  min-width: 220px !important;
  padding: 10px !important;
  border-radius: 16px !important;
  background: rgba(255, 255, 255, .98) !important;
  box-shadow: 0 22px 42px rgba(var(--theme-secondary-rgb), 0.16) !important;
}

body.admin-body .admin-navbar .admin-nav-submenu a,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-submenu a {
  min-height: 38px !important;
  padding: 8px 10px !important;
  border-radius: 12px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
}

@media (min-width: 1181px) and (max-width: 1360px) {
  body.admin-body .admin-navbar .admin-nav > a,
  body.admin-body .admin-navbar .admin-nav-group > summary,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
    padding: 0 10px !important;
    font-size: 11.2px !important;
  }
}

@media (max-width: 760px) {
  body.admin-body .admin-navbar,
  body.admin-body.admin-sidebar-collapsed .admin-navbar {
    grid-template-columns: 1fr !important;
    width: calc(100% - 12px) !important;
    max-width: calc(100% - 12px) !important;
    margin: 6px auto 10px !important;
    padding: 8px !important;
  }

  body.admin-body .admin-navbar .admin-nav,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 6px !important;
    overflow: visible !important;
  }

  body.admin-body .admin-navbar .admin-nav-external {
    margin-left: 0 !important;
  }

  body.admin-body .admin-navbar .admin-nav > a,
  body.admin-body .admin-navbar .admin-nav-group > summary,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
    width: 100% !important;
    height: 32px !important;
    min-height: 32px !important;
    padding: 0 8px !important;
    font-size: 9.6px !important;
  }
}

@media (max-width: 420px) {
  body.admin-body .admin-navbar .admin-nav,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

/* Admin mobile compact bar: keep the dashboard content visible. */
@media (max-width: 760px) {
  body.admin-body .admin-navbar,
  body.admin-body.admin-sidebar-collapsed .admin-navbar {
    grid-template-columns: 78px minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 58px !important;
    height: 58px !important;
    margin: 6px auto 12px !important;
    padding: 7px 8px !important;
    overflow: visible !important;
  }

  body.admin-body .admin-navbar-head,
  body.admin-body.admin-sidebar-collapsed .admin-navbar-head {
    justify-content: flex-start !important;
    height: 42px !important;
    min-height: 42px !important;
  }

  body.admin-body .admin-navbar .brand,
  body.admin-body .admin-navbar .logo-brand,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .brand,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .logo-brand {
    height: 42px !important;
    min-height: 42px !important;
  }

  body.admin-body .admin-navbar .brand-logo,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .brand-logo {
    max-width: 72px !important;
    max-height: 24px !important;
  }

  body.admin-body .admin-navbar .admin-nav,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav {
    display: flex !important;
    grid-template-columns: none !important;
    justify-content: flex-start !important;
    gap: 6px !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 1px !important;
    overflow-x: auto !important;
    overflow-y: visible !important;
    scrollbar-width: none !important;
  }

  body.admin-body .admin-navbar .admin-nav::-webkit-scrollbar,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav::-webkit-scrollbar {
    display: none !important;
  }

  body.admin-body .admin-navbar .admin-nav > a,
  body.admin-body .admin-navbar .admin-nav-group,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 0 !important;
  }

  body.admin-body .admin-navbar .admin-nav > a,
  body.admin-body .admin-navbar .admin-nav-group > summary,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
    width: auto !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 10px !important;
    font-size: 10px !important;
  }

  body.admin-body .admin-navbar .admin-nav-external {
    margin-left: 0 !important;
  }

  body.admin-body .admin-navbar .admin-nav-group > summary b,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary b {
    display: grid !important;
    width: 14px !important;
    height: 14px !important;
  }

  body.admin-body .admin-navbar .admin-nav-submenu,
  body.admin-body .admin-navbar .admin-nav-group[open] .admin-nav-submenu,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-submenu,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group[open] .admin-nav-submenu {
    top: 72px !important;
  }
}

@media (max-width: 360px) {
  body.admin-body .admin-navbar,
  body.admin-body.admin-sidebar-collapsed .admin-navbar {
    grid-template-columns: 68px minmax(0, 1fr) !important;
  }

  body.admin-body .admin-navbar .brand-logo,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .brand-logo {
    max-width: 64px !important;
  }
}

/* Admin nav group labels: avoid cramped plus signs over Marketing/Tienda. */
body.admin-body .admin-navbar .admin-nav-group > summary,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
  min-width: 114px !important;
}

body.admin-body .admin-navbar .admin-nav-group > summary b,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary b {
  display: none !important;
}

body.admin-body .admin-navbar .admin-nav-group > summary .admin-nav-text,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary .admin-nav-text {
  white-space: nowrap !important;
  transform: none !important;
}

@media (max-width: 760px) {
  body.admin-body .admin-navbar .admin-nav-group > summary,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
    min-width: 96px !important;
  }
}

/* Admin navbar text refinement: centered, softer weight, no clipped labels. */
body.admin-body .admin-navbar .admin-nav > a,
body.admin-body .admin-navbar .admin-nav-group > summary,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary,
body.admin-body .admin-navbar .admin-nav-submenu a,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-submenu a {
  justify-content: center !important;
  text-align: center !important;
  font-weight: 500 !important;
}

body.admin-body .admin-navbar .admin-nav-group > summary,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
  min-width: 124px !important;
}

body.admin-body .admin-navbar .admin-nav-text,
body.admin-body .admin-navbar .admin-nav-group > summary .admin-nav-text,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-text,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary .admin-nav-text {
  display: inline-flex !important;
  flex: 0 0 auto !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  overflow: visible !important;
  text-align: center !important;
  text-overflow: clip !important;
  white-space: nowrap !important;
  font-weight: 500 !important;
}

body.admin-body .admin-navbar .admin-nav-icon,
body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-icon {
  position: static !important;
  display: grid !important;
  flex: 0 0 18px !important;
  width: 18px !important;
  min-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  margin: 0 !important;
  transform: none !important;
  color: currentColor !important;
}

@media (max-width: 760px) {
  body.admin-body .admin-navbar .admin-nav-group > summary,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary {
    min-width: 106px !important;
  }
}

/* Admin stock mobile polish: lighter typography and compact product rows. */
@media (max-width: 760px) {
  body.admin-body .orders-header {
    gap: 14px !important;
    margin: 18px 0 22px !important;
    padding: 0 2px !important;
  }

  body.admin-body .orders-header .eyebrow {
    margin-bottom: 4px !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.12em !important;
    font-weight: 500 !important;
  }

  body.admin-body .orders-header h1 {
    margin: 0 0 8px !important;
    font-family: "Poppins", Arial, sans-serif !important;
    font-size: 22px !important;
    line-height: 1.12 !important;
    letter-spacing: 0 !important;
    font-weight: 400 !important;
  }

  body.admin-body .orders-header p:not(.eyebrow) {
    max-width: 100% !important;
    font-size: 12.5px !important;
    line-height: 1.4 !important;
    font-weight: 400 !important;
  }

  body.admin-body .stock-board {
    margin: 0 !important;
  }

  body.admin-body .stock-table-panel {
    overflow: hidden !important;
    border-radius: 16px !important;
  }

  body.admin-body .stock-table-panel,
  body.admin-body .stock-table-panel * {
    font-weight: 400 !important;
  }

  body.admin-body .stock-table-panel .section-head,
  body.admin-body .stock-table-panel .section-head.compact {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 14px 14px 12px !important;
  }

  body.admin-body .stock-table-panel .section-head h2 {
    max-width: 180px !important;
    margin: 0 !important;
    font-family: "Poppins", Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 1.08 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    font-weight: 400 !important;
  }

  body.admin-body .stock-table-panel .section-head a {
    font-size: 11px !important;
    line-height: 1.15 !important;
    text-align: right !important;
    font-weight: 400 !important;
  }

  body.admin-body main .stock-table-panel table {
    display: table !important;
    width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
  }

  body.admin-body main .stock-table-panel table thead {
    display: table-header-group !important;
  }

  body.admin-body main .stock-table-panel table tbody {
    display: table-row-group !important;
  }

  body.admin-body main .stock-table-panel table tr {
    display: table-row !important;
  }

  body.admin-body main .stock-table-panel table th,
  body.admin-body main .stock-table-panel table td {
    display: table-cell !important;
    padding: 7px 4px !important;
    font-size: 10px !important;
    line-height: 1.18 !important;
    font-weight: 400 !important;
    vertical-align: middle !important;
    border-bottom: 1px solid var(--theme-tint) !important;
    background: transparent !important;
  }

  body.admin-body main .stock-table-panel table th {
    color: var(--theme-primary-text) !important;
    font-size: 8px !important;
    line-height: 1.1 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    font-weight: 500 !important;
  }

  body.admin-body main .stock-table-panel table th:nth-child(1),
  body.admin-body main .stock-table-panel table td:nth-child(1) {
    width: 36% !important;
  }

  body.admin-body main .stock-table-panel table th:nth-child(2),
  body.admin-body main .stock-table-panel table td:nth-child(2) {
    width: 20% !important;
  }

  body.admin-body main .stock-table-panel table th:nth-child(3),
  body.admin-body main .stock-table-panel table td:nth-child(3) {
    width: 16% !important;
  }

  body.admin-body main .stock-table-panel table th:nth-child(4),
  body.admin-body main .stock-table-panel table td:nth-child(4) {
    width: 20% !important;
  }

  body.admin-body main .stock-table-panel table th:nth-child(5),
  body.admin-body main .stock-table-panel table td:nth-child(5) {
    width: 8% !important;
  }

  body.admin-body main .stock-table-panel table td::before,
  body.admin-body main .stock-table-panel table td[data-label]::before {
    content: none !important;
    display: none !important;
  }

  body.admin-body main .stock-table-panel td[data-label="Producto"] {
    display: table-cell !important;
    color: #17101a !important;
    font-size: 0 !important;
    white-space: normal !important;
  }

  body.admin-body main .stock-table-panel td[data-label="Producto"] .thumb {
    display: inline-block !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    max-width: 46px !important;
    margin: 0 6px 0 0 !important;
    border-radius: 10px !important;
    object-fit: cover !important;
    vertical-align: middle !important;
  }

  body.admin-body main .stock-table-panel .stock-product-name {
    display: inline-block !important;
    width: calc(100% - 56px) !important;
    max-width: calc(100% - 56px) !important;
    color: #1a101c !important;
    font-size: 10.5px !important;
    line-height: 1.12 !important;
    font-weight: 400 !important;
    vertical-align: middle !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    display: -webkit-inline-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
  }

  body.admin-body main .stock-table-panel td[data-label="Categoria"] {
    color: #4d4054 !important;
    font-size: 10px !important;
  }

  body.admin-body main .stock-table-panel .stock-badge {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 0 !important;
    padding: 4px 5px !important;
    border-radius: 999px !important;
    font-size: 8.5px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
  }

  body.admin-body main .stock-inline-form {
    display: inline-grid !important;
    grid-template-columns: 34px 30px !important;
    align-items: center !important;
    gap: 4px !important;
    width: auto !important;
  }

  body.admin-body main .stock-inline-form input {
    width: 34px !important;
    min-width: 34px !important;
    height: 30px !important;
    padding: 0 !important;
    border-radius: 11px !important;
    font-size: 10px !important;
    line-height: 30px !important;
    text-align: center !important;
    font-weight: 400 !important;
  }

  body.admin-body main .stock-inline-form button {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    padding: 0 !important;
    border-radius: 11px !important;
    font-size: 0 !important;
  }

  body.admin-body main .stock-inline-form button svg,
  body.admin-body main .stock-inline-form button i {
    width: 13px !important;
    height: 13px !important;
    font-size: 13px !important;
  }

  body.admin-body main .stock-table-panel .table-actions {
    display: table-cell !important;
    text-align: center !important;
  }

  body.admin-body main .stock-table-panel .action-icon {
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    border-radius: 999px !important;
  }

  body.admin-body main .stock-table-panel .action-icon svg,
  body.admin-body main .stock-table-panel .action-icon i {
    width: 13px !important;
    height: 13px !important;
    font-size: 13px !important;
  }
}

@media (max-width: 760px) {
  body.admin-body .admin-navbar .admin-nav > a,
  body.admin-body .admin-navbar .admin-nav-group > summary,
  body.admin-body .admin-navbar .admin-nav-text,
  body.admin-body .admin-navbar .admin-nav-group > summary .admin-nav-text,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav > a,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-text,
  body.admin-body.admin-sidebar-collapsed .admin-navbar .admin-nav-group > summary .admin-nav-text {
    font-weight: 400 !important;
  }
}

@media (max-width: 390px) {
  body.admin-body .stock-table-panel .section-head h2 {
    max-width: 150px !important;
    font-size: 18px !important;
  }

  body.admin-body main .stock-table-panel table th,
  body.admin-body main .stock-table-panel table td {
    padding: 6px 3px !important;
    font-size: 9px !important;
  }

  body.admin-body main .stock-table-panel table th {
    font-size: 7px !important;
    letter-spacing: 0.04em !important;
  }

  body.admin-body main .stock-table-panel td[data-label="Producto"] .thumb {
    width: 38px !important;
    height: 38px !important;
    min-width: 38px !important;
    max-width: 38px !important;
    margin-right: 5px !important;
  }

  body.admin-body main .stock-table-panel .stock-product-name {
    width: calc(100% - 46px) !important;
    max-width: calc(100% - 46px) !important;
    font-size: 9px !important;
    line-height: 1.1 !important;
  }

  body.admin-body main .stock-inline-form {
    grid-template-columns: 30px 26px !important;
    gap: 3px !important;
  }

  body.admin-body main .stock-inline-form input,
  body.admin-body main .stock-inline-form button {
    width: 26px !important;
    min-width: 26px !important;
    height: 26px !important;
    border-radius: 9px !important;
  }

  body.admin-body main .stock-inline-form input {
    font-size: 9px !important;
  }
}

/* Admin history mobile: centered rows and date/time on two clear lines. */
@media (max-width: 760px) {
  body.admin-body main .history-orders-table {
    width: 100% !important;
    overflow: hidden !important;
  }

  body.admin-body main .history-orders-head,
  body.admin-body main .history-orders-row {
    grid-template-columns: 58px 64px 64px minmax(92px, 1fr) 68px 70px !important;
    align-items: center !important;
    justify-items: center !important;
    text-align: center !important;
    column-gap: 4px !important;
  }

  body.admin-body main .history-orders-head strong,
  body.admin-body main .history-orders-row > div {
    display: grid !important;
    place-items: center !important;
    justify-content: center !important;
    align-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    padding-left: 2px !important;
    padding-right: 2px !important;
    text-align: center !important;
  }

  body.admin-body main .history-orders-row > div::before {
    content: none !important;
    display: none !important;
  }

  body.admin-body main .history-orders-row > [data-mobile-label="#Pedido"] strong,
  body.admin-body main .history-orders-row > [data-mobile-label="Tipo de Entrega"],
  body.admin-body main .history-orders-row > [data-mobile-label="Cliente"],
  body.admin-body main .history-orders-row > [data-mobile-label="Producto"],
  body.admin-body main .history-orders-row > [data-mobile-label="Precio"],
  body.admin-body main .history-orders-row > [data-mobile-label="Fecha"] {
    text-align: center !important;
    justify-content: center !important;
  }

  body.admin-body main .history-orders-row > [data-mobile-label="Producto"] {
    gap: 2px !important;
  }

  body.admin-body main .history-product-thumbs {
    display: none !important;
  }

  body.admin-body main .history-product-text {
    display: grid !important;
    justify-items: center !important;
    align-items: center !important;
    gap: 1px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
  }

  body.admin-body main .history-product-text span {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    color: #25162c !important;
    font-size: 8.6px !important;
    line-height: 1.08 !important;
    text-align: center !important;
    overflow-wrap: anywhere !important;
  }

  body.admin-body main .history-money,
  body.admin-body main .history-orders-row [data-mobile-label="Precio"] strong {
    display: block !important;
    width: 100% !important;
    font-size: 9px !important;
    line-height: 1.1 !important;
    text-align: center !important;
    white-space: normal !important;
  }

  body.admin-body main .history-date-cell {
    display: grid !important;
    justify-items: center !important;
    align-items: center !important;
    gap: 2px !important;
    text-align: center !important;
    white-space: normal !important;
  }

  body.admin-body main .history-date-cell span,
  body.admin-body main .history-date-cell small {
    display: block !important;
    width: 100% !important;
    color: #25162c !important;
    font-size: 8.6px !important;
    line-height: 1.08 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 390px) {
  body.admin-body main .history-orders-head,
  body.admin-body main .history-orders-row {
    grid-template-columns: 42px 52px 54px minmax(84px, 1fr) 56px 58px !important;
    column-gap: 2px !important;
  }

  body.admin-body main .history-orders-head strong {
    font-size: 6.5px !important;
    letter-spacing: 0.02em !important;
  }

  body.admin-body main .history-orders-row > div,
  body.admin-body main .history-orders-row > [data-mobile-label="#Pedido"] strong,
  body.admin-body main .history-product-text span,
  body.admin-body main .history-money,
  body.admin-body main .history-orders-row [data-mobile-label="Precio"] strong,
  body.admin-body main .history-date-cell span,
  body.admin-body main .history-date-cell small {
    font-size: 7.4px !important;
    line-height: 1.08 !important;
  }
}

/* Admin stock mobile final row alignment. */
@media (max-width: 760px) {
  body.admin-body main .stock-table-panel table th,
  body.admin-body main .stock-table-panel table td {
    text-align: center !important;
    vertical-align: middle !important;
  }

  body.admin-body main .stock-table-panel td[data-label="Producto"] {
    text-align: left !important;
  }

  body.admin-body main .stock-table-panel .stock-product-name,
  body.admin-body main .stock-table-panel td[data-label="Categoria"] {
    font-size: 10px !important;
    line-height: 1.12 !important;
    font-weight: 400 !important;
  }

  body.admin-body main .stock-table-panel td[data-label="Categoria"],
  body.admin-body main .stock-table-panel td[data-label="Estado"],
  body.admin-body main .stock-table-panel td[data-label="Stock"],
  body.admin-body main .stock-table-panel td[data-label="Acciones"] {
    text-align: center !important;
  }

  body.admin-body main .stock-table-panel .stock-badge {
    margin: 0 auto !important;
  }

  body.admin-body main .stock-inline-form {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: auto !important;
    margin: 0 auto !important;
  }

  body.admin-body main .stock-inline-form input {
    display: block !important;
    width: 38px !important;
    min-width: 38px !important;
    height: 36px !important;
    padding: 0 !important;
    line-height: 36px !important;
    text-align: center !important;
  }

  body.admin-body main .stock-inline-form button,
  body.admin-body main .stock-table-panel .action-icon {
    display: inline-grid !important;
    place-items: center !important;
    align-items: center !important;
    justify-items: center !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
    line-height: 1 !important;
    text-align: center !important;
  }

  body.admin-body main .stock-inline-form button svg,
  body.admin-body main .stock-inline-form button i,
  body.admin-body main .stock-inline-form button .fa,
  body.admin-body main .stock-inline-form button .fa-solid,
  body.admin-body main .stock-table-panel .action-icon svg,
  body.admin-body main .stock-table-panel .action-icon i,
  body.admin-body main .stock-table-panel .action-icon .fa,
  body.admin-body main .stock-table-panel .action-icon .fa-solid {
    position: static !important;
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 14px !important;
    text-align: center !important;
    transform: none !important;
  }
}

@media (max-width: 390px) {
  body.admin-body main .stock-table-panel .stock-product-name,
  body.admin-body main .stock-table-panel td[data-label="Categoria"] {
    font-size: 9px !important;
    line-height: 1.1 !important;
  }

  body.admin-body main .stock-inline-form {
    gap: 4px !important;
  }

  body.admin-body main .stock-inline-form input {
    width: 32px !important;
    min-width: 32px !important;
    height: 32px !important;
    line-height: 32px !important;
  }

  body.admin-body main .stock-inline-form button,
  body.admin-body main .stock-table-panel .action-icon {
    width: 32px !important;
    min-width: 32px !important;
    height: 32px !important;
    min-height: 32px !important;
  }
}

@media (max-width: 760px) {
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Producto"] .stock-product-name,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Categoria"] {
    font-size: 10px !important;
    line-height: 1.12 !important;
    font-weight: 400 !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Stock"] .stock-inline-form button,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Acciones"] .action-icon {
    display: grid !important;
    place-items: center !important;
    align-items: center !important;
    justify-items: center !important;
    width: 36px !important;
    min-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 0 !important;
    line-height: 1 !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Stock"] .stock-inline-form button > *,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Acciones"] .action-icon > * {
    position: static !important;
    display: block !important;
    margin: 0 !important;
    line-height: 1 !important;
    transform: none !important;
  }
}

@media (max-width: 390px) {
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Producto"] .stock-product-name,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Categoria"] {
    font-size: 9px !important;
    line-height: 1.1 !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Stock"] .stock-inline-form button,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Acciones"] .action-icon {
    width: 32px !important;
    min-width: 32px !important;
    height: 32px !important;
    min-height: 32px !important;
  }
}

/* Admin mobile final: remove decorative header action buttons and normalize product-column text. */
@media (max-width: 760px) {
  html body.admin-body main.admin-main > header.orders-header > .button,
  html body.admin-body main.admin-main > header.admin-top > .button,
  html body.admin-body main.orders-screen > header.orders-header > .button,
  html body.admin-body main.orders-screen > header.admin-top > .button,
  html body.admin-body main.module-screen > header.orders-header > .button,
  html body.admin-body main.module-screen > header.admin-top > .button {
    display: none !important;
  }

  html body.admin-body main .client-ledger-row > div,
  html body.admin-body main.orders-screen .history-orders-board .history-orders-row > div {
    font-size: 8.2px !important;
    line-height: 1.1 !important;
    font-weight: 400 !important;
    text-align: center !important;
  }

  html body.admin-body main .client-ledger-row .client-product-lines,
  html body.admin-body main.orders-screen .history-orders-board .history-orders-row > [data-mobile-label="Producto"] {
    display: grid !important;
    place-items: center !important;
    justify-items: center !important;
    align-content: center !important;
    gap: 1px !important;
    text-align: center !important;
  }

  html body.admin-body main .client-ledger-row .client-product-lines span,
  html body.admin-body main .client-ledger-row .client-product-lines small,
  html body.admin-body main.orders-screen .history-orders-board .history-product-text,
  html body.admin-body main.orders-screen .history-orders-board .history-product-text > span {
    font-size: 8.2px !important;
    line-height: 1.1 !important;
    font-weight: 400 !important;
    text-align: center !important;
    letter-spacing: 0 !important;
  }

  html body.admin-body main .client-ledger-row [data-mobile-label="Precio"] strong,
  html body.admin-body main.orders-screen .history-orders-board .history-orders-row .history-money,
  html body.admin-body main.orders-screen .history-orders-board .history-orders-row .history-date-cell span,
  html body.admin-body main.orders-screen .history-orders-board .history-orders-row .history-date-cell small {
    font-size: 8.2px !important;
    line-height: 1.1 !important;
    font-weight: 400 !important;
  }
}

@media (max-width: 390px) {
  html body.admin-body main .client-ledger-row > div,
  html body.admin-body main .client-ledger-row .client-product-lines span,
  html body.admin-body main .client-ledger-row .client-product-lines small,
  html body.admin-body main .client-ledger-row [data-mobile-label="Precio"] strong,
  html body.admin-body main.orders-screen .history-orders-board .history-orders-row > div,
  html body.admin-body main.orders-screen .history-orders-board .history-product-text,
  html body.admin-body main.orders-screen .history-orders-board .history-product-text > span,
  html body.admin-body main.orders-screen .history-orders-board .history-orders-row .history-money,
  html body.admin-body main.orders-screen .history-orders-board .history-orders-row .history-date-cell span,
  html body.admin-body main.orders-screen .history-orders-board .history-orders-row .history-date-cell small {
    font-size: 7.2px !important;
    line-height: 1.08 !important;
  }
}

/* Admin stock mobile ultra compact rows: smaller text and controls. */
@media (max-width: 760px) {
  html body.admin-body main.admin-main .stock-board .stock-table-panel table {
    table-layout: fixed !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr {
    height: auto !important;
    min-height: 46px !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table th,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table td {
    padding: 4px 2px !important;
    font-size: 7px !important;
    line-height: 1.08 !important;
    vertical-align: middle !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table th:nth-child(1),
  html body.admin-body main.admin-main .stock-board .stock-table-panel table td:nth-child(1) {
    width: 34% !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table th:nth-child(2),
  html body.admin-body main.admin-main .stock-board .stock-table-panel table td:nth-child(2) {
    width: 19% !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table th:nth-child(3),
  html body.admin-body main.admin-main .stock-board .stock-table-panel table td:nth-child(3) {
    width: 15% !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table th:nth-child(4),
  html body.admin-body main.admin-main .stock-board .stock-table-panel table td:nth-child(4) {
    width: 22% !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table th:nth-child(5),
  html body.admin-body main.admin-main .stock-board .stock-table-panel table td:nth-child(5) {
    width: 10% !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Producto"] .thumb {
    width: 30px !important;
    min-width: 30px !important;
    max-width: 30px !important;
    height: 30px !important;
    margin-right: 4px !important;
    border-radius: 7px !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Producto"] .stock-product-name,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Categoria"] {
    color: #25162c !important;
    font-size: 7px !important;
    line-height: 1.08 !important;
    font-weight: 400 !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Producto"] .stock-product-name {
    width: calc(100% - 38px) !important;
    max-width: calc(100% - 38px) !important;
    -webkit-line-clamp: 3 !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Estado"] .stock-badge {
    padding: 2px 4px !important;
    font-size: 6.5px !important;
    line-height: 1 !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Stock"] .stock-inline-form {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    margin: 0 auto !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Stock"] .stock-inline-form input {
    width: 27px !important;
    min-width: 27px !important;
    height: 27px !important;
    padding: 0 !important;
    border-radius: 9px !important;
    font-size: 7px !important;
    line-height: 27px !important;
    text-align: center !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Stock"] .stock-inline-form button,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Acciones"] .action-icon {
    width: 27px !important;
    min-width: 27px !important;
    height: 27px !important;
    min-height: 27px !important;
    border-radius: 9px !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Stock"] .stock-inline-form button svg,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Stock"] .stock-inline-form button i,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Acciones"] .action-icon svg,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Acciones"] .action-icon i {
    width: 11px !important;
    height: 11px !important;
    font-size: 11px !important;
    line-height: 11px !important;
  }
}

@media (max-width: 390px) {
  html body.admin-body main.admin-main .stock-board .stock-table-panel table th,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table td,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Producto"] .stock-product-name,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Categoria"] {
    font-size: 6.5px !important;
    line-height: 1.06 !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Producto"] .thumb {
    width: 26px !important;
    min-width: 26px !important;
    max-width: 26px !important;
    height: 26px !important;
    margin-right: 3px !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Producto"] .stock-product-name {
    width: calc(100% - 32px) !important;
    max-width: calc(100% - 32px) !important;
  }

  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Stock"] .stock-inline-form input,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Stock"] .stock-inline-form button,
  html body.admin-body main.admin-main .stock-board .stock-table-panel table tbody tr td[data-label="Acciones"] .action-icon {
    width: 24px !important;
    min-width: 24px !important;
    height: 24px !important;
    min-height: 24px !important;
    border-radius: 8px !important;
  }
}

/* Admin clients mobile ultra compact: five columns plus full-width action button. */
@media (max-width: 760px) {
  html body.admin-body main.admin-main .client-ledger-list {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    overflow-y: visible !important;
  }

  html body.admin-body main.admin-main .client-ledger-card {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  html body.admin-body main.admin-main .client-ledger-table {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  html body.admin-body main.admin-main .client-ledger-head,
  html body.admin-body main.admin-main .client-ledger-row {
    display: grid !important;
    grid-template-columns: 28px 64px 56px minmax(82px, 1fr) 48px !important;
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 2px !important;
    align-items: center !important;
    justify-items: center !important;
    box-sizing: border-box !important;
  }

  html body.admin-body main.admin-main .client-ledger-head strong:nth-child(6) {
    display: none !important;
  }

  html body.admin-body main.admin-main .client-ledger-head strong,
  html body.admin-body main.admin-main .client-ledger-row > div {
    min-width: 0 !important;
    width: 100% !important;
    padding: 3px 1px !important;
    font-size: 6.8px !important;
    line-height: 1.06 !important;
    font-weight: 400 !important;
    text-align: center !important;
    overflow-wrap: anywhere !important;
  }

  html body.admin-body main.admin-main .client-ledger-row {
    min-height: 0 !important;
    padding: 5px 4px !important;
    row-gap: 5px !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > div::before {
    content: none !important;
    display: none !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > [data-mobile-label="Fecha"] {
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > div:first-child strong,
  html body.admin-body main.admin-main .client-ledger-row [data-mobile-label="Precio"] strong,
  html body.admin-body main.admin-main .client-product-lines span,
  html body.admin-body main.admin-main .client-product-lines small {
    font-size: 6.8px !important;
    line-height: 1.06 !important;
    font-weight: 400 !important;
    text-align: center !important;
  }

  html body.admin-body main.admin-main .client-product-lines {
    display: grid !important;
    width: 100% !important;
    max-width: 100% !important;
    justify-items: center !important;
    align-content: center !important;
    gap: 1px !important;
    text-align: center !important;
  }

  html body.admin-body main.admin-main .client-product-lines span,
  html body.admin-body main.admin-main .client-product-lines small {
    display: block !important;
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > [data-mobile-label="Ver pedido completo"] {
    grid-column: 1 / -1 !important;
    display: grid !important;
    justify-items: stretch !important;
    align-items: center !important;
    width: 100% !important;
    inline-size: 100% !important;
    padding: 2px 0 0 !important;
  }

  html body.admin-body main.admin-main .client-ledger-detail {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 34px !important;
    min-height: 34px !important;
    margin: 0 !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 8px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    text-align: center !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > div[data-mobile-label="Ver pedido completo"] > button.client-ledger-detail {
    justify-self: stretch !important;
    width: calc(100vw - 58px) !important;
    inline-size: calc(100vw - 58px) !important;
    max-width: none !important;
    min-width: calc(100vw - 58px) !important;
    min-inline-size: calc(100vw - 58px) !important;
    flex: 1 1 auto !important;
  }
}

@media (max-width: 390px) {
  html body.admin-body main.admin-main .client-ledger-head,
  html body.admin-body main.admin-main .client-ledger-row {
    grid-template-columns: 24px 58px 46px minmax(78px, 1fr) 40px !important;
    gap: 1px !important;
  }

  html body.admin-body main.admin-main .client-ledger-head strong,
  html body.admin-body main.admin-main .client-ledger-row > div,
  html body.admin-body main.admin-main .client-ledger-row > div:first-child strong,
  html body.admin-body main.admin-main .client-ledger-row [data-mobile-label="Precio"] strong,
  html body.admin-body main.admin-main .client-product-lines span,
  html body.admin-body main.admin-main .client-product-lines small {
    font-size: 6.3px !important;
    line-height: 1.05 !important;
  }

  html body.admin-body main.admin-main .client-ledger-detail {
    justify-self: stretch !important;
    width: calc(100vw - 58px) !important;
    inline-size: calc(100vw - 58px) !important;
    max-width: none !important;
    min-width: calc(100vw - 58px) !important;
    min-inline-size: calc(100vw - 58px) !important;
    height: 32px !important;
    min-height: 32px !important;
    font-size: 7.4px !important;
  }
}

/* Admin mobile: show useful add buttons as compact text pills and make modals denser. */
@media (max-width: 760px) {
  html body.admin-body main.admin-main > header.orders-header > .button,
  html body.admin-body main.admin-main > header.admin-top > .button,
  html body.admin-body main.orders-screen > header.orders-header > .button,
  html body.admin-body main.orders-screen > header.admin-top > .button,
  html body.admin-body main.module-screen > header.orders-header > .button,
  html body.admin-body main.module-screen > header.admin-top > .button,
  html body.admin-body .orders-actions [data-open-manual-order],
  html body.admin-body .orders-actions [data-select-print-cards],
  html body.admin-body .orders-actions [data-print-cards] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    text-align: center !important;
    white-space: nowrap !important;
  }

  html body.admin-body main.admin-main > header.orders-header > .button::before,
  html body.admin-body main.admin-main > header.admin-top > .button::before,
  html body.admin-body main.orders-screen > header.orders-header > .button::before,
  html body.admin-body main.orders-screen > header.admin-top > .button::before,
  html body.admin-body main.module-screen > header.orders-header > .button::before,
  html body.admin-body main.module-screen > header.admin-top > .button::before,
  html body.admin-body .orders-actions .button::before {
    content: none !important;
    display: none !important;
  }

  html body.admin-body .orders-header,
  html body.admin-body .admin-top {
    align-items: flex-start !important;
    gap: 8px !important;
  }

  html body.admin-body .orders-header > div,
  html body.admin-body .admin-top > div {
    min-width: 0 !important;
  }

  html body.admin-body .orders-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
  }

  html body.admin-body main.admin-main > header.orders-header > .button b,
  html body.admin-body main.admin-main > header.admin-top > .button b,
  html body.admin-body main.orders-screen > header.orders-header > .button b,
  html body.admin-body main.orders-screen > header.admin-top > .button b,
  html body.admin-body main.module-screen > header.orders-header > .button b,
  html body.admin-body main.module-screen > header.admin-top > .button b {
    display: inline-grid !important;
    place-items: center !important;
    width: 14px !important;
    height: 14px !important;
    margin-left: 5px !important;
    border-radius: 999px !important;
    font-size: 10px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
  }

  html body.admin-body .client-order-modal,
  html body.admin-body .dedication-modal,
  html body.admin-body .product-detail-modal,
  html body.admin-body .status-modal,
  html body.admin-body .order-info-modal,
  html body.admin-body .manual-order-modal,
  html body.admin-body .admin-form-modal {
    padding: 6px !important;
    align-items: flex-start !important;
  }

  html body.admin-body .client-order-modal-card,
  html body.admin-body .dedication-modal-card,
  html body.admin-body .product-detail-modal-card,
  html body.admin-body .status-modal-card,
  html body.admin-body .order-info-modal-card,
  html body.admin-body .manual-order-modal-card,
  html body.admin-body .admin-form-modal .admin-modal-form {
    width: min(100%, 420px) !important;
    max-height: calc(100dvh - 12px) !important;
    margin: 0 auto !important;
    padding: 10px !important;
    border-radius: 14px !important;
    overflow-y: auto !important;
    scrollbar-width: thin !important;
  }

  html body.admin-body .admin-form-modal .admin-modal-form {
    display: grid !important;
    gap: 7px !important;
  }

  html body.admin-body .client-order-modal-card > header,
  html body.admin-body .dedication-modal-card > header,
  html body.admin-body .product-detail-modal-card > header,
  html body.admin-body .status-modal-card > header,
  html body.admin-body .order-info-modal-card > header,
  html body.admin-body .manual-order-modal-card > header,
  html body.admin-body .admin-modal-form > header {
    min-height: 0 !important;
    padding: 0 0 7px !important;
    gap: 8px !important;
  }

  html body.admin-body .client-order-modal-card h2,
  html body.admin-body .dedication-modal-card h2,
  html body.admin-body .product-detail-modal-card h2,
  html body.admin-body .status-modal-card h2,
  html body.admin-body .order-info-modal-card h2,
  html body.admin-body .manual-order-modal-card h2,
  html body.admin-body .admin-modal-form h2 {
    font-size: 16px !important;
    line-height: 1.08 !important;
    margin: 0 !important;
  }

  html body.admin-body .admin-modal-form label,
  html body.admin-body .admin-modal-form .admin-form-row,
  html body.admin-body .admin-modal-form .check-row,
  html body.admin-body .admin-modal-form .checkbox-row,
  html body.admin-body .manual-order-modal-card label,
  html body.admin-body .manual-order-modal-card .admin-form-row {
    gap: 4px !important;
    font-size: 9px !important;
    line-height: 1.1 !important;
  }

  html body.admin-body .admin-modal-form input,
  html body.admin-body .admin-modal-form select,
  html body.admin-body .admin-modal-form textarea,
  html body.admin-body .manual-order-modal-card input,
  html body.admin-body .manual-order-modal-card select,
  html body.admin-body .manual-order-modal-card textarea {
    min-height: 30px !important;
    height: 30px !important;
    padding: 5px 8px !important;
    border-radius: 10px !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
  }

  html body.admin-body .admin-modal-form textarea,
  html body.admin-body .manual-order-modal-card textarea {
    height: 54px !important;
    min-height: 54px !important;
    resize: vertical !important;
  }

  html body.admin-body .admin-modal-form input[type="file"] {
    height: auto !important;
    min-height: 30px !important;
    padding: 5px !important;
  }

  html body.admin-body .admin-form-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 6px !important;
  }

  html body.admin-body .admin-modal-form .button,
  html body.admin-body .admin-modal-form button[type="submit"],
  html body.admin-body .manual-order-modal-card .button,
  html body.admin-body .manual-order-modal-card button {
    min-height: 30px !important;
    height: 30px !important;
    padding: 0 10px !important;
    border-radius: 999px !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
  }

  html body.admin-body .admin-modal-close,
  html body.admin-body [data-close-manual-order],
  html body.admin-body [data-close-client-order],
  html body.admin-body [data-close-dedication],
  html body.admin-body [data-close-production-product],
  html body.admin-body [data-close-status-modal],
  html body.admin-body [data-close-order-info] {
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    min-height: 28px !important;
    font-size: 16px !important;
  }

  html body.admin-body .manual-order-steps {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 4px !important;
    margin: 0 0 8px !important;
  }

  html body.admin-body .manual-order-steps button {
    height: 30px !important;
    min-height: 30px !important;
    padding: 0 4px !important;
    font-size: 8px !important;
  }

  html body.admin-body .manual-order-step {
    gap: 6px !important;
  }

  html body.admin-body .manual-order-actions {
    gap: 6px !important;
    padding-top: 6px !important;
  }
}

/* Admin mobile modals final density pass for short phone screens. */
@media (max-width: 760px) and (max-height: 760px) {
  html body.admin-body .client-order-modal-card,
  html body.admin-body .dedication-modal-card,
  html body.admin-body .product-detail-modal-card,
  html body.admin-body .status-modal-card,
  html body.admin-body .order-info-modal-card,
  html body.admin-body .manual-order-modal-card,
  html body.admin-body .admin-form-modal .admin-modal-form {
    padding: 8px !important;
    max-height: calc(100dvh - 8px) !important;
  }

  html body.admin-body .client-order-modal-card h2,
  html body.admin-body .dedication-modal-card h2,
  html body.admin-body .product-detail-modal-card h2,
  html body.admin-body .status-modal-card h2,
  html body.admin-body .order-info-modal-card h2,
  html body.admin-body .manual-order-modal-card h2,
  html body.admin-body .admin-modal-form h2 {
    font-size: 14px !important;
  }

  html body.admin-body .admin-modal-form label,
  html body.admin-body .manual-order-modal-card label {
    font-size: 8.5px !important;
  }

  html body.admin-body .admin-modal-form input,
  html body.admin-body .admin-modal-form select,
  html body.admin-body .manual-order-modal-card input,
  html body.admin-body .manual-order-modal-card select {
    min-height: 28px !important;
    height: 28px !important;
    font-size: 9px !important;
  }

  html body.admin-body .admin-modal-form textarea,
  html body.admin-body .manual-order-modal-card textarea {
    height: 46px !important;
    min-height: 46px !important;
    font-size: 9px !important;
  }

  html body.admin-body .admin-modal-form .button,
  html body.admin-body .admin-modal-form button[type="submit"],
  html body.admin-body .manual-order-modal-card .button,
  html body.admin-body .manual-order-modal-card button {
    min-height: 28px !important;
    height: 28px !important;
    font-size: 8.5px !important;
  }
}

@media (max-width: 390px) {
  html body.admin-body main.admin-main > header.orders-header > .button,
  html body.admin-body main.admin-main > header.admin-top > .button,
  html body.admin-body main.orders-screen > header.orders-header > .button,
  html body.admin-body main.orders-screen > header.admin-top > .button,
  html body.admin-body main.module-screen > header.orders-header > .button,
  html body.admin-body main.module-screen > header.admin-top > .button {
    height: 28px !important;
    min-height: 28px !important;
    padding: 0 8px !important;
    font-size: 8px !important;
  }

  html body.admin-body .client-order-modal-card,
  html body.admin-body .dedication-modal-card,
  html body.admin-body .product-detail-modal-card,
  html body.admin-body .status-modal-card,
  html body.admin-body .order-info-modal-card,
  html body.admin-body .manual-order-modal-card,
  html body.admin-body .admin-form-modal .admin-modal-form {
    padding: 8px !important;
  }
}

/* Admin clients mobile order detail modal: compact read-only summary. */
@media (max-width: 760px) {
  html body.admin-body .client-order-modal {
    padding: 5px !important;
    align-items: flex-start !important;
    overflow: hidden !important;
  }

  html body.admin-body .client-order-modal-card {
    width: calc(100vw - 10px) !important;
    max-width: 430px !important;
    max-height: calc(100dvh - 10px) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
  }

  html body.admin-body .client-order-modal-card > header {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 7px 9px !important;
    min-height: 0 !important;
    border-bottom-color: var(--theme-tint) !important;
  }

  html body.admin-body .client-order-modal-card > header span {
    font-size: 7px !important;
    line-height: 1 !important;
    letter-spacing: .05em !important;
    font-weight: 400 !important;
  }

  html body.admin-body .client-order-modal-card h2 {
    margin-top: 1px !important;
    font-size: 18px !important;
    line-height: .95 !important;
  }

  html body.admin-body .client-order-modal-card [data-close-client-order] {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    min-height: 28px !important;
    border-radius: 999px !important;
    font-size: 16px !important;
    line-height: 1 !important;
  }

  html body.admin-body .client-order-modal-body {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 6px !important;
    max-height: calc(100dvh - 57px) !important;
    padding: 7px 8px 8px !important;
    overflow-y: auto !important;
    scrollbar-width: thin !important;
  }

  html body.admin-body .client-order-modal-products {
    gap: 5px !important;
  }

  html body.admin-body .client-order-modal-products article {
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr) !important;
    gap: 8px !important;
    padding: 7px !important;
    border-radius: 12px !important;
    box-shadow: none !important;
  }

  html body.admin-body .client-order-modal-products article > div {
    width: 58px !important;
    height: 58px !important;
    border-radius: 10px !important;
  }

  html body.admin-body .client-order-modal-products img {
    border-radius: 9px !important;
  }

  html body.admin-body .client-order-modal-products section {
    min-width: 0 !important;
  }

  html body.admin-body .client-order-modal-products h3 {
    margin: 0 0 1px !important;
    font-size: 14px !important;
    line-height: 1 !important;
  }

  html body.admin-body .client-order-modal-products small {
    display: block !important;
    font-size: 8px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
  }

  html body.admin-body .client-order-modal-products p {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    margin: 3px 0 !important;
    font-size: 9px !important;
    line-height: 1.15 !important;
  }

  html body.admin-body .client-order-modal-products footer {
    gap: 4px !important;
    margin-top: 4px !important;
  }

  html body.admin-body .client-order-modal-products footer span,
  html body.admin-body .client-order-modal-products footer strong {
    min-height: 18px !important;
    padding: 3px 6px !important;
    font-size: 7.5px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
  }

  html body.admin-body .client-order-modal-info {
    display: grid !important;
    grid-column: 1 !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 5px !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
  }

  html body.admin-body .client-order-modal-info p {
    display: grid !important;
    grid-template-columns: 1fr !important;
    align-content: center !important;
    gap: 2px !important;
    min-height: 41px !important;
    margin: 0 !important;
    padding: 6px 7px !important;
    border: 1px solid var(--theme-tint) !important;
    border-radius: 10px !important;
    background: #fff !important;
  }

  html body.admin-body .client-order-modal-info p.is-wide {
    grid-column: 1 / -1 !important;
    min-height: 0 !important;
  }

  html body.admin-body .client-order-modal-info span,
  html body.admin-body .client-order-modal-totals span,
  html body.admin-body .client-order-modal-note small {
    font-size: 6.7px !important;
    line-height: 1 !important;
    letter-spacing: .05em !important;
    font-weight: 400 !important;
  }

  html body.admin-body .client-order-modal-info strong,
  html body.admin-body .client-order-modal-totals strong {
    font-size: 8.6px !important;
    line-height: 1.12 !important;
    font-weight: 400 !important;
    overflow-wrap: anywhere !important;
  }

  html body.admin-body .client-order-modal-info strong em {
    display: block !important;
    margin-top: 1px !important;
    font-style: normal !important;
  }

  html body.admin-body .client-order-modal-note {
    grid-column: 1 !important;
    gap: 3px !important;
    padding: 7px 8px !important;
    border-radius: 10px !important;
  }

  html body.admin-body .client-order-modal-note[hidden] {
    display: none !important;
  }

  html body.admin-body .client-order-modal-note p {
    font-size: 8.8px !important;
    line-height: 1.2 !important;
    font-weight: 400 !important;
  }

  html body.admin-body .client-order-modal-totals {
    display: grid !important;
    grid-column: 1 !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    border-radius: 10px !important;
  }

  html body.admin-body .client-order-modal-totals p {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 2px !important;
    min-height: 34px !important;
    padding: 6px 7px !important;
    text-align: center !important;
  }
}

@media (max-width: 390px) {
  html body.admin-body .client-order-modal-info {
    gap: 4px !important;
  }

  html body.admin-body .client-order-modal-info p {
    min-height: 38px !important;
    padding: 5px 6px !important;
  }

  html body.admin-body .client-order-modal-info span,
  html body.admin-body .client-order-modal-totals span,
  html body.admin-body .client-order-modal-note small {
    font-size: 6.2px !important;
  }

  html body.admin-body .client-order-modal-info strong,
  html body.admin-body .client-order-modal-totals strong {
    font-size: 8px !important;
  }
}

/* Admin clients mobile ledger: keep row data aligned in columns, action centered below. */
@media (max-width: 760px) {
  html body.admin-body main.admin-main .client-ledger-title {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 5px 8px !important;
    align-items: center !important;
    padding: 9px 10px !important;
  }

  html body.admin-body main.admin-main .client-ledger-title h2 {
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
  }

  html body.admin-body main.admin-main .client-ledger-title p {
    grid-column: 1 / -1 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 8px !important;
    align-items: center !important;
    margin: 0 !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  html body.admin-body main.admin-main .client-ledger-title p span {
    min-width: 0 !important;
    max-width: 50% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 8.2px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
  }

  html body.admin-body main.admin-main .client-ledger-title > strong {
    justify-self: end !important;
    padding: 6px 9px !important;
    font-size: 9px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
  }

  html body.admin-body main.admin-main .client-ledger-table {
    display: block !important;
    padding: 0 !important;
    overflow: hidden !important;
    background: #fff !important;
  }

  html body.admin-body main.admin-main .client-ledger-head,
  html body.admin-body main.admin-main .client-ledger-row {
    display: grid !important;
    grid-template-columns: 34px 84px 70px minmax(92px, 1fr) 58px !important;
    gap: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    align-items: center !important;
    justify-items: center !important;
    box-sizing: border-box !important;
  }

  html body.admin-body main.admin-main .client-ledger-head {
    padding: 8px 8px !important;
    border-bottom: 1px solid var(--theme-border) !important;
    background: var(--theme-surface) !important;
  }

  html body.admin-body main.admin-main .client-ledger-head strong {
    display: block !important;
    width: 100% !important;
    padding: 0 1px !important;
    font-size: 7px !important;
    line-height: 1.05 !important;
    font-weight: 400 !important;
    letter-spacing: .02em !important;
    text-align: center !important;
    white-space: normal !important;
  }

  html body.admin-body main.admin-main .client-ledger-head strong:nth-child(6) {
    display: none !important;
  }

  html body.admin-body main.admin-main .client-ledger-row {
    min-height: 0 !important;
    padding: 8px 8px 9px !important;
    row-gap: 8px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--theme-border) !important;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > div {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 20px !important;
    padding: 0 1px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    color: #211727 !important;
    font-size: 7.4px !important;
    line-height: 1.08 !important;
    font-weight: 400 !important;
    text-align: center !important;
    overflow: hidden !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > div::before {
    content: none !important;
    display: none !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > div:first-child strong,
  html body.admin-body main.admin-main .client-ledger-row [data-mobile-label="Precio"] strong {
    font-size: 7.4px !important;
    line-height: 1.08 !important;
    font-weight: 400 !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > [data-mobile-label="Fecha"],
  html body.admin-body main.admin-main .client-ledger-row > [data-mobile-label="Tipo de entrega"],
  html body.admin-body main.admin-main .client-ledger-row > [data-mobile-label="Precio"] {
    white-space: nowrap !important;
  }

  html body.admin-body main.admin-main .client-product-lines {
    display: grid !important;
    justify-items: center !important;
    align-content: center !important;
    gap: 1px !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
  }

  html body.admin-body main.admin-main .client-product-lines span,
  html body.admin-body main.admin-main .client-product-lines small {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 7.4px !important;
    line-height: 1.08 !important;
    font-weight: 400 !important;
    text-align: center !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > [data-mobile-label="Ver pedido completo"] {
    grid-column: 1 / -1 !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    padding: 1px 0 0 !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > div[data-mobile-label="Ver pedido completo"] > button.client-ledger-detail,
  html body.admin-body main.admin-main .client-ledger-detail {
    justify-self: center !important;
    flex: 0 0 auto !important;
    width: calc(100vw - 72px) !important;
    inline-size: calc(100vw - 72px) !important;
    min-width: 0 !important;
    max-width: 330px !important;
    height: 31px !important;
    min-height: 31px !important;
    margin: 0 auto !important;
    padding: 0 12px !important;
    font-size: 8.5px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
  }
}

@media (max-width: 390px) {
  html body.admin-body main.admin-main .client-ledger-head,
  html body.admin-body main.admin-main .client-ledger-row {
    grid-template-columns: 30px 76px 58px minmax(82px, 1fr) 50px !important;
  }

  html body.admin-body main.admin-main .client-ledger-title p span {
    font-size: 7.5px !important;
  }

  html body.admin-body main.admin-main .client-ledger-head strong,
  html body.admin-body main.admin-main .client-ledger-row > div,
  html body.admin-body main.admin-main .client-ledger-row > div:first-child strong,
  html body.admin-body main.admin-main .client-ledger-row [data-mobile-label="Precio"] strong,
  html body.admin-body main.admin-main .client-product-lines span,
  html body.admin-body main.admin-main .client-product-lines small {
    font-size: 6.8px !important;
  }
}

/* Admin clients mobile receipt and simplified ledger columns. */
@media (max-width: 760px) {
  html body.admin-body main.admin-main .client-ledger-head,
  html body.admin-body main.admin-main .client-ledger-row {
    grid-template-columns: 34px minmax(92px, 1fr) 66px 78px !important;
  }

  html body.admin-body main.admin-main .client-ledger-head strong:nth-child(3),
  html body.admin-body main.admin-main .client-ledger-head strong:nth-child(4),
  html body.admin-body main.admin-main .client-ledger-row > [data-mobile-label="Tipo de entrega"],
  html body.admin-body main.admin-main .client-ledger-row > [data-mobile-label="Productos"] {
    display: none !important;
  }

  html body.admin-body main.admin-main .client-ledger-head strong:nth-child(6) {
    display: block !important;
    font-size: 0 !important;
  }

  html body.admin-body main.admin-main .client-ledger-head strong:nth-child(6)::after {
    content: "Pedido" !important;
    font-size: 7px !important;
    line-height: 1 !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > [data-mobile-label="Ver pedido completo"] {
    grid-column: auto !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    padding: 0 1px !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > div[data-mobile-label="Ver pedido completo"] > button.client-ledger-detail,
  html body.admin-body main.admin-main .client-ledger-detail {
    width: 70px !important;
    inline-size: 70px !important;
    max-width: 70px !important;
    height: 25px !important;
    min-height: 25px !important;
    padding: 0 6px !important;
    font-size: 7px !important;
  }

  html body.admin-body .client-order-modal-info p.receipt {
    cursor: pointer !important;
    border-color: var(--theme-border) !important;
    background: var(--theme-surface) !important;
  }

  html body.admin-body .client-order-modal-info p.receipt strong {
    color: var(--theme-primary-text) !important;
    text-decoration: underline !important;
    text-underline-offset: 2px !important;
  }

  html body.admin-body .client-receipt-modal {
    position: fixed !important;
    inset: 0 !important;
    z-index: 190 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 10px !important;
    background: rgba(33, 24, 34, .62) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity .18s ease !important;
  }

  html body.admin-body .client-receipt-modal.open {
    opacity: 1 !important;
    pointer-events: auto !important;
  }

  html body.admin-body .client-receipt-modal-card {
    width: min(100%, 390px) !important;
    max-height: calc(100dvh - 20px) !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    overflow: hidden !important;
    border: 1px solid var(--theme-tint) !important;
    border-radius: 14px !important;
    background: #fffdfb !important;
    box-shadow: 0 24px 70px rgba(var(--theme-heading-rgb), 0.28) !important;
  }

  html body.admin-body .client-receipt-modal-card > header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 9px 10px !important;
    border-bottom: 1px solid var(--theme-tint) !important;
  }

  html body.admin-body .client-receipt-modal-card span {
    color: var(--theme-primary-text) !important;
    font-size: 7px !important;
    line-height: 1 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
  }

  html body.admin-body .client-receipt-modal-card h2 {
    margin: 1px 0 0 !important;
    color: var(--theme-secondary-text) !important;
    font-size: 17px !important;
    line-height: 1 !important;
  }

  html body.admin-body [data-close-client-receipt] {
    display: grid !important;
    place-items: center !important;
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--theme-tint) !important;
    color: var(--theme-muted) !important;
    font-size: 16px !important;
  }

  html body.admin-body .client-receipt-modal-body {
    display: grid !important;
    place-items: center !important;
    gap: 8px !important;
    min-height: 0 !important;
    padding: 10px !important;
    overflow: auto !important;
  }

  html body.admin-body .client-receipt-modal-body img {
    display: block !important;
    max-width: 100% !important;
    max-height: calc(100dvh - 110px) !important;
    object-fit: contain !important;
    border-radius: 10px !important;
    box-shadow: 0 12px 34px rgba(var(--theme-heading-rgb), 0.16) !important;
  }

  html body.admin-body .client-receipt-modal-body iframe {
    width: 100% !important;
    height: min(70dvh, 560px) !important;
    border: 0 !important;
    border-radius: 10px !important;
    background: #fff !important;
  }
}

@media (max-width: 390px) {
  html body.admin-body main.admin-main .client-ledger-head,
  html body.admin-body main.admin-main .client-ledger-row {
    grid-template-columns: 30px minmax(92px, 1fr) 58px 68px !important;
  }

  html body.admin-body main.admin-main .client-ledger-row > div[data-mobile-label="Ver pedido completo"] > button.client-ledger-detail,
  html body.admin-body main.admin-main .client-ledger-detail {
    width: 62px !important;
    inline-size: 62px !important;
    max-width: 62px !important;
    font-size: 6.5px !important;
  }
}

/* Admin clients order detail: polished desktop modal and receipt overlay above it. */
html body.admin-body .client-order-modal {
  z-index: 170 !important;
  background: rgba(33, 24, 34, .62) !important;
  backdrop-filter: blur(4px) !important;
}

html body.admin-body .client-receipt-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 320 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 18px !important;
  background: rgba(33, 24, 34, .68) !important;
  backdrop-filter: blur(5px) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .18s ease !important;
}

html body.admin-body .client-receipt-modal.open {
  opacity: 1 !important;
  pointer-events: auto !important;
}

html body.admin-body .client-receipt-modal-card {
  width: min(760px, 100%) !important;
  max-height: calc(100dvh - 36px) !important;
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  overflow: hidden !important;
  border: 1px solid var(--theme-tint) !important;
  border-radius: 18px !important;
  background: #fffdfb !important;
  box-shadow: 0 28px 90px rgba(var(--theme-heading-rgb), 0.34) !important;
}

html body.admin-body .client-receipt-modal-card > header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 16px 18px !important;
  border-bottom: 1px solid var(--theme-tint) !important;
  background: linear-gradient(135deg, #fff, var(--theme-surface)) !important;
}

html body.admin-body .client-receipt-modal-card span {
  color: var(--theme-primary-text) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

html body.admin-body .client-receipt-modal-card h2 {
  margin: 4px 0 0 !important;
  color: var(--theme-secondary-text) !important;
  font-family: Cinzel, Georgia, serif !important;
  font-size: 30px !important;
  line-height: 1 !important;
}

html body.admin-body [data-close-client-receipt] {
  display: grid !important;
  place-items: center !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--theme-tint) !important;
  color: var(--theme-muted) !important;
  font-size: 22px !important;
  cursor: pointer !important;
}

html body.admin-body .client-receipt-modal-body {
  display: grid !important;
  place-items: center !important;
  gap: 12px !important;
  min-height: 0 !important;
  padding: 18px !important;
  overflow: auto !important;
  background: var(--theme-surface) !important;
}

html body.admin-body .client-receipt-modal-body img {
  display: block !important;
  max-width: 100% !important;
  max-height: calc(100dvh - 160px) !important;
  object-fit: contain !important;
  border-radius: 14px !important;
  box-shadow: 0 16px 42px rgba(var(--theme-heading-rgb), 0.18) !important;
}

html body.admin-body .client-receipt-modal-body iframe {
  width: 100% !important;
  height: min(72dvh, 680px) !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #fff !important;
}

html body.admin-body .client-order-modal-info p.receipt {
  grid-template-columns: 150px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  background: var(--theme-surface) !important;
}

html body.admin-body .client-order-modal-info p.receipt strong {
  color: #211727 !important;
  text-decoration: none !important;
}

html body.admin-body .client-receipt-open {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 30px !important;
  padding: 0 12px !important;
  border: 1px solid var(--theme-border) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: var(--theme-primary-text) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}

html body.admin-body .client-receipt-open:hover {
  background: var(--rose-strong) !important;
  color: var(--theme-on-primary) !important;
}

@media (min-width: 761px) {
  html body.admin-body .client-order-modal {
    padding: 20px !important;
  }

  html body.admin-body .client-order-modal-card {
    width: min(1180px, calc(100vw - 56px)) !important;
    max-height: calc(100dvh - 40px) !important;
    display: grid !important;
    grid-template-rows: auto minmax(0, 1fr) !important;
    border-radius: 20px !important;
    overflow: hidden !important;
  }

  html body.admin-body .client-order-modal-card > header {
    padding: 16px 22px !important;
  }

  html body.admin-body .client-order-modal-card h2 {
    font-size: 30px !important;
    line-height: 1 !important;
  }

  html body.admin-body .client-order-modal-body {
    grid-template-columns: minmax(430px, 1.08fr) minmax(420px, .92fr) !important;
    gap: 16px !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: auto !important;
    padding: 18px 22px 20px !important;
  }

  html body.admin-body .client-order-modal-products article {
    grid-template-columns: 92px minmax(0, 1fr) !important;
    gap: 14px !important;
    padding: 12px !important;
    border-radius: 16px !important;
    box-shadow: 0 14px 34px rgba(var(--theme-heading-rgb), 0.06) !important;
  }

  html body.admin-body .client-order-modal-products article > div {
    width: 92px !important;
    height: 92px !important;
  }

  html body.admin-body .client-order-modal-products h3 {
    font-size: 18px !important;
  }

  html body.admin-body .client-order-modal-products p {
    margin: 6px 0 !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
  }

  html body.admin-body .client-order-modal-info {
    border-radius: 16px !important;
  }

  html body.admin-body .client-order-modal-info p {
    min-height: 40px !important;
    padding: 9px 14px !important;
  }

  html body.admin-body .client-order-modal-note {
    padding: 12px 14px !important;
  }

  html body.admin-body .client-order-modal-totals {
    align-self: end !important;
  }
}

@media (max-width: 760px) {
  html body.admin-body .client-order-modal-info p.receipt {
    grid-template-columns: 1fr !important;
    gap: 4px !important;
  }

  html body.admin-body .client-receipt-open {
    width: 100% !important;
    min-height: 25px !important;
    font-size: 7px !important;
    font-weight: 400 !important;
  }
}

/* Admin mobile actions: fit edit/toggle/delete as three visible buttons. */
@media (max-width: 760px) {
  html body.admin-body main.admin-main .table-actions,
  html body.admin-body main.admin-main .district-actions,
  html body.admin-body main.module-screen .table-actions,
  html body.admin-body main.module-screen .district-actions,
  html body.admin-body main.orders-screen .table-actions,
  html body.admin-body main.orders-screen .district-actions {
    display: grid !important;
    grid-template-columns: repeat(3, 28px) !important;
    justify-content: center !important;
    justify-items: center !important;
    align-items: center !important;
    gap: 4px !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: visible !important;
    padding-inline: 0 !important;
  }

  html body.admin-body main.admin-main .table-actions form,
  html body.admin-body main.admin-main .district-actions form,
  html body.admin-body main.module-screen .table-actions form,
  html body.admin-body main.module-screen .district-actions form,
  html body.admin-body main.orders-screen .table-actions form,
  html body.admin-body main.orders-screen .district-actions form {
    display: contents !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  html body.admin-body main.admin-main .table-actions .action-icon,
  html body.admin-body main.admin-main .district-actions .action-icon,
  html body.admin-body main.module-screen .table-actions .action-icon,
  html body.admin-body main.module-screen .district-actions .action-icon,
  html body.admin-body main.orders-screen .table-actions .action-icon,
  html body.admin-body main.orders-screen .district-actions .action-icon {
    display: grid !important;
    place-items: center !important;
    width: 28px !important;
    min-width: 28px !important;
    max-width: 28px !important;
    height: 28px !important;
    min-height: 28px !important;
    max-height: 28px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 999px !important;
    flex: 0 0 28px !important;
    overflow: visible !important;
  }

  html body.admin-body main.admin-main .table-actions .action-icon svg,
  html body.admin-body main.admin-main .district-actions .action-icon svg,
  html body.admin-body main.module-screen .table-actions .action-icon svg,
  html body.admin-body main.module-screen .district-actions .action-icon svg,
  html body.admin-body main.orders-screen .table-actions .action-icon svg,
  html body.admin-body main.orders-screen .district-actions .action-icon svg {
    width: 13px !important;
    height: 13px !important;
    stroke-width: 1.8 !important;
  }

  html body.admin-body main.admin-main .hero-banner-row > .district-actions,
  html body.admin-body main.admin-main .celebration-admin-row > .district-actions,
  html body.admin-body main.admin-main .marquee-admin-row > .district-actions,
  html body.admin-body main.admin-main .google-review-admin-row > .district-actions,
  html body.admin-body main.admin-main .payment-method-row > .district-actions,
  html body.admin-body main.admin-main .district-table-row > .district-actions,
  html body.admin-body main.module-screen .hero-banner-row > .district-actions,
  html body.admin-body main.module-screen .celebration-admin-row > .district-actions,
  html body.admin-body main.module-screen .marquee-admin-row > .district-actions,
  html body.admin-body main.module-screen .google-review-admin-row > .district-actions,
  html body.admin-body main.module-screen .payment-method-row > .district-actions,
  html body.admin-body main.module-screen .district-table-row > .district-actions {
    min-width: 92px !important;
    width: 92px !important;
    max-width: 92px !important;
    justify-self: center !important;
  }
}

@media (max-width: 390px) {
  html body.admin-body main.admin-main .table-actions,
  html body.admin-body main.admin-main .district-actions,
  html body.admin-body main.module-screen .table-actions,
  html body.admin-body main.module-screen .district-actions {
    grid-template-columns: repeat(3, 25px) !important;
    gap: 3px !important;
  }

  html body.admin-body main.admin-main .table-actions .action-icon,
  html body.admin-body main.admin-main .district-actions .action-icon,
  html body.admin-body main.module-screen .table-actions .action-icon,
  html body.admin-body main.module-screen .district-actions .action-icon {
    width: 25px !important;
    min-width: 25px !important;
    max-width: 25px !important;
    height: 25px !important;
    min-height: 25px !important;
    max-height: 25px !important;
    flex-basis: 25px !important;
  }

  html body.admin-body main.admin-main .table-actions .action-icon svg,
  html body.admin-body main.admin-main .district-actions .action-icon svg,
  html body.admin-body main.module-screen .table-actions .action-icon svg,
  html body.admin-body main.module-screen .district-actions .action-icon svg {
    width: 12px !important;
    height: 12px !important;
  }

  html body.admin-body main.admin-main .hero-banner-row > .district-actions,
  html body.admin-body main.admin-main .celebration-admin-row > .district-actions,
  html body.admin-body main.admin-main .marquee-admin-row > .district-actions,
  html body.admin-body main.admin-main .google-review-admin-row > .district-actions,
  html body.admin-body main.admin-main .payment-method-row > .district-actions,
  html body.admin-body main.admin-main .district-table-row > .district-actions,
  html body.admin-body main.module-screen .hero-banner-row > .district-actions,
  html body.admin-body main.module-screen .celebration-admin-row > .district-actions,
  html body.admin-body main.module-screen .marquee-admin-row > .district-actions,
  html body.admin-body main.module-screen .google-review-admin-row > .district-actions,
  html body.admin-body main.module-screen .payment-method-row > .district-actions,
  html body.admin-body main.module-screen .district-table-row > .district-actions {
    min-width: 81px !important;
    width: 81px !important;
    max-width: 81px !important;
  }
}

/* Admin promotions mobile: simplified columns and media preview modal. */
html body.admin-body .promo-preview-trigger {
  appearance: none !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  cursor: pointer !important;
}

html body.admin-body .promo-admin-media-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 330 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 18px !important;
  background: rgba(33, 24, 34, .68) !important;
  backdrop-filter: blur(5px) !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity .18s ease !important;
}

html body.admin-body .promo-admin-media-modal.open {
  opacity: 1 !important;
  pointer-events: auto !important;
}

html body.admin-body .promo-admin-media-card {
  width: min(760px, 100%) !important;
  max-height: calc(100dvh - 36px) !important;
  display: grid !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
  overflow: hidden !important;
  border: 1px solid var(--theme-tint) !important;
  border-radius: 18px !important;
  background: #fffdfb !important;
  box-shadow: 0 28px 90px rgba(var(--theme-heading-rgb), 0.34) !important;
}

html body.admin-body .promo-admin-media-card > header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 14px !important;
  padding: 16px 18px !important;
  border-bottom: 1px solid var(--theme-tint) !important;
  background: linear-gradient(135deg, #fff, var(--theme-surface)) !important;
}

html body.admin-body .promo-admin-media-card span {
  color: var(--theme-primary-text) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

html body.admin-body .promo-admin-media-card h2 {
  margin: 4px 0 0 !important;
  color: var(--theme-secondary-text) !important;
  font-family: Cinzel, Georgia, serif !important;
  font-size: 28px !important;
  line-height: 1 !important;
}

html body.admin-body [data-promo-admin-media-close] {
  display: grid !important;
  place-items: center !important;
  width: 38px !important;
  min-width: 38px !important;
  height: 38px !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: var(--theme-tint) !important;
  color: var(--theme-muted) !important;
  font-size: 22px !important;
  cursor: pointer !important;
}

html body.admin-body .promo-admin-media-body {
  display: grid !important;
  place-items: center !important;
  min-height: 0 !important;
  padding: 18px !important;
  overflow: auto !important;
  background: var(--theme-surface) !important;
}

html body.admin-body .promo-admin-media-body img,
html body.admin-body .promo-admin-media-body video {
  display: block !important;
  max-width: 100% !important;
  max-height: calc(100dvh - 160px) !important;
  object-fit: contain !important;
  border-radius: 14px !important;
  box-shadow: 0 16px 42px rgba(var(--theme-heading-rgb), 0.18) !important;
}

@media (max-width: 760px) {
  html body.admin-body main.admin-main .promotions-list-panel {
    overflow: hidden !important;
  }

  html body.admin-body main.admin-main table.promotions-table {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  html body.admin-body main.admin-main table.promotions-table thead,
  html body.admin-body main.admin-main table.promotions-table tbody,
  html body.admin-body main.admin-main table.promotions-table tr {
    display: grid !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  html body.admin-body main.admin-main table.promotions-table thead tr,
  html body.admin-body main.admin-main table.promotions-table tbody tr {
    grid-template-columns: minmax(92px, 1fr) 54px 74px 84px !important;
    align-items: center !important;
    gap: 0 !important;
  }

  html body.admin-body main.admin-main table.promotions-table thead th,
  html body.admin-body main.admin-main table.promotions-table tbody td {
    display: grid !important;
    align-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 7px 4px !important;
    border: 0 !important;
    background: transparent !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }

  html body.admin-body main.admin-main table.promotions-table thead {
    border-bottom: 1px solid var(--theme-border) !important;
    background: var(--theme-surface) !important;
  }

  html body.admin-body main.admin-main table.promotions-table tbody tr {
    border-bottom: 1px solid var(--theme-border) !important;
    background: #fff !important;
  }

  html body.admin-body main.admin-main table.promotions-table thead th {
    color: var(--theme-secondary-text) !important;
    font-size: 7px !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
  }

  html body.admin-body main.admin-main table.promotions-table thead th:nth-child(2),
  html body.admin-body main.admin-main table.promotions-table tbody td[data-label="Formato"] {
    display: none !important;
  }

  html body.admin-body main.admin-main table.promotions-table thead th:nth-child(5) {
    font-size: 0 !important;
  }

  html body.admin-body main.admin-main table.promotions-table thead th:nth-child(5)::after {
    content: "Acciones" !important;
    font-size: 7px !important;
  }

  html body.admin-body main.admin-main table.promotions-table tbody td::before {
    content: none !important;
    display: none !important;
  }

  html body.admin-body main.admin-main table.promotions-table td[data-label="Anuncio"] {
    justify-items: center !important;
    text-align: center !important;
  }

  html body.admin-body main.admin-main .promo-row-main {
    display: grid !important;
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 3px !important;
    width: 100% !important;
    max-width: 100% !important;
    text-align: center !important;
  }

  html body.admin-body main.admin-main .promo-preview-trigger,
  html body.admin-body main.admin-main .promo-row-main .thumb.wide,
  html body.admin-body main.admin-main .promo-empty-thumb {
    width: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    height: 36px !important;
    min-height: 36px !important;
    max-height: 36px !important;
    border-radius: 10px !important;
  }

  html body.admin-body main.admin-main .promo-row-main .thumb.wide {
    object-fit: cover !important;
  }

  html body.admin-body main.admin-main .promo-row-main span:not(.thumb) {
    display: grid !important;
    justify-items: center !important;
    gap: 1px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html body.admin-body main.admin-main .promo-row-main strong {
    display: block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 7.2px !important;
    line-height: 1.05 !important;
    font-weight: 400 !important;
  }

  html body.admin-body main.admin-main .promo-row-main small,
  html body.admin-body main.admin-main .promo-row-main em {
    display: block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    font-size: 6.4px !important;
    line-height: 1.05 !important;
    font-weight: 400 !important;
  }

  html body.admin-body main.admin-main table.promotions-table td[data-label="Estado"] .status,
  html body.admin-body main.admin-main table.promotions-table td[data-label="Estado"] .district-status {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 46px !important;
    min-width: 46px !important;
    max-width: 100% !important;
    padding: 4px 5px !important;
    border-radius: 999px !important;
    font-size: 6.2px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    white-space: nowrap !important;
  }

  html body.admin-body main.admin-main table.promotions-table td[data-label="Estado"] .district-status.active {
    border-color: rgba(23, 128, 80, .24) !important;
    background: #eefaf4 !important;
    color: #177a4d !important;
  }

  html body.admin-body main.admin-main table.promotions-table td[data-label="Estado"] .district-status.inactive {
    border-color: rgba(var(--theme-muted-rgb), 0.2) !important;
    background: var(--theme-tint) !important;
    color: var(--theme-muted) !important;
  }

  html body.admin-body main.admin-main table.promotions-table td[data-label="Fecha"] {
    font-size: 6.8px !important;
    line-height: 1 !important;
    font-weight: 400 !important;
    white-space: nowrap !important;
  }

  html body.admin-body main.admin-main table.promotions-table td.table-actions {
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 3px !important;
    overflow: visible !important;
  }

  html body.admin-body main.admin-main table.promotions-table td.table-actions form {
    display: contents !important;
  }

  html body.admin-body main.admin-main table.promotions-table td.table-actions .action-icon {
    width: 23px !important;
    min-width: 23px !important;
    max-width: 23px !important;
    height: 23px !important;
    min-height: 23px !important;
    max-height: 23px !important;
    flex: 0 0 23px !important;
  }

  html body.admin-body main.admin-main table.promotions-table td.table-actions .action-icon svg {
    width: 11px !important;
    height: 11px !important;
  }

  html body.admin-body .promo-admin-media-modal {
    padding: 10px !important;
  }

  html body.admin-body .promo-admin-media-card {
    width: min(100%, 390px) !important;
    max-height: calc(100dvh - 20px) !important;
    border-radius: 14px !important;
  }

  html body.admin-body .promo-admin-media-card > header {
    padding: 9px 10px !important;
  }

  html body.admin-body .promo-admin-media-card span {
    font-size: 7px !important;
  }

  html body.admin-body .promo-admin-media-card h2 {
    font-size: 17px !important;
  }

  html body.admin-body [data-promo-admin-media-close] {
    width: 28px !important;
    min-width: 28px !important;
    height: 28px !important;
    font-size: 16px !important;
  }

  html body.admin-body .promo-admin-media-body {
    padding: 10px !important;
  }

  html body.admin-body .promo-admin-media-body img,
  html body.admin-body .promo-admin-media-body video {
    max-height: calc(100dvh - 110px) !important;
    border-radius: 10px !important;
  }
}

@media (max-width: 390px) {
  html body.admin-body main.admin-main table.promotions-table thead tr,
  html body.admin-body main.admin-main table.promotions-table tbody tr {
    grid-template-columns: minmax(82px, 1fr) 48px 66px 78px !important;
  }

  html body.admin-body main.admin-main .promo-preview-trigger,
  html body.admin-body main.admin-main .promo-row-main .thumb.wide,
  html body.admin-body main.admin-main .promo-empty-thumb {
    width: 32px !important;
    min-width: 32px !important;
    max-width: 32px !important;
    height: 32px !important;
    min-height: 32px !important;
    max-height: 32px !important;
  }
}

@media (max-width: 640px) {
  html body.admin-body main.admin-main .tiktok-list-panel .section-head.compact {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: start !important;
    gap: 8px !important;
    padding: 14px 12px !important;
  }

  html body.admin-body main.admin-main .tiktok-list-panel .section-head.compact h2 {
    font-size: 22px !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
  }

  html body.admin-body main.admin-main .tiktok-list-panel .section-head.compact p {
    max-width: 260px !important;
    margin-top: 8px !important;
    font-size: 10px !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
  }

  html body.admin-body main.admin-main .tiktok-list-panel .section-head.compact > span {
    min-width: 68px !important;
    padding: 8px 10px !important;
    font-size: 10px !important;
    line-height: 1 !important;
    text-align: center !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 12px !important;
    padding: 10px !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-card {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    min-height: 0 !important;
    padding: 10px !important;
    border-radius: 14px !important;
    background: #fff !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-video {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    height: clamp(300px, 92vw, 430px) !important;
    min-height: 300px !important;
    max-height: 430px !important;
    overflow: hidden !important;
    border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .28) !important;
    border-radius: 12px !important;
    background: var(--theme-surface) !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-video .tiktok-embed,
  html body.admin-body main.admin-main .tiktok-admin-video blockquote {
    width: min(100%, 325px) !important;
    min-width: 220px !important;
    max-width: 325px !important;
    margin: 0 auto !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-video iframe {
    width: 100% !important;
    min-height: 300px !important;
    max-height: 430px !important;
    border-radius: 10px !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-info {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    grid-template-areas:
      "status actions"
      "title actions"
      "meta actions"
      "link actions" !important;
    align-items: center !important;
    gap: 4px 8px !important;
    padding: 2px 0 0 !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-info .status {
    grid-area: status !important;
    justify-self: start !important;
    width: auto !important;
    min-width: 54px !important;
    max-width: 100% !important;
    padding: 4px 8px !important;
    font-size: 7px !important;
    line-height: 1 !important;
    font-weight: 500 !important;
    white-space: nowrap !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-info h3 {
    grid-area: title !important;
    margin: 0 !important;
    font-size: 10px !important;
    line-height: 1.15 !important;
    font-weight: 500 !important;
    color: var(--theme-secondary-text, #8A1640) !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-info small {
    grid-area: meta !important;
    font-size: 8px !important;
    line-height: 1.15 !important;
    color: var(--theme-muted) !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-info > a {
    grid-area: link !important;
    justify-self: start !important;
    font-size: 8px !important;
    line-height: 1.15 !important;
    font-weight: 500 !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-info .table-actions {
    grid-area: actions !important;
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 5px !important;
    margin: 0 !important;
    overflow: visible !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-info .table-actions form {
    display: contents !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-info .table-actions .action-icon {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    min-height: 30px !important;
    border-radius: 999px !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-info .table-actions .action-icon svg {
    width: 14px !important;
    height: 14px !important;
  }
}

@media (max-width: 370px) {
  html body.admin-body main.admin-main .tiktok-admin-info {
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 4px 5px !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-info .table-actions {
    gap: 3px !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-info .table-actions .action-icon {
    width: 27px !important;
    min-width: 27px !important;
    height: 27px !important;
    min-height: 27px !important;
  }
}

html body.admin-body .tiktok-admin-video-open {
  display: none;
}

html body.admin-body .tiktok-admin-modal {
  position: fixed;
  inset: 0;
  z-index: 2600;
  display: none;
  place-items: center;
  padding: 16px;
  background: rgba(var(--theme-heading-rgb), 0.62);
  backdrop-filter: blur(8px);
}

html body.admin-body .tiktok-admin-modal.open {
  display: grid;
}

html body.admin-body .tiktok-admin-modal-card {
  position: relative;
  display: grid;
  place-items: center;
  width: min(390px, 100%);
  max-height: calc(100dvh - 28px);
  padding: 42px 10px 14px;
  overflow: auto;
  border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .38);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 24px 80px rgba(var(--theme-primary-rgb, 166, 28, 79), .22);
}

html body.admin-body .tiktok-admin-modal-close {
  position: absolute;
  top: 10px;
  right: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 999px;
  background: var(--theme-surface);
  color: var(--theme-secondary-text, #8A1640);
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

html body.admin-body .tiktok-admin-modal-body {
  display: grid;
  place-items: center;
  width: 100%;
}

html body.admin-body .tiktok-admin-modal-body .tiktok-embed,
html body.admin-body .tiktok-admin-modal-body blockquote {
  width: min(100%, 325px) !important;
  min-width: 250px !important;
  max-width: 325px !important;
  margin: 0 auto !important;
}

html body.admin-body .tiktok-admin-modal-body iframe {
  max-width: 100% !important;
  border-radius: 12px !important;
}

@media (max-width: 640px) {
  html body.admin-body main.admin-main .tiktok-admin-video {
    position: relative !important;
    height: 96px !important;
    min-height: 96px !important;
    max-height: 96px !important;
    border-radius: 13px !important;
    background:
      linear-gradient(135deg, rgba(var(--theme-primary-rgb, 166, 28, 79), .08), rgba(255, 255, 255, .86)),
      var(--theme-surface) !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-video > .tiktok-embed,
  html body.admin-body main.admin-main .tiktok-admin-video > blockquote,
  html body.admin-body main.admin-main .tiktok-admin-video > iframe {
    display: none !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-video::before {
    content: "TikTok";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 58px;
    height: 58px;
    border-radius: 16px;
    background: linear-gradient(135deg, #111, #343139);
    color: #fff;
    font-size: 10px;
    font-weight: 500;
    letter-spacing: 0;
    box-shadow: 0 10px 20px rgba(var(--theme-heading-rgb), 0.18);
  }

  html body.admin-body main.admin-main .tiktok-admin-video-open {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 94px;
    height: 34px;
    padding: 0 14px;
    border: 1px solid rgba(var(--theme-primary-rgb, 166, 28, 79), .24);
    border-radius: 999px;
    background: var(--guinda, #A61C4F);
    color: #fff;
    font-size: 10px;
    font-weight: 500;
    line-height: 1;
    cursor: pointer;
    box-shadow: 0 12px 24px rgba(var(--theme-primary-rgb, 166, 28, 79), .18);
  }

  html body.admin-body .tiktok-admin-modal {
    padding: 10px;
  }

  html body.admin-body .tiktok-admin-modal-card {
    width: min(100%, 370px);
    max-height: calc(100dvh - 20px);
    padding: 40px 8px 12px;
    border-radius: 16px;
  }
}

body:not(.admin-body) .home-tiktok-section {
  position: relative;
  margin: 0;
  padding: clamp(34px, 5vw, 56px) clamp(16px, 4vw, 44px) clamp(30px, 4vw, 48px) !important;
  overflow: hidden;
  background:
    linear-gradient(180deg, rgba(var(--theme-soft-rgb, 242, 242, 242), .92), #fff 58%),
    var(--theme-surface) !important;
  color: var(--theme-secondary-text, #8A1640);
}

body:not(.admin-body) .home-tiktok-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 10% 0%, rgba(var(--theme-primary-rgb, 166, 28, 79), .12), transparent 30%),
    radial-gradient(circle at 86% 12%, rgba(var(--theme-accent-rgb, 217, 145, 171), .2), transparent 28%);
}

body:not(.admin-body) .tiktok-feed-heading {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: 20px;
  width: min(100%, 1390px);
  max-width: 1390px;
  margin: 0 auto 28px;
}

body:not(.admin-body) .tiktok-feed-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--theme-primary-text, #A61C4F);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body:not(.admin-body) .tiktok-feed-kicker i,
body:not(.admin-body) .tiktok-follow-button i,
body:not(.admin-body) .tiktok-card-badge i {
  font-style: normal;
  font-weight: 900;
}

body:not(.admin-body) .tiktok-feed-heading h2 {
  margin: 18px 0 4px;
  color: var(--theme-secondary-text, #8A1640);
  font-size: clamp(32px, 5vw, 54px);
  line-height: .95;
  letter-spacing: 0;
  text-shadow: 2px 2px 0 rgba(var(--theme-accent-rgb, 217, 145, 171), .34);
}

body:not(.admin-body) .tiktok-feed-heading p {
  margin: 0;
  max-width: 520px;
  color: var(--theme-muted);
  font-size: clamp(14px, 1.8vw, 18px);
  line-height: 1.45;
}

body:not(.admin-body) .tiktok-feed-actions {
  display: grid;
  justify-items: end;
  gap: 24px;
}

body:not(.admin-body) .tiktok-live-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  width: max-content;
  padding: 8px 13px;
  border-radius: 999px;
  border: 1px solid rgba(var(--theme-primary-rgb, 166, 28, 79), .14);
  background: #fff;
  color: var(--theme-secondary-text, #8A1640);
  font-size: 13px;
  font-weight: 800;
}

body:not(.admin-body) .tiktok-live-pill i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--guinda, #A61C4F);
  box-shadow: 0 0 0 4px rgba(var(--theme-primary-rgb, 166, 28, 79), .12);
}

body:not(.admin-body) .tiktok-follow-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 54px;
  padding: 0 26px;
  border: 1px solid rgba(var(--theme-primary-rgb, 166, 28, 79), .14);
  border-radius: 999px;
  background: linear-gradient(135deg, var(--guinda, #A61C4F), var(--rose-strong, #A61C4F));
  color: #fff !important;
  font-size: 16px;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 16px 34px rgba(var(--theme-primary-rgb, 166, 28, 79), .18);
}

body:not(.admin-body) .home-tiktok-section .tiktok-video-grid {
  position: relative;
  z-index: 1;
  display: flex !important;
  grid-template-columns: none !important;
  gap: 22px;
  width: min(100%, 1390px);
  max-width: 1390px;
  margin: 0 auto;
  padding: 0 0 12px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scrollbar-width: thin;
  scrollbar-color: rgba(var(--theme-primary-rgb, 166, 28, 79), .28) transparent;
}

body:not(.admin-body) .home-tiktok-section .tiktok-video-grid::-webkit-scrollbar {
  height: 8px;
}

body:not(.admin-body) .home-tiktok-section .tiktok-video-grid::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(var(--theme-primary-rgb, 166, 28, 79), .24);
}

body:not(.admin-body) .home-tiktok-section .tiktok-video-card {
  position: relative;
  display: grid;
  place-items: center;
  flex: 0 0 clamp(238px, 21vw, 305px);
  width: clamp(238px, 21vw, 305px);
  height: clamp(410px, 38vw, 510px);
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden;
  scroll-snap-align: start;
  border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .45) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 18px 42px rgba(var(--theme-primary-rgb, 166, 28, 79), .1) !important;
}

body:not(.admin-body) .home-tiktok-section .tiktok-video-card::after {
  display: none;
}

body:not(.admin-body) .home-tiktok-section .tiktok-card-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 6px 9px;
  border-radius: 999px;
  background: rgba(var(--theme-primary-rgb, 166, 28, 79), .86);
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  backdrop-filter: blur(10px);
}

body:not(.admin-body) .home-tiktok-section .tiktok-video-card .tiktok-embed,
body:not(.admin-body) .home-tiktok-section .tiktok-video-card blockquote {
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  border: 0 !important;
}

body:not(.admin-body) .home-tiktok-section .tiktok-video-card iframe {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 100% !important;
  height: 100% !important;
  border-radius: 18px !important;
}

body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card {
  position: relative;
  width: 100%;
  height: 100%;
  max-width: 320px;
  aspect-ratio: 9 / 16;
  overflow: hidden;
  border-radius: 18px;
  background: #000;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .15);
  contain: layout paint;
  content-visibility: auto;
  contain-intrinsic-size: 320px 568px;
}

body:not(.admin-body) .home-tiktok-section .encantos-tiktok-player {
  position: absolute;
  inset: 0;
  display: block;
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  border: 0;
  border-radius: 18px !important;
  background: #000;
}

body:not(.admin-body) .home-tiktok-section .encantos-tiktok-placeholder,
html body.admin-body .encantos-tiktok-placeholder {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 50% 42%, rgba(255, 255, 255, .12), transparent 30%),
    linear-gradient(145deg, var(--theme-heading), #050505);
}

body:not(.admin-body) .home-tiktok-section .encantos-tiktok-loader,
html body.admin-body .encantos-tiktok-loader {
  width: 28px;
  height: 28px;
  border: 3px solid rgba(255, 255, 255, .32);
  border-top-color: #fff;
  border-radius: 50%;
  animation: tiktokSpin .8s linear infinite;
}

@keyframes tiktokSpin {
  to { transform: rotate(360deg); }
}

body:not(.admin-body) .home-tiktok-section .tiktok-product-overlay {
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  z-index: 20;
  display: grid;
  gap: 8px;
  padding: 10px;
  border-radius: 14px;
  background: rgba(var(--theme-heading-rgb), 0.88);
  color: #fff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .25);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px);
  transition: opacity .22s ease, visibility .22s ease, transform .22s ease;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card:hover .tiktok-product-overlay,
body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card.show-products .tiktok-product-overlay {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

body:not(.admin-body) .home-tiktok-section .tiktok-overlay-product {
  display: none;
  align-items: center;
  gap: 12px;
}

body:not(.admin-body) .home-tiktok-section .tiktok-overlay-product.active {
  display: flex;
}

body:not(.admin-body) .home-tiktok-section .tiktok-overlay-image img {
  display: block;
  width: 65px;
  height: 65px;
  object-fit: cover;
  border-radius: 9px;
}

body:not(.admin-body) .home-tiktok-section .tiktok-overlay-copy {
  display: grid;
  min-width: 0;
  gap: 3px;
}

body:not(.admin-body) .home-tiktok-section .tiktok-overlay-copy strong {
  overflow: hidden;
  font-size: 12px;
  line-height: 1.15;
  white-space: nowrap;
  text-overflow: ellipsis;
}

body:not(.admin-body) .home-tiktok-section .tiktok-overlay-copy span {
  font-size: 12px;
  color: rgba(255, 255, 255, .78);
}

body:not(.admin-body) .home-tiktok-section .tiktok-overlay-copy a {
  color: #fff;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}

body:not(.admin-body) .home-tiktok-section .tiktok-product-controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  font-size: 11px;
}

body:not(.admin-body) .home-tiktok-section .tiktok-product-controls button,
body:not(.admin-body) .home-tiktok-section .tiktok-product-toggle {
  border: 1px solid rgba(255, 255, 255, .25);
  border-radius: 999px;
  background: rgba(255, 255, 255, .16);
  color: #fff;
}

body:not(.admin-body) .home-tiktok-section .tiktok-product-controls button {
  width: 24px;
  height: 24px;
}

body:not(.admin-body) .home-tiktok-section .tiktok-product-toggle {
  position: absolute;
  right: 14px;
  bottom: 14px;
  z-index: 21;
  display: none;
  width: 42px;
  height: 42px;
  align-items: center;
  justify-content: center;
  background: var(--guinda, #A61C4F);
}

body:not(.admin-body) .home-tiktok-section .tiktok-product-toggle svg {
  width: 18px;
  height: 18px;
}

@media (max-width: 720px) {
  body:not(.admin-body) .home-tiktok-section {
    padding: 26px 8px 32px !important;
  }

  body:not(.admin-body) .tiktok-feed-heading {
    grid-template-columns: 1fr;
    gap: 14px;
    width: 100%;
    margin-bottom: 20px;
    padding: 0 8px;
  }

  body:not(.admin-body) .tiktok-feed-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
  }

  body:not(.admin-body) .tiktok-feed-heading h2 {
    margin-top: 12px;
    font-size: 34px;
  }

  body:not(.admin-body) .tiktok-feed-heading p {
    font-size: 13px;
  }

  body:not(.admin-body) .tiktok-follow-button {
    min-height: 42px;
    padding: 0 15px;
    font-size: 12px;
  }

  body:not(.admin-body) .tiktok-live-pill {
    padding: 7px 10px;
    font-size: 11px;
  }

  body:not(.admin-body) .home-tiktok-section .tiktok-video-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    justify-items: center;
    gap: 14px;
    width: 100%;
    max-width: 100%;
    padding-bottom: 8px;
    overflow: visible;
    scroll-snap-type: none;
  }

  body:not(.admin-body) .home-tiktok-section .tiktok-video-card {
    width: min(100%, 320px);
    height: min(142vw, 568px);
    max-width: 320px;
    max-height: 470px;
  }

  body:not(.admin-body) .home-tiktok-section .tiktok-product-toggle {
    display: flex;
  }

  body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card:hover .tiktok-product-overlay {
    opacity: 0;
    visibility: hidden;
    transform: translateY(12px);
  }

  body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card.show-products .tiktok-product-overlay {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }

  body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card.show-products .tiktok-product-toggle {
    display: none;
  }
}

html body.admin-body main.admin-main .tiktok-form {
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
}

@media (min-width: 761px) {
  html body.admin-body main.admin-main .tiktok-admin-grid {
    grid-template-columns: minmax(300px, 380px) minmax(0, 1fr) !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-grid > form.tiktok-form {
    position: sticky !important;
    top: 106px !important;
    width: 100% !important;
    max-width: 380px !important;
    max-height: none !important;
    margin-inline: 0 !important;
    padding: 22px !important;
    overflow: visible !important;
  }
}

html body.admin-body main.admin-main .video-form-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 22px !important;
  align-items: start !important;
}

html body.admin-body main.admin-main .video-form-fields {
  display: grid !important;
  gap: 12px !important;
  min-width: 0 !important;
}

html body.admin-body main.admin-main .tiktok-live-preview {
  display: grid !important;
  place-items: center !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 12px !important;
}

html body.admin-body main.admin-main .admin-preview-card {
  position: relative !important;
  width: min(100%, 240px) !important;
  aspect-ratio: 9 / 16 !important;
  overflow: hidden !important;
  border-radius: 16px !important;
  background: #000 !important;
}

html body.admin-body main.admin-main .tiktok-products-picker {
  display: grid !important;
  gap: 10px !important;
  padding: 12px !important;
  border: 1px solid var(--theme-border) !important;
  border-radius: 14px !important;
  background: var(--theme-surface) !important;
}

html body.admin-body main.admin-main .tiktok-picker-heading {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

html body.admin-body main.admin-main .tiktok-picker-heading > div {
  display: grid !important;
  gap: 2px !important;
  min-width: 0 !important;
}

html body.admin-body main.admin-main .tiktok-picker-heading strong {
  font-size: 12px !important;
  font-weight: 500 !important;
  color: var(--theme-secondary-text, #8A1640) !important;
}

html body.admin-body main.admin-main .tiktok-picker-heading small,
html body.admin-body main.admin-main .tiktok-picker-empty {
  margin: 0 !important;
  font-size: 10px !important;
  color: var(--theme-muted) !important;
}

html body.admin-body main.admin-main .tiktok-picker-open {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;
  min-height: 38px !important;
  padding: 8px 12px !important;
  border: 1px solid var(--theme-border) !important;
  border-radius: 9px !important;
  background: #fff !important;
  color: var(--theme-primary-text, #A61C4F) !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  cursor: pointer !important;
}

html body.admin-body main.admin-main .tiktok-picker-open span {
  display: grid !important;
  place-items: center !important;
  min-width: 22px !important;
  height: 22px !important;
  padding-inline: 5px !important;
  border-radius: 999px !important;
  background: var(--guinda, #A61C4F) !important;
  color: #fff !important;
  font-size: 10px !important;
}

html body.admin-body .tiktok-product-modal[hidden] {
  display: none !important;
}

html body.admin-body .tiktok-product-modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 5000 !important;
  display: grid !important;
  place-items: center !important;
  padding: 18px !important;
}

html body.admin-body .tiktok-product-backdrop {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  background: rgba(var(--theme-heading-rgb), 0.5) !important;
  backdrop-filter: blur(4px) !important;
}

html body.admin-body .tiktok-product-dialog {
  position: relative !important;
  z-index: 1 !important;
  display: grid !important;
  grid-template-rows: auto auto minmax(0, 1fr) auto !important;
  gap: 14px !important;
  width: min(100%, 620px) !important;
  max-height: min(82dvh, 720px) !important;
  padding: 18px !important;
  overflow: hidden !important;
  border: 1px solid var(--theme-border) !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 24px 70px rgba(var(--theme-heading-rgb), 0.24) !important;
}

html body.admin-body .tiktok-product-dialog > header {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 12px !important;
}

html body.admin-body .tiktok-product-dialog h3,
html body.admin-body .tiktok-product-dialog p {
  margin: 0 !important;
}

html body.admin-body .tiktok-product-dialog h3 {
  font-size: 18px !important;
  font-weight: 500 !important;
  color: var(--theme-secondary-text, #8A1640) !important;
}

html body.admin-body .tiktok-product-dialog p {
  margin-top: 3px !important;
  font-size: 11px !important;
  color: var(--theme-muted) !important;
}

html body.admin-body .tiktok-product-dialog > header > button {
  width: 34px !important;
  min-width: 34px !important;
  height: 34px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: var(--theme-surface) !important;
  color: var(--theme-primary-text, #A61C4F) !important;
  font-size: 20px !important;
  cursor: pointer !important;
}

html body.admin-body .tiktok-product-search {
  display: grid !important;
  gap: 5px !important;
  font-size: 11px !important;
}

html body.admin-body .tiktok-product-dialog .tiktok-product-options {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  max-height: 52dvh !important;
  padding: 2px 5px 2px 2px !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
}

html body.admin-body .tiktok-product-dialog > footer {
  display: flex !important;
  justify-content: flex-end !important;
  gap: 9px !important;
}

html body.admin-body .tiktok-product-dialog > footer .button {
  width: auto !important;
  min-height: 40px !important;
  margin: 0 !important;
  padding: 9px 14px !important;
  font-size: 11px !important;
}

html body.admin-body .tiktok-product-dialog > footer [data-tiktok-pending-count] {
  display: inline-grid !important;
  place-items: center !important;
  min-width: 20px !important;
  height: 20px !important;
  margin-left: 5px !important;
  padding-inline: 5px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .2) !important;
  color: inherit !important;
}

html body.tiktok-product-modal-open {
  overflow: hidden !important;
}

html body.admin-body main.admin-main .tiktok-selected-products,
html body.admin-body main.admin-main .tiktok-product-options {
  display: grid !important;
  gap: 8px !important;
  max-height: none !important;
  overflow: visible !important;
}

html body.admin-body main.admin-main .tiktok-product-options {
  max-height: none !important;
  overflow: visible !important;
  padding-right: 0 !important;
}

html body.admin-body main.admin-main .tiktok-selected-product,
html body.admin-body main.admin-main .tiktok-product-option {
  display: grid !important;
  grid-template-columns: 44px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  padding: 8px !important;
  border: 1px solid var(--theme-border) !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: var(--theme-secondary-text, #8A1640) !important;
  text-align: left !important;
}

html body.admin-body main.admin-main .tiktok-product-option {
  cursor: pointer !important;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}

html body.admin-body main.admin-main .tiktok-product-option[hidden] {
  display: none !important;
}

html body.admin-body main.admin-main .tiktok-product-option.is-pending {
  border-color: var(--brand-primary) !important;
  background: var(--theme-surface) !important;
  box-shadow: 0 0 0 2px rgba(var(--theme-primary-rgb), 0.2) !important;
}

html body.admin-body main.admin-main .tiktok-selected-product img,
html body.admin-body main.admin-main .tiktok-product-option img {
  width: 44px !important;
  height: 44px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
}

html body.admin-body main.admin-main .tiktok-selected-product span,
html body.admin-body main.admin-main .tiktok-product-option span {
  display: grid !important;
  gap: 2px !important;
  min-width: 0 !important;
}

html body.admin-body main.admin-main .tiktok-selected-product strong,
html body.admin-body main.admin-main .tiktok-product-option strong {
  overflow: hidden !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  white-space: nowrap !important;
  text-overflow: ellipsis !important;
}

html body.admin-body main.admin-main .tiktok-selected-product small,
html body.admin-body main.admin-main .tiktok-product-option small {
  font-size: 10px !important;
  color: var(--theme-muted) !important;
}

html body.admin-body main.admin-main .tiktok-selected-product button {
  display: grid !important;
  place-items: center !important;
  width: 24px !important;
  height: 24px !important;
  border: 0 !important;
  border-radius: 50% !important;
  background: #fff1f3 !important;
  color: var(--theme-primary-text) !important;
}

html body.admin-body main.admin-main .tiktok-form input[name="embed_code"] {
  font-family: "Poppins", Arial, sans-serif !important;
  letter-spacing: .02em !important;
}

html body.admin-body main.admin-main .tiktok-live-preview,
html body.admin-body main.admin-main .tiktok-admin-video,
html body.admin-body .tiktok-admin-modal-body {
  overflow: hidden !important;
}

html body.admin-body main.admin-main .tiktok-live-preview {
  min-height: 250px !important;
  height: auto !important;
  padding: 10px !important;
  border-style: solid !important;
  background: linear-gradient(180deg, #fff, var(--theme-surface)) !important;
}

html body.admin-body main.admin-main .tiktok-live-preview > span {
  display: grid !important;
  min-height: 150px !important;
  place-items: center !important;
  text-align: center !important;
  font-size: 12px !important;
  line-height: 1.35 !important;
}

html body.admin-body main.admin-main .tiktok-admin-list {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(260px, 300px)) !important;
  justify-content: center !important;
  gap: 24px !important;
  align-items: start !important;
  width: 100% !important;
  overflow: visible !important;
}

html body.admin-body main.admin-main .tiktok-admin-card {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0 !important;
  width: 100% !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 1px solid rgba(var(--theme-accent-rgb, 217, 145, 171), .45) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 18px 40px rgba(var(--theme-primary-rgb, 166, 28, 79), .08) !important;
}

html body.admin-body main.admin-main .tiktok-admin-video {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  aspect-ratio: 9 / 16 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 18px 18px 0 0 !important;
  background: #000 !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, .13) !important;
}

html body.admin-body main.admin-main .tiktok-live-preview .tiktok-admin-clean-player,
html body.admin-body main.admin-main .tiktok-admin-video .tiktok-admin-clean-player,
html body.admin-body .tiktok-admin-modal-body .tiktok-admin-clean-player,
html body.admin-body main.admin-main .tiktok-live-preview .encantos-tiktok-player,
html body.admin-body main.admin-main .tiktok-admin-video .encantos-tiktok-player {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  border: 0 !important;
  border-radius: inherit !important;
  background: #000 !important;
}

html body.admin-body main.admin-main .tiktok-live-preview .tiktok-admin-clean-player {
  width: min(100%, 170px) !important;
  aspect-ratio: 9 / 16 !important;
  height: auto !important;
  margin: 0 auto !important;
}

html body.admin-body main.admin-main .video-admin-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  padding: 12px !important;
  border-top: 1px solid var(--theme-tint) !important;
  background: #fff !important;
}

html body.admin-body main.admin-main .video-admin-actions form {
  display: contents !important;
}

html body.admin-body main.admin-main .video-admin-action {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 42px !important;
  min-width: 42px !important;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 !important;
  border: 1px solid var(--theme-border) !important;
  border-radius: 50% !important;
  background: #fff !important;
  color: var(--theme-primary-text, #A61C4F) !important;
  cursor: pointer !important;
  text-decoration: none !important;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease !important;
}

html body.admin-body main.admin-main .video-admin-action:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 5px 15px rgba(0, 0, 0, .1) !important;
}

html body.admin-body main.admin-main .video-admin-action svg {
  width: 18px !important;
  height: 18px !important;
  stroke-width: 2 !important;
}

html body.admin-body main.admin-main .video-admin-action.edit {
  color: var(--theme-primary-text, #A61C4F) !important;
}

html body.admin-body main.admin-main .video-admin-action.visible {
  border-color: rgba(23, 128, 80, .22) !important;
  background: #eefaf4 !important;
  color: #177a4d !important;
}

html body.admin-body main.admin-main .video-admin-action.hidden-video {
  border-color: rgba(var(--theme-primary-rgb), 0.2) !important;
  background: #fff1f3 !important;
  color: var(--theme-primary-text) !important;
}

html body.admin-body main.admin-main .video-admin-action.delete {
  border-color: rgba(205, 48, 70, .18) !important;
  background: #fff2f4 !important;
  color: var(--theme-primary-text) !important;
}

@media (max-width: 640px) {
  html body.admin-body .tiktok-product-modal {
    padding: 10px !important;
  }

  html body.admin-body .tiktok-product-dialog {
    width: 100% !important;
    max-height: 88dvh !important;
    padding: 14px !important;
    border-radius: 12px !important;
  }

  html body.admin-body .tiktok-product-dialog .tiktok-product-options {
    grid-template-columns: 1fr !important;
    max-height: 58dvh !important;
  }

  html body.admin-body main.admin-main .tiktok-picker-heading {
    align-items: flex-start !important;
  }
  html body.admin-body main.admin-main .tiktok-admin-list {
    grid-template-columns: 1fr !important;
    justify-items: center !important;
    gap: 16px !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-card {
    width: min(100%, 300px) !important;
  }

  html body.admin-body main.admin-main .tiktok-admin-video {
    width: 100% !important;
  }

  html body.admin-body main.admin-main .tiktok-live-preview {
    min-height: 190px !important;
    padding: 8px !important;
  }

  html body.admin-body main.admin-main .video-form-layout {
    grid-template-columns: 1fr !important;
  }

  html body.admin-body main.admin-main .admin-preview-card {
    width: min(100%, 135px) !important;
  }
}

html body.admin-body main.admin-main .tiktok-product-dialog .tiktok-product-options {
  max-height: 52dvh !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
}

@media (max-width: 640px) {
  html body.admin-body main.admin-main .tiktok-product-dialog .tiktok-product-options {
    max-height: 58dvh !important;
  }
}

/* Public TikTok reels carousel */
body:not(.admin-body) .home-tiktok-section {
  max-width: 100% !important;
  overflow: hidden !important;
}

body:not(.admin-body) .home-tiktok-section .tiktok-carousel-wrapper {
  position: relative;
  width: 100%;
  max-width: 1390px;
  min-width: 0;
  margin-inline: auto;
}

body:not(.admin-body) .home-tiktok-section .tiktok-video-grid.tiktok-carousel {
  display: flex !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: 8px 48px 12px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: 48px;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
  touch-action: pan-x pan-y;
}

body:not(.admin-body) .home-tiktok-section .tiktok-video-grid.tiktok-carousel::-webkit-scrollbar {
  display: none;
}

body:not(.admin-body) .home-tiktok-section .tiktok-reel-card {
  flex: 0 0 290px !important;
  width: 290px !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: 9 / 16;
  scroll-snap-align: center;
  scroll-snap-stop: always;
  border: 0 !important;
  border-radius: 20px !important;
  background: #111 !important;
  box-shadow: 0 14px 34px rgba(var(--theme-secondary-rgb), 0.16) !important;
}

body:not(.admin-body) .home-tiktok-section .tiktok-reel-card .encantos-tiktok-card {
  width: 100% !important;
  max-width: 100% !important;
  height: 100% !important;
  border-radius: inherit !important;
}

body:not(.admin-body) .home-tiktok-section .tiktok-custom-play {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 15;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 78px;
  height: 78px;
  border: 5px solid rgba(70, 70, 70, .55);
  border-radius: 50%;
  background: rgba(255, 255, 255, .96);
  color: #070707;
  transform: translate(-50%, -50%);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .25);
  pointer-events: none;
}

body:not(.admin-body) .home-tiktok-section .tiktok-custom-play[hidden] {
  display: none;
}

body:not(.admin-body) .home-tiktok-section .tiktok-custom-play svg {
  width: 36px;
  height: 36px;
  margin-left: 5px;
  fill: currentColor;
}

body:not(.admin-body) .home-tiktok-section .tiktok-carousel-arrow {
  position: absolute;
  top: calc(50% - 22px);
  z-index: 30;
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid rgba(var(--theme-primary-rgb), 0.2);
  border-radius: 50%;
  background: rgba(255, 255, 255, .94);
  color: var(--theme-primary-text, #A61C4F);
  box-shadow: 0 8px 22px rgba(var(--theme-secondary-rgb), 0.16);
  cursor: pointer;
  transform: translateY(-50%);
}

body:not(.admin-body) .home-tiktok-section .tiktok-carousel-arrow.previous {
  left: 2px;
}

body:not(.admin-body) .home-tiktok-section .tiktok-carousel-arrow.next {
  right: 2px;
}

body:not(.admin-body) .home-tiktok-section .tiktok-carousel-arrow:disabled {
  opacity: .35;
  cursor: default;
}

body:not(.admin-body) .home-tiktok-section .tiktok-carousel-arrow svg {
  width: 19px;
  height: 19px;
}

body:not(.admin-body) .home-tiktok-section .tiktok-carousel-indicators {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  min-height: 24px;
  margin-top: 9px;
  color: var(--theme-primary-text, #A61C4F);
  font-size: 12px;
  font-weight: 600;
}

body:not(.admin-body) .home-tiktok-section .tiktok-carousel-indicators button {
  width: 6px;
  height: 6px;
  min-width: 6px;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: rgba(var(--theme-primary-rgb), 0.28);
  cursor: pointer;
  transition: width .2s ease, background .2s ease;
}

body:not(.admin-body) .home-tiktok-section .tiktok-carousel-indicators button.active {
  width: 20px;
  background: var(--guinda, #A61C4F);
}

@media (max-width: 767px) {
  body:not(.admin-body) .home-tiktok-section .tiktok-video-grid.tiktok-carousel {
    display: flex !important;
    gap: 12px !important;
    justify-items: initial !important;
    padding: 6px 18px 10px !important;
    overflow-x: auto !important;
    scroll-padding-inline: 18px;
    scroll-snap-type: x mandatory;
  }

  body:not(.admin-body) .home-tiktok-section .tiktok-reel-card {
    flex: 0 0 min(84vw, 330px) !important;
    width: min(84vw, 330px) !important;
    max-width: 330px !important;
    height: auto !important;
    max-height: none !important;
    aspect-ratio: 9 / 16 !important;
    border-radius: 20px !important;
  }

  body:not(.admin-body) .home-tiktok-section .tiktok-carousel-arrow {
    display: none !important;
  }

  body:not(.admin-body) .home-tiktok-section .tiktok-product-overlay {
    left: 10px;
    right: 10px;
    bottom: 10px;
    min-width: 0;
  }

  body:not(.admin-body) .home-tiktok-section .tiktok-overlay-image img {
    width: 58px;
    height: 58px;
  }

  body:not(.admin-body) .home-tiktok-section .tiktok-product-toggle {
    right: 10px;
    bottom: 10px;
    width: 44px;
    height: 44px;
  }

  body:not(.admin-body) .home-tiktok-section .tiktok-carousel-indicators {
    margin-top: 7px;
  }
}

/* Mobile polish for delivery districts and payment settings. */
@media (max-width: 760px) {
  html body.admin-body main.module-screen .district-list-panel,
  html body.admin-body main.module-screen .payment-switch-panel,
  html body.admin-body main.module-screen .payment-list-panel {
    padding: 10px !important;
    border-radius: 10px !important;
  }

  html body.admin-body main.module-screen .district-list-panel .section-head,
  html body.admin-body main.module-screen .payment-list-panel .section-head {
    align-items: center !important;
    gap: 8px !important;
    margin-bottom: 8px !important;
  }

  html body.admin-body main.module-screen .district-list-panel .section-head h2,
  html body.admin-body main.module-screen .payment-list-panel .section-head h2 {
    font-size: 16px !important;
    line-height: 1 !important;
  }

  html body.admin-body main.module-screen .district-list-panel .section-head > span,
  html body.admin-body main.module-screen .payment-list-panel .section-head > span {
    padding: 5px 8px !important;
    font-size: 8px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  html body.admin-body main.module-screen .district-table {
    display: grid !important;
    gap: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  html body.admin-body main.module-screen .district-table-row {
    display: grid !important;
    grid-template-columns: minmax(58px, .8fr) minmax(76px, 1.25fr) 43px 54px !important;
    grid-template-areas:
      "district zones price status"
      "district zones actions actions" !important;
    align-items: center !important;
    gap: 5px 7px !important;
    min-width: 0 !important;
    padding: 9px 2px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--theme-tint) !important;
    border-radius: 0 !important;
    background: #fff !important;
    font-size: 8.5px !important;
    line-height: 1.2 !important;
  }

  html body.admin-body main.module-screen .district-table-row > div {
    display: block !important;
    min-width: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    font-size: inherit !important;
  }

  html body.admin-body main.module-screen .district-table-row > div::before {
    content: none !important;
    display: none !important;
  }

  html body.admin-body main.module-screen .district-table-row > div:nth-child(1) { grid-area: district !important; }
  html body.admin-body main.module-screen .district-table-row > div:nth-child(2) { grid-area: zones !important; }
  html body.admin-body main.module-screen .district-table-row > div:nth-child(3) { grid-area: price !important; text-align: center !important; }
  html body.admin-body main.module-screen .district-table-row > div:nth-child(4) { grid-area: status !important; text-align: center !important; }
  html body.admin-body main.module-screen .district-table-row > div:nth-child(5) { grid-area: actions !important; }

  html body.admin-body main.module-screen .district-table-row strong,
  html body.admin-body main.module-screen .district-table-row b {
    font-size: 9px !important;
    line-height: 1.15 !important;
  }

  html body.admin-body main.module-screen .district-table-row small {
    margin-top: 3px !important;
    font-size: 7.5px !important;
    line-height: 1.2 !important;
  }

  html body.admin-body main.module-screen .district-zone-preview span {
    display: block !important;
    margin-bottom: 2px !important;
    font-size: 9px !important;
    font-weight: 600 !important;
  }

  html body.admin-body main.module-screen .district-status {
    max-width: 100% !important;
    padding: 4px 5px !important;
    font-size: 7px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  html body.admin-body main.module-screen .district-table-row > .district-actions {
    grid-template-columns: repeat(3, 24px) !important;
    justify-content: end !important;
    justify-self: end !important;
    gap: 4px !important;
    width: 80px !important;
    min-width: 80px !important;
    max-width: 80px !important;
  }

  html body.admin-body main.module-screen .district-table-row .action-icon {
    width: 24px !important;
    min-width: 24px !important;
    max-width: 24px !important;
    height: 24px !important;
    min-height: 24px !important;
    max-height: 24px !important;
  }

  html body.admin-body main.module-screen .payment-switch-panel form {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 9px !important;
  }

  html body.admin-body main.module-screen .payment-switch-panel label,
  html body.admin-body main.module-screen .payment-switch-panel .muted {
    margin: 0 !important;
    font-size: 9px !important;
    line-height: 1.3 !important;
  }

  html body.admin-body main.module-screen .payment-switch-panel .check-row {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    min-height: 38px !important;
    padding: 8px 10px !important;
    border-radius: 8px !important;
  }

  html body.admin-body main.module-screen .payment-switch-panel .check-row input {
    flex: 0 0 14px !important;
    width: 14px !important;
    height: 14px !important;
  }

  html body.admin-body main.module-screen .payment-switch-panel label > input:not([type="checkbox"]) {
    height: 34px !important;
    min-height: 34px !important;
    margin-top: 4px !important;
    padding: 0 10px !important;
    font-size: 9px !important;
  }

  html body.admin-body main.module-screen .payment-switch-panel .button {
    width: max-content !important;
    min-height: 32px !important;
    padding: 0 14px !important;
    font-size: 9px !important;
  }

  html body.admin-body main.module-screen .payment-method-list {
    display: grid !important;
    gap: 0 !important;
    width: 100% !important;
    min-width: 0 !important;
  }

  html body.admin-body main.module-screen .payment-method-row {
    display: grid !important;
    grid-template-columns: 34px minmax(0, 1fr) 42px 78px !important;
    align-items: center !important;
    gap: 6px !important;
    width: 100% !important;
    min-width: 0 !important;
    padding: 8px 2px !important;
    border: 0 !important;
    border-bottom: 1px solid var(--theme-tint) !important;
    border-radius: 0 !important;
    background: #fff !important;
    font-size: 8px !important;
    line-height: 1.2 !important;
  }

  html body.admin-body main.module-screen .payment-method-row > img {
    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;
    border-radius: 6px !important;
  }

  html body.admin-body main.module-screen .payment-method-row > div:nth-child(2) {
    min-width: 0 !important;
  }

  html body.admin-body main.module-screen .payment-method-row strong {
    font-size: 8.5px !important;
    line-height: 1.15 !important;
  }

  html body.admin-body main.module-screen .payment-method-row p,
  html body.admin-body main.module-screen .payment-method-row small {
    margin: 2px 0 0 !important;
    font-size: 7px !important;
    line-height: 1.2 !important;
  }

  html body.admin-body main.module-screen .payment-method-row > .district-actions {
    grid-template-columns: repeat(3, 24px) !important;
    gap: 3px !important;
    width: 78px !important;
    min-width: 78px !important;
    max-width: 78px !important;
  }

  html body.admin-body main.module-screen .payment-method-row .action-icon {
    width: 24px !important;
    min-width: 24px !important;
    max-width: 24px !important;
    height: 24px !important;
    min-height: 24px !important;
    max-height: 24px !important;
  }
}

/* Final public navbar shell: use the same desktop capsule on every page. */
@media (min-width: 992px) {
  html body:not(.admin-body) header.site-header,
  html body.public-home .home-campaign-hero > .campaign-search-row {
    width: min(1200px, calc(100% - 48px)) !important;
    max-width: 1200px !important;
    min-height: 54px !important;
    height: 54px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 5px 16px 5px 20px !important;
    border-radius: 20px !important;
  }

  html body.public-home .home-campaign-hero > .campaign-menu {
    top: 14px !important;
    min-height: 54px !important;
    height: 54px !important;
  }
}

/* Keep TikTok player controls clear of the related-product card. */
body:not(.admin-body) .home-tiktok-section .tiktok-product-overlay {
  bottom: 72px !important;
}

@media (max-width: 767px) {
  body:not(.admin-body) .home-tiktok-section .tiktok-product-overlay,
  body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card:hover .tiktok-product-overlay,
  body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card.show-products .tiktok-product-overlay {
    bottom: 76px !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
  }

  body:not(.admin-body) .home-tiktok-section .tiktok-product-toggle {
    display: none !important;
  }
}

/* District zones viewer and final four-column mobile table. */
body.admin-body .district-zones-open {
  appearance: none !important;
  display: inline !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: var(--theme-primary-text, #A61C4F) !important;
  font: inherit !important;
  font-weight: 600 !important;
  text-align: left !important;
  text-decoration: none !important;
  cursor: pointer !important;
}

body.admin-body .district-zones-modal[hidden] {
  display: none !important;
}

body.admin-body .district-zones-modal {
  position: fixed;
  inset: 0;
  z-index: 15000;
  display: grid;
  place-items: center;
  padding: 16px;
}

body.admin-body .district-zones-backdrop {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  border: 0;
  background: rgba(var(--theme-heading-rgb), 0.48);
  backdrop-filter: blur(4px);
}

body.admin-body .district-zones-dialog {
  position: relative;
  z-index: 1;
  width: min(100%, 520px);
  max-height: min(82dvh, 620px);
  padding: 16px;
  overflow: hidden;
  border: 1px solid var(--theme-border);
  border-radius: 14px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(var(--theme-heading-rgb), 0.24);
}

body.admin-body .district-zones-dialog > header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

body.admin-body .district-zones-dialog header small {
  display: block;
  color: var(--theme-muted);
  font-size: 9px;
  text-transform: uppercase;
}

body.admin-body .district-zones-dialog header h2 {
  margin: 3px 0 0;
  color: var(--theme-secondary-text, #8A1640);
  font-size: 20px;
  line-height: 1;
}

body.admin-body .district-zones-close {
  display: grid;
  place-items: center;
  width: 32px;
  min-width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid var(--theme-border);
  border-radius: 50%;
  background: var(--theme-surface);
  color: var(--theme-primary-text, #A61C4F);
  font-size: 20px;
  cursor: pointer;
}

body.admin-body .district-zones-list-head,
body.admin-body .district-zones-list > div {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 86px;
  align-items: center;
  gap: 12px;
}

body.admin-body .district-zones-list-head {
  padding: 9px 11px;
  border-radius: 8px 8px 0 0;
  background: var(--theme-surface);
  color: var(--theme-muted);
  font-size: 9px;
  text-transform: uppercase;
}

body.admin-body .district-zones-list {
  max-height: calc(min(82dvh, 620px) - 112px);
  overflow-y: auto;
}

body.admin-body .district-zones-list > div {
  min-height: 42px;
  padding: 8px 11px;
  border-bottom: 1px solid var(--theme-tint);
  color: var(--theme-heading);
  font-size: 11px;
}

body.admin-body .district-zones-list > div strong {
  color: var(--theme-primary-text, #A61C4F);
  text-align: right;
  white-space: nowrap;
}

body.admin-body.district-zones-modal-open {
  overflow: hidden;
}

@media (min-width: 761px) {
  html body.admin-body main.module-screen .district-table-head,
  html body.admin-body main.module-screen .district-table-row {
    grid-template-columns: minmax(160px, 1fr) minmax(120px, .8fr) 100px 120px !important;
    min-width: 560px !important;
  }
}

@media (max-width: 760px) {
  html body.admin-body main.module-screen .district-table-head {
    display: grid !important;
    grid-template-columns: minmax(62px, 1fr) minmax(52px, .78fr) 50px 78px !important;
    align-items: center !important;
    gap: 4px !important;
    min-width: 0 !important;
    padding: 8px 2px !important;
    font-size: 7px !important;
  }

  html body.admin-body main.module-screen .district-table-row {
    grid-template-columns: minmax(62px, 1fr) minmax(52px, .78fr) 50px 78px !important;
    grid-template-areas: none !important;
    gap: 4px !important;
    min-height: 52px !important;
    padding: 8px 2px !important;
  }

  html body.admin-body main.module-screen .district-table-row > div:nth-child(1),
  html body.admin-body main.module-screen .district-table-row > div:nth-child(2),
  html body.admin-body main.module-screen .district-table-row > div:nth-child(3),
  html body.admin-body main.module-screen .district-table-row > div:nth-child(4),
  html body.admin-body main.module-screen .district-table-row > div:nth-child(5) {
    grid-area: auto !important;
  }

  html body.admin-body main.module-screen .district-table-row > .district-from-price {
    display: none !important;
  }

  html body.admin-body main.module-screen .district-name-cell small,
  html body.admin-body main.module-screen .district-zone-preview > small {
    display: none !important;
  }

  html body.admin-body main.module-screen .district-zones-open {
    font-size: 8.5px !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
  }

  html body.admin-body main.module-screen .district-status-cell {
    text-align: center !important;
  }

  html body.admin-body main.module-screen .district-table-row > .district-actions {
    grid-template-columns: repeat(3, 23px) !important;
    justify-content: end !important;
    justify-self: end !important;
    gap: 3px !important;
    width: 75px !important;
    min-width: 75px !important;
    max-width: 75px !important;
  }

  html body.admin-body main.module-screen .district-table-row .action-icon {
    width: 23px !important;
    min-width: 23px !important;
    max-width: 23px !important;
    height: 23px !important;
    min-height: 23px !important;
    max-height: 23px !important;
  }

  body.admin-body .district-zones-modal {
    align-items: start;
    padding: 12px 8px;
  }

  body.admin-body .district-zones-dialog {
    width: min(100%, 390px);
    max-height: calc(100dvh - 24px);
    padding: 12px;
    border-radius: 12px;
  }

  body.admin-body .district-zones-dialog header h2 {
    font-size: 17px;
  }

  body.admin-body .district-zones-list-head,
  body.admin-body .district-zones-list > div {
    grid-template-columns: minmax(0, 1fr) 72px;
    gap: 8px;
  }

  body.admin-body .district-zones-list {
    max-height: calc(100dvh - 124px);
  }

  body.admin-body .district-zones-list > div {
    min-height: 36px;
    padding: 7px 9px;
    font-size: 9px;
  }

  html body.admin-body .admin-form-modal .district-form {
    gap: 8px !important;
  }

  html body.admin-body .admin-form-modal .district-form > label {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 4px !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
  }

  html body.admin-body .admin-form-modal .district-form > label.check-row {
    display: flex !important;
    align-items: center !important;
  }

  html body.admin-body .admin-form-modal .district-form .field-help {
    position: static !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 1px 0 0 !important;
    padding: 0 !important;
    color: var(--theme-muted) !important;
    font-size: 7.5px !important;
    line-height: 1.3 !important;
    white-space: normal !important;
  }
}

/* Final category table layout. */
@media (min-width: 761px) {
  html body.admin-body main .category-admin-table .category-row-main {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    width: 100% !important;
    text-align: center !important;
  }

  html body.admin-body main .category-admin-table .category-row-main > span {
    width: 46px !important;
    min-width: 46px !important;
    height: 46px !important;
  }

  html body.admin-body main .category-admin-table .category-row-main > strong {
    display: block !important;
    width: 100% !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }

  html body.admin-body main .category-admin-table tbody tr {
    height: 82px !important;
  }
}

/* Products registry: five clear columns with compact discount and horizontal actions. */
html body.admin-body main .products-admin-table .product-table-identity {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  width: 100% !important;
  min-width: 0 !important;
  text-align: center !important;
}

html body.admin-body main .products-admin-table .product-table-identity > span {
  display: block !important;
  width: 100% !important;
  color: var(--theme-heading) !important;
  font-size: 10px !important;
  font-weight: 400 !important;
  line-height: 1.2 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

html body.admin-body main .products-admin-table .discount-admin-badge,
html body.admin-body main .products-admin-table .discount-admin-empty {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  max-width: 100% !important;
  min-height: 26px !important;
  padding: 4px 9px !important;
  border-radius: 999px !important;
  font-size: 9px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

html body.admin-body main .products-admin-table .table-actions {
  white-space: nowrap !important;
}

@media (min-width: 761px) {
  html body.admin-body main .products-admin-table .product-table-identity .thumb {
    width: 54px !important;
    min-width: 54px !important;
    height: 54px !important;
    margin: 0 !important;
  }

  html body.admin-body main .products-admin-table tbody tr {
    height: 92px !important;
  }
}

@media (max-width: 760px) {
  html body.admin-body main table.products-admin-table {
    table-layout: fixed !important;
  }

  html body.admin-body main table.products-admin-table th:nth-child(1) { width: 25% !important; }
  html body.admin-body main table.products-admin-table th:nth-child(2) { width: 21% !important; }
  html body.admin-body main table.products-admin-table th:nth-child(3) { width: 15% !important; }
  html body.admin-body main table.products-admin-table th:nth-child(4) { width: 20% !important; }
  html body.admin-body main table.products-admin-table th:nth-child(5) { width: 19% !important; }

  html body.admin-body main table.products-admin-table th,
  html body.admin-body main table.products-admin-table td {
    padding: 7px 2px !important;
    font-size: 7.5px !important;
    line-height: 1.15 !important;
    vertical-align: middle !important;
  }

  html body.admin-body main .products-admin-table .product-table-identity .thumb {
    display: block !important;
    width: 42px !important;
    min-width: 42px !important;
    max-width: 42px !important;
    height: 42px !important;
    margin: 0 auto !important;
    border-radius: 8px !important;
  }

  html body.admin-body main .products-admin-table .product-table-identity > span {
    font-size: 7.5px !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
  }

  html body.admin-body main .products-admin-table .discount-admin-badge,
  html body.admin-body main .products-admin-table .discount-admin-empty {
    min-height: 22px !important;
    padding: 3px 5px !important;
    font-size: 7px !important;
  }

  html body.admin-body main .products-admin-table .table-actions {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  html body.admin-body main .products-admin-table .table-actions .action-icon {
    display: grid !important;
    place-items: center !important;
    flex: 0 0 23px !important;
    width: 23px !important;
    min-width: 23px !important;
    max-width: 23px !important;
    height: 23px !important;
    min-height: 23px !important;
    max-height: 23px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

@media (max-width: 760px) {
  html body.admin-body main table.category-admin-table {
    table-layout: fixed !important;
  }

  html body.admin-body main table.category-admin-table th:nth-child(1) { width: 16% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(2) { width: 23% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(3) { width: 10% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(4) { width: 13% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(5) { width: 12% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(6) { width: 26% !important; }

  html body.admin-body main table.category-admin-table th,
  html body.admin-body main table.category-admin-table td {
    padding: 7px 2px !important;
    font-size: 7.5px !important;
    line-height: 1.15 !important;
    vertical-align: middle !important;
  }

  html body.admin-body main .category-admin-table .category-row-main {
    display: grid !important;
    place-items: center !important;
    width: 100% !important;
    gap: 0 !important;
  }

  html body.admin-body main .category-admin-table .category-row-main > span {
    display: block !important;
    width: 32px !important;
    min-width: 32px !important;
    height: 32px !important;
    margin: 0 auto !important;
  }

  html body.admin-body main .category-admin-table .category-row-main > strong,
  html body.admin-body main .category-admin-table .category-color-code {
    display: none !important;
  }

  html body.admin-body main .category-admin-table .category-color-cell {
    text-align: center !important;
  }

  html body.admin-body main .category-admin-table .color-swatch {
    display: block !important;
    width: 22px !important;
    height: 22px !important;
    margin: 0 auto !important;
  }

  html body.admin-body main .category-admin-table .table-actions {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  html body.admin-body main .category-admin-table .table-actions form {
    display: contents !important;
  }

  html body.admin-body main .category-admin-table .table-actions .action-icon {
    display: grid !important;
    place-items: center !important;
    flex: 0 0 24px !important;
    width: 24px !important;
    min-width: 24px !important;
    max-width: 24px !important;
    height: 24px !important;
    min-height: 24px !important;
    max-height: 24px !important;
    margin: 0 !important;
    padding: 0 !important;
  }
}

/* Category table correction: five columns and actions that cannot stack. */
html body.admin-body main .category-admin-table .category-action-row {
  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  width: max-content !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  white-space: nowrap !important;
}

html body.admin-body main .category-admin-table .category-action-row form {
  display: block !important;
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.admin-body main .category-admin-table .category-action-row .action-icon {
  display: grid !important;
  place-items: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
}

@media (max-width: 760px) {
  html body.admin-body main table.category-admin-table th:nth-child(1) { width: 27% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(2) { width: 24% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(3) { width: 10% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(4) { width: 14% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(5) { width: 25% !important; }

  html body.admin-body main .category-admin-table .category-row-main > strong {
    display: block !important;
    margin-top: 4px !important;
    font-size: 7.5px !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  html body.admin-body main .category-admin-table .table-actions {
    display: table-cell !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  html body.admin-body main .category-admin-table .category-action-row {
    gap: 4px !important;
  }

  html body.admin-body main .category-admin-table .category-action-row .action-icon {
    width: 24px !important;
    min-width: 24px !important;
    max-width: 24px !important;
    height: 24px !important;
    min-height: 24px !important;
    max-height: 24px !important;
    padding: 0 !important;
  }
}

/* Final narrow-phone fit for product discounts, actions and category names. */
html body.admin-body main .products-admin-table .product-action-row {
  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  width: max-content !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  white-space: nowrap !important;
}

html body.admin-body main .products-admin-table .product-action-row .action-icon {
  display: grid !important;
  place-items: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
}

@media (max-width: 760px) {
  html body.admin-body main table.products-admin-table th:nth-child(1) { width: 24% !important; }
  html body.admin-body main table.products-admin-table th:nth-child(2) { width: 20% !important; }
  html body.admin-body main table.products-admin-table th:nth-child(3) { width: 14% !important; }
  html body.admin-body main table.products-admin-table th:nth-child(4) { width: 23% !important; }
  html body.admin-body main table.products-admin-table th:nth-child(5) { width: 19% !important; }

  html body.admin-body main .products-admin-table td[data-label="Descuento"] {
    padding-inline: 2px !important;
    overflow: visible !important;
    text-align: center !important;
  }

  html body.admin-body main .products-admin-table .discount-admin-badge,
  html body.admin-body main .products-admin-table .discount-admin-empty {
    box-sizing: border-box !important;
    width: calc(100% - 2px) !important;
    max-width: calc(100% - 2px) !important;
    min-height: 21px !important;
    padding: 3px 2px !important;
    overflow: visible !important;
    font-size: 6.5px !important;
    white-space: nowrap !important;
  }

  html body.admin-body main .products-admin-table .table-actions {
    display: table-cell !important;
    overflow: visible !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  html body.admin-body main .products-admin-table .product-action-row {
    gap: 3px !important;
  }

  html body.admin-body main .products-admin-table .product-action-row .action-icon {
    width: 22px !important;
    min-width: 22px !important;
    max-width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    padding: 0 !important;
  }

  html body.admin-body main table.category-admin-table th:nth-child(1) { width: 30% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(2) { width: 22% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(3) { width: 9% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(4) { width: 13% !important; }
  html body.admin-body main table.category-admin-table th:nth-child(5) { width: 26% !important; }

  html body.admin-body main .category-admin-table .category-row-main > strong {
    max-width: 100% !important;
    font-size: 6.5px !important;
    line-height: 1.08 !important;
    overflow-wrap: anywhere !important;
    word-break: normal !important;
  }
}

/* Card messages: four compact columns, green active status and inline actions. */
html body.admin-body main .card-messages-table .card-message-action-row {
  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  width: max-content !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  white-space: nowrap !important;
}

/* District actions must always remain on one horizontal line. */
html body.admin-body main.module-screen .district-table-row .district-action-row {
  display: inline-flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  width: max-content !important;
  min-width: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  white-space: nowrap !important;
}

/* Match the Shop Now card visibility to TikTok's temporary player controls. */
body:not(.admin-body) .home-tiktok-section .tiktok-product-overlay,
body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card:hover .tiktok-product-overlay,
body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card.show-products .tiktok-product-overlay {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(12px) !important;
}

body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card.show-player-ui .tiktok-product-overlay,
body:not(.admin-body) .home-tiktok-section .encantos-tiktok-card.show-player-ui:hover .tiktok-product-overlay {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}

body:not(.admin-body) .home-tiktok-section .tiktok-product-toggle {
  display: none !important;
}

html body.admin-body main.module-screen .district-table-row .district-action-row form {
  display: block !important;
  flex: 0 0 auto !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.admin-body main.module-screen .district-table-row .district-action-row .action-icon {
  display: grid !important;
  place-items: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
}

@media (max-width: 760px) {
  html body.admin-body main.module-screen .district-table-row > .district-actions {
    display: table-cell !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  html body.admin-body main.module-screen .district-table-row .district-action-row {
    gap: 3px !important;
  }

  html body.admin-body main.module-screen .district-table-row .district-action-row .action-icon {
    width: 22px !important;
    min-width: 22px !important;
    max-width: 22px !important;
    height: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    padding: 0 !important;
  }
}

html body.admin-body main .card-messages-table .card-message-action-row form {
  display: block !important;
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
}

html body.admin-body main .card-messages-table .card-message-action-row .action-icon {
  display: grid !important;
  place-items: center !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
}

html body.admin-body main .card-messages-table .status.preparado {
  border-color: #bfe8d2 !important;
  background: #eaf8f0 !important;
  color: #17834d !important;
}

@media (min-width: 761px) {
  html body.admin-body main .card-messages-table th:nth-child(1) { width: 22% !important; }
  html body.admin-body main .card-messages-table th:nth-child(2) { width: 46% !important; }
  html body.admin-body main .card-messages-table th:nth-child(3) { width: 12% !important; }
  html body.admin-body main .card-messages-table th:nth-child(4) { width: 20% !important; }
}

@media (max-width: 760px) {
  html body.admin-body main table.card-messages-table {
    table-layout: fixed !important;
  }

  html body.admin-body main table.card-messages-table th:nth-child(1) { width: 25% !important; }
  html body.admin-body main table.card-messages-table th:nth-child(2) { width: 35% !important; }
  html body.admin-body main table.card-messages-table th:nth-child(3) { width: 14% !important; }
  html body.admin-body main table.card-messages-table th:nth-child(4) { width: 26% !important; }

  html body.admin-body main table.card-messages-table th,
  html body.admin-body main table.card-messages-table td {
    padding: 8px 3px !important;
    font-size: 7.5px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
    vertical-align: middle !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  html body.admin-body main .card-messages-table td[data-label="Ocasion"] strong {
    display: block !important;
    font-size: 8px !important;
    font-weight: 400 !important;
    line-height: 1.15 !important;
  }

  html body.admin-body main .card-messages-table td[data-label="Mensaje"] {
    font-size: 7px !important;
    line-height: 1.22 !important;
  }

  html body.admin-body main .card-messages-table .status {
    max-width: 100% !important;
    padding: 4px 5px !important;
    font-size: 6.5px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  html body.admin-body main .card-messages-table .table-actions {
    display: table-cell !important;
    overflow: visible !important;
    text-align: center !important;
    vertical-align: middle !important;
  }

  html body.admin-body main .card-messages-table .card-message-action-row {
    gap: 3px !important;
  }

  html body.admin-body main .card-messages-table .card-message-action-row .action-icon {
    width: 23px !important;
    min-width: 23px !important;
    max-width: 23px !important;
    height: 23px !important;
    min-height: 23px !important;
    max-height: 23px !important;
    padding: 0 !important;
  }
}

/* Category manager and the matching public navigation accents. */
.prewarmed-player [data-tiktok-iframe] {opacity: 0 !important;pointer-events: none !important}
html body:not(.admin-body) .main-nav .nav-category > summary,
html body:not(.admin-body) .main-nav .nav-category > a,
html body:not(.admin-body) .campaign-menu .nav-category > summary,
html body:not(.admin-body) .campaign-menu .nav-category > a,
html body:not(.admin-body) .nav-mega-item {
  background-color: var(--category-bg, transparent) !important;
  border-radius: 6px;
}
html body.admin-body .category-navbar-preview {
  display: flex;
  align-items: center;
  gap: 22px;
  margin: 12px 0 18px;
  padding: 12px 16px;
  background: #fffafa;
  border: 1px solid #efd2dc;
  border-radius: 8px;
}
html body.admin-body .category-preview-logo {font-family: Georgia,serif;font-size: 14px;letter-spacing: 2px;white-space: nowrap}
html body.admin-body .category-navbar-preview nav {display: flex;flex-wrap: wrap;gap: 6px;min-width: 0}
html body.admin-body .category-preview-group {position: relative}
html body.admin-body .category-preview-group > button {border: 0;background: transparent;color: #89234c;padding: 8px 10px;border-radius: 6px;cursor: pointer;font: inherit;font-size: 12px}
html body.admin-body .category-preview-children {display: none;position: absolute;z-index: 5;top: 100%;left: 0;min-width: 220px;max-height: 240px;overflow: auto;padding: 8px;background: white;border: 1px solid #efd2dc;box-shadow: 0 12px 24px #58132c22;border-radius: 7px}
html body.admin-body .category-preview-group.is-open .category-preview-children {display: grid;gap: 4px}
html body.admin-body .category-preview-children span {padding: 7px 9px;border-radius: 5px;font-size: 12px;white-space: nowrap}
html body.admin-body .category-sort-tree {display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 10px}
html body.admin-body .category-sort-tree > article {min-width: 0;border: 1px solid #efdce3;border-radius: 7px;padding: 10px;background: #fff}
html body.admin-body .category-sort-tree > article > header {display: flex;align-items: center;gap: 7px}
html body.admin-body .category-sort-tree > article > header strong {flex: 1;min-width: 0;font-size: 13px}
html body.admin-body .category-sort-tree [data-category-children] {display: flex;flex-wrap: wrap;align-content: flex-start;gap: 5px;min-height: 36px;margin: 8px 0}
html body.admin-body .category-sort-child {display: inline-flex;align-items: center;gap: 3px;padding: 4px 6px;border: 1px solid #f2dce4;border-radius: 5px;font-size: 11px;background: #fff9fb}
html body.admin-body .category-sort-child a {display: inline-flex;width: 17px;height: 17px;align-items: center;justify-content: center;color: #9c3159}
html body.admin-body .category-sort-child svg {width: 13px;height: 13px}
html body.admin-body .category-sort-child form {display: inline-flex;margin: 0}
html body.admin-body .category-inline-delete {display: inline-flex;align-items: center;justify-content: center;border: 0;background: transparent;color: #a62955;width: 18px;height: 18px;padding: 0;cursor: pointer}
html body.admin-body .category-grip {border: 0;background: transparent;color: #9c3159;cursor: grab;touch-action: none;padding: 3px;font-size: 14px}
html body.admin-body .category-add-child {font-size: 11px;color: #9c3159}
html body.admin-body [data-category-color-field][hidden] {display: none}
@media(max-width:700px) {
  html body.admin-body .category-navbar-preview {display: block}
  html body.admin-body .category-preview-logo {display: block;margin-bottom: 7px}
  html body.admin-body .category-sort-tree {grid-template-columns: 1fr}
}

/* Orders management. Scoped to the existing orders module; navbar remains untouched. */
html body.admin-body .orders-management {display:grid;gap:16px}
html body.admin-body .orders-summary-grid {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
html body.admin-body .orders-summary-grid article {display:grid;gap:2px;padding:13px;border:1px solid var(--theme-border);border-radius:7px;background:#fff}
html body.admin-body .orders-summary-grid span {font-size:10px;color:var(--theme-muted);text-transform:uppercase}
html body.admin-body .orders-summary-grid strong {font-size:22px;color:var(--theme-heading)}
html body.admin-body .orders-summary-grid small {font-size:9px;color:var(--theme-muted)}
html body.admin-body .orders-management-filters {display:grid;grid-template-columns:minmax(210px,2fr) repeat(5,minmax(105px,1fr));gap:8px;align-items:end;padding:14px;border:1px solid var(--theme-border);border-radius:7px;background:#fff}
html body.admin-body .orders-management-filters label {display:grid;gap:4px;min-width:0;font-size:9px;color:var(--theme-secondary-text)}
html body.admin-body .orders-management-filters input,html body.admin-body .orders-management-filters select {width:100%;min-width:0;height:38px;padding:7px 9px;border:1px solid var(--theme-border);border-radius:6px;background:#fff;font:inherit;font-size:10px}
html body.admin-body .orders-management-filters .button {min-height:37px;padding:8px 11px;font-size:10px}
html body.admin-body .orders-management-table {overflow:hidden;border:1px solid var(--theme-border);border-radius:7px;background:#fff}
html body.admin-body .orders-management-head,html body.admin-body .orders-management-row {display:grid;grid-template-columns:1.05fr 1.15fr 1.6fr 1.1fr 1fr .9fr .9fr 82px;align-items:center;gap:8px;padding:10px 12px}
html body.admin-body .orders-management-head {background:var(--theme-surface);color:var(--theme-secondary-text);font-size:8px;font-weight:700;text-transform:uppercase}
html body.admin-body .orders-management-row {min-height:74px;border-top:1px solid var(--theme-border);font-size:9px}
html body.admin-body .orders-management-row > div {display:grid;gap:3px;min-width:0}
html body.admin-body .orders-management-row strong {overflow:hidden;font-size:9.5px;text-overflow:ellipsis}
html body.admin-body .orders-management-row small {font-size:8px;color:var(--theme-muted)}
html body.admin-body .management-product-cell {grid-template-columns:38px minmax(0,1fr)!important;align-items:center}
html body.admin-body .management-product-cell img,html body.admin-body .management-product-fallback {width:38px;height:38px;object-fit:cover;border-radius:5px;background:var(--theme-surface);display:grid;place-items:center}
html body.admin-body .payment-badge,html body.admin-body .order-state-badge {display:inline-flex;width:max-content;max-width:100%;padding:5px 7px;border-radius:999px;font-size:8px;font-weight:600}
html body.admin-body .payment-pagado,html body.admin-body .state-delivered {background:#e7f7ef;color:#237a52}
html body.admin-body .payment-falta_pagar,html body.admin-body .payment-cancelado,html body.admin-body .state-cancelled {background:#fdebef;color:#a5284e}
html body.admin-body .payment-pendiente,html body.admin-body .payment-comprobante-enviado,html body.admin-body .state-pending {background:#fff3d9;color:#8a6414}
html body.admin-body .state-new,html body.admin-body .state-confirmed {background:#e9f2ff;color:#2b61a5}
html body.admin-body .state-preparing {background:#fff0df;color:#a75a12}
html body.admin-body .state-ready {background:#e4f7fa;color:#237886}
html body.admin-body .state-route {background:#f0e9fb;color:#65419a}
html body.admin-body .management-actions {display:flex!important;grid-auto-flow:column;justify-content:start;gap:5px}
html body.admin-body .management-actions .action-icon {width:30px;height:30px;min-width:30px;font-size:9px;text-decoration:none}
html body.admin-body .management-order-modal[aria-hidden="true"] {display:none!important}
html body.admin-body .management-order-modal {position:fixed;z-index:9000;inset:0;display:flex;justify-content:flex-end;background:rgba(var(--theme-heading-rgb),.42);backdrop-filter:blur(3px)}
html body.admin-body .management-order-panel {display:grid;grid-template-rows:auto minmax(0,1fr);width:min(720px,96vw);height:100%;background:#fff;box-shadow:-20px 0 50px #3910202b}
html body.admin-body .management-order-panel>header {display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--theme-border)}
html body.admin-body .management-order-panel>header span {font-size:9px;color:var(--theme-muted);text-transform:uppercase}
html body.admin-body .management-order-panel>header h2 {margin:2px 0 0;font-size:21px;color:var(--theme-heading)}
html body.admin-body .management-order-panel>header button {width:34px;height:34px;border:0;border-radius:50%;background:var(--theme-surface);color:var(--theme-primary-text);font-size:20px;cursor:pointer}
html body.admin-body .management-order-body {overflow:auto;padding:18px 20px 30px}
html body.admin-body .management-order-body>section {padding:16px 0;border-bottom:1px solid var(--theme-border)}
html body.admin-body .management-order-body h3 {margin:0 0 10px;font-size:12px;color:var(--theme-heading)}
html body.admin-body .management-detail-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
html body.admin-body .management-detail-grid p {display:grid;gap:3px;margin:0}
html body.admin-body .management-detail-grid small {font-size:8px;color:var(--theme-muted);text-transform:uppercase}
html body.admin-body .management-detail-grid strong {font-size:10px;overflow-wrap:anywhere}
html body.admin-body .management-item-list {display:grid;gap:7px}
html body.admin-body .management-item-list article {display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:9px;padding:7px 0}
html body.admin-body .management-item-list img,html body.admin-body .management-item-list article>span {width:46px;height:46px;object-fit:cover;border-radius:6px;background:var(--theme-surface);display:grid;place-items:center}
html body.admin-body .management-item-list div {display:grid;gap:3px}
html body.admin-body .management-item-list strong {font-size:10px}html body.admin-body .management-item-list small {font-size:9px;color:var(--theme-muted)}html body.admin-body .management-item-list b {font-size:10px}
html body.admin-body .management-dedication {margin-top:10px;padding:10px;background:var(--theme-surface);border-radius:6px}html body.admin-body .management-dedication small {font-size:8px;text-transform:uppercase;color:var(--theme-muted)}html body.admin-body .management-dedication p {margin:4px 0 0;font-size:10px;white-space:pre-line}
html body.admin-body .management-order-body form {display:grid;gap:8px}html body.admin-body .management-order-body input,html body.admin-body .management-order-body select,html body.admin-body .management-order-body textarea {width:100%;padding:9px;border:1px solid var(--theme-border);border-radius:6px;font:inherit;font-size:10px}html body.admin-body .management-inline-form {grid-template-columns:1fr 1fr auto!important;align-items:end}html body.admin-body [data-management-payment-form]{grid-template-columns:1fr 1fr 1.2fr auto!important}.management-location-inputs {display:grid;grid-template-columns:2fr 1fr 1fr;gap:8px}
html body.admin-body .management-history {display:grid;gap:8px}html body.admin-body .management-history article {display:grid;gap:2px;padding-left:12px;border-left:2px solid var(--theme-accent)}html body.admin-body .management-history strong {font-size:10px;text-transform:capitalize}html body.admin-body .management-history span,html body.admin-body .management-history small {font-size:8.5px;color:var(--theme-muted)}
html body.management-order-open {overflow:hidden}
@media(max-width:900px){html body.admin-body .orders-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}html body.admin-body .orders-management-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.orders-search-field{grid-column:1/-1}html body.admin-body .orders-management-table{overflow:visible;border:0;background:transparent}html body.admin-body .orders-management-head{display:none}html body.admin-body .orders-management-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:10px;padding:12px;border:1px solid var(--theme-border);border-radius:7px;background:#fff}html body.admin-body .orders-management-row>div:before{content:attr(data-label);font-size:7px;font-weight:700;color:var(--theme-muted);text-transform:uppercase}.management-product-cell{grid-column:1/-1}.management-product-cell:before{grid-column:1/-1}.management-product-cell>img,.management-product-cell>.management-product-fallback{grid-column:1;grid-row:2}.management-product-cell>span:last-child{grid-column:2;grid-row:2;width:auto;min-width:0}.management-actions{grid-column:1/-1}html body.admin-body [data-management-payment-form]{grid-template-columns:1fr 1fr!important}}
@media(max-width:520px){html body.admin-body .orders-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html body.admin-body .orders-management-filters{grid-template-columns:repeat(2,minmax(0,1fr))}html body.admin-body .orders-management-filters .button{width:100%}html body.admin-body .orders-management-row{grid-template-columns:1fr 1fr}.management-product-cell{grid-column:1/-1}.management-order-panel{width:100vw}.management-order-body{padding:14px 14px 28px}.management-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.management-inline-form,html body.admin-body [data-management-payment-form],.management-location-inputs{grid-template-columns:1fr!important}}

/* Orders workspace inspired by the supplied operational dashboard. */
html body.admin-body main.orders-screen {
  width: 100% !important;
  max-width: none !important;
  padding: 22px 24px 48px !important;
}

html body.admin-body .orders-reference-header {
  display: grid !important;
  grid-template-columns: minmax(280px, 1fr) minmax(320px, 440px) auto;
  align-items: center !important;
  gap: 16px !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
}

html body.admin-body .orders-reference-header h1 {
  margin: 0 !important;
  color: #15151b !important;
  font-family: inherit !important;
  font-size: 26px !important;
  font-weight: 750 !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
}

html body.admin-body .orders-reference-header p {
  margin: 5px 0 0 !important;
  color: #74717b !important;
  font-size: 11px !important;
}

html body.admin-body .orders-header-search {
  position: relative;
  display: flex;
  align-items: center;
  min-width: 0;
}

html body.admin-body .orders-header-search > span {
  position: absolute;
  left: 13px;
  z-index: 1;
  display: grid;
  color: #5d5964;
}

html body.admin-body .orders-header-search svg {
  width: 17px;
  height: 17px;
}

html body.admin-body .orders-header-search input {
  width: 100%;
  height: 42px;
  padding: 0 14px 0 40px;
  border: 1px solid #dedde3;
  border-radius: 7px;
  background: #fff;
  color: #25232a;
  font: inherit;
  font-size: 11px;
  outline: none;
  box-shadow: 0 2px 7px rgba(45, 34, 40, .035);
}

html body.admin-body .orders-header-search input:focus {
  border-color: var(--theme-primary);
  box-shadow: 0 0 0 3px rgba(var(--theme-primary-rgb), .1);
}

html body.admin-body .orders-header-actions {
  display: flex;
  align-items: center;
  gap: 9px;
}

html body.admin-body .orders-new-button,
html body.admin-body .orders-export-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 42px;
  padding: 0 16px;
  border: 1px solid #dedde3;
  border-radius: 7px;
  background: #fff;
  color: #25232a;
  font: inherit;
  font-size: 10px;
  font-weight: 650;
  text-decoration: none;
  cursor: pointer;
}

html body.admin-body .orders-new-button {
  border-color: transparent !important;
  background: linear-gradient(135deg, #d78ca4, #b3154e) !important;
  color: #fff !important;
  box-shadow: 0 6px 14px rgba(var(--theme-primary-rgb), .18) !important;
}

html body.admin-body .orders-new-button svg,
html body.admin-body .orders-export-button svg {
  width: 16px;
  height: 16px;
}

html body.admin-body .orders-tabs {
  display: inline-grid !important;
  grid-template-columns: repeat(2, minmax(125px, 1fr)) !important;
  width: max-content !important;
  margin: 0 0 16px !important;
  padding: 3px !important;
  border: 1px solid #e6e3e6 !important;
  border-radius: 7px !important;
  background: #f7f6f7 !important;
  box-shadow: none !important;
}

html body.admin-body .orders-tabs a {
  min-height: 34px !important;
  padding: 0 14px !important;
  border: 0 !important;
  border-radius: 5px !important;
  background: transparent !important;
  color: #6e6972 !important;
  font-size: 9.5px !important;
  box-shadow: none !important;
}

html body.admin-body .orders-tabs a.active {
  background: #fff !important;
  color: var(--theme-primary-text) !important;
  box-shadow: 0 2px 8px rgba(56, 39, 47, .08) !important;
}

html body.admin-body .orders-management {
  gap: 14px !important;
  transition: margin-right .2s ease;
}

html body.admin-body .orders-summary-grid {
  gap: 10px !important;
}

html body.admin-body .orders-summary-grid article {
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 68px !important;
  padding: 10px 12px !important;
  border: 1px solid #e8e5e8 !important;
  border-radius: 8px !important;
  background: #fff !important;
  box-shadow: 0 5px 15px rgba(42, 32, 38, .04) !important;
}

html body.admin-body .orders-summary-grid article > i {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 7px;
  background: #f2f2f5;
  color: #35323c;
  font-style: normal;
}

html body.admin-body .orders-summary-grid article > i svg {
  width: 20px;
  height: 20px;
}

html body.admin-body .orders-summary-grid article > span {
  display: grid;
  gap: 3px;
  color: #25222a !important;
  font-size: 10px !important;
  font-weight: 650;
  text-transform: none !important;
}

html body.admin-body .orders-summary-grid article > span strong {
  color: #85808a !important;
  font-size: 9px !important;
  font-weight: 450 !important;
}

html body.admin-body .orders-summary-grid .summary-pending > i {background:#fff0f2;color:#b53552}
html body.admin-body .orders-summary-grid .summary-paid > i {background:#eaf8ef;color:#168044}
html body.admin-body .orders-summary-grid .summary-preparing > i {background:#fff5df;color:#a36a0e}
html body.admin-body .orders-summary-grid .summary-route > i {background:#f2eafd;color:#7549a7}
html body.admin-body .orders-summary-grid .summary-delivered > i {background:#eaf8ef;color:#208146}

html body.admin-body .orders-management-filters {
  grid-template-columns: repeat(5, minmax(130px, 1fr)) auto 32px !important;
  gap: 10px !important;
  padding: 12px 14px !important;
  border-color: #e8e5e8 !important;
  background: #fff !important;
  box-shadow: 0 4px 16px rgba(42, 32, 38, .035);
}

html body.admin-body .orders-management-filters label {
  gap: 5px !important;
  color: #3b3740 !important;
  font-size: 9px !important;
  font-weight: 650;
}

html body.admin-body .orders-management-filters select {
  height: 36px !important;
  border-color: #e3dfe3 !important;
  background: #faf9fa !important;
  color: #4d4850 !important;
}

html body.admin-body .orders-filter-button,
html body.admin-body .orders-clear-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 36px;
  align-self: end;
  padding: 0 12px;
  border: 0;
  border-radius: 6px;
  background: #b3154e;
  color: #fff;
  font: inherit;
  font-size: 9px;
  font-weight: 650;
  text-decoration: none;
  cursor: pointer;
}

html body.admin-body .orders-filter-button svg {width:14px;height:14px}
html body.admin-body .orders-clear-button {padding:0;background:#f6f1f3;color:var(--theme-primary-text);font-size:18px}

html body.admin-body .orders-management-table {
  border-color: #e3e0e4 !important;
  border-radius: 9px !important;
  box-shadow: 0 8px 24px rgba(43, 32, 39, .055);
}

html body.admin-body .orders-management-head,
html body.admin-body .orders-management-row {
  grid-template-columns: 28px .95fr 1.2fr 1.65fr 1.15fr .9fr 1fr 1.05fr 68px !important;
  gap: 9px !important;
  padding: 10px 13px !important;
}

html body.admin-body .orders-management-head {
  min-height: 42px;
  background: #fff !important;
  color: #3e3942 !important;
  font-size: 8px !important;
  text-transform: none !important;
}

html body.admin-body .orders-management-head input,
html body.admin-body .management-select input {
  width: 14px;
  height: 14px;
  accent-color: var(--theme-primary);
}

html body.admin-body .orders-management-row {
  min-height: 66px !important;
  border-color: #ebe8eb !important;
  background: #fff;
  cursor: default;
  transition: background .15s ease, box-shadow .15s ease;
}

html body.admin-body .orders-management-row:hover,
html body.admin-body .orders-management-row.is-selected {
  background: linear-gradient(90deg, rgba(var(--theme-primary-rgb), .075), rgba(var(--theme-primary-rgb), .025)) !important;
}

html body.admin-body .orders-management-row.is-selected {
  box-shadow: inset 3px 0 0 var(--theme-primary);
}

html body.admin-body .orders-management-row strong {color:#25222a;font-size:9px!important}
html body.admin-body .orders-management-row small {color:#77717b;font-size:8px!important}
html body.admin-body .management-product-cell img,
html body.admin-body .management-product-fallback {border-radius:6px!important}

html body.admin-body .management-actions .action-icon {
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #5a5560 !important;
}

@media (min-width: 1280px) {
  html body.admin-body.management-order-open .orders-reference-header,
  html body.admin-body.management-order-open .orders-tabs,
  html body.admin-body.management-order-open .orders-management {
    margin-right: 410px !important;
  }

  html body.admin-body .management-order-modal {
    inset: 96px 16px 16px auto !important;
    width: 392px !important;
    height: auto !important;
    background: transparent !important;
    backdrop-filter: none !important;
    pointer-events: none;
  }

  html body.admin-body .management-order-panel {
    width: 100% !important;
    height: 100% !important;
    border: 1px solid #e2dfe3;
    border-radius: 10px;
    box-shadow: 0 12px 38px rgba(37, 27, 33, .12) !important;
    pointer-events: auto;
    overflow: hidden;
  }
}

html body.admin-body .management-order-panel > header {
  background: linear-gradient(135deg, rgba(var(--theme-primary-rgb), .08), #fff 62%);
}

html body.admin-body .management-order-body > section {
  margin: 0 -6px;
  padding: 14px 6px !important;
}

html body.admin-body .management-order-body h3 {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 7px 9px;
  border-radius: 5px;
  background: linear-gradient(90deg, rgba(var(--theme-primary-rgb), .08), transparent);
  color: #25222a !important;
  font-family: inherit !important;
  font-size: 10px !important;
}

@media (max-width: 1100px) {
  html body.admin-body .orders-reference-header {grid-template-columns:1fr auto}
  html body.admin-body .orders-header-search {grid-column:1/-1;grid-row:2}
  html body.admin-body .orders-summary-grid {grid-template-columns:repeat(3,minmax(0,1fr))!important}
  html body.admin-body .orders-management-filters {grid-template-columns:repeat(3,minmax(0,1fr)) auto!important}
}

@media (max-width: 900px) {
  html body.admin-body main.orders-screen {padding:18px 12px 36px!important}
  html body.admin-body .orders-reference-header {grid-template-columns:1fr!important}
  html body.admin-body .orders-header-actions {grid-row:3}
  html body.admin-body .orders-tabs {width:100%!important}
  html body.admin-body .orders-management-filters {grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body.admin-body .orders-filter-button {width:100%}
  html body.admin-body .orders-clear-button {width:100%}
  html body.admin-body .orders-management-table {overflow:visible!important;border:0!important;background:transparent!important;box-shadow:none!important}
  html body.admin-body .orders-management-head {display:none!important}
  html body.admin-body .orders-management-row {grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px 14px!important;margin-bottom:10px!important;padding:13px!important;border:1px solid #e4e1e4!important;border-radius:8px!important;background:#fff!important;box-shadow:0 6px 18px rgba(42,32,38,.045)!important}
  html body.admin-body .orders-management-row>div {width:auto!important;min-width:0!important}
  html body.admin-body .orders-management-row>div:before {display:block!important;margin-bottom:3px!important;color:#8b838d!important;font-size:7px!important;font-weight:700!important;text-transform:uppercase!important}
  html body.admin-body .management-select {display:none!important}
  html body.admin-body .management-product-cell {grid-column:1/-1!important;grid-template-columns:42px minmax(0,1fr)!important}
  html body.admin-body .management-product-cell:before {grid-column:1/-1!important}
  html body.admin-body .management-product-cell>img,html body.admin-body .management-product-cell>.management-product-fallback {grid-column:1!important;grid-row:2!important;width:42px!important;height:42px!important}
  html body.admin-body .management-product-cell>span:last-child {grid-column:2!important;grid-row:2!important;width:auto!important;min-width:0!important}
  html body.admin-body .management-actions {grid-column:1/-1!important;justify-content:flex-start!important}
}

@media (min-width: 641px) and (max-width: 900px) {
  html body.admin-body .orders-management-row {grid-template-columns:repeat(4,minmax(0,1fr))!important}
  html body.admin-body .management-product-cell {grid-column:span 2!important}
  html body.admin-body .management-actions {grid-column:1/-1!important}
}

@media (max-width: 520px) {
  html body.admin-body .orders-reference-header h1 {font-size:21px!important}
  html body.admin-body .orders-reference-header p {font-size:9px!important}
  html body.admin-body .orders-header-actions {display:grid;grid-template-columns:1fr 1fr;width:100%}
  html body.admin-body .orders-new-button,html body.admin-body .orders-export-button {width:100%;padding:0 10px}
  html body.admin-body .orders-summary-grid {grid-template-columns:repeat(2,minmax(0,1fr))!important}
  html body.admin-body .orders-summary-grid article {grid-template-columns:32px minmax(0,1fr)!important;min-height:60px!important;padding:8px!important}
  html body.admin-body .orders-summary-grid article>i {width:32px;height:32px}
  html body.admin-body .orders-summary-grid article>i svg {width:17px;height:17px}
  html body.admin-body .orders-management-filters {grid-template-columns:1fr 1fr!important;padding:10px!important}
  html body.admin-body .orders-management-filters label:nth-of-type(5) {grid-column:1/-1}
}

/* Order detail editor: mirrors the supplied reference panel. */
html body.admin-body .management-order-panel {
  color: #25222a;
}

html body.admin-body .management-order-hero {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  padding: 12px !important;
  background: #fff !important;
}

html body.admin-body .management-order-hero-product {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 0;
}

html body.admin-body .management-order-hero-image {
  flex: 0 0 64px;
  display: grid;
  place-items: center;
  width: 64px;
  height: 64px;
  overflow: hidden;
  border-radius: 7px;
  background: #f8e9ed;
}

html body.admin-body .management-order-hero-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

html body.admin-body .management-order-hero-image i {
  color: var(--theme-primary-text);
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
}

html body.admin-body .management-order-title-line {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 7px;
}

html body.admin-body .management-order-title-line h2 {
  margin: 1px 0 !important;
  color: #17151a !important;
  font-family: inherit !important;
  font-size: 18px !important;
  font-weight: 750 !important;
  letter-spacing: 0 !important;
}

html body.admin-body [data-management-hero-status] {
  display: inline-flex;
  align-items: center;
  min-height: 23px;
  padding: 0 9px;
  border-radius: 6px;
  background: #f0e8fc;
  color: #6f44a3;
  font-size: 8px;
  font-weight: 700;
}

html body.admin-body [data-management-hero-status][data-status="pagado"],
html body.admin-body [data-management-hero-status][data-status="entregado"] {background:#e5f7ec;color:#187944}
html body.admin-body [data-management-hero-status][data-status="pendiente"] {background:#fff1d9;color:#8f620d}
html body.admin-body [data-management-hero-status][data-status="cancelado"] {background:#fde8ec;color:#a72a4a}

html body.admin-body [data-management-hero-meta] {
  display: block;
  max-width: 260px;
  overflow: hidden;
  color: #77717a;
  font-size: 8.5px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

html body.admin-body .management-order-body {
  padding: 10px 12px 0 !important;
  background: #fff;
}

html body.admin-body .management-edit-form {
  display: grid !important;
  gap: 10px !important;
}

html body.admin-body .management-edit-form > .management-panel-block {
  margin: 0 !important;
  padding: 0 0 10px !important;
  border: 0 !important;
}

html body.admin-body .management-panel-block > h3 {
  display: flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-height: 32px;
  margin: 0 0 8px !important;
  padding: 6px 8px !important;
  border-radius: 6px !important;
  background: linear-gradient(90deg, #fff0f0, #faf7f7) !important;
  color: #202026 !important;
  font-size: 10px !important;
  font-weight: 750 !important;
}

html body.admin-body .management-panel-block > h3 > span {
  display: grid;
  color: #df5b69;
}

html body.admin-body .management-panel-block > h3 svg {
  width: 17px;
  height: 17px;
}

html body.admin-body .management-panel-block > h3 button {
  margin-left: auto;
  padding: 3px 0;
  border: 0;
  background: transparent;
  color: #c75b69;
  font: inherit;
  font-size: 8px;
  cursor: pointer;
}

html body.admin-body .management-panel-block > h3 button::before {
  content: "\270E";
  margin-right: 4px;
}

html body.admin-body .management-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px 9px;
}

html body.admin-body .management-form-grid.order-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

html body.admin-body .management-form-grid label,
html body.admin-body .management-product-editor > label {
  display: grid;
  gap: 3px;
  min-width: 0;
  color: #3c3840;
  font-size: 8px;
}

html body.admin-body .management-form-grid .wide-field {
  grid-column: 1 / -1;
}

html body.admin-body .management-edit-form input,
html body.admin-body .management-edit-form select,
html body.admin-body .management-edit-form textarea {
  min-width: 0;
  min-height: 32px;
  padding: 6px 8px !important;
  border: 1px solid #dedce2 !important;
  border-radius: 5px !important;
  background: #fff !important;
  color: #2b2830 !important;
  font: inherit !important;
  font-size: 9px !important;
  box-shadow: inset 0 1px 2px rgba(35, 27, 32, .025);
}

html body.admin-body .management-edit-form textarea {
  resize: vertical;
  line-height: 1.35;
}

html body.admin-body .management-edit-form input[readonly] {
  background: #f8f7f8 !important;
  color: #77717a !important;
}

html body.admin-body .management-phone-field,
html body.admin-body .management-map-field {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 32px;
  gap: 5px;
}

html body.admin-body .management-phone-field a,
html body.admin-body .management-map-field a {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #e5f8ef;
  color: #169765;
}

html body.admin-body .management-map-field a {
  border-radius: 5px;
  background: #edf4ff;
  color: #3979cc;
}

html body.admin-body .management-phone-field svg,
html body.admin-body .management-map-field svg {width:16px;height:16px}
html body.admin-body .management-phone-field a.disabled,
html body.admin-body .management-map-field a.disabled {opacity:.4;pointer-events:none}

html body.admin-body .management-product-editor {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  gap: 8px;
  align-items: start;
}

html body.admin-body .management-product-editor .management-item-list {
  grid-row: span 1;
}

html body.admin-body .management-product-editor .management-item-list article {
  grid-template-columns: 52px minmax(0, 1fr) !important;
  gap: 7px !important;
  padding: 0 !important;
}

html body.admin-body .management-product-editor .management-item-list article > img,
html body.admin-body .management-product-editor .management-item-list article > span {
  width: 52px !important;
  height: 52px !important;
}

html body.admin-body .management-product-editor .management-item-list article > div {
  display: none !important;
}

html body.admin-body .management-product-editor .management-item-list article > b {
  display: none;
}

html body.admin-body .management-product-fields {
  display: grid;
  grid-column: 2;
  gap: 6px;
}

html body.admin-body .management-product-fields label {
  display: grid;
  gap: 3px;
  color: #3c3840;
  font-size: 8px;
}

html body.admin-body .management-product-fields textarea {
  min-height: 54px;
}

html body.admin-body .management-order-actions {
  position: sticky;
  z-index: 3;
  bottom: 0;
  display: grid;
  grid-template-columns: 1.05fr 1.15fr 1.15fr;
  gap: 7px;
  margin: 0 -12px;
  padding: 9px 12px 11px;
  border-top: 1px solid #eadde1;
  background: rgba(255,255,255,.97);
  backdrop-filter: blur(8px);
}

html body.admin-body .management-order-actions button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  min-height: 36px;
  padding: 7px 8px;
  border: 1px solid #dd8190;
  border-radius: 5px;
  background: #fff;
  color: #af4456;
  font: inherit;
  font-size: 8px;
  font-weight: 700;
  cursor: pointer;
}

html body.admin-body .management-order-actions button:first-child {
  border-color: transparent;
  background: linear-gradient(135deg, #cf8898, #b05268);
  color: #fff;
}

html body.admin-body .management-order-actions svg {width:15px;height:15px}
html body.admin-body .management-quick-form[hidden] {display:none!important}

@media (min-width: 1280px) {
  html body.admin-body.management-order-open .orders-reference-header,
  html body.admin-body.management-order-open .orders-tabs,
  html body.admin-body.management-order-open .orders-management {margin-right:448px!important}
  html body.admin-body .management-order-modal {width:430px!important}
}

@media (max-width: 520px) {
  html body.admin-body .management-order-hero-image {flex-basis:54px;width:54px;height:54px}
  html body.admin-body .management-order-title-line h2 {font-size:16px!important}
  html body.admin-body .management-form-grid.order-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  html body.admin-body .management-order-actions {grid-template-columns:1fr}
  html body.admin-body .management-order-actions button {min-height:34px}
}
