/* =========================================================
   1. DESIGN TOKENS
========================================================= */
body {
  /* body em vez de :root — as variáveis Elementor (--e-global-color-*) são
     definidas em .elementor-kit-8 que está no body, e CSS não herda "para cima". */
  /* CORES GLOBAIS — espelhadas do Elementor Site Settings > Global Colors
     Para mudar uma cor: editar no Elementor e propaga aqui automaticamente.
     Mapeamento: --e-global-color-primary → primary, -secondary → secondary, etc. */
  --site-color-primary:     var(--e-global-color-primary);       /* #230419 */
  --site-color-secondary:   var(--e-global-color-secondary);     /* #6f4a6f */
  --site-color-text:        var(--e-global-color-text);          /* #ffffff */
  --site-color-accent:      var(--e-global-color-e45541e);       /* #a28aa2 */
  --site-color-tertiary:    var(--e-global-color-f75925f);       /* #5e4364 */

  --site-color-091312:      var(--e-global-color-3ead308);       /* #091312 */
  --site-color-1e3236:      var(--e-global-color-4cde890);       /* #1e3236 */
  --site-color-45575a:      var(--e-global-color-615bcdc);       /* #45575a */
  --site-color-5c787e:      var(--e-global-color-1275600);       /* #5c787e */
  --site-color-0c0e03:      var(--e-global-color-6c25d43);       /* #0c0e03 */
  --site-color-555c3b:      var(--e-global-color-9e0f33c);       /* #555c3b */
  --site-color-523b3c:      var(--e-global-color-750c330);       /* #523b3c */
  --site-color-967e7f:      var(--e-global-color-accent);        /* #967e7f */
  --site-color-header-old:  var(--e-global-color-7f25366);       /* #4b1d2a */
  --site-color-text-transp: var(--e-global-color-cb10a1b);       /* #ffffff a6 ≈ rgba(255,255,255,0.65) */

  /* FUNDOS E SUPERFÍCIES */
  --site-bg: var(--site-color-primary);
  --site-surface: transparent;
  --site-surface-light: rgba(255, 255, 255, 0.04);
  --site-border: #ffffff;
  --site-border-soft: rgba(255, 255, 255, 0.18);

  /* TIPOGRAFIA */
  --site-font-heading: "Frontage", sans-serif;
  --site-font-body: "Roboto", sans-serif;
  --site-font-ui: "Noto Sans", sans-serif;

  --site-text-body-size: 16px;
  --site-text-body-line: 18px;
  --site-text-body-weight: 400;

  --site-text-ui-lg-size: 22px;
  --site-text-ui-lg-line: 1.25em;
  --site-text-ui-lg-weight: 500;

  --site-text-ui-md-size: 16px;
  --site-text-ui-md-line: 1.25em;
  --site-text-ui-md-weight: 500;

  --site-text-ui-sm-size: 14px;
  --site-text-ui-sm-line: 1.25em;
  --site-text-ui-sm-weight: 400;

  --site-h1-size: 49px;
  --site-h1-line: 49px;
  --site-h1-weight: 400;

  --site-h2-size: 39px;
  --site-h2-line: 39px;
  --site-h2-weight: 400;

  --site-h3-size: 31px;
  --site-h3-line: 25px;
  --site-h3-weight: 500;

  --site-h4-size: 25px;
  --site-h4-line: 22px;
  --site-h4-weight: 500;

  --site-h5-size: 20px;
  --site-h5-line: 18px;
  --site-h5-weight: 500;

  /* ESPAÇAMENTO */
  --site-space-xs: 6px;
  --site-space-sm: 10px;
  --site-space-md: 16px;
  --site-space-lg: 24px;
  --site-space-xl: 40px;

  /* RAIOS E SOMBRAS */
  --site-radius-none: 0;
  --site-shadow-none: none;

  /* BOTÕES */
  --site-button-font: var(--site-font-ui);
  --site-button-size: var(--site-text-ui-md-size);
  --site-button-line: var(--site-text-ui-md-line);
  --site-button-weight: var(--site-text-ui-md-weight);

  --site-button-text: #ffffff;
  --site-button-bg: #a28aa2;
  --site-button-border: #a28aa2;

  --site-button-hover-text: #ffffff;
  --site-button-hover-bg: #5e4364;
  --site-button-hover-border: #ffffff;

  --site-button-padding-y: 12px;
  --site-button-padding-x: 20px;

  /* FORM FIELDS */
  --site-input-font: var(--site-font-body);
  --site-input-size: var(--site-text-body-size);
  --site-input-line: var(--site-text-body-line);
  --site-input-weight: var(--site-text-body-weight);

  --site-label-font: var(--site-font-body);
  --site-label-size: var(--site-text-body-size);
  --site-label-line: var(--site-text-body-line);
  --site-label-weight: var(--site-text-body-weight);

  --site-input-text: #ffffff;
  --site-input-bg: transparent;
  --site-input-border: #ffffff;
  --site-input-border-focus: #ffffff;
  --site-input-radius: 0;
  --site-input-padding: 10px;

  /* -------------------------------------------------------
     DOKAN VARIABLES BRIDGE — Layer 1
     Remapeia --dokan-* para --site-*, sobrescrevendo o
     <style id="dokan-layout-inline-css"> do color-scheme-customizer.
     Declarado em body (não :root) para aceder a --site-color-*,
     definidas pelo Elementor em body via .elementor-kit-8.
     Efeito: mudar uma cor em Elementor Site Settings propaga ao Dokan.
  ------------------------------------------------------- */

  /* botões — primary */
  --dokan-button-background-color:       var(--site-color-secondary);
  --dokan-button-border-color:           var(--site-color-secondary);
  --dokan-button-text-color:             var(--site-color-text);
  --dokan-button-hover-background-color: var(--site-color-tertiary);
  --dokan-button-hover-border-color:     var(--site-color-tertiary);
  --dokan-button-hover-text-color:       var(--site-color-text);

  /* botões — secondary (outlined) */
  --dokan-button-secondary-background-color:       transparent;
  --dokan-button-secondary-border-color:           var(--site-color-secondary);
  --dokan-button-secondary-text-color:             var(--site-color-secondary);
  --dokan-button-secondary-hover-background-color: var(--site-color-secondary);
  --dokan-button-secondary-hover-border-color:     var(--site-color-secondary);
  --dokan-button-secondary-hover-text-color:       var(--site-color-text);

  /* botões — tertiary (ghost) */
  --dokan-button-tertiary-background-color:       transparent;
  --dokan-button-tertiary-border-color:           transparent;
  --dokan-button-tertiary-text-color:             var(--site-color-secondary);
  --dokan-button-tertiary-hover-background-color: var(--site-surface-light);
  --dokan-button-tertiary-hover-border-color:     var(--site-border-soft);
  --dokan-button-tertiary-hover-text-color:       var(--site-color-text);

  /* sidebar */
  --dokan-sidebar-background-color:       var(--site-color-primary);
  --dokan-sidebar-hover-background-color: var(--site-color-secondary);
  --dokan-sidebar-text-color:             var(--site-color-text);
  --dokan-sidebar-hover-text-color:       var(--site-color-text);

  /* links */
  --dokan-link-color:       var(--site-color-secondary);
  --dokan-link-hover-color: var(--site-color-accent);

  /* -------------------------------------------------------
     WOOCOMMERCE VARIABLES BRIDGE — Layer 1
     Remapeia --wc-* para --site-*, sobrescrevendo o
     :root { } do woocommerce.css e forms.css.
     Efeito: mudar uma cor no Elementor → propaga ao WooCommerce Classic.
  ------------------------------------------------------- */

  /* cor principal (botões, links, checkboxes, progress bars) */
  --woocommerce:          var(--site-color-secondary);
  --wc-primary:           var(--site-color-secondary);
  --wc-primary-text:      var(--site-color-text);

  /* cor secundária */
  --wc-secondary:         var(--site-color-tertiary);
  --wc-secondary-text:    var(--site-color-text);

  /* fundos e superfícies */
  --wc-content-bg:        var(--site-color-primary);

  /* texto secundário / subtexto */
  --wc-subtext:           var(--site-color-text-transp);

  /* highlight (ratings, badges de produto) */
  --wc-highlight:         var(--site-color-accent);
  --wc-highligh-text:     var(--site-color-primary);

  /* formulários — UI-Rules: border-radius 0, só border-bottom via seletores */
  --wc-form-border-color:     var(--site-border-soft);
  --wc-form-border-radius:    0px;
  --wc-form-border-width:     1px;
  --wc-form-color-background: transparent;
  --wc-form-color-text:       var(--site-color-text);
}


/* =========================================================
   2. TAILWIND VARIABLES BRIDGE — Layer 3
   Redefine as variáveis Tailwind v4 do Dokan React app
   no scope de .dokan-layout / .pui-root.
   Estas variáveis são computadas em :root pelo Tailwind —
   só uma definição mais próxima (no próprio elemento) as
   sobrescreve para todos os filhos.
   Efeito: corrige cores, fontes, radius do [dokan-dashboard].
========================================================= */
.dokan-layout,
.pui-root,
.pui-root-dataviews,
#dokan-vendor-dashboard-root {
  /* --- Font: sistema → Noto Sans (UI-Rule 2) --- */
  --font-sans:           "Noto Sans", sans-serif;
  --default-font-family: "Noto Sans", sans-serif;

  /* --- Escala de cinzentos → paleta TCE escura --- */
  --color-gray-900: var(--site-color-text);          /* #fff — texto principal */
  --color-gray-800: var(--site-color-text);
  --color-gray-700: var(--site-color-text);
  --color-gray-600: var(--site-color-text-transp);   /* branco 65% */
  --color-gray-500: var(--site-color-text-transp);
  --color-gray-400: var(--site-color-text-transp);
  --color-gray-300: var(--site-border-soft);         /* rgba(255,255,255,0.18) */
  --color-gray-200: var(--site-border-soft);
  --color-gray-100: rgba(255, 255, 255, 0.06);
  --color-gray-50:  rgba(255, 255, 255, 0.03);

  /* --- Branco / fundos --- */
  --color-white:  var(--site-color-primary);         /* bg-white → fundo escuro TCE */
  --color-border: var(--site-border-soft);

  /* --- Border-radius → 0 (UI-Rule 3) --- */
  --radius-xs:  0;
  --radius-sm:  0;
  --radius-md:  0;
  --radius-lg:  0;
  --radius-xl:  0;
  --radius-2xl: 0;
  --radius-4xl: 0;

  /* --- Brand colors: re-bridge no scope correcto ---
     O Tailwind computa --color-dokan-* em :root usando o
     --dokan-* de :root (do PHP). Aqui sobrescrevemos
     directamente com --site-color-* para garantir a cadeia. */
  --color-dokan-btn:                     var(--site-color-secondary);
  --color-dokan-btn-hover:               var(--site-color-tertiary);
  --color-dokan-btn-text:                var(--site-color-text);
  --color-dokan-btn-text-hover:          var(--site-color-text);
  --color-dokan-primary:                 var(--site-color-secondary);
  --color-primary:                       var(--site-color-secondary);
  --color-primary-dark:                  var(--site-color-tertiary);
  --color-primary-hover:                 var(--site-color-secondary);
  --color-dokan-link:                    var(--site-color-secondary);
  --color-dokan-link-hover:              var(--site-color-accent);

  /* Botão secondary (outlined) */
  --color-dokan-btn-secondary:           transparent;
  --color-dokan-btn-secondary-hover:     var(--site-color-secondary);
  --color-dokan-btn-secondary-text:      var(--site-color-secondary);
  --color-dokan-btn-secondary-text-hover: var(--site-color-text);
  --color-dokan-btn-secondary-border:    var(--site-color-secondary);
  --color-dokan-btn-secondary-border-hover: var(--site-color-secondary);

  /* Botão tertiary (ghost) */
  --color-dokan-btn-tertiary:            transparent;
  --color-dokan-btn-tertiary-text:       var(--site-color-secondary);
  --color-dokan-btn-tertiary-hover:      var(--site-surface-light);
  --color-dokan-btn-tertiary-text-hover: var(--site-color-text);

  /* Alertas semânticos — fundos claros substituídos por tons TCE subtis */
  --color-dokan-info:         rgba(111, 74, 111, 0.15);
  --color-dokan-info-border:  var(--site-border-soft);
  --color-dokan-info-text:    var(--site-color-text);
  --color-dokan-success:      rgba(0, 100, 60, 0.20);
  --color-dokan-warning:      rgba(160, 100, 0, 0.20);
  --color-dokan-danger:       rgba(160, 0, 20, 0.20);

  /* bg-accent (círculos de ícone em empty states) — era oklch(0.97) = branco */
  --color-accent: rgba(255, 255, 255, 0.08);

  /* shadcn/ui tokens usados pelo DataViews table header
     --background: th cells (oklch(1 0 0) = branco puro)
     --muted: thead row (oklch(0.97 0 0) = cinzento claro)  */
  --background: var(--site-color-primary);
  --muted:      var(--site-surface-light);
  --muted-foreground: var(--site-color-text-transp);

  /* WordPress Components — ícones e botões .components-button usam
     --wp-components-color-foreground (#1e1e1e = preto) invisível em fundo escuro */
  --wp-components-color-foreground:          var(--site-color-text);
  --wp-components-color-foreground-inverted: var(--site-color-primary);
  --wp-components-color-accent:              var(--site-color-secondary);
  --wp-components-color-accent-darker-10:    var(--site-color-tertiary);
  --wp-components-color-accent-inverted:     var(--site-color-text);

  /* shadcn/ui --foreground (#1d1d1d = preto) usado nos botões de sort
     do thead (.dataviews-view-table-header-button:not(:hover)) */
  --foreground:           var(--site-color-text);
  --foreground-muted:     var(--site-color-text-transp);
  --card:                 var(--site-color-primary);
  --card-foreground:      var(--site-color-text);
  --popover:              var(--site-color-primary);
  --popover-foreground:   var(--site-color-text);
  --primary-foreground:   var(--site-color-text);
  --secondary:            var(--site-color-tertiary);
  --secondary-foreground: var(--site-color-text);
  --muted-foreground:     var(--site-color-text-transp);
  --border:               var(--site-border-soft);
  --input:                var(--site-border-soft);
  --ring:                 var(--site-color-secondary);
  --radius:               0px;

  /* Alertas azuis (bg-blue-50, bg-indigo-50, etc.) → tom TCE */
  --color-blue-50:   rgba(111, 74, 111, 0.12);
  --color-indigo-50: rgba(111, 74, 111, 0.12);
  --color-sky-50:    rgba(111, 74, 111, 0.12);
  --color-teal-50:   rgba(111, 74, 111, 0.08);
  --color-green-50:  rgba(60, 120, 60, 0.12);
  --color-red-50:    rgba(140, 20, 20, 0.12);
  --color-yellow-50: rgba(140, 100, 0, 0.12);
  --color-orange-50: rgba(140, 80, 0, 0.12);
  --color-pink-50:   rgba(111, 74, 111, 0.10);
  --color-purple-50: rgba(111, 74, 111, 0.10);
}


/* =========================================================
   2b. WORDPRESS DATAVIEWS — Paleta TCE
   O componente @wordpress/dataviews usa --wp-dataviews-color-background
   com fallback #fff e escopos próprios (#dokan-vendor-dashboard-root,
   .pui-root-dataviews). Overrides directos necessários.
========================================================= */
#dokan-vendor-dashboard-root,
.pui-root-dataviews {
  --wp-dataviews-color-background: var(--site-color-primary);
  --wp-admin-theme-color:          var(--site-color-secondary);
}

/* Backgrounds hardcoded do DataViews */
.pui-root-dataviews,
.pui-root-dataviews .dataviews-wrapper,
.pui-root-dataviews .dataviews-layout__container,
.pui-root-dataviews .dataviews-no-results,
#dokan-vendor-dashboard-root .dataviews-wrapper,
#dokan-vendor-dashboard-root .dataviews-picker-wrapper {
  background: var(--site-color-primary) !important;
  color:      var(--site-color-text) !important;
}

#dokan-vendor-dashboard-root .dataviews__view-actions--infinite-scroll {
  background: var(--site-color-primary) !important;
}

/* Filter chips: cinzento → surface-light */
#dokan-vendor-dashboard-root .dataviews-filters__summary-chip {
  background: var(--site-surface-light) !important;
  color:      var(--site-color-text) !important;
  border:     1px solid var(--site-border-soft) !important;
}

/* Fix: DataViews thead th — todos ao centro vertical (Products, TYPE, STOCK, ACTIONS...) */
#dokan-vendor-dashboard-root .dataviews-view-table thead th,
.pui-root-dataviews .dataviews-view-table thead th {
  vertical-align: middle !important;
}

/* Fix: Checkbox container — alinhar ao centro vertical */
.dokan-layout .components-checkbox-control__input-container,
#dokan-vendor-dashboard-root .components-checkbox-control__input-container {
  vertical-align: middle !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Fix: Progress bar track (rgb(245,245,245) → surface-light) */
.dokan-progress {
  background:    var(--site-surface-light) !important;
  border-radius: 0 !important;
}
.dokan-progress .progress-bar,
.dokan-progress [role="progressbar"] {
  background-color: var(--site-color-secondary) !important;
  background-image: none !important;
}

/* Fix: Icon circles em empty states (bg-accent = oklch(0.97) = branco) */
.dokan-layout .bg-accent,
.pui-root .bg-accent {
  background-color: rgba(255, 255, 255, 0.08) !important;
  color:            var(--site-color-secondary) !important;
}

/* Fix: SVG fill nas acções do DataViews — oklch(0.145) = preto no fundo escuro
   O path não tem atributo fill mas recebe oklch(0.145 0 0) via CSS rule separada
   do color. Forçamos fill: currentColor para herdar o color: white do botão. */
.dokan-layout svg path,
.dokan-layout svg circle,
.dokan-layout svg rect,
.pui-root svg path,
.pui-root svg circle,
#dokan-vendor-dashboard-root svg path,
#dokan-vendor-dashboard-root svg circle {
  fill: currentColor;
}

/* Garantir que .components-button svg e .dataviews-item-actions svg herdam white */
.dokan-layout .components-button svg,
.dokan-layout .components-button svg *,
.pui-root .components-button svg,
.pui-root .components-button svg *,
#dokan-vendor-dashboard-root .components-button svg,
#dokan-vendor-dashboard-root .components-button svg * {
  fill: currentColor !important;
  color: inherit !important;
}

/* Fix: Alert info/success/warning/danger — fundos semânticos claros */
.dokan-layout .bg-dokan-info,
.pui-root .bg-dokan-info,
#dokan-vendor-dashboard-root .bg-dokan-info {
  background: rgba(111, 74, 111, 0.15) !important;
  color:      var(--site-color-text) !important;
  border:     1px solid var(--site-border-soft) !important;
}

/* Fix: Dashboard /new/ rota principal — 404 page white areas */
.dokan-layout [class*="404"],
.dokan-layout [class*="not-found"],
.dokan-layout .bg-gray-50 {
  background: transparent !important;
}

/* Fix: Progress bar striped animation — substituído por cor sólida */
.dokan-profile-completeness .progress-bar-striped,
.dokan-profile-completeness .progress-bar-animated {
  background-image: none !important;
  background-color: var(--site-color-secondary) !important;
}


/* =========================================================
   3. BASE — DOKAN / WOOCOMMERCE
========================================================= */
.dokan-dashboard,
.dokan-store-wrap,
.dokan-single-store,
.dokan-store-listing,
.dokan-widget,
.woocommerce-account .woocommerce,
.woocommerce form.login,
.woocommerce form.register {
  color: var(--site-color-text);
  font-family: var(--site-font-body);
}

.dokan-dashboard *,
.dokan-store-wrap *,
.dokan-single-store *,
.dokan-store-listing *,
.woocommerce-account .woocommerce *,
.woocommerce form.login *,
.woocommerce form.register * {
  box-shadow: none;
}

.dokan-store-listing .store-content,
.dokan-store-listing .store-wrapper,
.dokan-single-store .profile-frame,
.dokan-widget-area,
.dokan-dashboard .dokan-dashboard-content,
.woocommerce form.login,
.woocommerce form.register {
  background: transparent;
  border-radius: var(--site-radius-none);
  box-shadow: var(--site-shadow-none);
}


/* =========================================================
   3. TÍTULOS E TEXTO
========================================================= */
.dokan-store-listing .store-name,
.dokan-single-store .dokan-store-name,
.dokan-store-wrap h1,
.dokan-store-wrap h2,
.dokan-store-wrap h3,
.dokan-store-wrap h4,
.dokan-store-wrap h5,
.dokan-dashboard h1,
.dokan-dashboard h2,
.dokan-dashboard h3,
.dokan-dashboard h4,
.dokan-dashboard h5,
.woocommerce-account h1,
.woocommerce-account h2,
.woocommerce-account h3 {
  font-family: var(--site-font-heading);
  color: var(--site-color-text);
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.dokan-store-wrap p,
.dokan-store-wrap li,
.dokan-store-wrap label,
.dokan-dashboard p,
.dokan-dashboard li,
.woocommerce-account p,
.woocommerce-account li,
.woocommerce form.login p,
.woocommerce form.register p {
  font-family: var(--site-font-body);
  font-size: var(--site-text-body-size);
  line-height: var(--site-text-body-line);
  font-weight: var(--site-text-body-weight);
  color: var(--site-color-text);
}


/* =========================================================
   4. BOTÕES
========================================================= */
.dokan-btn,
.dokan-btn-theme,
.dokan-dashboard .button,
.dokan-dashboard input[type="submit"],
.dokan-store-wrap input[type="submit"],
.dokan-store-wrap button,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce input.button,
.woocommerce #respond input#submit {
  font-family: var(--site-button-font);
  font-size: var(--site-button-size);
  line-height: var(--site-button-line);
  font-weight: var(--site-button-weight);
  color: var(--site-button-text);
  background: var(--site-button-bg);
  border: 2px solid var(--site-button-border);
  border-radius: var(--site-radius-none);
  box-shadow: none;
  text-shadow: none;
  padding: var(--site-button-padding-y) var(--site-button-padding-x);
  transition: all 0.25s ease;
}

.dokan-btn:hover,
.dokan-btn:focus,
.dokan-btn-theme:hover,
.dokan-btn-theme:focus,
.dokan-dashboard .button:hover,
.dokan-dashboard .button:focus,
.dokan-dashboard input[type="submit"]:hover,
.dokan-dashboard input[type="submit"]:focus,
.dokan-store-wrap input[type="submit"]:hover,
.dokan-store-wrap input[type="submit"]:focus,
.dokan-store-wrap button:hover,
.dokan-store-wrap button:focus,
.woocommerce button.button:hover,
.woocommerce button.button:focus,
.woocommerce a.button:hover,
.woocommerce a.button:focus,
.woocommerce input.button:hover,
.woocommerce input.button:focus,
.woocommerce #respond input#submit:hover,
.woocommerce #respond input#submit:focus {
  color: var(--site-button-hover-text);
  background: var(--site-button-hover-bg);
  border-color: var(--site-button-hover-border);
  box-shadow: none;
  text-decoration: none;
}


/* =========================================================
   5. FORMULÁRIOS
========================================================= */
.dokan-form-group label,
.dokan-form-group label.control-label,
.dokan-control-label,
.woocommerce form .form-row label {
  font-family: var(--site-label-font);
  font-size: var(--site-label-size);
  line-height: var(--site-label-line);
  font-weight: var(--site-label-weight);
  color: var(--site-color-text);
}

.dokan-form-control,
.dokan-dashboard input[type="text"],
.dokan-dashboard input[type="email"],
.dokan-dashboard input[type="number"],
.dokan-dashboard input[type="password"],
.dokan-dashboard input[type="search"],
.dokan-dashboard input[type="tel"],
.dokan-dashboard input[type="url"],
.dokan-dashboard textarea,
.dokan-dashboard select,
.dokan-store-wrap input[type="text"],
.dokan-store-wrap input[type="email"],
.dokan-store-wrap input[type="search"],
.dokan-store-wrap textarea,
.dokan-store-wrap select,
.woocommerce form input[type="text"],
.woocommerce form input[type="email"],
.woocommerce form input[type="password"],
.woocommerce form input[type="search"],
.woocommerce form textarea,
.woocommerce form select {
  font-family: var(--site-input-font);
  font-size: var(--site-input-size);
  line-height: var(--site-input-line);
  font-weight: var(--site-input-weight);
  color: var(--site-input-text);
  background: var(--site-input-bg);
  border: 2px solid var(--site-input-border);
  border-radius: var(--site-input-radius);
  box-shadow: none;
  padding: var(--site-input-padding);
}

.dokan-form-control::placeholder,
.dokan-dashboard input::placeholder,
.dokan-dashboard textarea::placeholder,
.dokan-store-wrap input::placeholder,
.dokan-store-wrap textarea::placeholder,
.woocommerce form input::placeholder,
.woocommerce form textarea::placeholder {
  color: var(--site-color-text-transp);
  opacity: 1;
}

.dokan-form-control:focus,
.dokan-dashboard input:focus,
.dokan-dashboard textarea:focus,
.dokan-dashboard select:focus,
.dokan-store-wrap input:focus,
.dokan-store-wrap textarea:focus,
.dokan-store-wrap select:focus,
.woocommerce form input:focus,
.woocommerce form textarea:focus,
.woocommerce form select:focus {
  border-color: var(--site-input-border-focus);
  box-shadow: none;
  outline: none;
}


/* =========================================================
   6. STORE PAGE
========================================================= */
.dokan-single-store .profile-frame,
.dokan-store-wrap .dokan-store-sidebar,
.dokan-store-wrap .seller-items,
.dokan-store-wrap .products,
.dokan-store-wrap .woocommerce-ordering,
.dokan-store-wrap .product-name-search {
  background: transparent;
  color: var(--site-color-text);
}

.dokan-store-wrap .dokan-store-sidebar,
.dokan-store-wrap .seller-items {
  border: 1px solid var(--site-border-soft);
}

.dokan-store-wrap .profile-img,
.dokan-store-wrap .profile-info-box {
  box-shadow: none;
}


/* =========================================================
   7. LOGIN / REGISTER
========================================================= */
.woocommerce form.login,
.woocommerce form.register {
  border: 1px solid var(--site-border-soft);
  padding: var(--site-space-lg);
}

.woocommerce form.login .button,
.woocommerce form.register .button {
  min-height: auto;
}

.woocommerce form.login,
.woocommerce form.register {
  background: transparent;
  border: 1px solid rgba(255,255,255,0.18);
  padding: 28px;
  margin: 0;
}

.woocommerce-account h2 {
  font-family: var(--site-font-heading);
  font-size: var(--site-h2-size);
  line-height: var(--site-h2-line);
  font-weight: var(--site-h2-weight);
  color: var(--site-color-text);
  text-transform: uppercase;
  letter-spacing: 0.18em;
  margin-bottom: 24px;
}

.woocommerce form .form-row {
  margin-bottom: 16px;
}

.woocommerce form .form-row label {
  display: block;
  margin-bottom: 8px;
  color: var(--site-color-text);
}

.woocommerce form input[type="text"],
.woocommerce form input[type="email"],
.woocommerce form input[type="password"] {
  width: 100%;
  min-height: 48px;
  background: transparent !important;
  color: var(--site-color-text);
  border: 1px solid #ffffff !important;
  padding: 10px !important;
}

.woocommerce form input[type="text"]:focus,
.woocommerce form input[type="email"]:focus,
.woocommerce form input[type="password"]:focus {
  border-color: #ffffff !important;
  outline: none;
  box-shadow: none !important;
}

.woocommerce form .show-password-input,
.woocommerce form .password-input .show-password-input {
  color: var(--site-color-text-transp);
}

.woocommerce form .woocommerce-button,
.woocommerce form button.button,
.woocommerce form input.button {
  background: var(--site-button-bg) !important;
  color: var(--site-button-text) !important;
  border: 2px solid var(--site-button-border) !important;
  border-radius: 0 !important;
  padding: 12px 20px !important;
  font-family: var(--site-font-ui);
  font-size: var(--site-text-ui-md-size);
  line-height: var(--site-text-ui-md-line);
  font-weight: var(--site-text-ui-md-weight);
  box-shadow: none !important;
}

.woocommerce form .woocommerce-button:hover,
.woocommerce form button.button:hover,
.woocommerce form input.button:hover {
  background: var(--site-button-hover-bg) !important;
  color: var(--site-button-hover-text) !important;
  border-color: var(--site-button-hover-border) !important;
}

.woocommerce-account .woocommerce a,
.woocommerce-account .woocommerce .lost_password a,
.woocommerce-account .woocommerce-privacy-policy-text a {
  color: var(--site-color-accent);
  text-decoration: none;
}

.woocommerce-account .woocommerce a:hover,
.woocommerce-account .woocommerce .lost_password a:hover,
.woocommerce-account .woocommerce-privacy-policy-text a:hover {
  color: var(--site-color-text);
}

.woocommerce-account .woocommerce-form-login__rememberme,
.woocommerce-account .woocommerce-form-register .woocommerce-form__label {
  color: var(--site-color-text);
  font-family: var(--site-font-body);
}

.woocommerce-account .woocommerce-form-login__submit,
.woocommerce-account .woocommerce-form-register__submit {
  margin-top: 10px;
}

.woocommerce-account .woocommerce {
  width: min(100%, 1200px);
  margin: 0 auto;
  padding-left: 24px;
  padding-right: 24px;
  display: block;
}

.woocommerce-account .woocommerce-notices-wrapper:empty {
  display: none;
}

.woocommerce-account #customer_login,
.woocommerce-account .u-columns.col2-set {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: 64px;
  row-gap: 32px;
  align-items: start;
}

.woocommerce-account #customer_login::before,
.woocommerce-account #customer_login::after,
.woocommerce-account .u-columns.col2-set::before,
.woocommerce-account .u-columns.col2-set::after {
  display: none !important;
  content: none !important;
}

.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2,
.woocommerce-account .u-columns.col2-set .u-column1,
.woocommerce-account .u-columns.col2-set .u-column2,
.woocommerce-account .u-columns.col2-set .col-1,
.woocommerce-account .u-columns.col2-set .col-2 {
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
}

.woocommerce-account #customer_login form.login,
.woocommerce-account #customer_login form.register,
.woocommerce-account .u-columns.col2-set form.login,
.woocommerce-account .u-columns.col2-set form.register {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

.woocommerce-account .woocommerce form .form-row input.input-text,
.woocommerce-account .woocommerce form .form-row textarea,
.woocommerce-account .woocommerce form .form-row select {
  width: 100% !important;
}

@media (max-width: 1024px) {
  .woocommerce-account .woocommerce {
    padding-left: 20px;
    padding-right: 20px;
  }

  .woocommerce-account #customer_login,
  .woocommerce-account .u-columns.col2-set {
    column-gap: 40px;
  }
}

@media (max-width: 767px) {
  .woocommerce-account .woocommerce {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
  }

  .woocommerce-account #customer_login,
  .woocommerce-account .u-columns.col2-set {
    grid-template-columns: 1fr;
    column-gap: 0;
    row-gap: 24px;
  }

  .woocommerce-account h2 {
    font-size: var(--site-h4-size);
    line-height: var(--site-h4-line);
  }

  .woocommerce form.login,
  .woocommerce form.register {
    padding: 20px;
  }
}


/* =========================================================
   8. MENSAGENS
========================================================= */
.woocommerce-error,
.woocommerce-info,
.woocommerce-message,
.dokan-alert,
.dokan-error,
.dokan-info,
.dokan-message,
.dokan-success {
  border-radius: 0;
  box-shadow: none;
}


/* =========================================================
   9. ARTISTS LIST (DOKAN STORE LIST)
   Artist = Store
========================================================= */

/* ---------- wrappers ---------- */

#dokan-store-listing-filter-wrap,
#dokan-store-listing-filter-form-wrap,
#dokan-seller-listing-wrap,
#dokan-seller-listing-wrap .seller-listing-content,
#dokan-seller-listing-wrap ul.dokan-seller-wrap {
  background: transparent !important;
  box-shadow: none !important;
}

#dokan-store-listing-filter-wrap,
#dokan-store-listing-filter-form-wrap,
#dokan-seller-listing-wrap {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

/* ---------- top filter bar ---------- */

#dokan-store-listing-filter-wrap {
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  padding: 18px 22px !important;
}

#dokan-store-listing-filter-wrap .left,
#dokan-store-listing-filter-wrap .right,
#dokan-store-listing-filter-wrap .item,
#dokan-store-listing-filter-wrap p,
#dokan-store-listing-filter-wrap label,
#dokan-store-listing-filter-wrap span {
  color: var(--site-color-text) !important;
  background: transparent !important;
  box-shadow: none !important;
}

#dokan-store-listing-filter-wrap .store-count,
#dokan-store-listing-filter-wrap label {
  font-family: var(--site-font-body) !important;
  font-size: var(--site-text-body-size) !important;
  line-height: var(--site-text-body-line) !important;
}

#dokan-store-listing-filter-wrap .dokan-store-list-filter-button {
  background: var(--site-button-bg) !important;
  color: var(--site-button-text) !important;
  border: 2px solid var(--site-button-border) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 12px 20px !important;
}

#dokan-store-listing-filter-wrap .dokan-store-list-filter-button:hover {
  background: var(--site-button-hover-bg) !important;
  color: var(--site-button-hover-text) !important;
  border-color: var(--site-button-hover-border) !important;
}

/* ---------- sort dropdown ---------- */

#dokan-store-listing-filter-wrap select#stores_orderby {
  min-height: 46px;
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: 2px solid #ffffff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 10px 14px !important;
  font-family: var(--site-font-ui) !important;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

#dokan-store-listing-filter-wrap select#stores_orderby option {
  background: #a28aa2 !important;
  color: #ffffff !important;
}

#dokan-store-listing-filter-wrap select#stores_orderby option:checked,
#dokan-store-listing-filter-wrap select#stores_orderby option:focus,
#dokan-store-listing-filter-wrap select#stores_orderby option:hover {
  background: #6f4a6f !important;
  color: #ffffff !important;
}

/* observação:
   em select nativo, a aparência da lista pode depender do navegador/SO.
   Mas este é o máximo confiável via CSS puro. */

#dokan-store-listing-filter-wrap .toggle-view .dashicons {
  color: var(--site-color-accent) !important;
}

#dokan-store-listing-filter-wrap .toggle-view .dashicons.active,
#dokan-store-listing-filter-wrap .toggle-view .dashicons:hover {
  color: var(--site-color-text) !important;
}

/* ---------- opened filter form ---------- */

#dokan-store-listing-filter-form-wrap {
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  padding: 18px 22px !important;
  margin-top: 18px !important;
}

#dokan-store-listing-filter-form-wrap .store-search,
#dokan-store-listing-filter-form-wrap .apply-filter {
  background: transparent !important;
  box-shadow: none !important;
}

#dokan-store-listing-filter-form-wrap .store-search-input {
  width: 100% !important;
  min-height: 46px;
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: 2px solid #ffffff !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 10px 14px !important;
  font-family: var(--site-font-body) !important;
}

#dokan-store-listing-filter-form-wrap .store-search-input::placeholder {
  color: var(--site-color-text-transp) !important;
  opacity: 1;
}

#dokan-store-listing-filter-form-wrap .dokan-btn,
#dokan-store-listing-filter-form-wrap .dokan-btn-theme,
#cancel-filter-btn,
#apply-filter-btn {
  background: var(--site-button-bg) !important;
  color: var(--site-button-text) !important;
  border: 2px solid var(--site-button-border) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 12px 20px !important;
}

#dokan-store-listing-filter-form-wrap .dokan-btn:hover,
#dokan-store-listing-filter-form-wrap .dokan-btn-theme:hover,
#cancel-filter-btn:hover,
#apply-filter-btn:hover {
  background: var(--site-button-hover-bg) !important;
  color: var(--site-button-hover-text) !important;
  border-color: var(--site-button-hover-border) !important;
}

/* ---------- artists grid ---------- */

#dokan-seller-listing-wrap {
  margin-top: 2em !important;
}

#dokan-seller-listing-wrap ul.dokan-seller-wrap {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
  align-items: stretch !important;
  gap: 1em !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  width: 100% !important;
}

#dokan-seller-listing-wrap ul.dokan-seller-wrap > li.dokan-single-seller {
  box-sizing: border-box !important;
  flex: 0 0 calc((100% - 2em) / 3) !important;
  max-width: calc((100% - 2em) / 3) !important;
  width: calc((100% - 2em) / 3) !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}

#dokan-seller-listing-wrap ul.dokan-seller-wrap > .dokan-clearfix {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

@media (max-width: 1024px) {
  #dokan-seller-listing-wrap ul.dokan-seller-wrap > li.dokan-single-seller {
    flex: 0 0 calc((100% - 1em) / 2) !important;
    max-width: calc((100% - 1em) / 2) !important;
    width: calc((100% - 1em) / 2) !important;
  }
}

@media (max-width: 767px) {
  #dokan-seller-listing-wrap ul.dokan-seller-wrap > li.dokan-single-seller {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  #dokan-seller-listing-wrap .store-wrapper {
    min-height: 300px;
  }
}
/* ---------- card ---------- */

#dokan-seller-listing-wrap .store-wrapper {
  position: relative !important;
  min-height: 340px;
  background: transparent !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  box-shadow: none !important;
  overflow: hidden !important;
  transform: none !important;
  transition: none !important;
}

#dokan-seller-listing-wrap .store-wrapper:hover,
#dokan-seller-listing-wrap .store-wrapper:focus {
  transform: none !important;
  top: auto !important;
}

#dokan-seller-listing-wrap .store-header,
#dokan-seller-listing-wrap .store-banner {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  background: transparent !important;
  box-shadow: none !important;
}

#dokan-seller-listing-wrap .store-banner a,
#dokan-seller-listing-wrap .store-banner img {
  display: block;
  width: 100%;
  height: 100%;
}

#dokan-seller-listing-wrap .store-banner img {
  object-fit: cover;
  opacity: 0 !important;
  transition: opacity 0.28s ease !important;
}

#dokan-seller-listing-wrap .store-footer {
  position: absolute !important;
  inset: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  pointer-events: none !important;
}

#dokan-seller-listing-wrap .store-footer > a {
  display: none !important;
}

#dokan-seller-listing-wrap .store-footer .seller-avatar {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 1 !important;
  z-index: 1 !important;
  transition: opacity 0.9s ease !important;
  pointer-events: none !important;
}

#dokan-seller-listing-wrap .store-footer .seller-avatar a,
#dokan-seller-listing-wrap .store-footer .seller-avatar img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

#dokan-seller-listing-wrap .store-footer .seller-avatar img {
  object-fit: cover !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

#dokan-seller-listing-wrap .store-wrapper:hover .store-banner img {
  opacity: 1 !important;
}

#dokan-seller-listing-wrap .store-wrapper:hover .seller-avatar {
  opacity: 0 !important;
}

#dokan-seller-listing-wrap .store-content {
  position: absolute !important;
  inset: 0 !important;
  display: flex !important;
  align-items: flex-end !important;
  padding: 22px !important;
  background: linear-gradient(
    180deg,
    rgba(35, 4, 25, 0.00) 0%,
    rgba(35, 4, 25, 0.08) 45%,
    rgba(35, 4, 25, 0.82) 100%
  ) !important;
  z-index: 3 !important;
  box-shadow: none !important;
  cursor: pointer !important;
}

#dokan-seller-listing-wrap .store-data-container {
  width: 100% !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

#dokan-seller-listing-wrap .featured-favourite {
  display: none !important;
}

#dokan-seller-listing-wrap .store-data {
  width: 100% !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

#dokan-seller-listing-wrap .store-data h2 {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}

#dokan-seller-listing-wrap .store-data h2 a {
  font-family: var(--site-font-heading) !important;
  color: var(--site-color-text) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.18em !important;
  text-decoration: none !important;
  font-size: 20px !important;
  line-height: 1 !important;
}

/* ---------- cleanup ---------- */

#dokan-store-listing-filter-wrap *,
#dokan-store-listing-filter-wrap *::before,
#dokan-store-listing-filter-wrap *::after,
#dokan-store-listing-filter-form-wrap *,
#dokan-store-listing-filter-form-wrap *::before,
#dokan-store-listing-filter-form-wrap *::after,
#dokan-seller-listing-wrap *,
#dokan-seller-listing-wrap *::before,
#dokan-seller-listing-wrap *::after {
  box-shadow: none !important;
}

@media (max-width: 1024px) {
  #dokan-seller-listing-wrap ul.dokan-seller-wrap > li.dokan-single-seller {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    width: 50% !important;
  }
}

@media (max-width: 767px) {
  #dokan-seller-listing-wrap ul.dokan-seller-wrap > li.dokan-single-seller {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  #dokan-seller-listing-wrap .store-wrapper {
    min-height: 300px;
  }
}


/* =========================================================
   10. ARTIST PROFILE PAGE — Transparent backgrounds + fixes
========================================================= */

/* Profile info area */
.dokan-store-wrap .profile-info-summery,
.dokan-store-wrap .profile-info-summery-wrapper {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Tab navigation (Products) */
.dokan-store-wrap .dokan-list-inline,
.dokan-store-wrap .dokan-list-inline li,
.dokan-store-wrap .dokan-list-inline li a {
  background: transparent !important;
  box-shadow: none !important;
}

/* Products filter area wrapper */
.dokan-store-wrap .dokan-store-products-filter-area,
.dokan-store-wrap .dokan-store-products-filter-area.dokan-clearfix {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* Orderby + search sub-area */
.dokan-store-wrap .orderby,
.dokan-store-wrap .orderby-search,
.dokan-store-wrap .orderby.orderby-search {
  background: transparent !important;
  box-shadow: none !important;
}

/* -------------------------------------------------------
   FIX: Select dropdown dentro do orderby-search
   Fundo branco causado por Dokan/WooCommerce
------------------------------------------------------- */

.dokan-store-wrap .orderby select,
.dokan-store-wrap .orderby-search select,
.dokan-store-wrap .dokan-store-products-filter-area select,
.dokan-store-wrap .woocommerce-ordering select,
.dokan-store-wrap select.orderby {
  background-color: var(--site-color-primary) !important; /* #230419 */
  background-image: none !important;
  color: var(--site-color-text) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 8px 12px !important;
  font-family: var(--site-font-ui) !important;
  font-size: var(--site-text-ui-sm-size) !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
}

/* Opções dentro do select */
.dokan-store-wrap .orderby select option,
.dokan-store-wrap .orderby-search select option,
.dokan-store-wrap .dokan-store-products-filter-area select option,
.dokan-store-wrap select.orderby option {
  background-color: var(--site-color-primary) !important; /* #230419 */
  color: var(--site-color-text) !important;
}

/* Search input ao lado do select */
.dokan-store-wrap .orderby-search input[type="text"],
.dokan-store-wrap .orderby-search input[type="search"],
.dokan-store-wrap .dokan-store-products-filter-area input[type="text"],
.dokan-store-wrap .dokan-store-products-filter-area input[type="search"] {
  background-color: transparent !important;
  color: var(--site-color-text) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}


/* =========================================================
   11. ARTIST PAGE — Hide breadcrumbs
========================================================= */

#breadcrumbs {
  display: none !important;
}


/* =========================================================
   12. VENDOR DASHBOARD — Sidebar sticky + paleta de cores
========================================================= */

/* --- Sidebar: sticky + 100vh --- */
.dokan-dashboard-wrap {
  display: flex !important;
  align-items: flex-start !important;
}

.dokan-dashboard-wrap .dokan-dash-sidebar,
.dokan-dash-left-sidebar,
#dokan-navigation {
  position: sticky !important;
  top: 0 !important;
  height: 100vh !important;
  overflow-y: auto !important;
  align-self: flex-start !important;
  padding-top: 30px !important;
}

/* --- Conteúdo principal: fundo transparente --- */
.dokan-dashboard-wrap .dokan-dashboard-content,
.dokan-main-content-area {
  background: transparent !important;
}

/* --- Date range picker: fundo escuro palatável --- */
.dokan-dashboard .daterangepicker,
.daterangepicker {
  background: var(--site-color-primary) !important;
  border: 1px solid var(--site-border-soft) !important;
  color: var(--site-color-text) !important;
  box-shadow: none !important;
}

.daterangepicker .drp-calendar,
.daterangepicker .calendar-table,
.daterangepicker table {
  background: var(--site-color-primary) !important;
  border-color: var(--site-border-soft) !important;
}

.daterangepicker td,
.daterangepicker th {
  color: var(--site-color-text) !important;
  border-color: var(--site-border-soft) !important;
}

.daterangepicker td.available:hover,
.daterangepicker th.available:hover {
  background: var(--site-color-secondary) !important;
  color: var(--site-color-text) !important;
}

.daterangepicker td.active,
.daterangepicker td.active:hover {
  background: var(--site-color-tertiary) !important;
  color: var(--site-color-text) !important;
}

.daterangepicker td.off,
.daterangepicker td.disabled {
  color: var(--site-color-text-transp) !important;
}

.daterangepicker .drp-buttons {
  background: var(--site-color-primary) !important;
  border-top: 1px solid var(--site-border-soft) !important;
}

.daterangepicker .drp-selected {
  color: var(--site-color-accent) !important;
}

.daterangepicker select.monthselect,
.daterangepicker select.yearselect,
.daterangepicker select.hourselect,
.daterangepicker select.minuteselect {
  background: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
  border: 1px solid var(--site-border-soft) !important;
}

.daterangepicker::before,
.daterangepicker::after {
  border-bottom-color: var(--site-border-soft) !important;
}

/* --- Ranges (Today, Yesterday, etc.) --- */
.daterangepicker .ranges li {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: 1px solid transparent !important;
}

.daterangepicker .ranges li:hover {
  background: var(--site-color-secondary) !important;
  border-color: var(--site-border-soft) !important;
}

.daterangepicker .ranges li.active {
  background: var(--site-color-tertiary) !important;
  color: var(--site-color-text) !important;
}

/* --- Profile progress / completeness bar --- */
.dokan-dashboard .profile-progress-block,
.dokan-dashboard .dokan-profile-completeness,
.dokan-profile-completeness-wrap {
  background: var(--site-surface-light, rgba(255,255,255,0.04)) !important;
  border: 1px solid var(--site-border-soft) !important;
  color: var(--site-color-text) !important;
}

.dokan-dashboard .profile-progress-block a,
.dokan-dashboard .dokan-profile-completeness a {
  color: var(--site-color-accent) !important;
}

/* --- Widgets e overview --- */
.dokan-dashboard .dokan-widget-area,
.dokan-dashboard .dokan-dashboard-widget,
.dokan-dashboard .dokan-overview-totals {
  background: transparent !important;
  color: var(--site-color-text) !important;
}

/* --- WooCommerce Analytics: Date Range Picker --- */

/* Trigger button */
.components-dropdown {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
}

.components-button.woocommerce-dropdown-button {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
  background: transparent !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  color: var(--site-color-text) !important;
  font-family: var(--site-font-ui) !important;
  text-align: left !important;
  box-shadow: none !important;
}

.components-button.woocommerce-dropdown-button:hover,
.components-button.woocommerce-dropdown-button[aria-expanded="true"] {
  background: var(--e-global-color-f75925f) !important;
  border: 2px solid var(--site-color-text) !important;
  color: var(--site-color-text) !important;
  box-shadow: none !important;
}

.components-button.woocommerce-dropdown-button *,
.components-button.woocommerce-dropdown-button span {
  color: var(--site-color-text) !important;
}

/* Popover — container e conteúdo */
.woocommerce-filters-date__content,
.woocommerce-filters-date__content .components-popover__content {
  background: var(--site-color-primary) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--site-color-text) !important;
  min-width: 420px !important;
}

/* Reset global: cor de texto + border-radius */
.woocommerce-filters-date__content *,
.woocommerce-filters-date__content *::before,
.woocommerce-filters-date__content *::after {
  color: var(--site-color-text) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Título "SELECT A DATE RANGE" */
.woocommerce-filters-date__content h2,
.woocommerce-filters-date__content .woocommerce-date-picker__title {
  font-family: var(--site-font-heading) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  text-align: center !important;
  background: transparent !important;
}

/* Tabs: Presets / Custom */
.woocommerce-filters-date__content .components-tab-panel__tabs {
  background: var(--site-color-tertiary) !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
}

.woocommerce-filters-date__content .components-tab-panel__tabs-item {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: none !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  font-family: var(--site-font-ui) !important;
  font-weight: 600 !important;
}

.woocommerce-filters-date__content .components-tab-panel__tabs-item.is-active,
.woocommerce-filters-date__content .components-tab-panel__tabs-item:hover {
  background: var(--site-color-secondary) !important;
  border-bottom-color: var(--site-color-text) !important;
}

/* Lista de presets (Today, Yesterday, etc.) */
.woocommerce-filters-date__content .woocommerce-calendar__preset-button {
  display: block !important;
  width: 100% !important;
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: none !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  text-align: left !important;
  padding: 10px 16px !important;
  font-family: var(--site-font-ui) !important;
}

.woocommerce-filters-date__content .woocommerce-calendar__preset-button:hover {
  background: var(--site-color-secondary) !important;
}

.woocommerce-filters-date__content .woocommerce-calendar__preset-button.is-selected,
.woocommerce-filters-date__content .woocommerce-calendar__preset-button[class*="is-active"] {
  background: var(--site-color-tertiary) !important;
}

/* "COMPARE TO" heading */
.woocommerce-filters-date__content h3,
.woocommerce-filters-date__content .woocommerce-date-picker__compare-title {
  font-family: var(--site-font-heading) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  text-align: center !important;
  background: transparent !important;
}

/* Opções Compare: Previous period / Previous year */
.woocommerce-filters-date__content .woocommerce-compare-filter,
.woocommerce-filters-date__content .components-radio-control__option {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  padding: 10px 16px !important;
}

/* Inputs Start Date / End Date: padding com espaço para o ícone de calendário */
.woocommerce-filters-date__content .woocommerce-calendar__input-text,
.woocommerce-filters-date__content input[type="text"].woocommerce-calendar__input-text {
  padding: 10px 10px 10px 40px !important;
  background: transparent !important;
  color: var(--site-color-text) !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-left: 0 !important;
  border-radius: 0 !important;
  font-family: var(--site-font-body) !important;
}

/* Date inputs — UI-Rule: só border-bottom */
.woocommerce-filters-date__content input:not(.woocommerce-calendar__input-text),
.woocommerce-filters-date__content input[type="text"]:not(.woocommerce-calendar__input-text),
.woocommerce-filters-date__content .components-text-control__input {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-left: 0 !important;
  border-radius: 0 !important;
  font-family: var(--site-font-body) !important;
}

/* Calendário (DayPicker / react-day-picker) */
.woocommerce-filters-date__content .DayPicker,
.woocommerce-filters-date__content .DayPicker-wrapper {
  background: var(--site-color-primary) !important;
  border-radius: 0 !important;
}

.woocommerce-filters-date__content .DayPicker-Month,
.woocommerce-filters-date__content .DayPicker-Caption,
.woocommerce-filters-date__content .DayPicker-Weekdays,
.woocommerce-filters-date__content .DayPicker-WeekdaysRow,
.woocommerce-filters-date__content .DayPicker-Weekday,
.woocommerce-filters-date__content .DayPicker-Body,
.woocommerce-filters-date__content .DayPicker-Week,
.woocommerce-filters-date__content .DayPicker-Day {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border-radius: 0 !important;
}

.woocommerce-filters-date__content .DayPicker-NavButton {
  background: var(--site-color-secondary) !important;
  border-radius: 0 !important;
  opacity: 1 !important;
}

.woocommerce-filters-date__content .DayPicker-Day:hover:not(.DayPicker-Day--disabled):not(.DayPicker-Day--outside) {
  background: var(--site-color-secondary) !important;
  border-radius: 0 !important;
}

.woocommerce-filters-date__content .DayPicker-Day--selected:not(.DayPicker-Day--disabled),
.woocommerce-filters-date__content .DayPicker-Day--start,
.woocommerce-filters-date__content .DayPicker-Day--end {
  background: var(--site-color-tertiary) !important;
  color: var(--site-color-text) !important;
  border-radius: 0 !important;
}

.woocommerce-filters-date__content .DayPicker-Day--inRange {
  background: rgba(94, 67, 100, 0.4) !important;
  border-radius: 0 !important;
}

.woocommerce-filters-date__content .DayPicker-Day--outside,
.woocommerce-filters-date__content .DayPicker-Day--disabled {
  color: var(--site-color-text-transp) !important;
  background: transparent !important;
}

/* Botões Reset + Update */
.woocommerce-filters-date__content .woocommerce-date-picker__reset-btn,
.woocommerce-filters-date__content .woocommerce-date-picker__update-btn {
  background: var(--site-color-tertiary) !important;
  color: var(--site-color-text) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  font-family: var(--site-font-ui) !important;
  font-weight: 600 !important;
}

.woocommerce-filters-date__content .woocommerce-date-picker__reset-btn:hover,
.woocommerce-filters-date__content .woocommerce-date-picker__update-btn:hover {
  background: var(--site-color-secondary) !important;
  border-color: var(--site-border-soft) !important;
}

/* --- Tabelas dentro do dashboard --- */
.dokan-dashboard table,
.dokan-dashboard .dokan-table {
  background: transparent !important;
  color: var(--site-color-text) !important;
}

.dokan-dashboard table th,
.dokan-dashboard .dokan-table th {
  background: var(--site-surface-light, rgba(255,255,255,0.04)) !important;
  color: var(--site-color-text) !important;
  border-color: var(--site-border-soft) !important;
}

.dokan-dashboard table td,
.dokan-dashboard .dokan-table td {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border-color: var(--site-border-soft) !important;
}


/* =========================================================
   13. DASHBOARD — UI-Rules aplicadas globalmente
   Regra 1: paleta | Regra 2: fontes | Regra 3: radius 0 | Regra 4: border-bottom
========================================================= */

/* --- Regra 3: border-radius 0 global no dashboard --- */
.dokan-dashboard *,
.woocommerce-layout__main *,
.woocommerce-layout__primary * {
  border-radius: 0 !important;
}

/* --- Layout principal WooCommerce Analytics --- */
.woocommerce-layout__main,
.woocommerce-layout__primary,
#woocommerce-layout__primary,
.customizable-dashboard,
.woocommerce-dashboard-section,
.woocommerce-dashboard__dashboard-charts {
  background: transparent !important;
  color: var(--site-color-text) !important;
}

/* --- Regra 4: todos os inputs do dashboard — só border-bottom --- */
.dokan-dashboard input[type="text"],
.dokan-dashboard input[type="email"],
.dokan-dashboard input[type="number"],
.dokan-dashboard input[type="password"],
.dokan-dashboard input[type="search"],
.dokan-dashboard input[type="tel"],
.dokan-dashboard input[type="url"],
.dokan-dashboard textarea,
.dokan-dashboard select,
.woocommerce-layout__main input[type="text"],
.woocommerce-layout__main input[type="email"],
.woocommerce-layout__main input[type="number"],
.woocommerce-layout__main input[type="search"],
.woocommerce-layout__main textarea,
.woocommerce-layout__main select,
.components-text-control__input,
.woocommerce-select-control__control {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-left: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-family: var(--site-font-body) !important;
}

/* --- Profile progress bar / completeness --- */
.woocommerce-layout__notice-list,
.woocommerce-store-alerts,
.woocommerce-inbox-panel,
.woocommerce-dashboard__activity-panel,
.woocommerce-activity-panel {
  background: var(--site-surface-light, rgba(255,255,255,0.04)) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  color: var(--site-color-text) !important;
  box-shadow: none !important;
}

/* --- Regra 2: Section headers — Frontage --- */
.woocommerce-section-header,
.woocommerce-section-header__title,
.woocommerce-dashboard-section .woocommerce-section-header h2,
.woocommerce-layout__main h1,
.woocommerce-layout__main h2,
.woocommerce-layout__main h3,
.woocommerce-layout__main h4 {
  font-family: var(--site-font-heading) !important;
  color: var(--site-color-text) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  background: transparent !important;
}

.woocommerce-section-header {
  border-bottom: 1px solid var(--site-border-soft) !important;
  background: transparent !important;
}

/* --- KPI / Summary stats cards --- */
.woocommerce-summary {
  background: transparent !important;
  border: none !important;
}

.woocommerce-summary__item {
  background: var(--site-surface-light, rgba(255,255,255,0.04)) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.woocommerce-summary__item.is-selected,
.woocommerce-summary__item:hover {
  background: var(--site-color-secondary) !important;
  border-color: var(--site-color-secondary) !important;
}

.woocommerce-summary__item-label,
.woocommerce-summary__item-data,
.woocommerce-summary__item-value,
.woocommerce-summary__item-delta,
.woocommerce-summary__item-prev-label,
.woocommerce-summary__item-prev-value {
  color: var(--site-color-text) !important;
  font-family: var(--site-font-ui) !important;
}

/* links e SPANs React (css-in-js) dentro do summary — sobrepõem rgb(30,30,30) e rgba(255,255,255,0.65) */
.woocommerce-summary a.woocommerce-summary__item,
.woocommerce-summary .components-truncate,
.woocommerce-summary .components-text {
  color: var(--site-color-text) !important;
}

/* badge de percentagem — remove fundo cinza que apaga o ícone */
.woocommerce-summary__item-delta {
  background: transparent !important;
}

/* preços WooCommerce — cor padrão de texto do site */
.woocommerce-Price-amount.amount {
  color: var(--site-color-text) !important;
}

/* --- Performance table (stats grid) --- */
.woocommerce-dashboard__store-performance,
.woocommerce-dashboard__store-performance .woocommerce-card,
.woocommerce-report-table,
.woocommerce-report-table__table {
  background: transparent !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.woocommerce-report-table__table th,
.woocommerce-report-table__table td {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
}

.woocommerce-report-table__table tr:nth-child(even) td {
  background: var(--site-surface-light, rgba(255,255,255,0.04)) !important;
}

/* --- WooCommerce Card (geral) --- */
.woocommerce-card,
.woocommerce-card__header,
.woocommerce-card__body,
.woocommerce-card__footer {
  background: transparent !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  color: var(--site-color-text) !important;
  box-shadow: none !important;
}

.woocommerce-card__header {
  border-bottom: 1px solid var(--site-border-soft) !important;
}

.woocommerce-card__header h2,
.woocommerce-card__header h3 {
  font-family: var(--site-font-heading) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  color: var(--site-color-text) !important;
}

/* --- Charts area --- */
.woocommerce-chart,
.woocommerce-chart__header,
.woocommerce-chart__legend,
.woocommerce-chart__body {
  background: transparent !important;
  border-radius: 0 !important;
  color: var(--site-color-text) !important;
  box-shadow: none !important;
}

.woocommerce-chart__header {
  border-bottom: 1px solid var(--site-border-soft) !important;
}

.woocommerce-chart__legend-item {
  color: var(--site-color-text) !important;
  font-family: var(--site-font-ui) !important;
}

/* --- "By day" select wrapper --- */
.woocommerce-layout__main .components-input-control__container,
.woocommerce-layout__main .components-input-base,
.woocommerce-layout__main .components-select-control,
.woocommerce-layout__main .components-base-control {
  background: transparent !important;
  box-shadow: none !important;
}

/* --- Legenda do gráfico (botões sem classe, pai: woocommerce-legend__item) --- */
.woocommerce-legend__item button,
.woocommerce-legend__item button[class=""],
.woocommerce-legend__item-checked button {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: 1px solid var(--site-border-soft) !important;
}

/* --- Cards do dashboard chart (NET SALES, ORDERS etc.) --- */
.woocommerce-dashboard__chart-block,
.components-card.woocommerce-dashboard__chart-block,
.components-surface.woocommerce-dashboard__chart-block {
  background: transparent !important;
  border: 1px solid var(--site-border-soft) !important;
  box-shadow: none !important;
}

/* --- Tooltip do gráfico d3 --- */
.d3-chart__tooltip {
  background: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
  border: 1px solid var(--site-border-soft) !important;
  box-shadow: none !important;
}

.d3-chart__tooltip * {
  color: var(--site-color-text) !important;
}

/* --- Botão "Compare" — padrão Elementor TCE --- */
.woocommerce-compare-button,
.woocommerce-table__compare,
.woocommerce-layout__main .components-button.woocommerce-compare-button {
  background: var(--site-button-bg) !important;
  color: var(--site-button-text) !important;
  border: 2px solid var(--site-button-border) !important;
  border-radius: 0 !important;
  padding: var(--site-button-padding-y) var(--site-button-padding-x) !important;
  font-family: var(--site-button-font) !important;
  font-size: var(--site-button-size) !important;
  font-weight: var(--site-button-weight) !important;
}

.woocommerce-compare-button:hover,
.woocommerce-table__compare:hover {
  background: var(--site-button-hover-bg) !important;
  color: var(--site-button-hover-text) !important;
  border-color: var(--site-button-hover-border) !important;
}

/* ==========================================================================
   SEÇÃO 15 — GLOBAL: Frontage Letter Spacing
   -15% em design tools = -0.15em em CSS (relativo ao font-size)
   Carregado por último (priority 999) — sobrescreve Elementor e plugins
   ========================================================================== */

.elementor h1, .elementor h2, .elementor h3,
.elementor h4, .elementor h5, .elementor h6,
.elementor-heading-title,
.elementor-widget-heading .elementor-heading-title {
  /* letter-spacing: -7px !important; */
}

/* Excepção: headings de dados no loop de produtos (artist name, labels)
   Container real: .e-loop-item (Elementor Loop Builder) — não li.product
   -7px absoluto fica agressivo demais em headings pequenos de dados */
.e-loop-item .elementor h2,
.e-loop-item .elementor h3,
.e-loop-item .elementor h4,
.e-loop-item .elementor h5,
.e-loop-item .elementor h6,
.e-loop-item .elementor-heading-title {
  letter-spacing: normal !important;
}

/* Excepção: nome do produto no checkout Blocks (h3 renderizado pelo React) */
.wc-block-components-product-name {
  font-family: var(--site-font-body) !important;
  font-size: var(--site-text-body-size) !important;
  font-weight: var(--site-text-body-weight) !important;
  letter-spacing: normal !important;
  line-height: var(--site-text-body-line) !important;
}


/* Toolbar do chart (By day, chart/bar icons) */
.woocommerce-chart__header .components-button,
.woocommerce-chart__header .components-button-group .components-button {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.woocommerce-chart__header .components-button.is-active,
.woocommerce-chart__header .components-button:hover {
  background: var(--site-color-secondary) !important;
  border-color: var(--site-color-secondary) !important;
}

/* --- Select control (filtros) --- */
.woocommerce-select-control,
.woocommerce-select-control__control,
.woocommerce-select-control__multi-value,
.woocommerce-select-control__option {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.woocommerce-select-control__menu,
.woocommerce-select-control__menu-list {
  background: var(--site-color-primary) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.woocommerce-select-control__option:hover,
.woocommerce-select-control__option--is-focused {
  background: var(--site-color-secondary) !important;
  color: var(--site-color-text) !important;
}

/* --- Filters bar --- */
.woocommerce-filters,
.woocommerce-filters__basic-filters,
.woocommerce-filters-filter {
  background: transparent !important;
  color: var(--site-color-text) !important;
}

.woocommerce-filters-label {
  color: var(--site-color-text) !important;
  font-family: var(--site-font-ui) !important;
}

/* --- Pagination --- */
.woocommerce-pagination {
  background: transparent !important;
}

.woocommerce-pagination .components-button {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.woocommerce-pagination .components-button.is-active,
.woocommerce-pagination .components-button:hover {
  background: var(--site-color-secondary) !important;
  border-color: var(--site-color-secondary) !important;
}

/* --- Empty state / notices --- */
.woocommerce-empty-content,
.woocommerce-empty-content__title,
.woocommerce-empty-content__message {
  background: transparent !important;
  color: var(--site-color-text) !important;
  font-family: var(--site-font-body) !important;
}

/* --- Dropdown menus genéricos (ícone ⋮) --- */
.components-dropdown-menu__popover .components-popover__content,
.components-dropdown-menu__menu {
  background: var(--site-color-primary) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.components-dropdown-menu__menu-item {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border-radius: 0 !important;
}

.components-dropdown-menu__menu-item:hover,
.components-dropdown-menu__menu-item:focus {
  background: var(--site-color-secondary) !important;
  color: var(--site-color-text) !important;
}

/* --- Select nativo (By day / By week) --- */
.woocommerce-layout__main select,
.woocommerce-chart__header select {
  background: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
  border-top: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-left: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  font-family: var(--site-font-ui) !important;
}

/* --- Scrollbar oculta no dashboard --- */
.dokan-dashboard ::-webkit-scrollbar,
.woocommerce-layout__main ::-webkit-scrollbar {
  display: none !important;
}


/* =========================================================
   14. DASHBOARD REACT — Paleta TCE (overrides manuais confirmados)
========================================================= */

/* Progress bar: cor secondary TCE (era azul padrão Dokan) */
.dokan-progress [role="progressbar"] {
  background-color: var(--site-color-secondary) !important;
}

/* Alert info: paleta TCE (era azul claro Dokan) */
.dokan-alert.dokan-alert-info.dokan-panel-alert {
  background-color: var(--site-color-967e7f) !important;
  color: var(--site-color-text-transp) !important;
  border-color: var(--site-color-text-transp) !important;
}

/* Header WooCommerce Analytics: fundo transparente (era branco) */
.woocommerce-layout__header {
  background: transparent !important;
}

/* Date range dropdown button: padrão Elementor button da home */
/* Date range dropdown button: padrão Elementor button da home */
.components-button.woocommerce-dropdown-button {
  background: var(--site-color-secondary) !important;
  border: 2px solid var(--site-color-text) !important;
  padding: 12px 20px !important;
}

/* Ellipsis ⋮ (section header menu) — hover igual ao botão Elementor da home */
.woocommerce-section-header__menu .woocommerce-ellipsis-menu__toggle,
.woocommerce-section-header__menu .components-button.woocommerce-ellipsis-menu__toggle {
  background: transparent !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  color: var(--site-color-text) !important;
}
.woocommerce-section-header__menu .woocommerce-ellipsis-menu__toggle:hover,
.woocommerce-section-header__menu .woocommerce-ellipsis-menu__toggle:focus,
.woocommerce-section-header__menu .woocommerce-ellipsis-menu__toggle[aria-expanded="true"] {
  background: var(--e-global-color-f75925f) !important;
  border: 2px solid var(--site-color-text) !important;
  color: var(--site-color-text) !important;
  box-shadow: none !important;
}

/* Seta/chevron — ao lado das labels (flex item, não absolute) */
.components-button.woocommerce-dropdown-button::after {
  position: static !important;
  flex-shrink: 0 !important;
  width: 24px !important;
  height: 24px !important;
  background-color: var(--site-color-text-transp) !important;
}

/* Popover genérico (date picker e outros): fundo escuro TCE */
.components-popover__content {
  background: var(--site-color-primary) !important;
  border: 1px solid var(--site-border-soft) !important;
  color: var(--site-color-text) !important;
  box-shadow: none !important;
}

/* Garante texto branco em todos os filhos diretos sem classe */
.components-popover__content * {
  color: var(--site-color-text) !important;
}

/* Botão Update — padrão Elementor button */
.components-popover__content .woocommerce-filters-date__button.is-primary {
  background: var(--site-color-secondary) !important;
  border: 2px solid var(--site-color-text) !important;
  color: var(--site-color-text) !important;
  border-radius: 0 !important;
  padding: 12px 20px !important;
  box-shadow: none !important;
}
.components-popover__content .woocommerce-filters-date__button.is-primary:hover,
.components-popover__content .woocommerce-filters-date__button.is-primary:focus {
  background: var(--e-global-color-f75925f) !important;
  border-color: var(--site-color-text) !important;
}

/* --- Date picker popover: seções internas com bg claro → texto escuro --- */

/* Wrapper interno do popover: cascata de cor escura (primary) para todas as seções */
.woocommerce-filters-date__content .components-popover__content > div {
  color: var(--site-color-primary) !important;
}

/* Grid de presets: fundo escuro TCE */
.woocommerce-filters-date__content .woocommerce-segmented-selection__container {
  background-color: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
}

/* Label e span preenchem 100% da célula do grid */
.woocommerce-filters-date__content .woocommerce-segmented-selection__item > label {
  display: block !important;
  width: 100% !important;
}

/* Células normais: levemente mais claras que o fundo */
.woocommerce-filters-date__content .woocommerce-segmented-selection__label {
  display: block !important;
  width: 100% !important;
  background-color: rgba(255, 255, 255, 0.06) !important;
  color: var(--site-color-text) !important;
}

/* Célula selecionada: secondary TCE */
.woocommerce-filters-date__content .woocommerce-segmented-selection__item:has(input:checked) .woocommerce-segmented-selection__label {
  background-color: var(--site-color-secondary) !important;
  color: var(--site-color-text) !important;
}

/* Radio ■: accent-color secondary em vez de azul padrão do browser */
.woocommerce-filters-date__content .woocommerce-segmented-selection__input {
  accent-color: var(--site-color-secondary) !important;
}

.woocommerce-filters-date__content .woocommerce-segmented-selection__item,
.woocommerce-filters-date__content .woocommerce-segmented-selection__item label,
.woocommerce-filters-date__content .woocommerce-segmented-selection__item span,
.woocommerce-filters-date__content .woocommerce-segmented-selection__item input {
  color: var(--site-color-text) !important;
}

/* Seção "Compare to": fundo escuro TCE */
.woocommerce-filters-date__content .woocommerce-filters-date__content-controls {
  background-color: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
  border-top: 1px solid var(--site-border-soft) !important;
}

.woocommerce-filters-date__content .woocommerce-filters-date__content-controls label,
.woocommerce-filters-date__content .woocommerce-filters-date__content-controls span,
.woocommerce-filters-date__content .woocommerce-filters-date__content-controls input,
.woocommerce-filters-date__content .woocommerce-filters-date__button-group,
.woocommerce-filters-date__content .woocommerce-filters-date__button-group * {
  color: var(--site-color-text) !important;
}

/* Botão Update — padrão Elementor button (regra ganhadora por especificidade) */
.woocommerce-filters-date__content .woocommerce-filters-date__button.is-primary {
  background: var(--site-color-secondary) !important;
  border: 2px solid var(--site-color-text) !important;
  color: var(--site-color-text) !important;
  border-radius: 0 !important;
  padding: 12px 20px !important;
  height: auto !important;
}
.woocommerce-filters-date__content .woocommerce-filters-date__button.is-primary:hover,
.woocommerce-filters-date__content .woocommerce-filters-date__button.is-primary:focus {
  background: var(--e-global-color-f75925f) !important;
  border-color: var(--site-color-text) !important;
}

.woocommerce-filters-date__content .woocommerce-filters-date__button.is-secondary {
  padding: 12px 20px !important;
  height: auto !important;
}

/* Tabs: padding compacto */
.woocommerce-filters-date__content .components-tab-panel__tabs-item {
  padding: 5px 10px !important;
}

/* -------------------------------------------------------
   Calendário react-dates (airbnb) — paleta TCE completa
   Classes: DayPicker, CalendarMonth, CalendarDay
------------------------------------------------------- */

/* Container woocommerce-calendar: fundo primário TCE */
.woocommerce-filters-date__content .woocommerce-calendar {
  background-color: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
  padding: 5px 5px 10px 5px !important;
  height: auto !important;
}

/* DayPicker outer + inner containers */
.woocommerce-filters-date__content .DayPicker,
.woocommerce-filters-date__content .DayPicker_1,
.woocommerce-filters-date__content .DayPicker__horizontal,
.woocommerce-filters-date__content .DayPicker_transitionContainer,
.woocommerce-filters-date__content .DayPicker_transitionContainer__horizontal,
.woocommerce-filters-date__content .DayPicker_focusRegion {
  background: var(--site-color-primary) !important;
}

/* CalendarMonthGrid + CalendarMonth — container + tabela */
.woocommerce-filters-date__content .CalendarMonthGrid,
.woocommerce-filters-date__content .CalendarMonthGrid__horizontal,
.woocommerce-filters-date__content .CalendarMonthGrid__animating,
.woocommerce-filters-date__content .CalendarMonth,
.woocommerce-filters-date__content .CalendarMonth_1 {
  background: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
}

.woocommerce-filters-date__content .CalendarMonth_table,
.woocommerce-filters-date__content .CalendarMonth_table_1 {
  background: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-collapse: collapse !important;
}

/* Caption "May 2026" */
.woocommerce-filters-date__content .CalendarMonth_caption,
.woocommerce-filters-date__content .CalendarMonth_caption_1 {
  color: var(--site-color-text) !important;
  background: transparent !important;
  font-family: var(--site-font-ui) !important;
  font-weight: 600 !important;
  padding-top: 18px !important;
  padding-bottom: 36px !important;
}

.woocommerce-filters-date__content .CalendarMonth_caption strong {
  color: var(--site-color-text) !important;
}

/* Cabeçalho de dias da semana (Su Mo Tu...) */
.woocommerce-filters-date__content .DayPicker_weekHeaders,
.woocommerce-filters-date__content .DayPicker_weekHeader,
.woocommerce-filters-date__content .DayPicker_weekHeader_ul,
.woocommerce-filters-date__content .DayPicker_weekHeader_li,
.woocommerce-filters-date__content .DayPicker_weekHeader_li small {
  background: transparent !important;
  color: var(--site-color-text-transp) !important;
}

/* CalendarDay — estado padrão */
.woocommerce-filters-date__content .CalendarDay,
.woocommerce-filters-date__content .CalendarDay__default,
.woocommerce-filters-date__content .CalendarDay_1,
.woocommerce-filters-date__content .CalendarDay__default_2 {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: 1px solid var(--site-border-soft) !important;
}

/* CalendarDay — hover */
.woocommerce-filters-date__content .CalendarDay__default:hover {
  background: var(--site-color-secondary) !important;
  color: var(--site-color-text) !important;
  border-color: var(--site-border-soft) !important;
}

/* CalendarDay — selecionado (start / end) */
.woocommerce-filters-date__content .CalendarDay__selected,
.woocommerce-filters-date__content .CalendarDay__selected_start,
.woocommerce-filters-date__content .CalendarDay__selected_end,
.woocommerce-filters-date__content .CalendarDay__selected:hover,
.woocommerce-filters-date__content .CalendarDay__selected_start:hover,
.woocommerce-filters-date__content .CalendarDay__selected_end:hover {
  background: var(--site-color-secondary) !important;
  color: var(--site-color-text) !important;
  border-color: var(--site-border-soft) !important;
}

/* CalendarDay — intervalo selecionado */
.woocommerce-filters-date__content .CalendarDay__selected_span,
.woocommerce-filters-date__content .CalendarDay__selected_span:hover {
  background: rgba(111, 74, 111, 0.45) !important;
  color: var(--site-color-text) !important;
  border-color: var(--site-border-soft) !important;
}

/* CalendarDay — hovered span (hover sobre range) */
.woocommerce-filters-date__content .CalendarDay__hovered_span,
.woocommerce-filters-date__content .CalendarDay__hovered_span:hover {
  background: rgba(111, 74, 111, 0.28) !important;
  color: var(--site-color-text) !important;
  border-color: var(--site-border-soft) !important;
}

/* CalendarDay — bloqueado / fora do range */
.woocommerce-filters-date__content .CalendarDay__blocked_out_of_range,
.woocommerce-filters-date__content .CalendarDay__blocked_out_of_range:hover {
  background: transparent !important;
  color: var(--site-color-text-transp) !important;
  border-color: var(--site-border-soft) !important;
}

/* CalendarDay — hoje: bold, mesma borda */
.woocommerce-filters-date__content .CalendarDay__today {
  border-color: var(--site-border-soft) !important;
  font-weight: 700 !important;
}

/* Botões de navegação ← → */
.woocommerce-filters-date__content .DayPickerNavigation_button,
.woocommerce-filters-date__content .DayPickerNavigation_button__default {
  background: transparent !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
}

.woocommerce-filters-date__content .DayPickerNavigation_button:hover {
  background: var(--site-color-secondary) !important;
  border-color: var(--site-color-secondary) !important;
}

.woocommerce-filters-date__content .DayPickerNavigation_svg__horizontal {
  fill: var(--site-color-text) !important;
}

/* Inputs de data m/dd/yyyy */
.woocommerce-filters-date__content .DateInput,
.woocommerce-filters-date__content .DateInput_1,
.woocommerce-filters-date__content .DateInput_input,
.woocommerce-filters-date__content .DateInput_input_1,
.woocommerce-filters-date__content .DateRangePickerInput,
.woocommerce-filters-date__content .DateRangePickerInput_1 {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border-color: var(--site-border-soft) !important;
  font-family: var(--site-font-body) !important;
}

.woocommerce-filters-date__content .DateInput_input::placeholder,
.woocommerce-filters-date__content .DateRangePickerInput__withBorder {
  color: var(--site-color-text-transp) !important;
  border: 1px solid var(--site-border-soft) !important;
  background: transparent !important;
}

.woocommerce-filters-date__content .DateInput_input__focused {
  border-bottom-color: var(--site-color-secondary) !important;
}

/* Separador "to" entre inputs */
.woocommerce-filters-date__content .DateRangePickerInput_arrow,
.woocommerce-filters-date__content .DateRangePickerInput_arrow_svg {
  fill: var(--site-color-text-transp) !important;
  color: var(--site-color-text-transp) !important;
}

/* Ícone de calendário */
.woocommerce-filters-date__content svg.calendar-icon path,
.woocommerce-filters-date__content .DateInput_fang,
.woocommerce-filters-date__content .DateRangePicker_picker {
  fill: var(--site-color-text) !important;
  background: var(--site-color-primary) !important;
  border-color: var(--site-border-soft) !important;
}


/* =========================================================
   16. FULLCALENDAR — Delivery Time Dashboard
   Paleta TCE: NotoSans → #ffffff, botões → padrão TCE
   Seletores espelham especificidade de delivery-time-dashboard.css
========================================================= */

/* Cabeçalho de dias (Sun, Mon…) e números — NotoSans #6D6D6D → branco */
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-col-header-cell-cushion,
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-daygrid-day-number {
  color: #ffffff !important;
  text-decoration: none !important;
}

/* Grade: bordas soft */
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc-theme-standard td,
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc-theme-standard th,
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc-theme-standard .fc-scrollgrid {
  border-color: var(--site-border-soft) !important;
}

/* Células: fundo transparente */
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-col-header-cell,
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-daygrid-day,
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-scrollgrid-sync-inner {
  background: transparent !important;
}

/* Hoje: destaque secondary */
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-day-today {
  background: rgba(111, 74, 111, 0.18) !important;
}

/* Botões: estado padrão */
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-button-primary {
  background-color: var(--site-color-secondary) !important;
  color: #ffffff !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-shadow: none !important;
  font-family: var(--site-font-ui) !important;
}

/* Botões: hover */
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-button-primary:hover {
  background-color: var(--site-color-tertiary) !important;
  color: #ffffff !important;
  border-color: var(--site-border-soft) !important;
  box-shadow: none !important;
}

/* Botões: ativo (ex: "month" selecionado) */
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-button-primary:not(:disabled).fc-button-active,
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-button-primary:not(:disabled):active {
  background-color: var(--site-color-tertiary) !important;
  color: #ffffff !important;
  border-color: var(--site-border-soft) !important;
  box-shadow: none !important;
}

/* Botões: desabilitado */
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-button-primary:disabled {
  background-color: transparent !important;
  color: var(--site-color-text-transp) !important;
  border-color: var(--site-border-soft) !important;
  opacity: 0.5 !important;
}

/* Título "MAY 2026" */
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-toolbar-title {
  color: #ffffff !important;
  font-family: var(--site-font-heading) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
}

/* "All Events" select + "Filter" button */
.dokan-delivery-time-dashboard select,
.dokan-delivery-time-dashboard .select2-selection,
.dokan-delivery-time-dashboard .dokan-btn,
.dokan-delivery-time-dashboard button:not(.fc-button) {
  background: transparent !important;
  color: #ffffff !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Eventos no calendário */
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-event,
.dokan-layout .dokan-delivery-time-dashboard-calendar .fc .fc-event-main {
  background: var(--site-color-secondary) !important;
  border-color: var(--site-color-secondary) !important;
  color: #ffffff !important;
}

/* ==========================================================================
   SEÇÃO 17 — WooCommerce Blocks Checkout: campos de formulário
   UI-Rules: fundo transparente, só border-bottom, paleta TCE
   Seletores confirmados via getComputedStyle no DOM real
   ========================================================================== */

/* Inputs de texto (email, nome, morada, cidade, postal) */
.wc-block-components-text-input input,
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-text-input input[type="password"] {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: none !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Focus */
.wc-block-components-text-input input:focus,
.wc-block-components-text-input.is-active input {
  border-bottom-color: var(--site-color-secondary) !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Wrapper do input (tem o outline padrão do Blocks) */
.wc-block-components-text-input,
.wc-block-components-text-input.is-active {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Selects (país, estado/região) */
.wc-blocks-components-select__select,
.wc-blocks-components-select__container select {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Focus state — suprime border-color: currentColor + outline do browser */
.wc-blocks-components-select .wc-blocks-components-select__select:focus,
.wc-blocks-components-select .wc-blocks-components-select__select:focus-visible {
  border: none !important;
  border-width: 0 !important;
  outline: none !important;
  box-shadow: none !important;
}

/* Options do dropdown nativo: fundo TCE primary + texto branco
   (color: white no select pai seria herdado → texto invisível no bg branco do OS) */
.wc-blocks-components-select__select option {
  background-color: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
}

.wc-blocks-components-select__select option:hover,
.wc-blocks-components-select__select option:checked {
  background-color: var(--site-color-secondary) !important;
  color: #ffffff !important;
}

.wc-blocks-components-select,
.wc-blocks-components-select__container {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
}

/* Focus no container: destaca border-bottom */
.wc-blocks-components-select:focus-within {
  border-bottom-color: var(--site-color-secondary) !important;
}

/* Select WordPress/Dokan (components-select-control__input) — Delivery time picker, etc. */
.components-select-control__input {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: none !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}
.components-select-control__input:focus,
.components-select-control__input:focus-visible {
  border-bottom-color: var(--site-color-secondary) !important;
  outline: none !important;
  box-shadow: none !important;
}
.components-select-control__input option {
  background-color: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
}
.components-select-control__input option:hover,
.components-select-control__input option:checked {
  background-color: var(--site-color-secondary) !important;
  color: #ffffff !important;
}

/* Labels flutuantes */
.wc-block-components-label,
.wc-block-components-text-input label,
.wc-blocks-components-select label {
  color: var(--site-color-text-transp) !important;
  background: transparent !important;
}

/* Labels das secções (Contact Information, Shipping Address) */
.wc-block-checkout__step-heading,
.wc-block-components-checkout-step__title,
.wp-block-woocommerce-checkout-fields-block .wc-block-checkout__step-heading {
  font-family: var(--site-font-heading) !important;
  color: var(--site-color-text) !important;
  text-transform: uppercase !important;
}

/* Placeholder */
.wc-block-components-text-input input::placeholder {
  color: var(--site-color-text-transp) !important;
}

/* Checkbox "Use same address for billing" */
.wc-block-checkout .wc-block-components-checkbox .wc-block-components-checkbox__label {
  color: var(--site-color-text) !important;
}

/* Caixa de entrega Dokan ("Please select your delivery time") */
.dokan-delivery-time-date-picker,
.dokan-delivery-time-notice,
[class*="dokan-delivery"] .woocommerce-info,
.wc-block-checkout__sidebar [class*="dokan"] {
  background: var(--site-color-primary) !important;
  border: 1px solid var(--site-border-soft) !important;
  color: var(--site-color-text) !important;
}

/* Fundo do checkout sidebar (order summary) — garante sem blocos brancos */
.wc-block-checkout__sidebar {
  background: transparent !important;
}

/* Textarea (notas do pedido, se existir) */
.wc-block-components-textarea,
.wc-block-components-textarea textarea {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: none !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Dokan Delivery Time — card da loja no sidebar do checkout */
.delivery-time-body {
  background: var(--site-color-primary) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  color: var(--site-color-text) !important;
}

.delivery-time-body .vendor-info,
.delivery-time-body .title,
.delivery-time-body .delivery-group {
  background: transparent !important;
  color: var(--site-color-text) !important;
}

/* Textos internos (spans sem classe herdados do Dokan) */
.delivery-time-body .title span,
.delivery-time-body .selector span {
  color: var(--site-color-text) !important;
}

.delivery-time-body .vendor-info span {
  color: var(--site-color-text-transp) !important;
}

/* Tab "Delivery" — ativo e inativo */
.delivery-time-body .selector {
  border-radius: 0 !important;
  color: var(--site-color-text) !important;
}

.delivery-time-body .selector.active-selector {
  background: rgba(111, 74, 111, 0.25) !important;
  border: 2px solid var(--site-color-secondary) !important;
  border-radius: 0 !important;
  color: var(--site-color-text) !important;
}

/* Pill data/hora (timezone) */
.delivery-timezone.dokan-delivery-time-tooltip {
  border-radius: 0 !important;
}

/* Input "Delivery Date" (flatpickr) */
.delivery-time-date-picker.flatpickr-input,
input.delivery-time-date-picker {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: none !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Separador HR dentro do card */
.delivery-time-body hr {
  border-color: var(--site-border-soft) !important;
  background: var(--site-border-soft) !important;
}

/* ==========================================================================
   Flatpickr Calendar — Dokan Delivery Date picker
   Paleta TCE: fundo primary, texto branco, accent em secondary
   ========================================================================== */

.flatpickr-calendar {
  background: var(--site-color-primary) !important;
  border: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--site-color-text) !important;
}

/* Mês + navegação */
.flatpickr-calendar .flatpickr-months,
.flatpickr-calendar .flatpickr-month {
  background: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
  fill: var(--site-color-text) !important;
}

.flatpickr-calendar .flatpickr-current-month {
  color: var(--site-color-text) !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
}

/* Select do mês (dropdown nativo) */
.flatpickr-calendar .flatpickr-monthDropdown-months {
  background: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
  border: none !important;
  outline: none !important;
  border-radius: 0 !important;
  font-family: var(--site-font-ui) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: normal !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  cursor: pointer !important;
}

/* =============================================================================
   SEÇÃO 21 — Loop Carousel: sync widgets ocultos
   Widgets adicionados programaticamente ao template 2457 para sync via JS.
   Não devem ser visíveis — ficam escondidos dentro de cada swiper-slide.
============================================================================= */
.elementor-widget.tce-excerpt-hidden,
.tce-excerpt-sync {
  display: none !important;
}

/* =============================================================================
   SEÇÃO 20 — Vendor Onboarding: paleta TCE
   Escopo: .dokan-vendor-onboarding
   Referência visual: /my-account/?view=login
============================================================================= */

/* --- Artist Onboarding: show/hide por ?view= ---
   body.tce-ao-view-login     → mostra .dokan-login-section, esconde .dokan-registration-section
   body.tce-ao-view-reg-artist → mostra .dokan-registration-section, esconde .dokan-login-section
   Sem body class = parâmetro inválido → PHP já redireciona, mas CSS esconde tudo como fallback
*/
body.tce-ao-view-login .dokan-registration-section {
  display: none !important;
}
body.tce-ao-view-reg-artist .dokan-login-section {
  display: none !important;
}
/* Fallback: sem body class válida, esconde tudo até o redirect PHP agir */
body.page-id-1967:not(.tce-ao-view-login):not(.tce-ao-view-reg-artist) .dokan-vendor-onboarding {
  visibility: hidden !important;
}

/* --- Container --- */
.dokan-vendor-onboarding {
  font-family: var(--site-font-body);
  color: var(--site-color-text);
  padding: 60px 24px;
}

.dokan-onboarding-container {
  max-width: 1200px;
  margin: 0 auto;
  gap: 64px;
}

/* --- H2 headings --- */
.dokan-login-section h2,
.dokan-registration-section h2 {
  font-family: var(--site-font-heading) !important;
  font-size: var(--site-h2-size) !important;
  font-weight: var(--site-h2-weight) !important;
  color: var(--site-color-text) !important;
  text-transform: uppercase !important;
  letter-spacing: -0.15em !important;
  margin-bottom: 24px !important;
}

/* --- Labels --- */
.dokan-vendor-onboarding label,
.dokan-vendor-onboarding .control-label {
  color: var(--site-color-text) !important;
  font-family: var(--site-font-body) !important;
  font-weight: 400 !important;
  font-size: var(--site-text-body-size) !important;
  margin-bottom: 8px;
}

/* --- Inputs (todos os tipos) --- */
.dokan-login-section input[type="text"],
.dokan-login-section input[type="password"],
.dokan-login-section input[type="email"],
.dokan-registration-section input[type="text"],
.dokan-registration-section input[type="password"],
.dokan-registration-section input[type="email"],
.dokan-registration-section input[type="tel"],
.dokan-registration-section input[type="url"],
.dokan-registration-section input[type="number"],
.dokan-vendor-onboarding .dokan-form-control,
.dokan-vendor-onboarding input.input-text,
.dokan-vendor-onboarding input.form-control,
.dokan-vendor-onboarding textarea {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--site-color-text) !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  border-radius: 0 !important;
  min-height: 48px !important;
  padding: 10px 15px !important;
  font-family: var(--site-font-body) !important;
  font-size: var(--site-text-body-size) !important;
  width: 100% !important;
  box-shadow: none !important;
  transition: border-color 0.2s ease !important;
}

/* --- Focus --- */
.dokan-login-section input:focus,
.dokan-registration-section input:focus,
.dokan-vendor-onboarding .dokan-form-control:focus,
.dokan-vendor-onboarding input.input-text:focus,
.dokan-vendor-onboarding input.form-control:focus,
.dokan-vendor-onboarding textarea:focus {
  border-color: rgba(255, 255, 255, 0.8) !important;
  outline: none !important;
  box-shadow: none !important;
}

/* --- Select --- */
.dokan-registration-section select,
.dokan-vendor-onboarding select,
.dokan-vendor-onboarding select.dokan-form-control {
  background-color: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
  -webkit-appearance: none;
  appearance: none;
}

.dokan-vendor-onboarding select option {
  background-color: var(--site-color-primary);
  color: var(--site-color-text);
}

/* --- Checkbox --- */
.dokan-vendor-onboarding input[type="checkbox"] {
  accent-color: var(--site-color-secondary) !important;
  width: 16px !important;
  height: 16px !important;
  min-height: unset !important;
}

/* --- Botões submit --- */
.dokan-login-section button[type="submit"],
.dokan-login-section .button,
.dokan-registration-section button[type="submit"],
.dokan-registration-section .dokan-btn,
.dokan-registration-section .dokan-btn-theme,
.dokan-vendor-onboarding .dokan-btn,
.dokan-vendor-onboarding .dokan-btn-theme {
  background: var(--site-button-bg) !important;
  color: var(--site-button-text) !important;
  border: 2px solid var(--site-button-border) !important;
  border-radius: 0 !important;
  padding: 12px 20px !important;
  font-family: var(--site-font-ui) !important;
  font-size: var(--site-text-ui-md-size) !important;
  font-weight: var(--site-text-ui-md-weight) !important;
  line-height: var(--site-text-ui-md-line) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

.dokan-login-section button[type="submit"]:hover,
.dokan-login-section .button:hover,
.dokan-registration-section button[type="submit"]:hover,
.dokan-registration-section .dokan-btn:hover,
.dokan-registration-section .dokan-btn-theme:hover,
.dokan-vendor-onboarding .dokan-btn:hover,
.dokan-vendor-onboarding .dokan-btn-theme:hover {
  background: var(--site-button-hover-bg) !important;
  color: var(--site-button-hover-text) !important;
  border-color: var(--site-button-hover-border) !important;
}

/* --- Links --- */
.dokan-vendor-onboarding a {
  color: var(--site-color-accent) !important;
  text-decoration: none;
}

.dokan-vendor-onboarding a:hover {
  color: var(--site-color-text) !important;
}

/* --- Texto auxiliar (small, help) --- */
.dokan-vendor-onboarding small,
.dokan-vendor-onboarding .reg_email_error {
  color: var(--site-color-text-transp) !important;
  font-size: 0.8rem;
}

/* --- Remember me --- */
.dokan-vendor-onboarding .woocommerce-form-login__rememberme {
  color: var(--site-color-text);
  font-family: var(--site-font-body);
}

/* --- Split row (first + last name) --- */
.dokan-vendor-onboarding .split-row {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 16px !important;
}

/* --- Required asterisk --- */
.dokan-vendor-onboarding .required {
  color: var(--site-color-accent) !important;
}

/* --- URL alart preview --- */
.dokan-vendor-onboarding #url-alart {
  color: var(--site-color-accent);
}

/* --- Responsive --- */
@media (max-width: 1024px) {
  .dokan-onboarding-container {
    gap: 40px;
  }
}

@media (max-width: 767px) {
  .dokan-vendor-onboarding {
    padding: 40px 20px;
  }

  .dokan-onboarding-container {
    grid-template-columns: 1fr !important;
    gap: 48px;
  }

  .dokan-vendor-onboarding .split-row {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }
}

.flatpickr-calendar .flatpickr-monthDropdown-months option,
.flatpickr-calendar .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month {
  background-color: var(--site-color-primary) !important;
  color: var(--site-color-text) !important;
  font-family: var(--site-font-ui) !important;
}

.flatpickr-calendar .flatpickr-monthDropdown-months option:hover,
.flatpickr-calendar .flatpickr-monthDropdown-months option:checked {
  background-color: var(--site-color-secondary) !important;
  color: #ffffff !important;
}

/* Input do ano */
.flatpickr-calendar .numInput.cur-year,
.flatpickr-calendar .numInputWrapper input.cur-year {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  font-family: var(--site-font-ui) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: normal !important;
}

.flatpickr-calendar .numInputWrapper {
  background: transparent !important;
  width: 65px !important;
  height: auto !important;
  display: inline-flex !important;
  align-items: center !important;
}

.flatpickr-calendar .numInputWrapper span {
  border-color: var(--site-border-soft) !important;
  opacity: 1 !important;
}

.flatpickr-calendar .numInputWrapper span.arrowUp::after {
  border-bottom-color: var(--site-color-text) !important;
}

.flatpickr-calendar .numInputWrapper span.arrowDown::after {
  border-top-color: var(--site-color-text) !important;
}

.flatpickr-calendar .numInputWrapper span svg path {
  fill: var(--site-color-text) !important;
}


.flatpickr-calendar .flatpickr-prev-month,
.flatpickr-calendar .flatpickr-next-month {
  color: var(--site-color-text) !important;
  fill: var(--site-color-text) !important;
}

.flatpickr-calendar .flatpickr-prev-month:hover,
.flatpickr-calendar .flatpickr-next-month:hover {
  color: var(--site-color-secondary) !important;
  fill: var(--site-color-secondary) !important;
}

/* Cabeçalho dias da semana (Sun, Mon…) */
.flatpickr-calendar .flatpickr-weekdays,
.flatpickr-calendar .flatpickr-weekday {
  background: var(--site-color-primary) !important;
  color: var(--site-color-text-transp) !important;
}

/* Dias */
.flatpickr-calendar .flatpickr-day {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border-color: transparent !important;
  border-radius: 0 !important;
}

.flatpickr-calendar .flatpickr-day:hover {
  background: var(--site-color-secondary) !important;
  color: #ffffff !important;
  border-color: var(--site-color-secondary) !important;
}

/* Dia de hoje */
.flatpickr-calendar .flatpickr-day.today {
  border-color: var(--site-color-accent) !important;
  color: var(--site-color-text) !important;
}

.flatpickr-calendar .flatpickr-day.today:hover {
  background: var(--site-color-secondary) !important;
  border-color: var(--site-color-secondary) !important;
  color: #ffffff !important;
}

/* Dia selecionado */
.flatpickr-calendar .flatpickr-day.selected,
.flatpickr-calendar .flatpickr-day.selected:hover {
  background: var(--site-color-secondary) !important;
  border-color: var(--site-color-secondary) !important;
  color: #ffffff !important;
}

/* Dias passados do mês actual — 15% transparente */
.flatpickr-calendar .flatpickr-day.flatpickr-disabled:not(.prevMonthDay):not(.nextMonthDay) {
  color: rgba(255, 255, 255, 0.85) !important;
  background: transparent !important;
  cursor: not-allowed !important;
}

/* Dias do mês anterior/seguinte — 30% transparente */
.flatpickr-calendar .flatpickr-day.prevMonthDay,
.flatpickr-calendar .flatpickr-day.nextMonthDay {
  color: rgba(255, 255, 255, 0.70) !important;
  background: transparent !important;
  cursor: not-allowed !important;
}

/* Contentor dos dias */
.flatpickr-calendar .dayContainer {
  background: var(--site-color-primary) !important;
}

.flatpickr-calendar .flatpickr-days {
  background: var(--site-color-primary) !important;
  border-color: var(--site-border-soft) !important;
}

/* ==========================================================================
   Botão "Place Order" — alinhado ao estilo elementor-button da homepage
   Referência: #967e7f, 2px solid, border-radius 0, NotoSans 500 16px
   ========================================================================== */
.wc-block-components-checkout-place-order-button {
  background-color: var(--site-color-967e7f) !important;
  color: #ffffff !important;
  border: 2px solid var(--site-color-967e7f) !important;
  border-radius: 0 !important;
  font-family: var(--site-font-ui) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  letter-spacing: normal !important;
  padding: 12px 20px !important;
  box-shadow: none !important;
  text-transform: uppercase !important;
}

.wc-block-components-checkout-place-order-button:hover,
.wc-block-components-checkout-place-order-button:focus {
  background-color: var(--site-color-tertiary) !important;
  border: 1px solid var(--site-color-text) !important;
  color: #ffffff !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Botão "Edit" do address card no checkout Blocks */
.wc-block-components-address-card__edit {
  background: var(--site-button-bg) !important;
  color: var(--site-button-text) !important;
  border: 2px solid var(--site-button-border) !important;
  border-radius: 0 !important;
  padding: 8px 16px !important;
  font-family: var(--site-button-font) !important;
  font-size: var(--site-button-size) !important;
  font-weight: var(--site-button-weight) !important;
  letter-spacing: normal !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  display: inline-block !important;
}
.wc-block-components-address-card__edit:hover {
  background: var(--site-button-hover-bg) !important;
  border-color: var(--site-button-hover-border) !important;
  color: var(--site-button-hover-text) !important;
}

/* Botão "Proceed to Checkout" no Cart — idêntico ao elementor-button da homepage */
.wc-block-cart__submit-button {
  background-color: var(--site-color-967e7f) !important;
  color: #ffffff !important;
  border: 2px solid var(--site-color-967e7f) !important;
  border-radius: 0 !important;
  font-family: var(--site-font-ui) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  letter-spacing: normal !important;
  padding: 12px 20px !important;
  box-shadow: none !important;
  text-transform: uppercase !important;
}

.wc-block-cart__submit-button:hover,
.wc-block-cart__submit-button:focus {
  background-color: var(--site-color-tertiary) !important;
  border: 1px solid var(--site-color-text) !important;
  color: #ffffff !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Botões secundários do checkout (Return to Cart, etc.) */
.wc-block-checkout__actions_row a,
.wc-block-checkout__return-to-cart-link {
  color: var(--site-color-text-transp) !important;
  text-decoration: none !important;
  font-family: var(--site-font-ui) !important;
  font-size: 14px !important;
}

.wc-block-checkout__actions_row a:hover {
  color: var(--site-color-text) !important;
}

/* ==========================================================================
   SEÇÃO 18 — CART PAGE (Elementor WooCommerce Cart Widget)
   Widget: .elementor-element-edc4f8b / seletores confirmados via Playwright
   3 seções: .e-shop-table, .coupon.e-cart-section, .e-cart-totals
   ========================================================================== */

/* Fundo das 3 seções (branco → primary) */
.e-cart-section {
  background: var(--site-color-primary) !important;
  border: 1px solid var(--site-border-soft) !important;
}

/* Cabeçalho da tabela */
.e-shop-table table.shop_table thead th {
  color: var(--site-color-text) !important;
  background: transparent !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  font-family: var(--site-font-ui) !important;
  font-weight: 600 !important;
  letter-spacing: normal !important;
  text-transform: uppercase !important;
}

/* Células da tabela */
.e-shop-table table.shop_table tbody td {
  color: var(--site-color-text) !important;
  background: transparent !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
}

/* Link do nome do produto */
.e-shop-table .product-name a {
  color: var(--site-color-text) !important;
}
.e-shop-table .product-name a:hover {
  color: var(--site-color-accent) !important;
}

/* Variação (ex: "Vendor: Mirosfit") */
.e-shop-table .product-name dl.variation dt,
.e-shop-table .product-name dl.variation dd,
.e-shop-table .product-name dl.variation dd p {
  color: var(--site-color-text-transp) !important;
  font-size: 13px !important;
  margin: 0 !important;
}

/* Botão remover (×) */
.e-shop-table a.remove {
  color: var(--site-color-accent) !important;
}
.e-shop-table a.remove:hover {
  background: var(--site-color-secondary) !important;
  color: var(--site-color-text) !important;
}

/* Preços na tabela */
.e-shop-table .product-price .woocommerce-Price-amount,
.e-shop-table .product-subtotal .woocommerce-Price-amount {
  color: var(--site-color-text) !important;
}

/* Campo de quantidade */
.e-shop-table .quantity input.qty {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: none !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  text-align: center !important;
}

/* Botão "Update Cart" */
.woocommerce-cart-form [name="update_cart"] {
  background: var(--site-button-bg) !important;
  color: var(--site-button-text) !important;
  border: 2px solid var(--site-button-border) !important;
  border-radius: 0 !important;
  padding: var(--site-button-padding-y) var(--site-button-padding-x) !important;
  font-family: var(--site-button-font) !important;
  font-size: var(--site-button-size) !important;
  letter-spacing: normal !important;
}
.woocommerce-cart-form [name="update_cart"]:hover:not(:disabled) {
  background: var(--site-button-hover-bg) !important;
  border-color: var(--site-button-hover-border) !important;
  color: var(--site-button-hover-text) !important;
}

/* Secção de cupom */
.coupon.e-cart-section {
  border-top: none !important;
}
.coupon.e-cart-section input[name="coupon_code"] {
  background: transparent !important;
  color: var(--site-color-text) !important;
  border: none !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}
.coupon.e-cart-section input[name="coupon_code"]::placeholder {
  color: var(--site-color-text-transp) !important;
}
.coupon [name="apply_coupon"] {
  background: var(--site-button-bg) !important;
  color: var(--site-button-text) !important;
  border: 2px solid var(--site-button-border) !important;
  border-radius: 0 !important;
  padding: var(--site-button-padding-y) var(--site-button-padding-x) !important;
  font-family: var(--site-button-font) !important;
  font-size: var(--site-button-size) !important;
  letter-spacing: normal !important;
}
.coupon [name="apply_coupon"]:hover {
  background: var(--site-button-hover-bg) !important;
  border-color: var(--site-button-hover-border) !important;
  color: var(--site-button-hover-text) !important;
}

/* Cart Totals — heading */
.e-cart-totals h2,
.cart_totals h2 {
  color: var(--site-color-text) !important;
  font-family: var(--site-font-heading) !important;
  letter-spacing: -0.15em !important;
  text-transform: uppercase !important;
  margin-bottom: 20px !important;
}

/* Cart Totals — tabela */
.cart_totals table.shop_table th {
  color: var(--site-color-text) !important;
  background: transparent !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
  font-family: var(--site-font-ui) !important;
  font-weight: 600 !important;
  letter-spacing: normal !important;
}
.cart_totals table.shop_table td {
  color: var(--site-color-text) !important;
  background: transparent !important;
  border-bottom: 1px solid var(--site-border-soft) !important;
}
.cart_totals table.shop_table .woocommerce-Price-amount {
  color: var(--site-color-text) !important;
}

/* Shipping info */
.cart_totals .woocommerce-shipping-totals td p {
  color: var(--site-color-text-transp) !important;
}
.cart_totals a.shipping-calculator-button,
.cart_totals .woocommerce-shipping-calculator a {
  color: var(--site-color-accent) !important;
}
.cart_totals a.shipping-calculator-button:hover,
.cart_totals .woocommerce-shipping-calculator a:hover {
  color: var(--site-color-text) !important;
}

/* Botão "Proceed to Checkout" */
.woocommerce-cart a.checkout-button,
a.button.checkout-button {
  display: block !important;
  background: var(--site-color-967e7f) !important;
  color: #ffffff !important;
  border: 2px solid var(--site-color-967e7f) !important;
  border-radius: 0 !important;
  padding: var(--site-button-padding-y) var(--site-button-padding-x) !important;
  font-family: var(--site-button-font) !important;
  font-size: var(--site-button-size) !important;
  font-weight: var(--site-button-weight) !important;
  letter-spacing: normal !important;
  text-transform: uppercase !important;
  text-align: center !important;
  box-shadow: none !important;
}
.woocommerce-cart a.checkout-button:hover,
a.button.checkout-button:hover {
  background: var(--site-color-tertiary) !important;
  border-color: var(--site-color-text) !important;
  color: #ffffff !important;
  box-shadow: none !important;
}

/* My Account — cabeçalhos de tabela (Order, Date, Status, Total, Actions) */
.woocommerce-MyAccount-content .nobr {
  color: #ffffff !important;
}

/* My Account — Order Details: tfoot th/td (Subtotal, Total, Shipping) */
.woocommerce-MyAccount-content .woocommerce-table--order-details tfoot th,
.woocommerce-MyAccount-content .woocommerce-table--order-details tfoot td,
.e-my-account-tab .woocommerce .order_details tfoot th,
.e-my-account-tab .woocommerce .order_details tfoot td {
  color: #ffffff !important;
}