/* Kinwi: Make all Table of contents (jtoc) labels smaller on mobile (≤640px) */
@media (max-width: 640px) {
  .wpj-jtoc--title-label {
    font-size: 16px !important;
    font-family: 'Lora upload', serif !important;
    font-weight: 600 !important;
    font-style: normal !important;
  }
}

/* Kinwi: Force 16px font size for dollar amounts and variation numbers in Dokan Analytics Overview */
html body.dokan-dashboard .woocommerce-summary__item-value span.components-truncate.components-text.css-1a5c9ls,
html body.dokan-dashboard #dokan-analytics-app .woocommerce-summary__item-value span.components-truncate.components-text.css-1a5c9ls,
html body.dokan-dashboard .woocommerce-summary__item-value span.components-text.css-1a5c9ls,
html body.dokan-dashboard #dokan-analytics-app .woocommerce-summary__item-value span.components-text.css-1a5c9ls,
html body.dokan-dashboard .woocommerce-summary__item-value span.components-truncate.components-text,
html body.dokan-dashboard #dokan-analytics-app .woocommerce-summary__item-value span.components-truncate.components-text,
html body.dokan-dashboard .woocommerce-summary__item-value span.components-text,
html body.dokan-dashboard #dokan-analytics-app .woocommerce-summary__item-value span.components-text,
span.css-1a5c9ls.components-truncate.components-text,
span.components-truncate.components-text,
.components-truncate.components-text,
.css-1a5c9ls,
html body.dokan-dashboard .css-1a5c9ls,
html body.dokan-dashboard #dokan-analytics-app .css-1a5c9ls,
html body .css-1a5c9ls,
html body .woocommerce-summary__item-value span.css-1a5c9ls,
html body .woocommerce-summary__item-value span.components-truncate.components-text {
  font-size: 16px !important;
  font-family: "Lora upload", "Lora", serif !important;
  font-weight: normal !important;
}

/* Kinwi: Reduce font size for "No data for the selected date range" on small screens (323px and down) */
@media screen and (max-width: 323px) {
  .d3-chart__empty-message {
    font-size: 12px !important;
  }
}

/* ============================================================================
   Kinwi: GLOBAL DASHBOARD FONT OVERRIDE
   Forces Lora upload on ALL elements inside the vendor dashboard.
   This single rule replaces dozens of individual font-family selectors.
   Exceptions: page titles (Gabriela), Font Awesome icons.
   ============================================================================ */
html body.dokan-dashboard .dokan-dashboard-wrap,
html body.dokan-dashboard .dokan-dashboard-wrap *,
html body.dokan-dashboard .dokan-dashboard-wrap select,
html body.dokan-dashboard .dokan-dashboard-wrap option,
html body.dokan-dashboard .dokan-dashboard-wrap input,
html body.dokan-dashboard .dokan-dashboard-wrap textarea,
html body.dokan-dashboard .dokan-dashboard-wrap button {
  font-family: "Lora upload", "Lora", serif !important;
}

/* Kinwi: Protect Font Awesome icons from the global font override (covers both i AND span elements) */
html body.dokan-dashboard .dokan-dashboard-wrap i.fa,
html body.dokan-dashboard .dokan-dashboard-wrap i.fas,
html body.dokan-dashboard .dokan-dashboard-wrap i.far,
html body.dokan-dashboard .dokan-dashboard-wrap i.fab,
html body.dokan-dashboard .dokan-dashboard-wrap i[class*="fa-"],
html body.dokan-dashboard .dokan-dashboard-wrap span.fa,
html body.dokan-dashboard .dokan-dashboard-wrap span.fas,
html body.dokan-dashboard .dokan-dashboard-wrap span.far,
html body.dokan-dashboard .dokan-dashboard-wrap span.fab,
html body.dokan-dashboard .dokan-dashboard-wrap span[class*="fa-"]:not([class*="dashicons"]) {
  font-family: "Font Awesome 5 Free", "Font Awesome 5 Brands" !important;
}

/* Kinwi: Protect dashicons from the global font override (separate rule, dashicons font only) */
html body.dokan-dashboard .dokan-dashboard-wrap span.dashicons,
html body.dokan-dashboard .dokan-dashboard-wrap span[class*="dashicons-"],
html body.dokan-dashboard .dokan-dashboard-wrap i.dashicons,
html body.dokan-dashboard .dokan-dashboard-wrap i[class*="dashicons-"] {
  font-family: dashicons !important;
}

/* Kinwi: Protect TinyMCE editor toolbar icons from the global font override.
   WordPress remaps TinyMCE icons to dashicons in editor.min.css. */
html body.dokan-dashboard .dokan-dashboard-wrap .mce-ico,
html body.dokan-dashboard .dokan-dashboard-wrap i.mce-ico,
html body.dokan-dashboard .dokan-dashboard-wrap .mce-caret,
html body.dokan-dashboard .dokan-dashboard-wrap i[class*="mce-i-"] {
  font-family: dashicons !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  -webkit-font-smoothing: antialiased !important;
}

/* Kinwi: Apply Lora upload font to all products table text */
.product-listing-table,
.product-listing-table td,
.product-listing-table th,
.product-listing-table a,
.product-listing-table button,
.product-listing-table input,
.product-listing-table select {
  font-family: "Lora upload", "Lora", serif !important;
}

/* Kinwi: Apply Lora upload font to new Dokan products grid */
.dataviews-view-list,
.dataviews-view-list [role="gridcell"],
.dataviews-view-list [role="row"],
.dataviews-view-list button,
.dataviews-view-list a,
.dataviews-view-list input,
.dataviews-view-list select,
.dataviews-view-list p,
.dataviews-view-list span,
.dokan-dashboard-content .dataviews-view-list,
.dokan-dashboard-content .dataviews-view-list [role="gridcell"],
.dokan-dashboard-content .dataviews-view-list [role="row"],
.dokan-dashboard-content .dataviews-view-list button,
.dokan-dashboard-content .dataviews-view-list a,
/* Kinwi: Apply Lora upload font to dataviews TABLE view (new Dokan) */
.dataviews-view-table,
.dataviews-view-table tr,
.dataviews-view-table td,
.dataviews-view-table th,
.dataviews-view-table button,
.dataviews-view-table a,
.dataviews-view-table input,
.dataviews-view-table select,
.dataviews-view-table p,
.dataviews-view-table span,
.dokan-dashboard-content .dataviews-view-table,
.dokan-dashboard-content .dataviews-view-table tr,
.dokan-dashboard-content .dataviews-view-table td,
.dokan-dashboard-content .dataviews-view-table th,
.dokan-dashboard-content .dataviews-view-table button,
.dokan-dashboard-content .dataviews-view-table a {
  font-family: "Lora upload", "Lora", serif !important;
  font-size: 14px !important;
}

/* Kinwi: Hide reviewer email (often perceived as duplicate name) in Reviews list and table */
#dokan-vendor-reviews td[data-field="author"] small,
#dokan-vendor-reviews .dataviews-view-list__field:first-child small,
#dokan-vendor-reviews td:first-child a[href^="mailto:"],
#dokan-vendor-reviews td[data-field="author"] a[href^="mailto:"] {
  display: none !important;
}

/* Kinwi: Apply Lora upload font to pagination buttons */
.components-button,
.components-button.is-compact,
button[aria-label*="page"],
button[aria-label*="Page"] {
  font-family: "Lora upload", "Lora", serif !important;
}

/* Kinwi: Apply Lora upload font to pagination text and select dropdown */
.dataviews-pagination__page-select,
.dataviews-pagination__page-select div,
.dataviews-pagination__page-select span,
.components-select-control__input,
.components-input-control__container,
.dokan-dashboard-content .dataviews-pagination__page-select {
  font-family: "Lora upload", "Lora", serif !important;
}

/* Kinwi: Increase pagination select font size and center the number */
.components-input-control__container .components-select-control__input,
.dataviews-pagination__page-select .components-select-control__input,
select.components-select-control__input {
  font-size: 13px !important;
  line-height: normal !important;
  padding: 3px 32px 3px 8px !important;
  text-align: center !important;
  text-align-last: center !important;
  -moz-text-align-last: center !important;
}

/* Kinwi: Remove green background and shadow from dataviews list items on smaller screens */
html body .dataviews-view-list__item,
html body button.dataviews-view-list__item,
.dokan-dashboard-content .dataviews-view-list__item {
  opacity: 0 !important;
  box-shadow: none !important;
}

html body .dataviews-view-list__item-wrapper {
  background-color: #ffffff !important;
  box-shadow: none !important;
  border-bottom: 1px solid #eee;
}

/* ============================================================================
   GLOBAL TYPOGRAPHY SCALE (No text under 16px)
   ============================================================================ */

/* Base Body Text */
html body p,
html body li {
  font-size: 16px;
  line-height: 1.6;
}

/* ============================================================================
   Kinwi: GLOBAL SITE HEADING FONTS
   Implements requested font chart for all dashboard and store pages.
   ============================================================================ */

/* H1 (Page titles) */
html body h1,
html body.elementor-kit-25 h1,
html body.dokan-dashboard .dokan-dashboard-wrap h1,
html body.dokan-dashboard .dokan-dashboard-content h1,
html body.dokan-dashboard .dokan-dashboard-wrap h1.entry-title,
html body.dokan-dashboard .dokan-dashboard-wrap h3.text-2xl.font-semibold.text-gray-800,
html body.dokan-dashboard .dokan-dashboard-content > h3.text-2xl,
h3.md\:text-4xl,
h3.lg\:text-3xl {
  font-family: "Gabriela upload", "Gabriela", serif !important;
  font-size: 32px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
}

/* Kinwi: Protect inner spans (e.g. flex wrappers in React) from the global Lora override */
html body h1 *,
html body.dokan-dashboard .dokan-dashboard-wrap h1 *,
html body.dokan-dashboard .dokan-dashboard-content h1 *,
html body.dokan-dashboard .dokan-dashboard-wrap h1.entry-title *,
html body.dokan-dashboard .dokan-dashboard-wrap h3.text-2xl.font-semibold.text-gray-800 *,
html body.dokan-dashboard .dokan-dashboard-content > h3.text-2xl *,
h3.md\:text-4xl *,
h3.lg\:text-3xl * {
  font-family: "Gabriela upload", "Gabriela", serif !important;
}

/* H2 (Main sections) */
html body h2,
html body.dokan-dashboard .dokan-dashboard-wrap h2,
html body.dokan-dashboard .dokan-dashboard-content h2 {
  font-family: "Lora upload", "Lora", serif !important;
  font-size: 26px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}

/* H3 (Sub-sections) */
/* (Excluding the page title classes targeted in H1) */
html body h3:not(.text-2xl):not(.md\:text-4xl):not(.lg\:text-3xl),
html body.dokan-dashboard .dokan-dashboard-wrap h3:not(.text-2xl),
html body.dokan-dashboard .dokan-dashboard-content h3:not(.text-2xl) {
  font-family: "Lora upload", "Lora", serif !important;
  font-size: 22px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}

/* H4 (Sub-sub items) */
html body h4,
html body.dokan-dashboard .dokan-dashboard-wrap h4,
html body.dokan-dashboard .dokan-dashboard-content h4 {
  font-family: "Lora upload", "Lora", serif !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}

/* H5 / H6 (Deepest items) */
html body h5,
html body.dokan-dashboard .dokan-dashboard-wrap h5,
html body.dokan-dashboard .dokan-dashboard-content h5,
html body h6,
html body.dokan-dashboard .dokan-dashboard-wrap h6,
html body.dokan-dashboard .dokan-dashboard-content h6 {
  font-family: "Lora upload", "Lora", serif !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
}

/* Kinwi: Small desktop heading sizes (≤1024px) */
@media screen and (max-width: 1024px) {
  html body h1,
  html body.elementor-kit-25 h1,
  html body.dokan-dashboard .dokan-dashboard-wrap h1,
  html body.dokan-dashboard .dokan-dashboard-content h1,
  html body.dokan-dashboard .dokan-dashboard-wrap h1.entry-title,
  html body.dokan-dashboard .dokan-dashboard-wrap h3.text-2xl.font-semibold.text-gray-800,
  html body.dokan-dashboard .dokan-dashboard-content > h3.text-2xl,
  h3.md\:text-4xl,
  h3.lg\:text-3xl {
    font-size: 28px !important;
  }
  
  html body h2,
  html body.dokan-dashboard .dokan-dashboard-wrap h2,
  html body.dokan-dashboard .dokan-dashboard-content h2 {
    font-size: 24px !important;
  }
  
  html body h3:not(.text-2xl):not(.md\:text-4xl):not(.lg\:text-3xl):not(.wc-pao-addon-name),
  html body.dokan-dashboard .dokan-dashboard-wrap h3:not(.text-2xl):not(.wc-pao-addon-name),
  html body.dokan-dashboard .dokan-dashboard-content h3:not(.text-2xl):not(.wc-pao-addon-name) {
    font-size: 22px !important;
  }
  
  html body h4,
  html body.dokan-dashboard .dokan-dashboard-wrap h4,
  html body.dokan-dashboard .dokan-dashboard-content h4 {
    font-size: 18px !important;
  }
  
  html body h5,
  html body.dokan-dashboard .dokan-dashboard-wrap h5,
  html body.dokan-dashboard .dokan-dashboard-content h5,
  html body h6,
  html body.dokan-dashboard .dokan-dashboard-wrap h6,
  html body.dokan-dashboard .dokan-dashboard-content h6 {
    font-size: 16px !important;
  }
}

/* Mobile responsive heading sizes */
@media screen and (max-width: 800px) {
  html body h1,
  html body.elementor-kit-25 h1,
  html body.dokan-dashboard .dokan-dashboard-wrap h1,
  html body.dokan-dashboard .dokan-dashboard-content h1,
  html body.dokan-dashboard .dokan-dashboard-wrap h1.entry-title,
  html body.dokan-dashboard .dokan-dashboard-wrap h3.text-2xl.font-semibold.text-gray-800,
  html body.dokan-dashboard .dokan-dashboard-content > h3.text-2xl,
  h3.md\:text-4xl,
  h3.lg\:text-3xl {
    font-size: 26px !important;
  }
  
  html body h2,
  html body.dokan-dashboard .dokan-dashboard-wrap h2,
  html body.dokan-dashboard .dokan-dashboard-content h2 {
    font-size: 22px !important;
  }
  
  html body h3:not(.text-2xl):not(.md\:text-4xl):not(.lg\:text-3xl):not(.wc-pao-addon-name),
  html body.dokan-dashboard .dokan-dashboard-wrap h3:not(.text-2xl):not(.wc-pao-addon-name),
  html body.dokan-dashboard .dokan-dashboard-content h3:not(.text-2xl):not(.wc-pao-addon-name) {
    font-size: 20px !important;
  }
  
  html body h4,
  html body.dokan-dashboard .dokan-dashboard-wrap h4,
  html body.dokan-dashboard .dokan-dashboard-content h4 {
    font-size: 18px !important;
  }
  
  html body h5,
  html body.dokan-dashboard .dokan-dashboard-wrap h5,
  html body.dokan-dashboard .dokan-dashboard-content h5,
  html body h6,
  html body.dokan-dashboard .dokan-dashboard-wrap h6,
  html body.dokan-dashboard .dokan-dashboard-content h6 {
    font-size: 16px !important;
  }
}

/* Kinwi: Small mobile heading sizes (≤480px) — bring page titles closer to logo size */
@media screen and (max-width: 480px) {
  html body h1,
  html body.elementor-kit-25 h1,
  html body.dokan-dashboard .dokan-dashboard-wrap h1,
  html body.dokan-dashboard .dokan-dashboard-content h1,
  html body.dokan-dashboard .dokan-dashboard-wrap h1.entry-title,
  html body.dokan-dashboard .dokan-dashboard-wrap h3.text-2xl.font-semibold.text-gray-800,
  html body.dokan-dashboard .dokan-dashboard-content > h3.text-2xl,
  h3.md\:text-4xl,
  h3.lg\:text-3xl {
    font-size: 22px !important;
  }
  
  html body h2,
  html body.dokan-dashboard .dokan-dashboard-wrap h2,
  html body.dokan-dashboard .dokan-dashboard-content h2 {
    font-size: 20px !important;
  }
  
  html body h3:not(.text-2xl):not(.md\:text-4xl):not(.lg\:text-3xl):not(.wc-pao-addon-name),
  html body.dokan-dashboard .dokan-dashboard-wrap h3:not(.text-2xl):not(.wc-pao-addon-name),
  html body.dokan-dashboard .dokan-dashboard-content h3:not(.text-2xl):not(.wc-pao-addon-name) {
    font-size: 18px !important;
  }
  
  html body h4,
  html body.dokan-dashboard .dokan-dashboard-wrap h4,
  html body.dokan-dashboard .dokan-dashboard-content h4 {
    font-size: 16px !important;
  }
  
  html body h5,
  html body.dokan-dashboard .dokan-dashboard-wrap h5,
  html body.dokan-dashboard .dokan-dashboard-content h5,
  html body h6,
  html body.dokan-dashboard .dokan-dashboard-wrap h6,
  html body.dokan-dashboard .dokan-dashboard-content h6 {
    font-size: 16px !important;
  }
}

/* Kinwi: Extra-small mobile heading sizes (≤400px) — page title near logo text size */
@media screen and (max-width: 400px) {
  html body h1,
  html body.elementor-kit-25 h1,
  html body.dokan-dashboard .dokan-dashboard-wrap h1,
  html body.dokan-dashboard .dokan-dashboard-content h1,
  html body.dokan-dashboard .dokan-dashboard-wrap h1.entry-title,
  html body.dokan-dashboard .dokan-dashboard-wrap h3.text-2xl.font-semibold.text-gray-800,
  html body.dokan-dashboard .dokan-dashboard-content > h3.text-2xl,
  h3.md\:text-4xl,
  h3.lg\:text-3xl {
    font-size: 20px !important;
  }
  
  html body h2,
  html body.dokan-dashboard .dokan-dashboard-wrap h2,
  html body.dokan-dashboard .dokan-dashboard-content h2 {
    font-size: 18px !important;
  }
  
  html body h3:not(.text-2xl):not(.md\:text-4xl):not(.lg\:text-3xl):not(.wc-pao-addon-name),
  html body.dokan-dashboard .dokan-dashboard-wrap h3:not(.text-2xl):not(.wc-pao-addon-name),
  html body.dokan-dashboard .dokan-dashboard-content h3:not(.text-2xl):not(.wc-pao-addon-name) {
    font-size: 17px !important;
  }
  
  html body h4,
  html body.dokan-dashboard .dokan-dashboard-wrap h4,
  html body.dokan-dashboard .dokan-dashboard-content h4 {
    font-size: 16px !important;
  }
  
  html body h5,
  html body.dokan-dashboard .dokan-dashboard-wrap h5,
  html body.dokan-dashboard .dokan-dashboard-content h5,
  html body h6,
  html body.dokan-dashboard .dokan-dashboard-wrap h6,
  html body.dokan-dashboard .dokan-dashboard-content h6 {
    font-size: 16px !important;
  }
}


/* Kinwi: Add custom CSS overrides below this line. */

/* Kinwi: Prevent horizontal scrolling on all screen sizes */
html, body {
  overflow-x: hidden !important;
  max-width: 100vw !important;
}

/* Kinwi: Migrated from Customizer (hello-elementor) on 2026-03-01 */


/* Kinwi: Absolute horizontal overflow prevention */
@media screen and (max-width: 800px) {
    html, body, .elementor-page, .elementor-inner, .elementor-section-wrap, .page, #page, .site {
        overflow-x: hidden !important;
        max-width: 100% !important;
    }
    
    /* Prevent Superfly menu logo from forcing body to 500px wide on small mobile screens */
    .sfm-logo {
        max-width: 100vw !important;
        box-sizing: border-box !important;
    }
}

/* Kinwi: Hide any backorder notifications or availability badges across the store */
.stock.available-on-backorder,
.backorder_notification,
p.backorder_notification {
    display: none !important;
}

