/*
 * Qudra Charge Connect — Lovable visual system
 * Source project: Charge Connect Reimagined
 * Project revision: 555f1a81756ca0eb12da2fe3f30517fcf279b313
 *
 * This file is deliberately loaded after the compiled application stylesheet.
 * It changes visual tokens and component surfaces only; ERP workflows remain in
 * the tested v9 bundles.
 */

:root,
html[data-theme="qudra-green"],
html[data-theme="qudra-green-light"] {
  --radius: .75rem;

  --app-bg: #E9E3DD;
  --surface: #F7F6F4;
  --surface-secondary: #EFE8E1;
  --surface-elevated: #F7F6F4;
  --surface-hover: #EFE8E1;
  --sidebar-bg: #F7F6F4;
  --header-bg: rgba(247, 246, 244, .94);

  --primary: #087D62;
  --primary-hover: #075540;
  --primary-light: rgba(8, 125, 98, .10);
  --primary-foreground: #ffffff;
  --primary-deep: #064433;
  --primary-glow: #178D73;

  --secondary: #F5F1EC;
  --secondary-hover: #EFE8E1;
  --secondary-foreground: #087D62;
  --accent: #F0C69D;
  --accent-hover: #EAAE76;
  --accent-foreground: #064433;
  --gold: #EA9C42;
  --gold-foreground: #202020;

  --text-main: #111827;
  --text-secondary: #374151;
  --text-muted: #6B7280;
  --background: #E9E3DD;
  --foreground: #111827;
  --card: #F7F6F4;
  --card-foreground: #111827;
  --popover: #F7F6F4;
  --popover-foreground: #111827;
  --muted: #EFE8E1;
  --muted-foreground: #6B7280;

  --border: #DDD2C8;
  --border-strong: #D0C3B6;
  --border-soft: rgba(8, 125, 98, .16);
  --border-active: rgba(8, 125, 98, .55);
  --input: #DDD2C8;
  --ring: #087D62;

  --success: #087D62;
  --warning: #EA9C42;
  --danger: #c94d42;
  --destructive: #c94d42;
  --destructive-foreground: #ffffff;
  --info: #178D73;

  --sidebar: #F7F6F4;
  --sidebar-foreground: #202020;
  --sidebar-primary: #087D62;
  --sidebar-primary-foreground: #ffffff;
  --sidebar-accent: rgba(8, 125, 98, .10);
  --sidebar-accent-foreground: #064433;
  --sidebar-border: #DDD2C8;
  --sidebar-ring: #087D62;

  --gradient-brand: linear-gradient(135deg, #178D73 0%, #087D62 58%, #075540 100%);
  --gradient-header: linear-gradient(120deg, #087D62, #075540);
  --gradient-gold: linear-gradient(100deg, #F0C69D, #EA9C42);
  --shadow: 0 18px 40px rgba(60, 40, 20, .08), 0 4px 10px rgba(60, 40, 20, .05);
  --shadow-card: var(--shadow);
  --shadow-brand: 0 8px 18px rgba(8, 125, 98, .22), inset 0 1px 0 rgba(255,255,255,.25);
  --shadow-gold: 0 10px 22px rgba(234, 156, 66, .28);

  --erp-table-header: #EFE8E1;
  --erp-table-row: #F7F6F4;
  --erp-table-alt: #F5F1EC;
  --erp-table-hover: #F0E8DF;
  --erp-input-bg: #ffffff;
  --erp-input-border: #DDD2C8;
  --erp-focus-border: #087D62;
}

html.dark,
html[data-theme="qudra-reverse"] {
  --app-bg: #0a1512;
  --surface: #10211c;
  --surface-secondary: #142a23;
  --surface-elevated: #173128;
  --surface-hover: #1d3b31;
  --sidebar-bg: #061f18;
  --header-bg: rgba(10, 21, 18, .92);
  --primary: #d6b56d;
  --primary-hover: #e5ce99;
  --primary-light: rgba(214, 181, 109, .14);
  --primary-foreground: #012a20;
  --secondary: #3aa89f;
  --secondary-hover: #62c2b9;
  --secondary-foreground: #05241c;
  --accent: #d6b56d;
  --accent-hover: #e5ce99;
  --accent-foreground: #012a20;
  --text-main: #F9FAFB;
  --text-secondary: #E5E7EB;
  --text-muted: #D1D5DB;
  --background: #0a1512;
  --foreground: #F9FAFB;
  --card: #10211c;
  --card-foreground: #F9FAFB;
  --popover: #142a23;
  --popover-foreground: #F9FAFB;
  --muted: #142a23;
  --muted-foreground: #D1D5DB;
  --border: #29443a;
  --border-strong: #3a5a4e;
  --input: #3a5a4e;
  --ring: #d6b56d;
  --sidebar: #061f18;
  --sidebar-foreground: #e9ede9;
  --sidebar-primary: #d6b56d;
  --sidebar-primary-foreground: #012a20;
  --sidebar-accent: rgba(214, 181, 109, .16);
  --sidebar-accent-foreground: #fffaf0;
  --sidebar-border: #1c4034;
  --sidebar-ring: #d6b56d;
  --erp-table-header: #142a23;
  --erp-table-row: #10211c;
  --erp-table-alt: #12261f;
  --erp-table-hover: #1d3b31;
  --erp-input-bg: #142a23;
  --erp-input-border: #3a5a4e;
  --erp-focus-border: #d6b56d;
}

html,
body,
button,
input,
select,
textarea {
  font-family: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.font-display {
  font-family: "Plus Jakarta Sans", "Inter", ui-sans-serif, system-ui, sans-serif !important;
  letter-spacing: -.02em;
}

body {
  background: var(--background) !important;
  color: var(--foreground) !important;
}

/* ERP shell: Lovable's cream workspace, crisp white cards and green rail. */
[data-sidebar="sidebar"] {
  background: var(--sidebar) !important;
  color: var(--sidebar-foreground) !important;
  border-color: var(--sidebar-border) !important;
}

[data-sidebar="menu-button"] {
  border-radius: .625rem !important;
  transition: background-color .16s ease, color .16s ease, transform .16s ease;
}

[data-sidebar="menu-button"]:hover,
[data-sidebar="menu-button"][data-active="true"] {
  background: var(--sidebar-accent) !important;
  color: var(--sidebar-accent-foreground) !important;
}

[data-sidebar="menu-button"][data-active="true"] {
  box-shadow: inset 3px 0 0 var(--sidebar-primary);
}

[dir="rtl"] [data-sidebar="menu-button"][data-active="true"] {
  box-shadow: inset -3px 0 0 var(--sidebar-primary);
}

[data-sidebar="group-label"] {
  color: rgba(233, 237, 233, .56) !important;
  font-size: .68rem !important;
  font-weight: 700 !important;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body:not(:has(.qc-portal)) header.sticky {
  background: var(--header-bg) !important;
  border-color: var(--border) !important;
  backdrop-filter: blur(16px) saturate(135%);
}

body:not(:has(.qc-portal)) [class*="rounded-xl"][class*="border"],
body:not(:has(.qc-portal)) [class*="rounded-2xl"][class*="border"] {
  border-color: var(--border);
}

.erp-table {
  overflow: hidden;
  border-radius: .75rem;
}

.erp-table thead th {
  color: var(--text-secondary);
  font-size: .72rem;
  letter-spacing: .035em;
  text-transform: uppercase;
}

.erp-input:focus,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
button:focus-visible,
a:focus-visible {
  outline-color: var(--ring);
}

/* Public frontend: Frandon/Lovable language — light + dark combinations. */
.qc-portal {
  --ft-heading-font: "Plus Jakarta Sans", "Inter", sans-serif !important;
  --ft-body-font: "Inter", ui-sans-serif, system-ui, sans-serif !important;
  --ft-card-radius: 1rem !important;
  font-family: var(--ft-body-font) !important;
}

.qc-portal > div:nth-of-type(2) {
  letter-spacing: 0.01em;
  font-weight: 600;
}

.qc-portal section:first-of-type {
  min-height: 92vh;
  isolation: isolate;
}

.qc-portal section:first-of-type h1 {
  font-size: clamp(2.6rem, 7.2vw, 4.85rem) !important;
  letter-spacing: -0.03em !important;
  text-wrap: balance;
}

.qc-portal section:first-of-type .ft-btn,
.qc-portal section:first-of-type .ft-btn-secondary {
  min-height: 3rem !important;
  padding-inline: 1.65rem !important;
  border-radius: 999px !important;
}

.qc-portal #catalog h2,
.qc-portal section h2 {
  letter-spacing: -0.02em;
  text-wrap: balance;
}

.qc-portal article.group > div {
  border-radius: 1.65rem !important;
  transition: transform 0.35s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.35s ease !important;
}

.qc-portal article.group:hover > div {
  transform: translateY(-6px);
}

.qc-portal article.group img {
  filter: drop-shadow(0 18px 28px rgba(1, 42, 32, 0.18));
}

@media (min-width: 1024px) {
  .qc-portal section:first-of-type { min-height: 100vh; }
  .qc-portal > header .qc-nav-link { position: relative; }
  .qc-portal > header .qc-nav-link::after {
    content: "";
    position: absolute;
    left: 0.2rem; right: 0.2rem; bottom: -0.35rem;
    height: 2px; border-radius: 2px;
    background: #d6b56d;
    transform: scaleX(0); transform-origin: left;
    transition: transform 0.22s ease;
  }
  .qc-portal > header .qc-nav-link:hover::after,
  .qc-portal > header .qc-nav-link[data-active="true"]::after { transform: scaleX(1); }
}

@media (max-width: 767px) {
  .qc-portal section:first-of-type { min-height: 78vh; }
}

@media (prefers-reduced-motion: reduce) {
  .qc-portal article.group > div,
  .qc-portal section:first-of-type .ft-btn { transition: none !important; }
}

/* ========== LIGHT COMBINATION (Frandon light) ========== */
html[data-theme="qudra-green-light"] .qc-portal,
html:not([data-theme]) .qc-portal {
  --ft-bg: #f4f1ea !important;
  --ft-bg-secondary: #f8f6f0 !important;
  --ft-card: #ffffff !important;
  --ft-primary: #012a20 !important;
  --ft-secondary: #187f78 !important;
  --ft-accent: #d6b56d !important;
  --ft-text: #17362e !important;
  --ft-text-secondary: #50675f !important;
  --ft-border: rgba(1, 42, 32, .11) !important;
  --qc-bg: #f4f1ea !important;
  --qc-mint: #edf6f1 !important;
  --qc-primary: #012a20 !important;
  --qc-cyan: #187f78 !important;
  --qc-gold: #d6b56d !important;
  --qc-text: #17362e !important;
  --qc-text-secondary: #50675f !important;
  background: #f4f1ea !important;
  color: #17362e !important;
}

html[data-theme="qudra-green-light"] .qc-portal > div:nth-of-type(2),
html:not([data-theme]) .qc-portal > div:nth-of-type(2) {
  background: linear-gradient(90deg, #e8f7ee, #f7efd8, #e8f7ee) !important;
  color: #012a20 !important;
}

html[data-theme="qudra-green-light"] .qc-portal > header,
html:not([data-theme]) .qc-portal > header {
  background: rgba(250, 248, 245, 0.88) !important;
  border-bottom: 1px solid rgba(1, 42, 32, 0.08) !important;
  color: #17362e !important;
  backdrop-filter: blur(16px) saturate(140%);
  box-shadow: 0 10px 36px -28px rgba(1, 42, 32, 0.35) !important;
}

html[data-theme="qudra-green-light"] .qc-portal > header a,
html[data-theme="qudra-green-light"] .qc-portal > header button,
html[data-theme="qudra-green-light"] .qc-portal > header [class*="text-"],
html:not([data-theme]) .qc-portal > header a,
html:not([data-theme]) .qc-portal > header button,
html:not([data-theme]) .qc-portal > header [class*="text-"] {
  color: #17362e !important;
}

/* Filled CTAs must stay white on dark green (overrides header link ink) */
html .qc-portal > header a.ft-btn,
html .qc-portal > header .ft-btn,
html[data-theme="qudra-green-light"] .qc-portal > header a.ft-btn,
html[data-theme="qudra-green-light"] .qc-portal > header .ft-btn,
html:not([data-theme]) .qc-portal > header a.ft-btn,
html:not([data-theme]) .qc-portal > header .ft-btn,
html[data-theme="qudra-green"] .qc-portal > header a.ft-btn,
html[data-theme="qudra-reverse"] .qc-portal > header a.ft-btn,
html.dark .qc-portal > header a.ft-btn {
  color: #ffffff !important;
}
html .qc-portal > header a.ft-btn svg,
html .qc-portal > header .ft-btn svg {
  color: #ffffff !important;
  stroke: currentColor !important;
}

/* Brand-gradient CTAs (e.g. Where to Buy · Find near me) */
html .qc-portal .bg-brand-gradient,
html .qc-portal button.bg-brand-gradient,
html .qc-portal a.bg-brand-gradient {
  color: #ffffff !important;
}
html .qc-portal .bg-brand-gradient svg,
html .qc-portal button.bg-brand-gradient svg,
html .qc-portal a.bg-brand-gradient svg {
  color: #ffffff !important;
  stroke: currentColor !important;
}

html[data-theme="qudra-green-light"] .qc-portal > header .qc-nav-link:hover,
html[data-theme="qudra-green-light"] .qc-portal > header .qc-nav-link[data-active="true"],
html:not([data-theme]) .qc-portal > header .qc-nav-link:hover,
html:not([data-theme]) .qc-portal > header .qc-nav-link[data-active="true"] {
  color: #012a20 !important;
}

html[data-theme="qudra-green-light"] .qc-portal section:first-of-type > .absolute > .absolute,
html:not([data-theme]) .qc-portal section:first-of-type > .absolute > .absolute {
  background:
    radial-gradient(ellipse 70% 55% at 15% 10%, rgba(214,181,109,0.22), transparent 55%),
    radial-gradient(ellipse 55% 45% at 85% 80%, rgba(24,127,120,0.12), transparent 60%),
    linear-gradient(180deg, #faf8f5 0%, #eef6f1 55%, #e7f2ec 100%) !important;
}

html[data-theme="qudra-green-light"] .qc-portal section:first-of-type::after,
html:not([data-theme]) .qc-portal section:first-of-type::after {
  content: "";
  position: absolute; inset: auto 0 0 0; height: 120px;
  background: linear-gradient(180deg, transparent, #f4f1ea);
  pointer-events: none; z-index: 2;
}

html[data-theme="qudra-green-light"] .qc-portal section:first-of-type h1,
html[data-theme="qudra-green-light"] .qc-portal section:first-of-type h2,
html:not([data-theme]) .qc-portal section:first-of-type h1,
html:not([data-theme]) .qc-portal section:first-of-type h2 {
  color: #012a20 !important;
  text-shadow: none !important;
}

html[data-theme="qudra-green-light"] .qc-portal section:first-of-type p:first-child,
html:not([data-theme]) .qc-portal section:first-of-type p:first-child {
  color: #9a7a3a !important;
}

html[data-theme="qudra-green-light"] .qc-portal section:first-of-type p:not(:first-child),
html:not([data-theme]) .qc-portal section:first-of-type p:not(:first-child) {
  color: #50675f !important;
}

html[data-theme="qudra-green-light"] .qc-portal section:first-of-type .ft-btn,
html:not([data-theme]) .qc-portal section:first-of-type .ft-btn {
  background: linear-gradient(135deg, #012a20 0%, #064638 55%, #0a5146 100%) !important;
  color: #fff !important;
  box-shadow: 0 14px 34px -16px rgba(1, 42, 32, 0.55), inset 0 1px 0 rgba(255,255,255,.12) !important;
}

html[data-theme="qudra-green-light"] .qc-portal section:first-of-type .ft-btn-secondary,
html:not([data-theme]) .qc-portal section:first-of-type .ft-btn-secondary {
  color: #012a20 !important;
  border-color: rgba(1, 42, 32, 0.22) !important;
  background: rgba(255, 255, 255, 0.55) !important;
  backdrop-filter: blur(8px);
}

html[data-theme="qudra-green-light"] .qc-portal article.group > div,
html:not([data-theme]) .qc-portal article.group > div {
  border: 1px solid rgba(1, 42, 32, 0.07) !important;
  background: linear-gradient(180deg, #ffffff 0%, #fbfaf7 100%) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,0.8) inset, 0 18px 44px -28px rgba(1, 42, 32, 0.28) !important;
}

html[data-theme="qudra-green-light"] .qc-portal footer,
html:not([data-theme]) .qc-portal footer {
  background:
    radial-gradient(ellipse 60% 80% at 10% 0%, rgba(214, 181, 109, 0.12), transparent 55%),
    #012a20 !important;
  color: #e9ede9 !important;
  border-color: rgba(214, 181, 109, .18) !important;
}

html[data-theme="qudra-green-light"] .qc-portal footer p,
html[data-theme="qudra-green-light"] .qc-portal footer a,
html[data-theme="qudra-green-light"] .qc-portal footer li,
html:not([data-theme]) .qc-portal footer p,
html:not([data-theme]) .qc-portal footer a,
html:not([data-theme]) .qc-portal footer li {
  color: inherit !important;
}

/* ========== DARK COMBINATION (Frandon dark / cinematic emerald) ========== */
html[data-theme="qudra-green"] .qc-portal,
html[data-theme="qudra-reverse"] .qc-portal,
html.dark .qc-portal {
  --ft-bg: #0a1512 !important;
  --ft-bg-secondary: #10211c !important;
  --ft-card: #142a23 !important;
  --ft-primary: #d6b56d !important;
  --ft-secondary: #3aa89f !important;
  --ft-accent: #d6b56d !important;
  --ft-text: #f4f1ea !important;
  --ft-text-secondary: #c1cec8 !important;
  --ft-border: rgba(214, 181, 109, .18) !important;
  --qc-bg: #0a1512 !important;
  --qc-mint: #12241e !important;
  --qc-primary: #d6b56d !important;
  --qc-cyan: #3aa89f !important;
  --qc-gold: #d6b56d !important;
  --qc-text: #f4f1ea !important;
  --qc-text-secondary: #c1cec8 !important;
  background: #0a1512 !important;
  color: #f4f1ea !important;
}

html[data-theme="qudra-green"] .qc-portal > div:nth-of-type(2),
html[data-theme="qudra-reverse"] .qc-portal > div:nth-of-type(2),
html.dark .qc-portal > div:nth-of-type(2) {
  background: #d6b56d !important;
  color: #012a20 !important;
}

html[data-theme="qudra-green"] .qc-portal > header,
html[data-theme="qudra-reverse"] .qc-portal > header,
html.dark .qc-portal > header {
  background: rgba(1, 42, 32, 0.82) !important;
  border-bottom: 1px solid rgba(214, 181, 109, 0.14) !important;
  color: #f8f6f0 !important;
  backdrop-filter: blur(16px) saturate(140%);
  box-shadow: 0 10px 40px -24px rgba(0, 0, 0, 0.55) !important;
}

html[data-theme="qudra-green"] .qc-portal > header a,
html[data-theme="qudra-green"] .qc-portal > header button,
html[data-theme="qudra-green"] .qc-portal > header [class*="text-"],
html[data-theme="qudra-reverse"] .qc-portal > header a,
html[data-theme="qudra-reverse"] .qc-portal > header button,
html[data-theme="qudra-reverse"] .qc-portal > header [class*="text-"],
html.dark .qc-portal > header a,
html.dark .qc-portal > header button,
html.dark .qc-portal > header [class*="text-"] {
  color: #f8f6f0 !important;
}

html[data-theme="qudra-green"] .qc-portal > header .qc-nav-link:hover,
html[data-theme="qudra-green"] .qc-portal > header .qc-nav-link[data-active="true"],
html[data-theme="qudra-reverse"] .qc-portal > header .qc-nav-link:hover,
html[data-theme="qudra-reverse"] .qc-portal > header .qc-nav-link[data-active="true"],
html.dark .qc-portal > header .qc-nav-link:hover,
html.dark .qc-portal > header .qc-nav-link[data-active="true"] {
  color: #d6b56d !important;
}

html[data-theme="qudra-green"] .qc-portal section:first-of-type > .absolute > .absolute,
html[data-theme="qudra-reverse"] .qc-portal section:first-of-type > .absolute > .absolute,
html.dark .qc-portal section:first-of-type > .absolute > .absolute {
  background:
    radial-gradient(ellipse 70% 55% at 18% 12%, rgba(214,181,109,0.18), transparent 55%),
    radial-gradient(ellipse 55% 50% at 88% 78%, rgba(24,127,120,0.35), transparent 60%),
    linear-gradient(155deg, #012A20 0%, #064638 48%, #0a5c52 78%, #187F78 100%) !important;
}

html[data-theme="qudra-green"] .qc-portal section:first-of-type::after,
html[data-theme="qudra-reverse"] .qc-portal section:first-of-type::after,
html.dark .qc-portal section:first-of-type::after {
  content: "";
  position: absolute; inset: auto 0 0 0; height: 140px;
  background: linear-gradient(180deg, transparent, #0a1512);
  pointer-events: none; z-index: 2;
}

html[data-theme="qudra-green"] .qc-portal section:first-of-type h1,
html[data-theme="qudra-green"] .qc-portal section:first-of-type h2,
html[data-theme="qudra-reverse"] .qc-portal section:first-of-type h1,
html[data-theme="qudra-reverse"] .qc-portal section:first-of-type h2,
html.dark .qc-portal section:first-of-type h1,
html.dark .qc-portal section:first-of-type h2 {
  color: #f8f6f0 !important;
  text-shadow: 0 18px 50px rgba(0,0,0,.28) !important;
}

html[data-theme="qudra-green"] .qc-portal section:first-of-type p:first-child,
html[data-theme="qudra-reverse"] .qc-portal section:first-of-type p:first-child,
html.dark .qc-portal section:first-of-type p:first-child {
  color: #d6b56d !important;
}

html[data-theme="qudra-green"] .qc-portal section:first-of-type p:not(:first-child),
html[data-theme="qudra-reverse"] .qc-portal section:first-of-type p:not(:first-child),
html.dark .qc-portal section:first-of-type p:not(:first-child) {
  color: #c7d6cf !important;
}

html[data-theme="qudra-green"] .qc-portal section:first-of-type .ft-btn,
html[data-theme="qudra-reverse"] .qc-portal section:first-of-type .ft-btn,
html.dark .qc-portal section:first-of-type .ft-btn {
  background: linear-gradient(135deg, #1a9a91 0%, #187f78 55%, #0f6b64 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 14px 34px -16px rgba(24, 127, 120, 0.85), inset 0 1px 0 rgba(255,255,255,.18) !important;
}

html[data-theme="qudra-green"] .qc-portal section:first-of-type .ft-btn-secondary,
html[data-theme="qudra-reverse"] .qc-portal section:first-of-type .ft-btn-secondary,
html.dark .qc-portal section:first-of-type .ft-btn-secondary {
  color: #f8f6f0 !important;
  border-color: rgba(248, 246, 240, .42) !important;
  background: rgba(255, 255, 255, 0.06) !important;
  backdrop-filter: blur(8px);
}

html[data-theme="qudra-green"] .qc-portal article.group > div,
html[data-theme="qudra-reverse"] .qc-portal article.group > div,
html.dark .qc-portal article.group > div {
  border: 1px solid rgba(214, 181, 109, 0.12) !important;
  background: linear-gradient(180deg, #142a23 0%, #10211c 100%) !important;
  box-shadow: 0 18px 44px -28px rgba(0, 0, 0, 0.55) !important;
  color: #f4f1ea !important;
}

html[data-theme="qudra-green"] .qc-portal #catalog,
html[data-theme="qudra-reverse"] .qc-portal #catalog,
html.dark .qc-portal #catalog {
  background: #0f1c18 !important;
}

html[data-theme="qudra-green"] .qc-portal footer,
html[data-theme="qudra-reverse"] .qc-portal footer,
html.dark .qc-portal footer {
  background:
    radial-gradient(ellipse 60% 80% at 10% 0%, rgba(214, 181, 109, 0.12), transparent 55%),
    #06140f !important;
  color: #e9ede9 !important;
  border-color: rgba(214, 181, 109, .18) !important;
}

html[data-theme="qudra-green"] .qc-portal footer p,
html[data-theme="qudra-green"] .qc-portal footer a,
html[data-theme="qudra-green"] .qc-portal footer li,
html[data-theme="qudra-reverse"] .qc-portal footer p,
html[data-theme="qudra-reverse"] .qc-portal footer a,
html[data-theme="qudra-reverse"] .qc-portal footer li,
html.dark .qc-portal footer p,
html.dark .qc-portal footer a,
html.dark .qc-portal footer li {
  color: inherit !important;
}

/* —— Lovable homepage layout (14.3.10) —— */
.qc-lv-hero {
  background: #012a20;
  color: #f8f6f0;
}
.qc-lv-hero h1,
.qc-lv-hero .qc-hero-rise h1,
.qc-lv-chrome .qc-lv-hero h1 {
  color: #f8f6f0 !important;
  text-shadow: none !important;
}
.qc-lv-hero h1 span {
  color: #d6b56d !important;
}
.qc-lv-hero .qc-hero-rise > p:not(:first-child) {
  color: rgba(248, 246, 240, 0.85) !important;
}
.qc-lv-chrome > header {
  background: rgba(1, 42, 32, 0.92) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  color: #f8f6f0 !important;
}
.qc-lv-chrome > header a,
.qc-lv-chrome > header .qc-nav-link,
.qc-lv-chrome > header span,
.qc-lv-chrome > header button {
  color: rgba(248, 246, 240, 0.88) !important;
}
.qc-lv-hero-wash {
  background:
    radial-gradient(ellipse 70% 55% at 18% 12%, rgba(214, 181, 109, 0.18), transparent 55%),
    radial-gradient(ellipse 55% 50% at 88% 78%, rgba(24, 127, 120, 0.35), transparent 60%),
    linear-gradient(155deg, #012a20 0%, #064638 48%, #0a5c52 78%, #187f78 100%);
}
.qc-lv-cream {
  background: #f4f1ea;
  color: #17362e;
}
.qc-portal #catalog.qc-lv-cream,
html[data-theme="qudra-green"] .qc-portal #catalog.qc-lv-cream,
html[data-theme="qudra-reverse"] .qc-portal #catalog.qc-lv-cream,
html.dark .qc-portal #catalog.qc-lv-cream {
  background: #f4f1ea !important;
  color: #17362e !important;
}
.qc-hero-rise {
  animation: qc-lv-rise 0.7s ease-out both;
}
@keyframes qc-lv-rise {
  from { opacity: 0; transform: translateY(14px); }
  to { opacity: 1; transform: translateY(0); }
}
@media (prefers-reduced-motion: reduce) {
  .qc-hero-rise { animation: none !important; }
}

.qc-lv-chrome {
  background: #f4f1ea !important;
}
.qc-lv-chrome > header {
  background: rgba(1, 42, 32, 0.92) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  color: #f8f6f0 !important;
}
.qc-lv-chrome > header a,
.qc-lv-chrome > header .qc-nav-link,
.qc-lv-chrome > header span {
  color: rgba(248, 246, 240, 0.88) !important;
}
.qc-lv-chrome > header .qc-nav-link[data-active="true"] {
  color: #fff !important;
  box-shadow: inset 0 -2px 0 #d6b56d !important;
}
.qc-lv-chrome > header .ft-btn {
  background: #187f78 !important;
  color: #fff !important;
}
.qc-lv-cta-primary {
  background: #187f78 !important;
  color: #fff !important;
  border: none !important;
}
.qc-lv-cta-secondary {
  color: #f8f6f0 !important;
  border-color: rgba(255, 255, 255, 0.4) !important;
  background: rgba(255, 255, 255, 0.06) !important;
}
.qc-lv-chrome .qc-atmosphere {
  display: none !important;
}
.qc-lv-chrome footer {
  background: #06140f !important;
  color: #e9ede9 !important;
}

/* =====================================================================
   CONTRAST CANON (14.3.12) — front + back
   Dark surfaces → light text; light surfaces → dark text.
   Keeps FE public portal and BE ERP shell readable in all themes.
   ===================================================================== */

/* Public Lovable homepage: never let light-theme section rules darken the hero */
html .qc-portal .qc-lv-hero,
html .qc-portal .qc-lv-hero * {
  color: inherit;
}
html .qc-portal.qc-lv-chrome .qc-lv-hero,
html .qc-portal .qc-lv-hero,
html[data-theme="qudra-green-light"] .qc-portal .qc-lv-hero,
html[data-theme="qudra-green"] .qc-portal .qc-lv-hero,
html[data-theme="qudra-reverse"] .qc-portal .qc-lv-hero,
html.dark .qc-portal .qc-lv-hero,
html:not([data-theme]) .qc-portal .qc-lv-hero {
  background: #012a20 !important;
  color: #f8f6f0 !important;
}
html .qc-portal.qc-lv-chrome .qc-lv-hero h1,
html .qc-portal .qc-lv-hero h1,
html .qc-portal .qc-lv-hero h2,
html .qc-portal .qc-lv-hero h3,
html[data-theme="qudra-green-light"] .qc-portal section.qc-lv-hero h1,
html[data-theme="qudra-green-light"] .qc-portal section.qc-lv-hero h2,
html[data-theme="qudra-green-light"] .qc-portal section:first-of-type.qc-lv-hero h1,
html[data-theme="qudra-green"] .qc-portal section.qc-lv-hero h1,
html.dark .qc-portal section.qc-lv-hero h1,
html:not([data-theme]) .qc-portal section.qc-lv-hero h1,
html:not([data-theme]) .qc-portal section:first-of-type.qc-lv-hero h1 {
  color: #f8f6f0 !important;
  text-shadow: none !important;
}
html .qc-portal .qc-lv-hero h1 span,
html[data-theme="qudra-green-light"] .qc-portal .qc-lv-hero h1 span {
  color: #d6b56d !important;
}
html .qc-portal .qc-lv-hero p,
html[data-theme="qudra-green-light"] .qc-portal .qc-lv-hero p,
html[data-theme="qudra-green-light"] .qc-portal section:first-of-type.qc-lv-hero p,
html:not([data-theme]) .qc-portal section:first-of-type.qc-lv-hero p {
  color: rgba(248, 246, 240, 0.88) !important;
}

/* Lovable chrome header stays dark-on-landing (beats light portal header rules) */
html .qc-portal.qc-lv-chrome > header,
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header,
html[data-theme="qudra-green"] .qc-portal.qc-lv-chrome > header,
html[data-theme="qudra-reverse"] .qc-portal.qc-lv-chrome > header,
html.dark .qc-portal.qc-lv-chrome > header,
html:not([data-theme]) .qc-portal.qc-lv-chrome > header {
  background: rgba(1, 42, 32, 0.94) !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  color: #f8f6f0 !important;
  box-shadow: none !important;
}
html .qc-portal.qc-lv-chrome > header a,
html .qc-portal.qc-lv-chrome > header button,
html .qc-portal.qc-lv-chrome > header span,
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header a,
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header button,
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header span,
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header [class*="text-"],
html:not([data-theme]) .qc-portal.qc-lv-chrome > header a,
html:not([data-theme]) .qc-portal.qc-lv-chrome > header button,
html:not([data-theme]) .qc-portal.qc-lv-chrome > header [class*="text-"] {
  color: rgba(248, 246, 240, 0.9) !important;
}
html .qc-portal.qc-lv-chrome > header .ft-btn,
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header .ft-btn {
  background: #187f78 !important;
  color: #ffffff !important;
}

/* Cream / light public sections → dark ink */
html .qc-portal .qc-lv-cream,
html .qc-portal .qc-lv-cream h1,
html .qc-portal .qc-lv-cream h2,
html .qc-portal .qc-lv-cream h3,
html .qc-portal .qc-lv-cream p,
html .qc-portal .qc-lv-cream li,
html .qc-portal .qc-lv-cream span,
html .qc-portal .qc-lv-cream a {
  color: inherit;
}
html .qc-portal .qc-lv-cream {
  background: #f4f1ea !important;
  color: #17362e !important;
}
html .qc-portal .qc-lv-cream h1,
html .qc-portal .qc-lv-cream h2,
html .qc-portal .qc-lv-cream h3 {
  color: #012a20 !important;
}
html .qc-portal .qc-lv-cream p,
html .qc-portal .qc-lv-cream li {
  color: #50675f !important;
}

/* Dark partner / footer bands → light text */
html .qc-portal section.bg-\[\#012a20\],
html .qc-portal footer,
html .qc-lv-chrome footer {
  color: #e9ede9 !important;
}
html .qc-portal footer a,
html .qc-portal footer p,
html .qc-portal footer li,
html .qc-lv-chrome footer a,
html .qc-lv-chrome footer p,
html .qc-lv-chrome footer li {
  color: #e9ede9 !important;
}

/* Primary filled buttons: always light label on brand fill */
.qc-portal .ft-btn,
.qc-portal .ft-btn *,
.qc-portal .qc-lv-cta-primary,
.qc-portal .bg-brand-gradient,
.qc-portal .bg-brand-gradient *,
button.bg-primary,
a.bg-primary,
.bg-primary.text-primary-foreground,
[class*="bg-primary"]:not(.bg-primary\/10):not(.bg-primary\/5):not(.bg-primary\/20) {
  color: #ffffff !important;
}

/* Outline / secondary on light surfaces → dark label */
.qc-portal .ft-btn-secondary {
  color: #012a20 !important;
}

/* ERP shell: cream sidebar, dark readable text */
aside.bg-sidebar,
aside.bg-sidebar a,
aside.bg-sidebar button,
aside.bg-sidebar span,
aside.bg-sidebar p,
aside.bg-sidebar .qc-nav-link,
aside.bg-sidebar .qc-nav-summary,
aside.bg-sidebar .qc-nav-system-summary {
  color: #202020 !important;
}
aside.bg-sidebar .qc-nav-link {
  color: #3a3a3a !important;
}
aside.bg-sidebar .qc-nav-link.is-active,
aside.bg-sidebar .qc-nav-link[aria-current="page"] {
  color: #064433 !important;
}
aside.bg-sidebar .qc-nav-summary,
aside.bg-sidebar .qc-nav-system-summary {
  color: #9A9A9A !important;
}
html.dark aside.bg-sidebar,
html.dark aside.bg-sidebar a,
html.dark aside.bg-sidebar button,
html.dark aside.bg-sidebar span,
html.dark aside.bg-sidebar p,
html.dark aside.bg-sidebar .qc-nav-link,
html.dark aside.bg-sidebar .qc-nav-summary,
html.dark aside.bg-sidebar .qc-nav-system-summary,
html[data-theme="qudra-reverse"] aside.bg-sidebar,
html[data-theme="qudra-reverse"] aside.bg-sidebar a,
html[data-theme="qudra-reverse"] aside.bg-sidebar button,
html[data-theme="qudra-reverse"] aside.bg-sidebar span,
html[data-theme="qudra-reverse"] aside.bg-sidebar p,
html[data-theme="qudra-reverse"] aside.bg-sidebar .qc-nav-link,
html[data-theme="qudra-reverse"] aside.bg-sidebar .qc-nav-summary,
html[data-theme="qudra-reverse"] aside.bg-sidebar .qc-nav-system-summary {
  color: #e9f1ee !important;
}
html.dark aside.bg-sidebar .qc-nav-link.is-active,
html[data-theme="qudra-reverse"] aside.bg-sidebar .qc-nav-link.is-active {
  color: #ffffff !important;
}

/* ERP main: follow theme tokens (light theme = dark text, dark theme = light text) */
.qc-erp-main,
.qc-erp-main h1,
.qc-erp-main h2,
.qc-erp-main h3,
.qc-erp-main p,
.qc-erp-main label,
.qc-erp-main td,
.qc-erp-main th,
.qc-erp-main input,
.qc-erp-main textarea,
.qc-erp-main select {
  color: var(--foreground) !important;
}
.qc-erp-main .text-muted-foreground,
.qc-erp-main [class*="text-muted"] {
  color: var(--muted-foreground) !important;
}

/* Cards / dialogs / popovers use surface + matching foreground */
.qc-erp-main [class*="bg-card"],
.qc-erp-main [role="dialog"],
.qc-erp-main [data-radix-popper-content-wrapper] [class*="bg-"] {
  color: var(--card-foreground);
}

/* Dark ERP theme status chips stay readable */
html.dark .qc-status-paid,
html[data-theme="qudra-reverse"] .qc-status-paid {
  color: #7dcea6 !important;
  background: rgba(22, 138, 91, 0.18) !important;
}
html.dark .qc-status-partial,
html[data-theme="qudra-reverse"] .qc-status-partial {
  color: #e0b35c !important;
  background: rgba(193, 123, 24, 0.18) !important;
}
html.dark .qc-status-overdue,
html[data-theme="qudra-reverse"] .qc-status-overdue {
  color: #f0a0a5 !important;
  background: rgba(193, 58, 66, 0.18) !important;
}

/* Dark field-sales cards already light-on-dark; lock nested text */
.qc-mobile-field-card,
.qc-mobile-field-card * {
  color: inherit;
}
.qc-mobile-field-card {
  color: #ffffff !important;
}
.qc-next-visit,
.qc-next-visit strong,
.qc-next-visit small,
.qc-next-visit span {
  color: #18211e !important;
}
.qc-next-visit a.is-primary {
  color: #ffffff !important;
}

/* Approval policy cards (light surface) */
.qc-approval-policies,
.qc-approval-policies strong,
.qc-approval-policy-grid b {
  color: #18211e !important;
}
.qc-approval-policies span,
.qc-approval-policy-head span {
  color: #66736e !important;
}
html.dark .qc-approval-policies,
html[data-theme="qudra-reverse"] .qc-approval-policies {
  background: linear-gradient(135deg, #0e2019 0%, #142a22 100%) !important;
  border-color: var(--border) !important;
}
html.dark .qc-approval-policies strong,
html.dark .qc-approval-policy-grid b,
html[data-theme="qudra-reverse"] .qc-approval-policies strong,
html[data-theme="qudra-reverse"] .qc-approval-policy-grid b {
  color: #eff7f3 !important;
}
html.dark .qc-approval-policy-grid > div,
html[data-theme="qudra-reverse"] .qc-approval-policy-grid > div {
  background: #10261e !important;
  border-color: var(--border) !important;
}

/* 14.3.83 — WooCommerce-style public product detail */
.qc-portal .qc-woo-product {
  background: transparent;
  color: var(--ft-text, #17362e);
}
.qc-portal .qc-woo-product h1,
.qc-portal .qc-woo-product h2,
.qc-portal .qc-woo-product h3 {
  color: #012A20;
}
.qc-portal .qc-woo-tab {
  color: var(--ft-text-secondary, #50675f);
  border-bottom: 2px solid transparent;
  margin-bottom: -1px;
}
.qc-portal .qc-woo-tab:hover {
  color: #012A20;
}
.qc-portal .qc-woo-tab-active,
.qc-portal .qc-woo-tab[aria-selected="true"] {
  color: #012A20 !important;
  border-bottom-color: #012A20 !important;
}
.qc-portal .qc-woo-btn-primary,
.qc-portal .qc-woo-btn-primary * {
  color: #ffffff !important;
  background: #012A20 !important;
}
.qc-portal .qc-woo-btn-outline {
  color: #012A20 !important;
  background: #ffffff !important;
  border-color: #012A20 !important;
}
.qc-portal .qc-woo-where h2 {
  color: var(--ft-text, #012A20) !important;
}
.qc-portal .qc-woo-related article > div {
  background: #ffffff;
}
@media (max-width: 767px) {
  .qc-portal .qc-woo-summary {
    padding-bottom: 4.5rem;
  }
}

/* =====================================================================
   14.3.86 — Premium public site (Home / Products / Where to Buy only)
   Scoped to .qc-lv-chrome / .qc-pub-* so ERP dashboard stays untouched.
   ===================================================================== */

html .qc-portal.qc-lv-chrome {
  --pub-emerald: #012A20;
  --pub-emerald-2: #0A5146;
  --pub-teal: #187F78;
  --pub-gold: #D6B56D;
  --pub-cream: #F8F6F0;
  --pub-white: #FFFFFF;
  --pub-text: #17362E;
  --pub-muted: #60736B;
  --pub-border: #DED9CE;
  --pub-radius: 20px;
  --pub-radius-sm: 16px;
  --ft-heading-font: "Plus Jakarta Sans", Inter, ui-sans-serif, system-ui, sans-serif !important;
  --ft-body-font: Inter, ui-sans-serif, system-ui, sans-serif !important;
  background: var(--pub-cream) !important;
  color: var(--pub-text) !important;
  font-family: var(--ft-body-font) !important;
}

html .qc-portal.qc-lv-chrome h1,
html .qc-portal.qc-lv-chrome h2,
html .qc-portal.qc-lv-chrome h3 {
  font-family: var(--ft-heading-font) !important;
  letter-spacing: -0.02em;
}

.qc-pub-shell { background: var(--pub-cream); color: var(--pub-text); }
.qc-pub-container,
html .qc-portal.qc-lv-chrome .max-w-\[1280px\] {
  width: 100%;
  max-width: 1280px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}
@media (min-width: 640px) {
  .qc-pub-container { padding-left: 1.5rem; padding-right: 1.5rem; }
}

/* Header — dark emerald, light text, gold CTA */
html .qc-portal.qc-lv-chrome > header {
  min-height: 76px;
  background: rgba(1, 42, 32, 0.97) !important;
  border-bottom: 1px solid rgba(248, 246, 240, 0.1) !important;
  color: #F8F6F0 !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
}
html .qc-portal.qc-lv-chrome > header a:not(.qc-pub-btn-primary),
html .qc-portal.qc-lv-chrome > header button:not(.qc-pub-btn-primary),
html .qc-portal.qc-lv-chrome > header span,
html .qc-portal.qc-lv-chrome > header .qc-nav-link {
  color: rgba(248, 246, 240, 0.92) !important;
}
html .qc-portal.qc-lv-chrome > header .qc-nav-link[data-active="true"] {
  color: #fff !important;
  box-shadow: inset 0 -2px 0 var(--pub-gold) !important;
}
html .qc-portal.qc-lv-chrome > header .qc-pub-btn-primary,
html .qc-portal.qc-lv-chrome > header a.qc-pub-btn-primary,
html .qc-portal.qc-lv-chrome > header .ft-btn {
  background: var(--pub-gold) !important;
  color: var(--pub-emerald) !important;
  min-height: 44px;
  border-radius: 999px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}
html .qc-portal.qc-lv-chrome > header .qc-pub-btn-primary *,
html .qc-portal.qc-lv-chrome > header .ft-btn * {
  color: var(--pub-emerald) !important;
}

html .qc-portal.qc-lv-chrome footer {
  background: #06140F !important;
  color: #E9EDE9 !important;
  border-top: 1px solid rgba(214, 181, 109, 0.16) !important;
}
html .qc-portal.qc-lv-chrome footer,
html .qc-portal.qc-lv-chrome footer a,
html .qc-portal.qc-lv-chrome footer p,
html .qc-portal.qc-lv-chrome footer li,
html .qc-portal.qc-lv-chrome footer span {
  color: #E9EDE9 !important;
}
html .qc-portal.qc-lv-chrome footer a:hover {
  color: var(--pub-gold) !important;
}

/* Typography */
.qc-pub-eyebrow {
  margin: 0 0 0.75rem;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #E2C57A !important;
}
.qc-pub-eyebrow-dark { color: var(--pub-teal) !important; }
.qc-pub-h1 {
  margin: 0;
  max-width: 18ch;
  font-size: clamp(2.25rem, 4.2vw, 3.75rem); /* ~36–60px; desktop up to ~60-72 via clamp */
  line-height: 1.08;
  font-weight: 700;
  color: #F8F6F0 !important;
}
.qc-pub-h1-banner {
  max-width: 22ch;
  font-size: clamp(1.85rem, 3.2vw, 2.75rem);
}
.qc-pub-h2 {
  margin: 0;
  font-size: clamp(1.5rem, 2.4vw, 2rem);
  line-height: 1.2;
  font-weight: 700;
  color: var(--pub-emerald) !important;
}
.qc-pub-h2-on-dark { color: #F8F6F0 !important; }
.qc-pub-accent { color: #E2C57A !important; }
.qc-pub-lead {
  margin: 1rem 0 0;
  max-width: 38rem;
  font-size: 1.05rem;
  line-height: 1.65;
  color: rgba(248, 246, 240, 0.86) !important;
}
.qc-pub-section-support,
.qc-pub-muted {
  color: var(--pub-muted) !important;
}
.qc-pub-partner-copy {
  margin-top: 0.75rem;
  max-width: 36rem;
  color: rgba(248, 246, 240, 0.8) !important;
}

/* Buttons */
.qc-pub-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  min-height: 48px;
  padding: 0 1.35rem;
  border-radius: 999px;
  font-size: 0.925rem;
  font-weight: 600;
  text-decoration: none !important;
  border: 1px solid transparent;
  transition: transform 0.2s ease, background 0.2s ease, box-shadow 0.2s ease;
  cursor: pointer;
}
.qc-pub-btn-sm { min-height: 44px; padding: 0 1.1rem; font-size: 0.875rem; }
.qc-pub-btn-primary {
  background: var(--pub-gold) !important;
  color: var(--pub-emerald) !important;
  box-shadow: 0 10px 24px -14px rgba(1, 42, 32, 0.45);
}
.qc-pub-btn-primary:hover { background: #E4C88A !important; color: var(--pub-emerald) !important; }
.qc-pub-btn-primary * { color: inherit !important; }
.qc-pub-btn-ghost {
  background: rgba(248, 246, 240, 0.08) !important;
  color: #F8F6F0 !important;
  border-color: rgba(248, 246, 240, 0.4) !important;
}
.qc-pub-btn-ghost:hover { background: rgba(248, 246, 240, 0.16) !important; color: #fff !important; }
.qc-pub-btn-ghost * { color: inherit !important; }
.qc-pub-btn-secondary {
  background: #fff !important;
  color: var(--pub-emerald) !important;
  border-color: var(--pub-border) !important;
}
.qc-pub-btn-secondary:hover { background: #f3f0e8 !important; }
.qc-pub-btn-dark {
  background: var(--pub-emerald) !important;
  color: #F8F6F0 !important;
}
.qc-pub-btn:focus-visible,
.qc-pub-pill:focus-visible,
.qc-pub-store-card:focus-visible,
html .qc-portal.qc-lv-chrome a:focus-visible,
html .qc-portal.qc-lv-chrome button:focus-visible {
  outline: 2px solid var(--pub-gold);
  outline-offset: 2px;
}
.qc-pub-text-link {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: var(--pub-emerald) !important;
  font-weight: 600;
  font-size: 0.925rem;
  text-decoration: none !important;
}
.qc-pub-text-link:hover { text-decoration: underline !important; }

.qc-pub-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-top: 1.75rem;
}

/* Hero — content-driven (~650–760 desktop feel via padding, NO min-h viewport) */
.qc-pub-hero {
  position: relative;
  overflow: hidden;
  background: var(--pub-emerald);
  color: #F8F6F0;
}
.qc-pub-hero-wash {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 55% 45% at 85% 25%, rgba(214, 181, 109, 0.18), transparent 60%),
    linear-gradient(155deg, #012A20 0%, #0A5146 55%, #0f3f38 100%);
  pointer-events: none;
}
.qc-pub-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 2rem;
  padding: 2.5rem 1.25rem 2.75rem;
  align-items: center;
}
@media (min-width: 640px) {
  .qc-pub-hero-grid { padding: 3rem 1.5rem 3.25rem; }
}
@media (min-width: 1024px) {
  .qc-pub-hero-grid {
    grid-template-columns: 1.05fr 0.95fr;
    gap: 3rem;
    padding-top: 3.25rem;
    padding-bottom: 3.5rem;
    min-height: 0;
    max-height: none;
  }
}
.qc-pub-hero-media {
  border-radius: var(--pub-radius);
  overflow: hidden;
  border: 1px solid rgba(248, 246, 240, 0.12);
  background: #0a1f1a;
  box-shadow: 0 28px 60px -30px rgba(0, 0, 0, 0.55);
  aspect-ratio: 4 / 5;
  max-height: 520px;
  margin-inline: auto;
  width: 100%;
}
.qc-pub-hero-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.qc-pub-hero-fallback {
  min-height: 280px;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  padding: 2rem;
  text-align: center;
  color: rgba(248, 246, 240, 0.75) !important;
  background: linear-gradient(135deg, #064638, #012A20);
}

/* Compact banners (Products / WTB) — kill oversized empty heroes */
.qc-pub-banner {
  background:
    radial-gradient(ellipse 50% 60% at 90% 30%, rgba(214, 181, 109, 0.16), transparent 55%),
    linear-gradient(145deg, #012A20 0%, #0A5146 70%, #0c3f38 100%);
  color: #F8F6F0;
  padding: 2rem 0 2.25rem;
}
@media (min-width: 1024px) {
  .qc-pub-banner { padding: 2.5rem 0 2.75rem; }
}
.qc-pub-banner-grid {
  display: grid;
  gap: 1.5rem;
  align-items: center;
}
@media (min-width: 1024px) {
  .qc-pub-banner-grid { grid-template-columns: 1.2fr 0.8fr; }
}
.qc-pub-banner .qc-pub-lead { margin-top: 0.85rem; }
.qc-pub-banner-motif { display: none; }
@media (min-width: 1024px) {
  .qc-pub-banner-motif { display: block; }
}
.qc-pub-orb {
  width: min(280px, 100%);
  height: 180px;
  margin-left: auto;
  border-radius: 999px;
  background: radial-gradient(circle at 40% 40%, rgba(214, 181, 109, 0.45), rgba(24, 127, 120, 0.15) 55%, transparent 70%);
  filter: blur(2px);
  opacity: 0.85;
}
.qc-pub-banner-wtb { padding-bottom: 2rem; }

/* Stats */
.qc-pub-stats {
  background: var(--pub-white);
  border-bottom: 1px solid var(--pub-border);
}
.qc-pub-stats-grid {
  display: grid;
  gap: 1.25rem;
  padding-top: 1.5rem;
  padding-bottom: 1.5rem;
}
@media (min-width: 640px) {
  .qc-pub-stats-grid { grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
}
.qc-pub-stat-icon { width: 1.15rem; height: 1.15rem; color: var(--pub-teal); margin-bottom: 0.4rem; }
.qc-pub-stat-value {
  font-family: var(--ft-heading-font);
  font-size: clamp(1.75rem, 2.5vw, 2.35rem);
  font-weight: 700;
  color: var(--pub-emerald) !important;
  line-height: 1.1;
}
.qc-pub-stat-label { margin-top: 0.2rem; font-size: 0.9rem; color: var(--pub-muted) !important; }

/* Sections */
.qc-pub-section { padding: 3rem 0; }
.qc-pub-section-alt { background: #fff; border-top: 1px solid var(--pub-border); border-bottom: 1px solid var(--pub-border); }
.qc-pub-section-head {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin-bottom: 1.75rem;
}
@media (min-width: 640px) {
  .qc-pub-section-head {
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
  }
}

/* Product grid / cards */
.qc-pub-product-grid {
  display: grid;
  gap: 1.25rem;
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .qc-pub-product-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (min-width: 1024px) {
  .qc-pub-product-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (min-width: 1280px) {
  .qc-pub-product-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
.qc-pub-product-card {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff !important;
  color: var(--pub-text) !important;
  border: 1px solid var(--pub-border);
  border-radius: var(--pub-radius);
  overflow: hidden;
  text-decoration: none !important;
  box-shadow: 0 14px 34px -28px rgba(1, 42, 32, 0.35);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
@media (prefers-reduced-motion: no-preference) {
  .qc-pub-product-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 22px 40px -24px rgba(1, 42, 32, 0.4);
  }
}
.qc-pub-product-media {
  display: block;
  aspect-ratio: 4 / 5;
  background: #EEE9DF;
  overflow: hidden;
}
.qc-pub-product-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.qc-pub-product-initials {
  display: grid;
  place-items: center;
  height: 100%;
  font-size: 2rem;
  font-weight: 700;
  color: var(--pub-emerald);
}
.qc-pub-product-body {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  padding: 1rem 1.05rem 1.15rem;
  flex: 1;
}
.qc-pub-product-body h3 {
  margin: 0;
  font-size: 1.05rem;
  font-weight: 650;
  color: var(--pub-emerald) !important;
}
.qc-pub-product-body p,
.qc-pub-card-desc {
  margin: 0;
  font-size: 0.875rem;
  color: var(--pub-muted) !important;
}
.qc-pub-line-clamp {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.qc-pub-line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.qc-pub-price {
  margin-top: 0.35rem;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--pub-emerald) !important;
}
.qc-pub-card-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: auto;
  padding-top: 0.85rem;
}
.qc-pub-card-link {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  margin-top: 0.5rem;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--pub-emerald) !important;
}
.qc-pub-skeleton-card {
  min-height: 360px;
  border-radius: var(--pub-radius);
  background: linear-gradient(90deg, #ebe6db, #f5f1e8, #ebe6db);
  background-size: 200% 100%;
  animation: qc-pub-shimmer 1.2s linear infinite;
}
@keyframes qc-pub-shimmer {
  to { background-position: -200% 0; }
}
@media (prefers-reduced-motion: reduce) {
  .qc-pub-skeleton-card { animation: none; }
  .qc-pub-rise { animation: none !important; }
  .qc-pub-product-card { transition: none; }
}

.qc-pub-capability-grid {
  display: grid;
  gap: 1rem;
  margin-top: 1.5rem;
}
@media (min-width: 768px) {
  .qc-pub-capability-grid { grid-template-columns: repeat(3, 1fr); }
}
.qc-pub-capability-card {
  background: var(--pub-cream);
  border: 1px solid var(--pub-border);
  border-radius: var(--pub-radius-sm);
  padding: 1.25rem;
}
.qc-pub-section-alt .qc-pub-capability-card { background: #fff; }
.qc-pub-capability-icon {
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 999px;
  display: grid;
  place-items: center;
  background: rgba(24, 127, 120, 0.12);
  color: var(--pub-teal);
  margin-bottom: 0.85rem;
}
.qc-pub-capability-card h3 {
  margin: 0 0 0.4rem;
  font-size: 1.1rem;
  color: var(--pub-emerald) !important;
}
.qc-pub-capability-card p {
  margin: 0;
  font-size: 0.925rem;
  line-height: 1.55;
  color: var(--pub-muted) !important;
}

/* Partner strips */
.qc-pub-partner {
  background: var(--pub-emerald);
  color: #F8F6F0;
  padding: 2.75rem 0;
}
.qc-pub-partner-gold {
  background: linear-gradient(105deg, #D6B56D, #E4C88A);
  color: var(--pub-emerald);
}
.qc-pub-partner-gold .qc-pub-h2,
.qc-pub-partner-gold p { color: var(--pub-emerald) !important; }
.qc-pub-partner-inner {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media (min-width: 768px) {
  .qc-pub-partner-inner {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}

/* Catalog controls */
.qc-pub-controls { margin-bottom: 1.5rem; }
.qc-pub-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 0.85rem;
}
.qc-pub-pill {
  min-height: 44px;
  padding: 0 1rem;
  border-radius: 999px;
  border: 1px solid var(--pub-border);
  background: #fff;
  color: var(--pub-emerald);
  font-weight: 600;
  font-size: 0.875rem;
  cursor: pointer;
}
.qc-pub-pill[data-active="true"] {
  background: var(--pub-emerald);
  color: #F8F6F0;
  border-color: var(--pub-emerald);
}
.qc-pub-controls-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  align-items: center;
}
.qc-pub-search,
.qc-pub-select-wrap {
  position: relative;
  flex: 1 1 180px;
  min-width: 160px;
}
.qc-pub-search-grow { flex: 1 1 240px; }
.qc-pub-search input,
.qc-pub-select-wrap select,
.qc-pub-locator-search input {
  width: 100%;
  min-height: 44px;
  border-radius: 999px;
  border: 1px solid var(--pub-border);
  background: #fff !important;
  color: var(--pub-emerald) !important;
  padding: 0 1rem;
  font-size: 0.925rem;
}
.qc-pub-search input { padding-left: 2.5rem; }
.qc-pub-search-icon {
  position: absolute;
  left: 0.9rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1rem;
  height: 1rem;
  color: var(--pub-muted);
  pointer-events: none;
}
.qc-pub-results-head {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 1.25rem;
}
.qc-pub-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.75rem;
  margin-top: 2rem;
  color: var(--pub-muted);
}
.qc-pub-empty {
  border: 1px dashed var(--pub-border);
  border-radius: var(--pub-radius-sm);
  background: #fff;
  padding: 2rem;
  text-align: center;
  color: var(--pub-muted);
}
.qc-pub-empty-error {
  border-color: rgba(180, 60, 60, 0.35);
  background: #fff5f5;
  color: #8a1f1f;
}

/* Where to Buy locator */
.qc-pub-locator-search {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  align-items: center;
  margin-bottom: 0.85rem;
}
.qc-pub-more-filters {
  margin-bottom: 1.25rem;
  border: 1px solid var(--pub-border);
  border-radius: var(--pub-radius-sm);
  background: #fff;
  padding: 0.65rem 1rem;
}
.qc-pub-more-filters summary {
  cursor: pointer;
  font-weight: 600;
  color: var(--pub-emerald);
  min-height: 44px;
  display: flex;
  align-items: center;
}
.qc-pub-more-filters-body {
  display: grid;
  gap: 0.75rem;
  padding: 0.75rem 0 0.35rem;
}
.qc-pub-locator-head {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0.5rem;
  margin-bottom: 1rem;
}
.qc-pub-locator-grid {
  display: grid;
  gap: 1rem;
}
@media (min-width: 1024px) {
  .qc-pub-locator-grid {
    grid-template-columns: 0.35fr 0.65fr;
    align-items: stretch;
  }
}
.qc-pub-stockist-list {
  max-height: 600px;
  overflow: auto;
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  padding-right: 0.25rem;
}
.qc-pub-store-card {
  width: 100%;
  text-align: left;
  border-radius: var(--pub-radius-sm);
  border: 1px solid var(--pub-border);
  background: #fff;
  color: var(--pub-text);
  padding: 0.9rem 1rem;
  min-height: 44px;
  cursor: pointer;
  transition: border-color 0.2s ease, background 0.2s ease;
}
.qc-pub-store-card[data-active="true"] {
  background: var(--pub-emerald) !important;
  border-color: var(--pub-emerald) !important;
  color: #F8F6F0 !important;
}
.qc-pub-store-card[data-active="true"] .qc-pub-store-meta,
.qc-pub-store-card[data-active="true"] .qc-pub-store-name,
.qc-pub-store-card[data-active="true"] .qc-pub-text-link {
  color: #F8F6F0 !important;
}
.qc-pub-store-card-inner { display: flex; gap: 0.65rem; }
.qc-pub-store-pin { width: 1rem; height: 1rem; margin-top: 0.2rem; flex-shrink: 0; color: var(--pub-teal); }
.qc-pub-store-card[data-active="true"] .qc-pub-store-pin { color: var(--pub-gold); }
.qc-pub-store-name { font-weight: 650; color: var(--pub-emerald); }
.qc-pub-store-meta { font-size: 0.8rem; color: var(--pub-muted); margin-top: 0.2rem; }
.qc-pub-map-wrap {
  position: relative;
  border-radius: var(--pub-radius);
  overflow: hidden;
  border: 1px solid var(--pub-border);
  background: #fff;
  min-height: 360px;
  height: min(62vh, 600px);
}
@media (min-width: 1024px) {
  .qc-pub-map-wrap { height: 600px; min-height: 560px; }
}
.qc-pub-map { width: 100%; height: 100%; min-height: 360px; }
.qc-pub-map-error {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  background: rgba(255, 255, 255, 0.92);
  padding: 1rem;
  text-align: center;
  color: var(--pub-text);
}
.qc-pub-store-detail {
  margin-top: 1rem;
  border: 1px solid var(--pub-border);
  border-radius: var(--pub-radius-sm);
  background: #fff;
  padding: 1.15rem;
}
.qc-pub-store-detail h3 {
  margin: 0 0 0.35rem;
  color: var(--pub-emerald) !important;
}

.qc-pub-rise {
  animation: qc-pub-rise 0.55s ease-out both;
}
@keyframes qc-pub-rise {
  from { opacity: 0; transform: translateY(10px); }
  to { opacity: 1; transform: none; }
}

/* Utility: hide atmosphere on public */
html .qc-portal.qc-lv-chrome .qc-atmosphere { display: none !important; }

/* Kill legacy oversized heroes on public pages */
html .qc-portal.qc-lv-chrome .qc-fig-hero,
html .qc-portal.qc-lv-chrome .min-h-\[60vh\],
html .qc-portal.qc-lv-chrome .min-h-screen:not(.qc-site) {
  min-height: 0 !important;
}

/* Header: subtle Sign in + 44px menu */
html .qc-portal.qc-lv-chrome > header .qc-pub-signin {
  color: rgba(248, 246, 240, 0.72) !important;
  font-size: 0.875rem;
  font-weight: 500;
  min-height: 44px;
  align-items: center;
  padding: 0 0.65rem;
  text-decoration: none !important;
}
html .qc-portal.qc-lv-chrome > header .qc-pub-signin:hover {
  color: #F8F6F0 !important;
  text-decoration: underline !important;
}
html .qc-portal.qc-lv-chrome > header .qc-pub-menu-btn {
  min-height: 44px;
  min-width: 44px;
  color: #F8F6F0 !important;
}

/* Ensure public-display module is never tree-shaken from theme cache busts */
/* 14.3.86 end */

/* 14.3.87 — No banners on Products/WTB; Home hero only; kill 92vh/100vh bleed */

/* CRITICAL: legacy .qc-portal section:first-of-type { min-height: 92vh/100vh }
   was inflating Products + Where to Buy first sections to ~720px. */
html .qc-portal.qc-lv-chrome section:first-of-type,
html .qc-portal.qc-lv-chrome .qc-pub-banner,
html .qc-portal.qc-lv-chrome .qc-pub-page-intro,
html .qc-portal.qc-lv-chrome .qc-pub-catalog,
html .qc-portal.qc-lv-chrome .qc-pub-locator-page {
  min-height: 0 !important;
  height: auto !important;
}
html .qc-portal.qc-lv-chrome section:first-of-type:not(.qc-pub-hero) h1 {
  font-size: inherit !important;
}
html .qc-portal.qc-lv-chrome .qc-pub-banner {
  display: none !important;
}

/* One gold underline only (disable duplicate ::after from legacy portal rules) */
html .qc-portal.qc-lv-chrome > header .qc-nav-link::after {
  display: none !important;
  content: none !important;
}
html .qc-portal.qc-lv-chrome > header {
  min-height: 74px;
}

/* —— Compact page intro (Products / WTB) —— */
.qc-pub-page-intro {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding-top: 1.75rem; /* ~28px mobile */
  padding-bottom: 1.5rem;
  background: transparent;
}
@media (min-width: 1024px) {
  .qc-pub-page-intro {
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.5rem;
    padding-top: 3rem; /* 48px */
    padding-bottom: 1.75rem;
  }
}
.qc-pub-page-intro-copy { max-width: 42rem; }
.qc-pub-page-title {
  margin: 0;
  max-width: 20ch;
  font-family: var(--ft-heading-font);
  font-size: clamp(1.875rem, 3.2vw, 3rem); /* ~30–48px */
  line-height: 1.15;
  font-weight: 700;
  color: var(--pub-emerald) !important;
  letter-spacing: -0.02em;
}
.qc-pub-page-support {
  margin: 0.55rem 0 0;
  max-width: 38rem;
  font-size: 1rem;
  line-height: 1.55;
  color: var(--pub-muted) !important;
}
.qc-pub-page-count {
  margin: 0;
  font-size: 0.95rem;
  color: var(--pub-muted) !important;
  white-space: nowrap;
}
.qc-pub-page-count strong { color: var(--pub-emerald) !important; font-weight: 700; }
@media (max-width: 1023px) {
  .qc-pub-page-count { display: none; }
}

.qc-pub-catalog {
  padding-bottom: 2.5rem;
  background: var(--pub-cream);
}
.qc-pub-catalog .qc-pub-product-grid { margin-top: 0.35rem; }

/* Filter toolbar */
.qc-pub-filter-toolbar {
  background: #fff !important;
  border: 1px solid var(--pub-border);
  border-radius: 16px;
  padding: 1rem;
  margin-bottom: 1.1rem;
  box-shadow: 0 10px 28px -24px rgba(1, 42, 32, 0.35);
}
.qc-pub-filter-toolbar .qc-pub-pills {
  margin-bottom: 0.85rem;
  overflow-x: auto;
  flex-wrap: nowrap;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
  padding-bottom: 0.15rem;
}
@media (min-width: 768px) {
  .qc-pub-filter-toolbar .qc-pub-pills { flex-wrap: wrap; overflow: visible; }
}
.qc-pub-controls-row {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: 1fr;
}
@media (min-width: 640px) {
  .qc-pub-controls-row {
    grid-template-columns: 1fr 1fr;
  }
  .qc-pub-controls-row .qc-pub-search { grid-column: 1 / -1; }
}
@media (min-width: 1024px) {
  .qc-pub-controls-row {
    grid-template-columns: minmax(0, 1.4fr) minmax(140px, 0.7fr) minmax(140px, 0.7fr) auto;
    align-items: center;
  }
  .qc-pub-controls-row .qc-pub-search { grid-column: auto; }
}

/* Product grid: 3 @ medium, 4 only when cards stay ~270px+ */
@media (min-width: 1024px) {
  .qc-pub-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1280px) {
  .qc-pub-product-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (prefers-reduced-motion: no-preference) {
  .qc-pub-product-card:hover .qc-pub-product-media img {
    transform: scale(1.02);
  }
  .qc-pub-product-media img {
    transition: transform 0.35s ease;
  }
}

/* —— Locator page —— */
.qc-pub-locator-page {
  padding-bottom: 2.5rem;
  background: var(--pub-cream);
}
.qc-pub-locator-toolbar {
  background: #fff;
  border: 1px solid var(--pub-border);
  border-radius: 18px;
  padding: 1rem 1.1rem 1.05rem;
  box-shadow: 0 14px 34px -28px rgba(1, 42, 32, 0.4);
  margin-bottom: 1.25rem;
}
.qc-pub-locator-search {
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem;
  align-items: center;
}
.qc-pub-locator-search .qc-pub-search-grow { flex: 1 1 220px; }
.qc-pub-locator-search .qc-pub-search-secondary { flex: 0 1 180px; opacity: 0.95; }
.qc-pub-locator-toolbar .qc-pub-more-filters {
  margin-top: 0.75rem;
  border-top: 1px solid var(--pub-border);
  padding-top: 0.65rem;
}
.qc-pub-locator-head {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 0.85rem;
}
.qc-pub-locator-grid {
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr;
}
@media (min-width: 1024px) {
  .qc-pub-locator-grid {
    grid-template-columns: minmax(0, 34%) minmax(0, 66%);
    gap: 1.15rem;
    align-items: stretch;
  }
  .qc-pub-map-wrap {
    height: 560px;
    min-height: 560px;
  }
}
@media (max-width: 1023px) {
  .qc-pub-map-wrap {
    height: 390px;
    min-height: 360px;
  }
}

/* —— Home hero refinements (Home ONLY via .qc-pub-hero) —— */
.qc-pub-hero {
  position: relative;
  overflow: hidden;
  background: #012A20;
  color: #F8F6F0;
  padding-bottom: 2.5rem;
}
.qc-pub-hero-wash {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 42% 48% at 88% 18%, rgba(24, 127, 120, 0.35), transparent 62%),
    radial-gradient(ellipse 30% 36% at 12% 78%, rgba(214, 181, 109, 0.12), transparent 60%),
    linear-gradient(135deg, #012A20 0%, #064638 58%, #187F78 100%);
  pointer-events: none;
}
.qc-pub-hero-grid {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 2rem;
  padding: 2.5rem 1.25rem 2.25rem;
  align-items: center;
}
@media (min-width: 1024px) {
  .qc-pub-hero-grid {
    grid-template-columns: 0.48fr 0.52fr;
    gap: 2.75rem;
    padding: 3.25rem 1.5rem 4.25rem;
    min-height: 650px;
    max-height: none;
  }
}
html .qc-portal.qc-lv-chrome .qc-pub-hero .qc-pub-h1 {
  max-width: 16ch;
  font-size: clamp(3rem, 5vw, 4.75rem) !important;
  line-height: 1.05;
  color: #F8F6F0 !important;
}
html .qc-portal.qc-lv-chrome .qc-pub-hero .qc-pub-lead {
  max-width: 34rem;
  color: rgba(248, 246, 240, 0.88) !important;
}
html .qc-portal.qc-lv-chrome .qc-pub-hero .qc-pub-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.55rem;
  color: #E2C57A !important;
}
.qc-pub-eyebrow-mark {
  width: 1.35rem;
  height: 2px;
  border-radius: 2px;
  background: #D6B56D;
  display: inline-block;
}
.qc-pub-trust-line {
  margin: 1.1rem 0 0;
  font-size: 0.8125rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(248, 246, 240, 0.72) !important;
}
.qc-pub-hero-media-wrap {
  position: relative;
  width: 100%;
  max-width: 520px;
  margin-inline: auto;
}
.qc-pub-hero-media {
  border-radius: 22px;
  overflow: hidden;
  border: 1px solid rgba(214, 181, 109, 0.35);
  background: #0a1f1a;
  box-shadow: 0 28px 55px -28px rgba(0, 0, 0, 0.55);
  aspect-ratio: 4 / 5;
  max-height: 520px;
  width: 100%;
}
.qc-pub-hero-badge {
  position: absolute;
  left: 1rem;
  bottom: 1rem;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 0.4rem 0.85rem;
  border-radius: 999px;
  background: rgba(1, 42, 32, 0.88);
  border: 1px solid rgba(214, 181, 109, 0.45);
  color: #F8F6F0 !important;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.03em;
  backdrop-filter: blur(8px);
}

/* Overlapping stats panel */
.qc-pub-stats {
  background: transparent;
  border-bottom: none;
}
.qc-pub-stats-overlap {
  position: relative;
  z-index: 3;
  margin-top: -1.75rem;
  padding-bottom: 0.5rem;
}
@media (min-width: 1024px) {
  .qc-pub-stats-overlap { margin-top: -2rem; }
}
.qc-pub-stats-overlap .qc-pub-stats-grid {
  background: #F8F6F0;
  border: 1px solid var(--pub-border);
  border-radius: 20px;
  box-shadow: 0 18px 40px -28px rgba(1, 42, 32, 0.45);
  padding: 1.25rem 1.35rem;
}
@media (min-width: 640px) {
  .qc-pub-stats-overlap .qc-pub-stats-grid {
    padding: 1.4rem 1.75rem;
  }
}
@media (max-width: 639px) {
  .qc-pub-stats-overlap { margin-top: 0.75rem; }
}

@media (prefers-reduced-motion: reduce) {
  .qc-pub-rise { animation: none !important; }
  .qc-pub-product-card:hover,
  .qc-pub-product-card:hover .qc-pub-product-media img {
    transform: none !important;
  }
}

/* 14.3.87 end */

/* 14.3.88 — Store locator color + map fix */

html.qc-pub-theme .qc-portal.qc-lv-chrome .qc-pub-locator-page,
html.qc-pub-theme .qc-portal.qc-lv-chrome .qc-pub-catalog,
html.qc-pub-theme .qc-portal.qc-lv-chrome .qc-pub-shell,
html .qc-portal.qc-lv-chrome .qc-pub-locator-page,
html .qc-portal.qc-lv-chrome .qc-pub-catalog,
html .qc-portal.qc-lv-chrome .qc-pub-store-shell {
  background: #F8F6F0 !important;
  color: #17362E !important;
  min-height: 0 !important;
}

html .qc-portal.qc-lv-chrome .qc-pub-page-title,
html.dark .qc-portal.qc-lv-chrome .qc-pub-page-title,
html[data-theme="qudra-green"] .qc-portal.qc-lv-chrome .qc-pub-page-title,
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome .qc-pub-page-title,
html[data-theme="qudra-reverse"] .qc-portal.qc-lv-chrome .qc-pub-page-title {
  color: #012A20 !important;
  text-shadow: none !important;
  font-size: clamp(1.875rem, 3.2vw, 3rem) !important;
}

html .qc-portal.qc-lv-chrome .qc-pub-page-support,
html.dark .qc-portal.qc-lv-chrome .qc-pub-page-support,
html[data-theme="qudra-green"] .qc-portal.qc-lv-chrome .qc-pub-page-support {
  color: #60736B !important;
}

html .qc-portal.qc-lv-chrome .qc-pub-eyebrow-dark { color: #187F78 !important; }

html .qc-portal.qc-lv-chrome .qc-pub-h2,
html.dark .qc-portal.qc-lv-chrome .qc-pub-h2,
html[data-theme="qudra-green"] .qc-portal.qc-lv-chrome .qc-pub-h2 {
  color: #012A20 !important;
  text-shadow: none !important;
}

html .qc-portal.qc-lv-chrome .qc-pub-muted { color: #60736B !important; }

html .qc-portal.qc-lv-chrome section.qc-pub-locator-page,
html .qc-portal.qc-lv-chrome section.qc-pub-catalog {
  min-height: 0 !important;
  height: auto !important;
  background: #F8F6F0 !important;
}
html .qc-portal.qc-lv-chrome section.qc-pub-locator-page::after,
html .qc-portal.qc-lv-chrome section.qc-pub-catalog::after {
  display: none !important;
  content: none !important;
}

/* Force map box — fixes blank/collapsed Leaflet containers */
html .qc-portal.qc-lv-chrome .qc-pub-map-wrap {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  height: 390px !important;
  min-height: 360px !important;
  background: #e8eee9 !important;
  border: 1px solid #DED9CE !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  z-index: 1;
}
@media (min-width: 1024px) {
  html .qc-portal.qc-lv-chrome .qc-pub-map-wrap {
    height: 560px !important;
    min-height: 560px !important;
  }
}
html .qc-portal.qc-lv-chrome .qc-pub-map,
html .qc-portal.qc-lv-chrome .qc-pub-map.leaflet-container {
  width: 100% !important;
  height: 100% !important;
  min-height: 360px !important;
  background: #dfe8e3 !important;
}
html .qc-portal.qc-lv-chrome .leaflet-control-attribution {
  font-size: 10px;
  background: rgba(248,246,240,.92) !important;
  color: #60736B !important;
}

html .qc-portal.qc-lv-chrome .qc-pub-locator-toolbar,
html .qc-portal.qc-lv-chrome .qc-pub-store-card,
html .qc-portal.qc-lv-chrome .qc-pub-store-detail {
  background: #FFFFFF !important;
  color: #17362E !important;
  border-color: #DED9CE !important;
}
html .qc-portal.qc-lv-chrome .qc-pub-store-name { color: #012A20 !important; }
html .qc-portal.qc-lv-chrome .qc-pub-store-card[data-active="true"] {
  border-color: #012A20 !important;
  box-shadow: 0 0 0 1px #012A20 !important;
}

/* Keep emerald header even under light theme overrides */
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header {
  background: rgba(1, 42, 32, 0.97) !important;
  color: #F8F6F0 !important;
}
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header a:not(.qc-pub-btn-primary),
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header button:not(.qc-pub-btn-primary),
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header span,
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header .qc-nav-link {
  color: rgba(248, 246, 240, 0.92) !important;
}
html[data-theme="qudra-green-light"] .qc-portal.qc-lv-chrome > header .qc-pub-btn-primary {
  background: #D6B56D !important;
  color: #012A20 !important;
}

/* 14.3.88 end */

/* 14.3.89 — Complete Leaflet map tiles
   Counter spa CSS: img,video{max-width:100%;height:auto} which leaves gray gaps */
.leaflet-container img,
.leaflet-container .leaflet-tile,
.leaflet-tile-pane img,
.leaflet-marker-pane img,
.qc-pub-map img,
.qc-pub-map .leaflet-tile,
html .qc-portal .leaflet-container img,
html .qc-portal .leaflet-tile,
html .qc-portal.qc-lv-chrome .leaflet-container img,
html .qc-portal.qc-lv-chrome .leaflet-tile,
html .qc-portal.qc-lv-chrome .qc-pub-map img {
  max-width: none !important;
  max-height: none !important;
  width: 256px !important;
  height: 256px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  display: block !important;
  vertical-align: top !important;
  box-shadow: none !important;
  object-fit: fill !important;
}

.leaflet-marker-icon,
.leaflet-marker-shadow,
html .qc-portal .leaflet-marker-icon,
html .qc-portal .leaflet-marker-shadow {
  max-width: none !important;
  max-height: none !important;
  width: auto !important;
  height: auto !important;
}

.qc-pub-map-marker {
  background: transparent !important;
  border: 0 !important;
}

html .qc-portal.qc-lv-chrome .qc-pub-map-wrap {
  overflow: hidden !important;
}
html .qc-portal.qc-lv-chrome .qc-pub-map.leaflet-container,
html .qc-portal.qc-lv-chrome .qc-pub-map {
  width: 100% !important;
  height: 100% !important;
  min-height: 360px !important;
  z-index: 0 !important;
  background: #dfe8e3 !important;
}
html .qc-portal.qc-lv-chrome .leaflet-pane,
html .qc-portal.qc-lv-chrome .leaflet-tile-pane,
html .qc-portal.qc-lv-chrome .leaflet-map-pane {
  opacity: 1 !important;
  visibility: visible !important;
}

/* —— Contact page (14.3.90) —— */
.qc-pub-contact-shell { background: #faf8f5; min-height: 70vh; }
.qc-pub-contact-container { max-width: 1100px; margin: 0 auto; }
.qc-pub-contact-grid {
  display: grid;
  gap: 1.5rem;
  padding-bottom: 3rem;
}
@media (min-width: 960px) {
  .qc-pub-contact-grid {
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
    align-items: start;
    gap: 2rem;
  }
}
.qc-pub-contact-lead {
  margin: 0 0 1.25rem;
  color: var(--qc-text-secondary, #444748);
  font-size: 1rem;
  line-height: 1.6;
}
.qc-pub-contact-details {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.85rem;
}
.qc-pub-contact-details li {
  display: grid;
  gap: 0.2rem;
}
.qc-pub-contact-details span {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--qc-text-secondary, #50675f);
}
.qc-pub-contact-details a,
.qc-pub-contact-details strong {
  color: #012A20;
  font-weight: 600;
  text-decoration: none;
  word-break: break-word;
}
.qc-pub-contact-details a:hover { text-decoration: underline; }
.qc-pub-contact-mini-cards {
  display: grid;
  gap: 0.75rem;
  margin-top: 1.5rem;
}
.qc-pub-contact-mini {
  background: #fff;
  border: 1px solid rgba(1, 42, 32, 0.08);
  border-radius: 16px;
  padding: 0.95rem 1rem;
  box-shadow: 0 10px 28px -24px rgba(1, 42, 32, 0.35);
}
.qc-pub-contact-mini h3 {
  margin: 0;
  font-family: var(--ft-heading-font), "Plus Jakarta Sans", sans-serif;
  font-size: 0.95rem;
  color: #012A20;
}
.qc-pub-contact-mini p {
  margin: 0.35rem 0 0;
  font-size: 0.875rem;
  color: var(--qc-text-secondary, #50675f);
  line-height: 1.45;
}
.qc-pub-contact-form-card {
  background: #fff;
  border: 1px solid rgba(1, 42, 32, 0.1);
  border-radius: 22px;
  padding: 1.35rem 1.25rem 1.5rem;
  box-shadow: 0 18px 40px -28px rgba(1, 42, 32, 0.45);
}
@media (min-width: 640px) {
  .qc-pub-contact-form-card { padding: 1.75rem; }
}
.qc-pub-contact-form-card .qc-pub-h2 { margin: 0 0 1rem; color: #012A20; }
.qc-pub-contact-field { display: grid; gap: 0.4rem; margin-bottom: 0.95rem; }
.qc-pub-contact-row {
  display: grid;
  gap: 0.75rem;
}
@media (min-width: 640px) {
  .qc-pub-contact-row { grid-template-columns: 1fr 1fr; }
}
.qc-pub-contact-select {
  min-height: 44px;
  width: 100%;
  border-radius: 12px;
  border: 1px solid rgba(1, 42, 32, 0.14);
  background: #fff;
  padding: 0.55rem 0.75rem;
  font-size: 0.95rem;
  color: #12352A;
}
.qc-pub-contact-select:focus,
.qc-pub-contact-field input:focus,
.qc-pub-contact-field textarea:focus {
  outline: 2px solid #D6B56D;
  outline-offset: 1px;
  border-color: #012A20;
}
.qc-pub-field-error {
  margin: 0;
  color: #9b1c1c;
  font-size: 0.8rem;
}
.qc-pub-field-hint {
  margin: 0;
  color: var(--qc-text-secondary, #50675f);
  font-size: 0.75rem;
}
.qc-pub-contact-alert {
  margin: 0 0 0.85rem;
  padding: 0.7rem 0.85rem;
  border-radius: 12px;
  background: #fff1f0;
  color: #9b1c1c;
  border: 1px solid rgba(155, 28, 28, 0.18);
}
.qc-pub-contact-consent {
  grid-template-columns: 22px 1fr;
  align-items: start;
  column-gap: 0.65rem;
}
.qc-pub-contact-consent input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin-top: 0.2rem;
}
.qc-pub-contact-submit {
  width: 100%;
  min-height: 48px;
  margin-top: 0.35rem;
  background: #D6B56D !important;
  color: #012A20 !important;
  border: none !important;
  font-weight: 700;
}
.qc-pub-contact-submit:disabled { opacity: 0.65; cursor: not-allowed; }
.qc-pub-hp {
  position: absolute !important;
  left: -10000px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
}
.qc-pub-contact-success {
  background: #fff;
  border: 1px solid rgba(1, 42, 32, 0.1);
  border-radius: 22px;
  padding: 2rem 1.5rem;
  text-align: center;
  box-shadow: 0 18px 40px -28px rgba(1, 42, 32, 0.4);
  margin-bottom: 3rem;
}
.qc-pub-contact-success-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: center;
  margin-top: 1.25rem;
}

/* 14.3.90 end */

/* 14.3.100 — Visit page/form: readable text on green / reverse / light themes */
.qcc-visit-page,
.qcc-visit-dialog,
.qcc-visit-form {
  color: var(--foreground) !important;
}
.qcc-visit-page label,
.qcc-visit-dialog label,
.qcc-visit-form label,
.qcc-visit-page p,
.qcc-visit-dialog p,
.qcc-visit-form p,
.qcc-visit-page span,
.qcc-visit-dialog span,
.qcc-visit-form span,
.qcc-visit-page td,
.qcc-visit-dialog td,
.qcc-visit-page th,
.qcc-visit-dialog th,
.qcc-visit-page .text-muted-foreground,
.qcc-visit-dialog .text-muted-foreground,
.qcc-visit-form .text-muted-foreground,
.qcc-visit-page [class*="text-muted"],
.qcc-visit-dialog [class*="text-muted"],
.qcc-visit-form [class*="text-muted"] {
  color: var(--foreground) !important;
}
.qcc-visit-page input,
.qcc-visit-dialog input,
.qcc-visit-form input,
.qcc-visit-page textarea,
.qcc-visit-dialog textarea,
.qcc-visit-form textarea,
.qcc-visit-page select,
.qcc-visit-dialog select,
.qcc-visit-form select {
  color: var(--foreground) !important;
  background-color: var(--background) !important;
}
.qcc-visit-page input::placeholder,
.qcc-visit-dialog input::placeholder,
.qcc-visit-form input::placeholder,
.qcc-visit-page textarea::placeholder,
.qcc-visit-dialog textarea::placeholder,
.qcc-visit-form textarea::placeholder {
  color: var(--muted-foreground) !important;
  opacity: 1;
}
.qcc-visit-page .text-destructive,
.qcc-visit-dialog .text-destructive,
.qcc-visit-form .text-destructive {
  color: var(--destructive, #b12f38) !important;
}
.qcc-visit-page .text-amber-700,
.qcc-visit-dialog .text-amber-700,
.qcc-visit-form .text-amber-700 {
  color: #a3620c !important;
}
.qcc-visit-page .text-green-700,
.qcc-visit-dialog .text-green-700,
.qcc-visit-form .text-green-700 {
  color: #13714c !important;
}
.qcc-visit-page .bg-brand-gradient,
.qcc-visit-dialog .bg-brand-gradient,
.qcc-visit-form .bg-brand-gradient,
.qcc-visit-page button.bg-brand-gradient,
.qcc-visit-dialog button.bg-brand-gradient {
  color: #fff !important;
}
html.dark .qcc-visit-page .text-amber-700,
html[data-theme="qudra-reverse"] .qcc-visit-page .text-amber-700,
html.dark .qcc-visit-dialog .text-amber-700,
html[data-theme="qudra-reverse"] .qcc-visit-dialog .text-amber-700 {
  color: #e0b35c !important;
}
html.dark .qcc-visit-page .text-green-700,
html[data-theme="qudra-reverse"] .qcc-visit-page .text-green-700,
html.dark .qcc-visit-dialog .text-green-700,
html[data-theme="qudra-reverse"] .qcc-visit-dialog .text-green-700 {
  color: #7dcea6 !important;
}

/* 14.3.103 — New Visit Total Amount / deal-products card: do not inherit
   the global [class*="bg-primary"] { color:#fff } rule (white on cream). */
.qcc-visit-form [class*="bg-primary"]:not(.bg-primary\/10):not(.bg-primary\/5):not(.bg-primary\/20),
.qcc-visit-dialog [class*="bg-primary"]:not(.bg-primary\/10):not(.bg-primary\/5):not(.bg-primary\/20) {
  color: var(--foreground) !important;
}
.qcc-visit-form [class*="bg-primary"] div,
.qcc-visit-dialog [class*="bg-primary"] div,
.qcc-visit-form [class*="bg-primary"] .font-semibold,
.qcc-visit-dialog [class*="bg-primary"] .font-semibold,
.qcc-visit-form .text-primary,
.qcc-visit-dialog .text-primary,
.qcc-visit-form [class*="text-primary"]:not(.text-primary-foreground),
.qcc-visit-dialog [class*="text-primary"]:not(.text-primary-foreground) {
  color: var(--foreground) !important;
}
.qcc-visit-form input[type="number"],
.qcc-visit-dialog input[type="number"] {
  color: var(--foreground) !important;
  -webkit-text-fill-color: var(--foreground) !important;
}
.qcc-visit-form .bg-brand-gradient,
.qcc-visit-dialog .bg-brand-gradient,
.qcc-visit-form [class*="bg-primary"] button.bg-brand-gradient,
.qcc-visit-dialog [class*="bg-primary"] button.bg-brand-gradient {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* 14.3.143 — Document forms, packing boxes, and unit dropdowns (theme-aware contrast) */
body [role="dialog"],
[data-radix-dialog-content],
.qcc-doc-form,
.qcc-quote-form,
.qcc-packing-hierarchy {
  color: var(--foreground) !important;
}
body [role="dialog"] label,
[data-radix-dialog-content] label,
.qcc-doc-form label,
.qcc-quote-form label,
.qcc-packing-hierarchy label,
.qcc-doc-form p,
.qcc-quote-form p,
.qcc-packing-hierarchy p,
.qcc-doc-form span,
.qcc-quote-form span {
  color: var(--foreground);
}
.qcc-muted-copy,
.qcc-packing-meta,
.qcc-doc-form .text-muted-foreground,
.qcc-quote-form .text-muted-foreground,
body [role="dialog"] .text-muted-foreground,
body [role="dialog"] [class*="text-muted"] {
  color: var(--muted-foreground) !important;
}
body [role="dialog"] input,
body [role="dialog"] textarea,
body [role="dialog"] select,
.qcc-doc-form input,
.qcc-doc-form textarea,
.qcc-doc-form select,
.qcc-quote-form input,
.qcc-quote-form textarea,
.qcc-quote-form select,
.qcc-unit-select,
.qcc-unit-search,
.qcc-packing-hierarchy input,
.qcc-packing-hierarchy select {
  color: var(--foreground) !important;
  background-color: var(--background) !important;
  border-color: var(--input) !important;
  -webkit-text-fill-color: var(--foreground) !important;
}
body [role="dialog"] input::placeholder,
.qcc-doc-form input::placeholder,
.qcc-quote-form input::placeholder,
.qcc-unit-search::placeholder,
.qcc-packing-hierarchy input::placeholder {
  color: var(--muted-foreground) !important;
  opacity: 1;
}
body [role="dialog"] select:disabled,
.qcc-unit-select:disabled {
  color: var(--muted-foreground) !important;
  -webkit-text-fill-color: var(--muted-foreground) !important;
  opacity: 1;
}
body [role="dialog"] option,
.qcc-unit-select option,
[data-radix-select-content],
[data-radix-popper-content-wrapper] [role="listbox"] {
  color: var(--popover-foreground) !important;
  background-color: var(--popover) !important;
}
[data-radix-select-content] [role="option"],
[data-radix-select-content] [data-highlighted],
[data-radix-select-content] [data-state="checked"] {
  color: var(--popover-foreground) !important;
}
[data-radix-select-content] [role="option"][data-highlighted],
[data-radix-select-content] [role="option"]:hover {
  background: var(--accent) !important;
  color: var(--accent-foreground) !important;
}
.qcc-packing-box,
.qcc-packing-hierarchy {
  background: color-mix(in srgb, var(--primary) 10%, var(--card)) !important;
  border: 1px solid color-mix(in srgb, var(--primary) 28%, var(--border)) !important;
  color: var(--foreground) !important;
  border-radius: 12px;
  padding: 0.65rem 0.75rem;
  font-size: 0.75rem;
  line-height: 1.45;
  word-break: break-word;
}
.qcc-packing-title {
  font-weight: 750;
  color: var(--foreground) !important;
  margin-bottom: 0.25rem;
}
.qcc-packing-line {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  padding: 0.4rem 0.65rem !important;
  line-height: 1.3;
}
.qcc-packing-line .qcc-packing-title {
  margin-bottom: 0;
  flex-shrink: 0;
}
.qcc-packing-line .qcc-packing-title::after {
  content: ":";
}
.qcc-packing-line span {
  overflow: hidden;
  text-overflow: ellipsis;
}
.qcc-packing-total {
  font-weight: 750;
  color: var(--primary) !important;
  margin-top: 0.35rem;
}
.qcc-packing-level {
  background: var(--card) !important;
  color: var(--foreground) !important;
}
.qcc-inactive-badge {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 0.1rem 0.45rem;
  font-size: 10px;
  font-weight: 750;
  background: color-mix(in srgb, var(--warning, #EA9C42) 22%, var(--card));
  color: #92400E !important;
  border: 1px solid color-mix(in srgb, var(--warning, #EA9C42) 40%, var(--border));
}
html.dark .qcc-inactive-badge,
html[data-theme="qudra-reverse"] .qcc-inactive-badge {
  color: #FDE68A !important;
}
.qcc-validation-error {
  color: #B91C1C !important;
  background: #FEF2F2 !important;
  border-color: #FECACA !important;
}
html.dark .qcc-validation-error,
html[data-theme="qudra-reverse"] .qcc-validation-error {
  color: #FECACA !important;
  background: rgba(185, 28, 28, 0.18) !important;
  border-color: rgba(248, 113, 113, 0.35) !important;
}
html.dark .qcc-packing-box,
html[data-theme="qudra-reverse"] .qcc-packing-box,
html.dark .qcc-packing-hierarchy,
html[data-theme="qudra-reverse"] .qcc-packing-hierarchy {
  background: color-mix(in srgb, var(--primary) 16%, var(--card)) !important;
  color: var(--foreground) !important;
}
html.dark .qcc-packing-total,
html[data-theme="qudra-reverse"] .qcc-packing-total {
  color: var(--primary) !important;
}
@media (max-width: 375px) {
  body [role="dialog"],
  [data-radix-dialog-content] {
    width: calc(100vw - 16px) !important;
    max-width: calc(100vw - 16px) !important;
    max-height: 92vh !important;
  }
  .qcc-unit-select,
  .qcc-packing-box {
    min-width: 0;
    max-width: 100%;
  }
}

