@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700;800&display=swap');

:root {
  /* Material 3 Palette using DGBay brand color #0787ea */
  --dgbay-sys-color-primary: #0787ea;
  --dgbay-sys-color-on-primary: #ffffff;
  --dgbay-sys-color-primary-container: #d8e2ff;
  --dgbay-sys-color-on-primary-container: #001a41;
  --dgbay-sys-color-secondary: #535f79;
  --dgbay-sys-color-on-secondary: #ffffff;
  --dgbay-sys-color-secondary-container: #d9e2ff;
  --dgbay-sys-color-on-secondary-container: #0f1b32;
  
  /* Surface colors */
  --dgbay-sys-color-surface: #fdfbff;
  --dgbay-sys-color-on-surface: #1a1b1f;
  --dgbay-sys-color-surface-variant: #e1e2ec;
  --dgbay-sys-color-on-surface-variant: #44464f;
  --dgbay-sys-color-surface-container-low: #f3f3f8;
  --dgbay-sys-color-surface-container: #eeeeec;
  --dgbay-sys-color-surface-container-high: #e3e2e6;
  
  --dgbay-sys-color-outline: #74777f;
  --dgbay-sys-color-outline-variant: #c4c6d0;
  --dgbay-sys-color-background: #ffffff;
  --dgbay-sys-color-on-background: #1a1b1f;

  /* Error / Warning (Red-Orange accent for countdowns) */
  --dgbay-sys-color-error:              hsl(0, 72%, 50%);
  --dgbay-sys-color-error-container:    hsl(0, 85%, 95%);
  --dgbay-sys-color-on-error-container: hsl(0, 55%, 22%);
  
  /* Shading properties */
  --dgbay-card-bg: #ffffff;
  --dgbay-card-shadow: 0px 1px 2px rgba(0,0,0,0.1), 0px 2px 4px rgba(0,0,0,0.05);
  --dgbay-card-shadow-hover: 0px 4px 12px rgba(0,0,0,0.1), 0px 8px 20px rgba(0,0,0,0.1);
  --dgbay-border-color: var(--dgbay-sys-color-outline-variant);

  /* Corner Radis */
  --radius-xs: 4px;
  --radius-sm: 8px;
  --radius-md: 12px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;
  
  --transition-fast: 0.15s cubic-bezier(0.2, 0, 0, 1);
  --transition-normal: 0.25s cubic-bezier(0.2, 0, 0, 1);
}

/* Dark theme tokens */
.dgbay-dark-mode, 
body.dgbay-dark-mode {
  --dgbay-sys-color-primary: #7dc3ff;
  --dgbay-sys-color-on-primary: #003062;
  --dgbay-sys-color-primary-container: #004786;
  --dgbay-sys-color-on-primary-container: #d8e2ff;
  --dgbay-sys-color-secondary: #bac8ea;
  --dgbay-sys-color-on-secondary: #253149;
  --dgbay-sys-color-secondary-container: #3b4760;
  --dgbay-sys-color-on-secondary-container: #d9e2ff;
  
  /* Dark surfaces */
  --dgbay-sys-color-surface: #121318;
  --dgbay-sys-color-on-surface: #e3e2e6;
  --dgbay-sys-color-surface-variant: #44464f;
  --dgbay-sys-color-on-surface-variant: #c4c6d0;
  --dgbay-sys-color-surface-container-low: #1e1e24;
  --dgbay-sys-color-surface-container: #23242a;
  --dgbay-sys-color-surface-container-high: #2d2e36;
  
  --dgbay-sys-color-outline: #8e9099;
  --dgbay-sys-color-outline-variant: #44464f;
  --dgbay-sys-color-background: #0d0e12;
  --dgbay-sys-color-on-background: #e3e2e6;

  --dgbay-sys-color-error:              hsl(0, 90%, 80%);
  --dgbay-sys-color-error-container:    hsl(0, 60%, 24%);
  --dgbay-sys-color-on-error-container: hsl(0, 90%, 90%);
  
  /* Dark card shading */
  --dgbay-card-bg: #1e1f25;
  --dgbay-card-shadow: 0px 2px 4px rgba(0,0,0,0.3);
  --dgbay-card-shadow-hover: 0px 8px 16px rgba(0,0,0,0.5);
  --dgbay-border-color: #31333d;
}

/* ==========================================================================
   Global Material Typography and Base Redesign
   ========================================================================== */

body.dgbay-omni-active,
body.dgbay,
body.dgbay #ajax-content-wrap,
body.dgbay .container-wrap,
body.dgbay #boxed-wrap,
body.dgbay-omni-active #ajax-content-wrap,
body.dgbay-omni-active .container-wrap,
body.dgbay-omni-active #boxed-wrap {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
  background-color: var(--dgbay-sys-color-background) !important;
  color: var(--dgbay-sys-color-on-background) !important;
  transition: background-color var(--transition-normal), color var(--transition-normal);
}

h1, h2, h3, h4, h5, h6,
body.dgbay-omni-active h1, body.dgbay-omni-active h2, 
body.dgbay-omni-active h3, body.dgbay-omni-active h4 {
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  color: var(--dgbay-sys-color-on-background) !important;
}

/* Base link states */
body.dgbay a {
  color: var(--dgbay-sys-color-primary);
  transition: color var(--transition-fast);
}

body.dgbay a:hover {
  color: var(--dgbay-sys-color-primary-container);
}

/* ==========================================================================
   Header Redesign (Material 3 Style)
   ========================================================================== */

/* Header backgrounds and borders */
body.dgbay-dark-mode #header-outer,
body.dgbay-dark-mode header#top {
  background-color: var(--dgbay-sys-color-surface) !important;
  border-bottom: 1px solid var(--dgbay-border-color) !important;
}

body.dgbay-dark-mode header#top nav > ul > li > a {
  color: var(--dgbay-sys-color-on-surface) !important;
}

body.dgbay-dark-mode header#top nav > ul > li > a:hover {
  color: var(--dgbay-sys-color-primary) !important;
}

/* Header badge */
body.dgbay div.badge {
  background-color: var(--dgbay-sys-color-primary) !important;
  color: var(--dgbay-sys-color-on-primary) !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 700;
  border-radius: var(--radius-sm) !important;
  padding: 4px 8px !important;
}

/* Global search toggle and fullscreen popup */
body.dgbay-dark-mode #dgbay-hs-fullscreen {
  background: rgba(18, 19, 24, 0.95) !important;
  backdrop-filter: blur(10px);
}

body.dgbay-dark-mode .dgbay-header-search-icon {
  color: var(--dgbay-sys-color-on-surface) !important;
}

/* ==========================================================================
   Material 3 Switch Theme Toggle Component
   ========================================================================== */

.dgbay-m3-switch-container {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.dgbay-m3-switch {
  background: none;
  border: none;
  padding: 0;
  margin: 0;
  cursor: pointer;
  outline: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  display: block;
}

/* Switch Track: Capsule Shape */
.dgbay-m3-switch-track {
  width: 52px;
  height: 32px;
  border-radius: 16px;
  box-sizing: border-box;
  border: 2px solid var(--dgbay-sys-color-outline);
  background-color: var(--dgbay-sys-color-surface-container-high);
  display: block;
  position: relative;
  transition: background-color 0.25s cubic-bezier(0.2, 0, 0, 1),
              border-color 0.25s cubic-bezier(0.2, 0, 0, 1);
}

/* Switch Thumb: Circular slider */
.dgbay-m3-switch-thumb {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  position: absolute;
  top: 2px;
  left: 2px;
  background-color: var(--dgbay-sys-color-outline);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0px 1px 3px rgba(0, 0, 0, 0.2);
  transition: transform 0.25s cubic-bezier(0.2, 0, 0, 1),
              background-color 0.25s cubic-bezier(0.2, 0, 0, 1),
              width 0.15s ease,
              height 0.15s ease;
}

/* Switch Icons inside Thumb */
.dgbay-m3-switch-icon {
  position: absolute;
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: opacity 0.2s cubic-bezier(0.2, 0, 0, 1),
              transform 0.2s cubic-bezier(0.2, 0, 0, 1);
}

.dgbay-m3-switch-icon svg {
  width: 100%;
  height: 100%;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Sun Icon visibility in default state */
.dgbay-m3-switch-icon-sun {
  opacity: 1;
  transform: scale(1);
  color: var(--dgbay-sys-color-surface-container-high);
}

/* Moon Icon visibility in default state */
.dgbay-m3-switch-icon-moon {
  opacity: 0;
  transform: scale(0.5);
  color: var(--dgbay-sys-color-primary);
}

/* Selected State (Checked/Dark Mode active) */
.dgbay-m3-switch--checked .dgbay-m3-switch-track {
  background-color: var(--dgbay-sys-color-primary);
  border-color: var(--dgbay-sys-color-primary);
}

.dgbay-m3-switch--checked .dgbay-m3-switch-thumb {
  transform: translateX(24px);
  background-color: var(--dgbay-sys-color-on-primary);
}

/* Icon visibility transitions in checked state */
.dgbay-m3-switch--checked .dgbay-m3-switch-icon-sun {
  opacity: 0;
  transform: scale(0.5);
}

.dgbay-m3-switch--checked .dgbay-m3-switch-icon-moon {
  opacity: 1;
  transform: scale(1);
}

/* Switch Hover & Interaction States */
.dgbay-m3-switch:hover .dgbay-m3-switch-track {
  border-color: var(--dgbay-sys-color-on-surface);
}

.dgbay-m3-switch--checked:hover .dgbay-m3-switch-track {
  background-color: var(--dgbay-sys-color-primary);
  border-color: var(--dgbay-sys-color-primary);
  opacity: 0.95;
}

.dgbay-m3-switch:hover .dgbay-m3-switch-thumb {
  background-color: var(--dgbay-sys-color-on-surface-variant);
}

.dgbay-m3-switch--checked:hover .dgbay-m3-switch-thumb {
  background-color: var(--dgbay-sys-color-primary-container);
}

/* Scale thumb slightly during active/press */
.dgbay-m3-switch:active .dgbay-m3-switch-thumb {
  width: 28px;
  height: 28px;
}
.dgbay-m3-switch--checked:active .dgbay-m3-switch-thumb {
  width: 28px;
  height: 28px;
  transform: translateX(20px); /* Adjust translation since width changed */
}

/* Placement inside Salient buttons list */
#header-outer ul.buttons li.nectar-theme-toggle-wrapper {
  display: inline-flex;
  align-items: center;
  margin-left: 16px;
  vertical-align: middle;
}

/* Mobile Drawer Placement styling */
.dgbay-mobile-theme-toggle-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 24px;
  border-bottom: 1px solid var(--dgbay-border-color);
  margin-bottom: 16px;
}

.dgbay-mobile-theme-toggle-label {
  font-family: 'Outfit', sans-serif;
  font-size: 15px;
  font-weight: 600;
  color: var(--dgbay-sys-color-on-surface);
}

/* ==========================================================================
   WooCommerce Grid & Product Card Redesign (Material 3)
   ========================================================================== */

/* Product Grid */
ul.products {
  gap: 24px;
}

/* Product Card */
body.dgbay ul.products li.product {
  background-color: var(--dgbay-card-bg) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  border-radius: var(--radius-lg) !important;
  box-shadow: var(--dgbay-card-shadow) !important;
  overflow: hidden !important;
  padding: 0 !important;
  transition: box-shadow var(--transition-normal), transform var(--transition-normal), background-color var(--transition-normal) !important;
}

body.dgbay ul.products li.product:hover {
  box-shadow: var(--dgbay-card-shadow-hover) !important;
  transform: translateY(-4px) !important;
}

body.dgbay ul.products li.product a {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  text-decoration: none !important;
}

body.dgbay ul.products li.product img {
  width: 100% !important;
  aspect-ratio: 1.1 !important;
  object-fit: contain !important;
  padding: 16px !important;
  background-color: var(--dgbay-sys-color-surface-container-low) !important;
  margin-bottom: 0 !important;
  border-bottom: 1px solid var(--dgbay-border-color) !important;
  transition: transform var(--transition-normal) !important;
}

body.dgbay ul.products li.product:hover img {
  transform: scale(1.03) !important;
}

/* Card details body */
body.dgbay ul.products li.product .woocommerce-loop-product__title,
body.dgbay ul.products li.product h2,
body.dgbay ul.products li.product h3 {
  font-family: 'Outfit', sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  padding: 16px 16px 4px 16px !important;
  margin: 0 !important;
  line-height: 1.3 !important;
}

body.dgbay ul.products li.product .price {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--dgbay-sys-color-primary) !important;
  padding: 0 16px 16px 16px !important;
  margin-top: auto !important;
  margin-bottom: 0 !important;
}

body.dgbay-dark-mode ul.products li.product .price del {
  color: var(--dgbay-sys-color-on-surface-variant) !important;
  opacity: 0.6;
}

body.dgbay-dark-mode ul.products li.product .price ins {
  text-decoration: none !important;
  color: var(--dgbay-sys-color-primary) !important;
}

/* WooCommerce sale badge */
body.dgbay ul.products li.product .onsale,
body.dgbay span.onsale {
  background-color: var(--dgbay-sys-color-error) !important;
  color: var(--dgbay-sys-color-on-error) !important;
  border-radius: var(--radius-sm) !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 700 !important;
  top: 12px !important;
  left: 12px !important;
  margin: 0 !important;
  padding: 4px 8px !important;
  line-height: 1 !important;
  font-size: 12px !important;
  min-height: auto !important;
  min-width: auto !important;
}

/* Add to cart / select options buttons on grids */
body.dgbay ul.products li.product .button {
  margin: 0 16px 16px 16px !important;
  border-radius: var(--radius-full) !important;
  background-color: var(--dgbay-sys-color-primary) !important;
  color: var(--dgbay-sys-color-on-primary) !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  text-transform: none !important;
  font-size: 13px !important;
  padding: 8px 16px !important;
  letter-spacing: 0.3px !important;
  border: none !important;
  text-align: center !important;
  transition: background-color var(--transition-fast), transform var(--transition-fast) !important;
}

body.dgbay ul.products li.product .button:hover {
  background-color: var(--dgbay-sys-color-primary-container) !important;
  color: var(--dgbay-sys-color-on-primary-container) !important;
}

/* ==========================================================================
   WooCommerce Single Product Page Redesign
   ========================================================================== */

body.dgbay-dark-mode .product .summary .product_title {
  color: var(--dgbay-sys-color-on-surface) !important;
}

body.dgbay-dark-mode .woocommerce-Tabs-panel,
body.dgbay-dark-mode div.entry-summary,
body.dgbay-dark-mode .comment-respond {
  color: var(--dgbay-sys-color-on-surface-variant) !important;
}

/* Form controls (quantity inputs) */
body.dgbay-dark-mode .quantity input.qty {
  background-color: var(--dgbay-sys-color-surface-container-high) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  border-radius: var(--radius-md) !important;
}

/* Cart tables & single page styles */
body.dgbay-dark-mode table.shop_table {
  border-color: var(--dgbay-border-color) !important;
}

body.dgbay-dark-mode table.shop_table th,
body.dgbay-dark-mode table.shop_table td {
  border-bottom: 1px solid var(--dgbay-border-color) !important;
  color: var(--dgbay-sys-color-on-surface) !important;
}

body.dgbay-dark-mode .cart-collaterals,
body.dgbay-dark-mode .cart_totals {
  background-color: var(--dgbay-sys-color-surface-container-low) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  border-radius: var(--radius-lg) !important;
  padding: 16px !important;
}

/* M3 Outlined Inputs in Forms */
body.dgbay-dark-mode input[type="text"],
body.dgbay-dark-mode input[type="email"],
body.dgbay-dark-mode input[type="search"],
body.dgbay-dark-mode input[type="password"],
body.dgbay-dark-mode textarea,
body.dgbay-dark-mode select {
  background-color: var(--dgbay-sys-color-surface-container) !important;
  border: 1px solid var(--dgbay-sys-color-outline) !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  border-radius: var(--radius-md) !important;
  padding: 12px 16px !important;
  outline: none !important;
  transition: border-color var(--transition-fast), background-color var(--transition-fast) !important;
}

body.dgbay-dark-mode input:focus,
body.dgbay-dark-mode textarea:focus,
body.dgbay-dark-mode select:focus {
  border-color: var(--dgbay-sys-color-primary) !important;
  background-color: var(--dgbay-sys-color-background) !important;
}

/* Buttons global */
body.dgbay input[type="submit"],
body.dgbay button[type="submit"],
body.dgbay .checkout-button,
body.dgbay-dark-mode #respond input#submit {
  border-radius: var(--radius-full) !important;
  background-color: var(--dgbay-sys-color-primary) !important;
  color: var(--dgbay-sys-color-on-primary) !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  text-transform: none !important;
  letter-spacing: 0.3px !important;
  transition: background-color var(--transition-fast), transform var(--transition-fast) !important;
}

body.dgbay input[type="submit"]:hover,
body.dgbay button[type="submit"]:hover,
body.dgbay .checkout-button:hover {
  background-color: var(--dgbay-sys-color-primary-container) !important;
  color: var(--dgbay-sys-color-on-primary-container) !important;
}

/* ==========================================================================
   Dokan Dashboard Dark Mode & Material 3 Styling
   ========================================================================== */

/* dokan sidebar fixes */
body.dgbay-dark-mode .dokan-dashboard-wrap,
body.dgbay-dark-mode .dokan-dashboard-content {
  background-color: var(--dgbay-sys-color-background) !important;
  color: var(--dgbay-sys-color-on-background) !important;
}

body.dgbay-dark-mode .dokan-dashboard-sidebar {
  background-color: var(--dgbay-sys-color-surface-container-low) !important;
  border-right: 1px solid var(--dgbay-border-color) !important;
}

body.dgbay-dark-mode .dokan-dashboard-sidebar ul.dokan-dashboard-menu li a {
  color: var(--dgbay-sys-color-on-surface-variant) !important;
  border-left: 4px solid transparent !important;
}

body.dgbay-dark-mode .dokan-dashboard-sidebar ul.dokan-dashboard-menu li.active a,
body.dgbay-dark-mode .dokan-dashboard-sidebar ul.dokan-dashboard-menu li a:hover {
  background-color: var(--dgbay-sys-color-primary-container) !important;
  color: var(--dgbay-sys-color-on-primary-container) !important;
  border-left-color: var(--dgbay-sys-color-primary) !important;
}

body.dgbay-dark-mode .dokan-dashboard-menu li i {
  color: inherit !important;
}

/* dashboard widgets */
body.dgbay-dark-mode .dokan-dashboard-wrap .dashboard-content-area .dokan-w3 {
  background-color: var(--dgbay-card-bg) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  border-radius: var(--radius-lg) !important;
}

body.dgbay-dark-mode .dokan-dashboard-wrap .dokan-panel {
  background-color: var(--dgbay-card-bg) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  border-radius: var(--radius-lg) !important;
  color: var(--dgbay-sys-color-on-surface) !important;
}

body.dgbay-dark-mode .dokan-panel-heading {
  background-color: var(--dgbay-sys-color-surface-container-low) !important;
  border-bottom: 1px solid var(--dgbay-border-color) !important;
  color: var(--dgbay-sys-color-on-surface) !important;
}

body.dgbay-dark-mode .dokan-dashboard-wrap .dokan-panel-default > .dokan-panel-heading {
  color: var(--dgbay-sys-color-on-surface) !important;
  background-color: var(--dgbay-sys-color-surface-container) !important;
  border-color: var(--dgbay-border-color) !important;
}

/* Dokan buttons & dashboard tables */
body.dgbay-dark-mode .dokan-btn {
  border-radius: var(--radius-full) !important;
}

body.dgbay-dark-mode .dokan-table {
  color: var(--dgbay-sys-color-on-surface) !important;
  background-color: var(--dgbay-card-bg) !important;
}

body.dgbay-dark-mode .dokan-table td,
body.dgbay-dark-mode .dokan-table th {
  border-bottom-color: var(--dgbay-border-color) !important;
}

/* Select2 inputs in dashboard */
body.dgbay-dark-mode .select2-container--default .select2-selection--single,
body.dgbay-dark-mode .select2-container--default .select2-selection--multiple {
  background-color: var(--dgbay-sys-color-surface-container) !important;
  border: 1px solid var(--dgbay-sys-color-outline) !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  border-radius: var(--radius-md) !important;
}

body.dgbay-dark-mode .select2-container--default .select2-selection--single .select2-selection__rendered {
  color: var(--dgbay-sys-color-on-surface) !important;
}

body.dgbay-dark-mode .select2-dropdown {
  background-color: var(--dgbay-sys-color-surface-container-high) !important;
  border-color: var(--dgbay-sys-color-outline) !important;
  color: var(--dgbay-sys-color-on-surface) !important;
}

body.dgbay-dark-mode .select2-container--default .select2-results__option--highlighted[aria-selected] {
  background-color: var(--dgbay-sys-color-primary) !important;
  color: var(--dgbay-sys-color-on-primary) !important;
}

body.dgbay-dark-mode .select2-container--default .select2-results__option[aria-selected=true] {
  background-color: var(--dgbay-sys-color-primary-container) !important;
  color: var(--dgbay-sys-color-on-primary-container) !important;
}

/* Dokan custom CSS overrides for products list */
body.dgbay-dark-mode .dokan-dashboard-wrap .dokan-btn-theme {
  background-color: var(--dgbay-sys-color-primary) !important;
  border-color: var(--dgbay-sys-color-primary) !important;
  color: var(--dgbay-sys-color-on-primary) !important;
}

body.dgbay-dark-mode .dokan-dashboard-wrap .dokan-btn-theme:hover {
  background-color: var(--dgbay-sys-color-primary-container) !important;
  color: var(--dgbay-sys-color-on-primary-container) !important;
}

/* Footer redesign */
body.dgbay-dark-mode #footer-outer,
body.dgbay-dark-mode #footer-widgets {
  background-color: var(--dgbay-sys-color-surface-container-low) !important;
  border-top: 1px solid var(--dgbay-border-color) !important;
}

body.dgbay-dark-mode #copyright {
  background-color: var(--dgbay-sys-color-surface-container) !important;
  border-top: 1px solid var(--dgbay-border-color) !important;
}

/* ==========================================================================
   Dark Mode Contrast Adjustments & Salient Page Builder Overrides
   ========================================================================== */

/* Override Salient's hardcoded .dark column color presets */
body.dgbay-dark-mode .col.dark,
body.dgbay-dark-mode .col.dark p,
body.dgbay-dark-mode .col.dark span,
body.dgbay-dark-mode .col.dark li,
body.dgbay-dark-mode .col.dark a:not(.nectar-button):not(.button),
body.dgbay-dark-mode .wpb_text_column,
body.dgbay-dark-mode .wpb_text_column p,
body.dgbay-dark-mode .wpb_text_column span,
body.dgbay-dark-mode .wpb_text_column li,
body.dgbay-dark-mode .wpb_text_column a:not(.nectar-button):not(.button),
body.dgbay-dark-mode .row_col_wrap_12.dark,
body.dgbay-dark-mode .row_col_wrap_12.dark p,
body.dgbay-dark-mode .row_col_wrap_12.dark span,
body.dgbay-dark-mode .row_col_wrap_12.dark li,
body.dgbay-dark-mode .row_col_wrap_12.dark a:not(.nectar-button):not(.button) {
  color: var(--dgbay-sys-color-on-background) !important;
}

/* Nectar button text links */
body.dgbay-dark-mode .nectar-button-type a .link_text,
body.dgbay-dark-mode a.link_text,
body.dgbay-dark-mode .link_wrap a {
  color: var(--dgbay-sys-color-primary) !important;
}

/* Accordion / FAQ toggle headings */
body.dgbay-dark-mode .toggle.default h3.toggle-title a,
body.dgbay-dark-mode .toggle.default h3.toggle-title a:hover,
body.dgbay-dark-mode a.toggle-heading,
body.dgbay-dark-mode a.toggle-heading:hover,
body.dgbay-dark-mode .toggle-heading i {
  color: var(--dgbay-sys-color-on-background) !important;
}

/* Gravity Forms text labels & form components in dark mode */
body.dgbay-dark-mode .gform_wrapper,
body.dgbay-dark-mode .gform_wrapper label,
body.dgbay-dark-mode .gform_wrapper legend,
body.dgbay-dark-mode .gform_wrapper .gfield_label,
body.dgbay-dark-mode .gform_wrapper .ginput_container,
body.dgbay-dark-mode .gform_wrapper .gfield_required {
  color: var(--dgbay-sys-color-on-background) !important;
}

body.dgbay-dark-mode .gform_wrapper input[type="text"],
body.dgbay-dark-mode .gform_wrapper input[type="email"],
body.dgbay-dark-mode .gform_wrapper input[type="tel"],
body.dgbay-dark-mode .gform_wrapper textarea,
body.dgbay-dark-mode .gform_wrapper select {
  background-color: var(--dgbay-sys-color-surface-container) !important;
  border: 1px solid var(--dgbay-sys-color-outline) !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  border-radius: var(--radius-md) !important;
}

body.dgbay-dark-mode .gform_wrapper input:focus,
body.dgbay-dark-mode .gform_wrapper textarea:focus,
body.dgbay-dark-mode .gform_wrapper select:focus {
  border-color: var(--dgbay-sys-color-primary) !important;
  background-color: var(--dgbay-sys-color-background) !important;
}

/* ==========================================================================
   WooCommerce Single Product Page Overrides (Material 3)
   ========================================================================== */

/* Pulsing Glowing Dots Keyframes */
@keyframes dgbay-glow-green {
  0%, 100% {
    box-shadow: 0 0 2px hsl(142, 60%, 70%), 0 0 6px hsl(142, 60%, 70%);
    opacity: 0.8;
  }
  50% {
    box-shadow: 0 0 6px hsl(142, 60%, 70%), 0 0 14px hsl(142, 60%, 70%);
    opacity: 1;
  }
}
@keyframes dgbay-glow-red {
  0%, 100% {
    box-shadow: 0 0 2px hsl(0, 72%, 70%), 0 0 6px hsl(0, 72%, 70%);
    opacity: 0.8;
  }
  50% {
    box-shadow: 0 0 6px hsl(0, 72%, 70%), 0 0 14px hsl(0, 72%, 70%);
    opacity: 1;
  }
}

/* Layout Grid */
@media (min-width: 1000px) {
  body.single-product div.product div.nectar-prod-wrap {
    display: grid !important;
    grid-template-columns: 1.1fr 1fr !important;
    gap: 40px !important;
    align-items: start !important;
  }
  body.single-product div.product div.nectar-prod-wrap > div.single-product-main-image,
  body.single-product div.product div.nectar-prod-wrap > div.summary {
    float: none !important;
    width: 100% !important;
    margin: 0 !important;
  }
}

/* Breadcrumbs styling */
body.dgbay .woocommerce-breadcrumb,
body.dgbay #ajax-content-wrap .woocommerce-breadcrumb,
#ajax-content-wrap .woocommerce-breadcrumb {
  font-size: 13px !important;
  color: var(--dgbay-sys-color-on-surface-variant) !important;
  margin-bottom: 24px !important;
  opacity: 0.8 !important;
}
body.dgbay .woocommerce-breadcrumb a,
body.dgbay #ajax-content-wrap .woocommerce-breadcrumb a,
#ajax-content-wrap .woocommerce-breadcrumb a {
  color: var(--dgbay-sys-color-on-surface-variant) !important;
  transition: color var(--transition-fast) !important;
}
body.dgbay .woocommerce-breadcrumb a:hover,
body.dgbay #ajax-content-wrap .woocommerce-breadcrumb a:hover,
#ajax-content-wrap .woocommerce-breadcrumb a:hover {
  color: var(--dgbay-sys-color-primary) !important;
  text-decoration: none !important;
}

/* Left Column: Product Image Gallery Card */
body.dgbay.single-product div.product div.woocommerce-product-gallery {
  background-color: var(--dgbay-sys-color-surface-container) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  border-radius: var(--radius-lg) !important;
  box-shadow: var(--dgbay-card-shadow) !important;
  padding: 24px !important;
  transition: box-shadow var(--transition-normal), background-color var(--transition-normal);
  overflow: hidden !important;
}
body.dgbay.single-product div.product div.woocommerce-product-gallery:hover {
  box-shadow: var(--dgbay-card-shadow-hover) !important;
}
body.dgbay.single-product div.product div.woocommerce-product-gallery .woocommerce-product-gallery__image img {
  border-radius: var(--radius-md) !important;
  transition: transform var(--transition-normal) !important;
}
body.dgbay.single-product div.product div.woocommerce-product-gallery:hover .woocommerce-product-gallery__image img {
  transform: scale(1.03) !important;
}

/* Gallery Thumbnails */
body.dgbay.single-product div.product div.woocommerce-product-gallery ol.flex-control-thumbs,
body.dgbay.single-product div.product div.woocommerce-product-gallery .thumbnails {
  display: flex !important;
  gap: 12px !important;
  margin-top: 16px !important;
  list-style: none !important;
  padding: 0 !important;
}
body.dgbay.single-product div.product div.woocommerce-product-gallery ol.flex-control-thumbs li,
body.dgbay.single-product div.product div.woocommerce-product-gallery .thumbnails a {
  width: 80px !important;
  height: 80px !important;
  border-radius: var(--radius-md) !important;
  border: 2px solid var(--dgbay-border-color) !important;
  background: var(--dgbay-sys-color-surface-container-high) !important;
  padding: 4px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  overflow: hidden !important;
  transition: border-color var(--transition-fast), transform var(--transition-fast) !important;
}
body.dgbay.single-product div.product div.woocommerce-product-gallery ol.flex-control-thumbs li:hover,
body.dgbay.single-product div.product div.woocommerce-product-gallery ol.flex-control-thumbs li.active,
body.dgbay.single-product div.product div.woocommerce-product-gallery .thumbnails a:hover {
  border-color: var(--dgbay-sys-color-primary) !important;
  transform: translateY(-2px) !important;
}
body.dgbay.single-product div.product div.woocommerce-product-gallery ol.flex-control-thumbs li img,
body.dgbay.single-product div.product div.woocommerce-product-gallery .thumbnails a img {
  max-height: 100% !important;
  object-fit: contain !important;
  border-radius: 4px !important;
}

/* Right Column: Summary Details Container (Transparent Shell) */
body.dgbay.single-product div.product div.summary.entry-summary {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}
body.dgbay.single-product div.product div.summary.entry-summary:hover {
  box-shadow: none !important;
}
body.dgbay.single-product div.product div.summary.entry-summary > br {
  display: none !important;
}

/* Material 3 Card Designs for WooCommerce Single Product details */
.product-meta-card,
.expiration-card,
.purchase-card,
.vendor-card {
  background-color: var(--dgbay-sys-color-surface-container) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  border-radius: var(--radius-lg) !important;
  box-shadow: var(--dgbay-card-shadow) !important;
  padding: 24px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
  transition: box-shadow var(--transition-normal), background-color var(--transition-normal);
}

.product-meta-card:hover,
.expiration-card:hover,
.purchase-card:hover,
.vendor-card:hover {
  box-shadow: var(--dgbay-card-shadow-hover) !important;
}

.manufacturer-tag {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--dgbay-sys-color-primary) !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  line-height: 1 !important;
}

.product-title {
  font-size: 28px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  letter-spacing: -0.02em !important;
  margin: 0 !important;
}

.category-chip {
  align-self: flex-start !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: var(--dgbay-sys-color-secondary-container) !important;
  color: var(--dgbay-sys-color-on-secondary-container) !important;
  padding: 6px 14px !important;
  border-radius: 100px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

.flight-ratings-container {
  display: flex !important;
  gap: 8px !important;
  margin-top: 8px !important;
}

.flight-rating-box {
  flex: 1 !important;
  background-color: var(--dgbay-sys-color-surface-container-high) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  border-radius: var(--radius-md) !important;
  padding: 10px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 60px !important;
}

.flight-rating-value {
  font-family: 'Barlow Condensed', 'Outfit', sans-serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  line-height: 1.1 !important;
}

.flight-rating-label {
  font-size: 10px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: var(--dgbay-sys-color-on-surface-variant) !important;
  margin-top: 2px !important;
}

.expiration-card {
  background-color: var(--dgbay-sys-color-error-container) !important;
  color: var(--dgbay-sys-color-on-error-container) !important;
  border: 1px solid hsla(0, 72%, 50%, 0.15) !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 16px !important;
  animation: pulseBorder 3s infinite ease-in-out !important;
}

@keyframes pulseBorder {
  0%, 100% { border-color: hsla(0, 72%, 50%, 0.15); }
  50% { border-color: hsla(0, 72%, 50%, 0.35); }
}

.expiration-icon {
  width: 44px !important;
  height: 44px !important;
  border-radius: var(--radius-md) !important;
  background: hsla(0, 72%, 50%, 0.15) !important;
  color: var(--dgbay-sys-color-error) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  flex-shrink: 0 !important;
}

.expiration-info-group {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

.expiration-label {
  font-size: 12px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  opacity: 0.8 !important;
  line-height: 1 !important;
}

.expiration-timer-value {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.price-stock-row {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  width: 100% !important;
}

.product-price {
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  line-height: 1 !important;
}

.stock-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: hsl(142, 60%, 92%) !important;
  color: hsl(142, 55%, 28%) !important;
  padding: 6px 14px !important;
  border-radius: var(--radius-full) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

body.dgbay-dark-mode .stock-badge {
  background: hsl(142, 40%, 20%) !important;
  color: hsl(142, 60%, 70%) !important;
}

.specs-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 12px !important;
  background-color: var(--dgbay-sys-color-surface-container-high) !important;
  border-radius: var(--radius-md) !important;
  padding: 14px !important;
  border: 1px solid var(--dgbay-border-color) !important;
  width: 100% !important;
}

.spec-item {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}

.spec-label {
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: var(--dgbay-sys-color-on-surface-variant) !important;
  opacity: 0.8 !important;
  line-height: 1 !important;
}

.spec-value {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  line-height: 1.2 !important;
}

.vendor-card {
  gap: 14px !important;
}

.vendor-header {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
}

.vendor-avatar {
  width: 46px !important;
  height: 46px !important;
  border-radius: 50% !important;
  background: var(--dgbay-sys-color-primary-container) !important;
  color: var(--dgbay-sys-color-on-primary-container) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  flex-shrink: 0 !important;
}

.vendor-meta {
  flex: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}

.vendor-name {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  line-height: 1.2 !important;
}

.vendor-rating {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  font-size: 12px !important;
  color: #f39c12 !important;
}

.vendor-rating span {
  color: var(--dgbay-sys-color-on-surface-variant) !important;
  font-weight: 500 !important;
}

.vendor-buttons-row {
  display: grid !important;
  grid-template-columns: 1.2fr 1fr !important;
  gap: 10px !important;
  width: 100% !important;
}

.vendor-btn {
  border: 1.5px solid var(--dgbay-sys-color-outline) !important;
  background-color: var(--dgbay-sys-color-surface) !important;
  color: var(--dgbay-sys-color-on-surface-variant) !important;
  border-radius: var(--radius-full) !important;
  height: 38px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  transition: background-color var(--transition-fast), border-color var(--transition-fast) !important;
}

.vendor-btn:hover {
  background-color: var(--dgbay-sys-color-surface-variant) !important;
  border-color: var(--dgbay-sys-color-on-surface-variant) !important;
}

/* Title and Price */
body.dgbay.single-product div.product div.summary h1.product_title.entry-title {
  font-family: 'Outfit', sans-serif !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  margin: 0 !important;
}
body.dgbay.single-product div.product div.summary .price {
  font-family: 'Outfit', sans-serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  color: var(--dgbay-sys-color-primary) !important;
  margin: 0 !important;
}

/* Glowing Stock Badge */
body.dgbay.single-product div.product div.summary .stock.in-stock {
  display: inline-flex !important;
  align-items: center !important;
  background-color: hsl(142, 60%, 92%) !important;
  color: hsl(142, 55%, 28%) !important;
  padding: 6px 14px !important;
  border-radius: var(--radius-full) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  align-self: start !important;
  margin: 0 !important;
  border: none !important;
}
body.dgbay-dark-mode.single-product div.product div.summary .stock.in-stock {
  background-color: hsl(142, 40%, 20%) !important;
  color: hsl(142, 60%, 70%) !important;
}
body.dgbay.single-product div.product div.summary .stock.in-stock::before {
  content: "" !important;
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  margin-right: 8px !important;
  background-color: hsl(142, 55%, 28%) !important;
  animation: dgbay-glow-green 2s infinite ease-in-out !important;
}
body.dgbay-dark-mode.single-product div.product div.summary .stock.in-stock::before {
  background-color: hsl(142, 60%, 70%) !important;
}

body.dgbay.single-product div.product div.summary .stock.out-of-stock {
  display: inline-flex !important;
  align-items: center !important;
  background-color: hsl(0, 85%, 95%) !important;
  color: hsl(0, 72%, 50%) !important;
  padding: 6px 14px !important;
  border-radius: var(--radius-full) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  align-self: start !important;
  margin: 0 !important;
}
body.dgbay-dark-mode.single-product div.product div.summary .stock.out-of-stock {
  background-color: hsl(0, 60%, 24%) !important;
  color: hsl(0, 90%, 80%) !important;
}
body.dgbay.single-product div.product div.summary .stock.out-of-stock::before {
  content: "" !important;
  display: inline-block !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 50% !important;
  margin-right: 8px !important;
  background-color: hsl(0, 72%, 50%) !important;
  animation: dgbay-glow-red 2s infinite ease-in-out !important;
}
body.dgbay-dark-mode.single-product div.product div.summary .stock.out-of-stock::before {
  background-color: hsl(0, 90%, 80%) !important;
}

/* Expiration Live Countdown Timer Widget */
body.dgbay.single-product div.product div.summary #dgbay-countdown {
  display: inline-block !important;
  background: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  font-family: 'Barlow Condensed', 'Outfit', sans-serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  color: var(--dgbay-sys-color-error) !important;
  line-height: 1 !important;
  animation: none !important;
}
body.dgbay.single-product div.product div.summary #dgbay-countdown::before {
  display: none !important;
}

/* Technical Tooltip */
body.dgbay.single-product div.product div.summary .dgbay-tooltip {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  cursor: help !important;
  color: var(--dgbay-sys-color-primary) !important;
  text-decoration: underline !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  align-self: start !important;
  margin-top: 4px !important;
  padding: 4px 8px !important;
  border-radius: var(--radius-xs) !important;
  transition: color var(--transition-fast) !important;
}
body.dgbay.single-product div.product div.summary .dgbay-tooltip:hover {
  color: var(--dgbay-sys-color-primary-container) !important;
}

/* Tooltip inside the Expiration/Timer card has different colors for contrast against the red error container background */
body.dgbay.single-product div.product div.summary .expiration-card .dgbay-tooltip {
  color: var(--dgbay-sys-color-error) !important;
}
body.dgbay.single-product div.product div.summary .expiration-card .dgbay-tooltip:hover {
  color: var(--dgbay-sys-color-on-error-container) !important;
}
body.dgbay.single-product div.product div.summary .dgbay-tooltip .dgbay-tooltiptext {
  visibility: hidden !important;
  width: 260px !important;
  background-color: var(--dgbay-sys-color-surface-container-high) !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  text-align: center !important;
  border-radius: var(--radius-sm) !important;
  padding: 10px !important;
  position: absolute !important;
  z-index: 99 !important;
  bottom: 125% !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  opacity: 0 !important;
  transition: opacity var(--transition-fast), transform var(--transition-fast) !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  box-shadow: var(--dgbay-card-shadow-hover) !important;
  font-family: 'Inter', sans-serif !important;
}
body.dgbay.single-product div.product div.summary .dgbay-tooltip:hover .dgbay-tooltiptext {
  visibility: visible !important;
  opacity: 1 !important;
  transform: translate(-50%, -4px) !important;
}
body.dgbay.single-product div.product div.summary .dgbay-tooltip .dgbay-tooltiptext::after {
  content: "" !important;
  position: absolute !important;
  top: 100% !important;
  left: 50% !important;
  margin-left: -6px !important;
  border-width: 6px !important;
  border-style: solid !important;
  border-color: var(--dgbay-border-color) transparent transparent transparent !important;
}

/* Purchase & Add to Cart form */
body.dgbay.single-product div.product div.summary form.cart {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 12px 0 0 0 !important;
}
body.dgbay.single-product div.product div.summary .quantity {
  margin: 0 !important;
}
body.dgbay.single-product div.product div.summary .quantity input.qty {
  width: 60px !important;
  height: 48px !important;
  text-align: center !important;
  border: 1px solid var(--dgbay-border-color) !important;
  background-color: var(--dgbay-sys-color-surface-container-high) !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  border-radius: var(--radius-md) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  padding: 0 !important;
}
body.dgbay.single-product div.product div.summary button.single_add_to_cart_button.button {
  background-color: var(--dgbay-sys-color-primary) !important;
  color: var(--dgbay-sys-color-on-primary) !important;
  border-radius: var(--radius-full) !important;
  font-family: 'Outfit', sans-serif !important;
  font-weight: 600 !important;
  font-size: 16px !important;
  padding: 14px 28px !important;
  width: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  border: none !important;
  box-shadow: var(--dgbay-card-shadow) !important;
  transition: background-color var(--transition-fast), box-shadow var(--transition-fast), transform 0.1s !important;
  cursor: pointer !important;
}
body.dgbay.single-product div.product div.summary button.single_add_to_cart_button.button:hover {
  background-color: var(--dgbay-sys-color-primary-container) !important;
  color: var(--dgbay-sys-color-on-primary-container) !important;
  box-shadow: var(--dgbay-card-shadow-hover) !important;
}
body.dgbay.single-product div.product div.summary button.single_add_to_cart_button.button:active {
  transform: scale(0.98) !important;
}

/* Flight Ratings Grid (Shortcode override) */
body.dgbay #flightratings {
  display: flex !important;
  gap: 8px !important;
  margin: 16px 0 !important;
  flex-wrap: wrap !important;
  width: 100% !important;
}
body.dgbay #flightratings > div {
  flex: 1 !important;
  background-color: var(--dgbay-sys-color-surface-container-high) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  border-radius: var(--radius-md) !important;
  padding: 12px 10px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 60px !important;
  height: auto !important;
  line-height: normal !important;
  box-shadow: none !important;
  text-transform: none !important;
}
body.dgbay #flightratings span.flight-ratings {
  font-family: 'Barlow Condensed', 'Outfit', sans-serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--dgbay-sys-color-on-surface) !important;
  line-height: 1.1 !important;
  display: block !important;
  margin-bottom: 2px !important;
}
body.dgbay #flightratings span.ratingtext {
  font-size: 10px !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  color: var(--dgbay-sys-color-on-surface-variant) !important;
  display: block !important;
}
body.dgbay #flightratings span.ratingtext span.tooltips {
  border-bottom: none !important;
  cursor: default !important;
}

/* Dokan Seller Info Tab Card */
body.dgbay.single-product .woocommerce-Tabs-panel--seller,
body.dgbay.single-product #tab-seller {
  background-color: var(--dgbay-sys-color-surface-container) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  border-radius: var(--radius-lg) !important;
  padding: 24px !important;
  box-shadow: var(--dgbay-card-shadow) !important;
  margin-top: 16px !important;
}
body.dgbay.single-product .woocommerce-Tabs-panel--seller ul,
body.dgbay.single-product #tab-seller ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}
body.dgbay.single-product .woocommerce-Tabs-panel--seller ul li,
body.dgbay.single-product #tab-seller ul li {
  font-size: 14px !important;
  color: var(--dgbay-sys-color-on-surface) !important;
}
body.dgbay.single-product .woocommerce-Tabs-panel--seller ul li a,
body.dgbay.single-product #tab-seller ul li a {
  color: var(--dgbay-sys-color-primary) !important;
  font-weight: 600 !important;
}

/* WooCommerce Single Product Tabs */
body.dgbay.single-product .woocommerce-tabs {
  margin-top: 40px !important;
  border-top: 1px solid var(--dgbay-border-color) !important;
  padding-top: 32px !important;
}
body.dgbay.single-product .woocommerce-tabs ul.tabs.wc-tabs {
  display: flex !important;
  gap: 8px !important;
  border-bottom: 2px solid var(--dgbay-sys-color-surface-container-high) !important;
  margin-bottom: 24px !important;
  padding-bottom: 0 !important;
  list-style: none !important;
}
body.dgbay.single-product .woocommerce-tabs ul.tabs.wc-tabs li {
  background: none !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.dgbay.single-product .woocommerce-tabs ul.tabs.wc-tabs li a {
  display: inline-block !important;
  padding: 12px 20px !important;
  font-family: 'Outfit', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--dgbay-sys-color-on-surface-variant) !important;
  border-bottom: 3px solid transparent !important;
  transition: color var(--transition-fast), border-color var(--transition-fast) !important;
}
body.dgbay.single-product .woocommerce-tabs ul.tabs.wc-tabs li.active a {
  color: var(--dgbay-sys-color-primary) !important;
  border-bottom-color: var(--dgbay-sys-color-primary) !important;
}
body.dgbay.single-product .woocommerce-tabs ul.tabs.wc-tabs li a:hover {
  color: var(--dgbay-sys-color-primary) !important;
}
body.dgbay.single-product .woocommerce-Tabs-panel {
  background-color: var(--dgbay-sys-color-surface-container) !important;
  border: 1px solid var(--dgbay-border-color) !important;
  border-radius: var(--radius-lg) !important;
  padding: 32px !important;
  box-shadow: var(--dgbay-card-shadow) !important;
  color: var(--dgbay-sys-color-on-surface-variant) !important;
  line-height: 1.6 !important;
}
body.dgbay.single-product .woocommerce-Tabs-panel h2 {
  font-size: 22px !important;
  margin-bottom: 16px !important;
  color: var(--dgbay-sys-color-on-surface) !important;
}

/* ==========================================================================
   Dark Mode Row Background Overrides (WPBakery/Salient compatibility)
   ========================================================================== */
body.dgbay-dark-mode .vc_row[style*="#ffffff" i],
body.dgbay-dark-mode .vc_row[style*="rgb(255, 255, 255)"],
body.dgbay-dark-mode .wpb_row[style*="#ffffff" i],
body.dgbay-dark-mode .wpb_row[style*="rgb(255, 255, 255)"],
body.dgbay-dark-mode .row-bg[style*="#ffffff" i],
body.dgbay-dark-mode .row-bg[style*="rgb(255, 255, 255)"] {
  background-color: var(--dgbay-sys-color-background) !important;
}

body.dgbay-dark-mode .vc_row[style*="#f4f4f4" i],
body.dgbay-dark-mode .vc_row[style*="rgb(244, 244, 244)"],
body.dgbay-dark-mode .wpb_row[style*="#f4f4f4" i],
body.dgbay-dark-mode .wpb_row[style*="rgb(244, 244, 244)"],
body.dgbay-dark-mode .row-bg[style*="#f4f4f4" i],
body.dgbay-dark-mode .row-bg[style*="rgb(244, 244, 244)"] {
  background-color: var(--dgbay-sys-color-surface-container) !important;
}



