/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
 */

/* Blocksy tootekategooria arhiivi pildid Ã¼htlaseks ruuduks */
.archive.woocommerce .products .product .ct-image-container img,
.woocommerce .products .product .ct-image-container img {
    width: 100% !important;
    height: 300px !important;
    object-fit: cover !important;
    aspect-ratio: 1/1 !important;
    display: block;
    background: #fff;
}

/* vÃ¤ike parandatud utiliit */
.category-description { overflow-x: auto !important; }

:root {
  /* Primitive Color Tokens */
  --color-white: rgba(255, 255, 255, 1);
  --color-black: rgba(0, 0, 0, 1);
  --color-cream-50: rgba(252, 252, 249, 1);
  --color-cream-100: rgba(255, 255, 253, 1);
  --color-gray-200: rgba(245, 245, 245, 1);
  --color-gray-300: rgba(167, 169, 169, 1);
  --color-gray-400: rgba(119, 124, 124, 1);
  --color-slate-500: rgba(98, 108, 113, 1);
  --color-brown-600: rgba(94, 82, 64, 1);
  --color-charcoal-700: rgba(31, 33, 33, 1);
  --color-charcoal-800: rgba(38, 40, 40, 1);
  --color-slate-900: rgba(19, 52, 59, 1);
  --color-teal-300: rgba(50, 184, 198, 1);
  --color-teal-400: rgba(45, 166, 178, 1);
  --color-teal-500: rgba(33, 128, 141, 1);
  --color-teal-600: rgba(29, 116, 128, 1);
  --color-teal-700: rgba(26, 104, 115, 1);
  --color-teal-800: rgba(41, 150, 161, 1);
  --color-red-400: rgba(255, 84, 89, 1);
  --color-red-500: rgba(192, 21, 47, 1);
  --color-orange-400: rgba(230, 129, 97, 1);
  --color-orange-500: rgba(168, 75, 47, 1);

  /* RGB versions for opacity control */
  --color-brown-600-rgb: 94, 82, 64;
  --color-teal-500-rgb: 33, 128, 141;
  --color-slate-900-rgb: 19, 52, 59;
  --color-slate-500-rgb: 98, 108, 113;
  --color-red-500-rgb: 192, 21, 47;
  --color-red-400-rgb: 255, 84, 89;
  --color-orange-500-rgb: 168, 75, 47;
  --color-orange-400-rgb: 230, 129, 97;

  /* Background color tokens (Light Mode) */
  --color-bg-1: rgba(59, 130, 246, 0.08);
  --color-bg-2: rgba(245, 158, 11, 0.08);
  --color-bg-3: rgba(34, 197, 94, 0.08);
  --color-bg-4: rgba(239, 68, 68, 0.08);
  --color-bg-5: rgba(147, 51, 234, 0.08);
  --color-bg-6: rgba(249, 115, 22, 0.08);
  --color-bg-7: rgba(236, 72, 153, 0.08);
  --color-bg-8: rgba(6, 182, 212, 0.08);

  /* Semantic Color Tokens (Light Mode) */
  --color-background: var(--color-cream-50);
  --color-surface: var(--color-cream-100);
  --color-text: var(--color-slate-900);
  --color-text-secondary: var(--color-slate-500);
  --color-primary: var(--color-teal-500);
  --color-primary-hover: var(--color-teal-600);
  --color-primary-active: var(--color-teal-700);
  --color-secondary: rgba(var(--color-brown-600-rgb), 0.12);
  --color-secondary-hover: rgba(var(--color-brown-600-rgb), 0.2);
  --color-secondary-active: rgba(var(--color-brown-600-rgb), 0.25);
  --color-border: rgba(var(--color-brown-600-rgb), 0.2);
  --color-btn-primary-text: var(--color-cream-50);
  --color-card-border: rgba(var(--color-brown-600-rgb), 0.12);
  --color-card-border-inner: rgba(var(--color-brown-600-rgb), 0.12);
  --color-error: var(--color-red-500);
  --color-success: var(--color-teal-500);
  --color-warning: var(--color-orange-500);
  --color-info: var(--color-slate-500);
  --color-focus-ring: rgba(var(--color-teal-500-rgb), 0.4);
  --color-select-caret: rgba(var(--color-slate-900-rgb), 0.8);

  /* RGB versions */
  --color-success-rgb: 33, 128, 141;
  --color-error-rgb: 192, 21, 47;
  --color-warning-rgb: 168, 75, 47;
  --color-info-rgb: 98, 108, 113;

  /* Typography */
  --font-family-base: "Geist", "Inter", -apple-system,
    BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-family-mono: "Berkeley Mono", ui-monospace, SFMono-Regular, Menlo,
    Monaco, Consolas, monospace;
  --font-size-xs: 11px;
  --font-size-sm: 12px;
  --font-size-base: 14px;
  --font-size-md: 14px;
  --font-size-lg: 16px;
  --font-size-xl: 18px;
  --font-size-2xl: 20px;
  --font-size-3xl: 24px;
  --font-size-4xl: 30px;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 550;
  --font-weight-bold: 600;
  --line-height-tight: 1.2;
  --line-height-normal: 1.5;
  --letter-spacing-tight: -0.01em;

  /* Spacing */
  --space-0: 0;
  --space-1: 1px;
  --space-2: 2px;
  --space-4: 4px;
  --space-6: 6px;
  --space-8: 8px;
  --space-10: 10px;
  --space-12: 12px;
  --space-16: 16px;
  --space-20: 20px;
  --space-24: 24px;
  --space-32: 32px;

  /* Border Radius */
  --radius-sm: 6px;
  --radius-base: 8px;
  --radius-md: 10px;
  --radius-lg: 12px;
  --radius-full: 9999px;

  /* Shadows */
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.02);
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.02);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.04),
    0 2px 4px -1px rgba(0, 0, 0, 0.02);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.04),
    0 4px 6px -2px rgba(0, 0, 0, 0.02);
  --shadow-inset-sm: inset 0 1px 0 rgba(255, 255, 255, 0.15),
    inset 0 -1px 0 rgba(0, 0, 0, 0.03);

  /* Animation */
  --duration-fast: 150ms;
  --duration-normal: 250ms;
  --ease-standard: cubic-bezier(0.16, 1, 0.3, 1);

  /* Layout */
  --container-sm: 640px;
  --container-md: 768px;
  --container-lg: 1024px;
  --container-xl: 1280px;
}

/* Dark mode colors */
@media (prefers-color-scheme: dark) {
  :root {
    --color-gray-400-rgb: 119, 124, 124;
    --color-teal-300-rgb: 50, 184, 198;
    --color-gray-300-rgb: 167, 169, 169;
    --color-gray-200-rgb: 245, 245, 245;

    --color-bg-1: rgba(29, 78, 216, 0.15);
    --color-bg-2: rgba(180, 83, 9, 0.15);
    --color-bg-3: rgba(21, 128, 61, 0.15);
    --color-bg-4: rgba(185, 28, 28, 0.15);
    --color-bg-5: rgba(107, 33, 168, 0.15);
    --color-bg-6: rgba(194, 65, 12, 0.15);
    --color-bg-7: rgba(190, 24, 93, 0.15);
    --color-bg-8: rgba(8, 145, 178, 0.15);

    --color-background: var(--color-charcoal-700);
    --color-surface: var(--color-charcoal-800);
    --color-text: var(--color-gray-200);
    --color-text-secondary: rgba(var(--color-gray-300-rgb), 0.85);
    /* PARANDUS: Üldise kehateksti token – heledam ja teravam lugemiseks */
    --color-text-body: rgba(210, 215, 218, 0.95);
    --color-primary: var(--color-teal-300);
    --color-primary-hover: var(--color-teal-400);
    --color-primary-active: var(--color-teal-800);
    --color-secondary: rgba(var(--color-gray-400-rgb), 0.15);
    --color-secondary-hover: rgba(var(--color-gray-400-rgb), 0.25);
    --color-secondary-active: rgba(var(--color-gray-400-rgb), 0.3);
    --color-border: rgba(var(--color-gray-400-rgb), 0.3);
    --color-error: var(--color-red-400);
    --color-success: var(--color-teal-300);
    --color-warning: var(--color-orange-400);
    --color-info: var(--color-gray-300);
    --color-focus-ring: rgba(var(--color-teal-300-rgb), 0.4);
    --color-btn-primary-text: var(--color-slate-900);
    --color-card-border: rgba(var(--color-gray-400-rgb), 0.2);
    --color-card-border-inner: rgba(var(--color-gray-400-rgb), 0.15);
    --shadow-inset-sm: inset 0 1px 0 rgba(255, 255, 255, 0.1),
      inset 0 -1px 0 rgba(0, 0, 0, 0.15);
    --button-border-secondary: rgba(var(--color-gray-400-rgb), 0.2);
    --color-border-secondary: rgba(var(--color-gray-400-rgb), 0.2);
    --color-select-caret: rgba(var(--color-gray-200-rgb), 0.8);

    --focus-ring: 0 0 0 3px var(--color-focus-ring);
    --focus-outline: 2px solid var(--color-primary);
    --status-bg-opacity: 0.15;
    --status-border-opacity: 0.25;
    --select-caret-light: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23134252' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    --select-caret-dark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23f5f5f5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");

    --color-success-rgb: var(--color-teal-300-rgb);
    --color-error-rgb: var(--color-red-400-rgb);
    --color-warning-rgb: var(--color-orange-400-rgb);
    --color-info-rgb: var(--color-gray-300-rgb);
  }
}

/* Data attribute for manual theme switching */
[data-color-scheme="dark"] {
  --color-gray-400-rgb: 119, 124, 124;
  --color-teal-300-rgb: 50, 184, 198;
  --color-gray-300-rgb: 167, 169, 169;
  --color-gray-200-rgb: 245, 245, 245;

  --color-bg-1: rgba(29, 78, 216, 0.15);
  --color-bg-2: rgba(180, 83, 9, 0.15);
  --color-bg-3: rgba(21, 128, 61, 0.15);
  --color-bg-4: rgba(185, 28, 28, 0.15);
  --color-bg-5: rgba(107, 33, 168, 0.15);
  --color-bg-6: rgba(194, 65, 12, 0.15);
  --color-bg-7: rgba(190, 24, 93, 0.15);
  --color-bg-8: rgba(8, 145, 178, 0.15);

  --color-background: var(--color-charcoal-700);
  --color-surface: var(--color-charcoal-800);
  --color-text: var(--color-gray-200);
  --color-text-secondary: rgba(var(--color-gray-300-rgb), 0.85);
  /* PARANDUS: Üldise kehateksti token – heledam ja teravam lugemiseks */
  --color-text-body: rgba(210, 215, 218, 0.95);
  --color-primary: var(--color-teal-300);
  --color-primary-hover: var(--color-teal-400);
  --color-primary-active: var(--color-teal-800);
  --color-secondary: rgba(var(--color-gray-400-rgb), 0.15);
  --color-secondary-hover: rgba(var(--color-gray-400-rgb), 0.25);
  --color-secondary-active: rgba(var(--color-gray-400-rgb), 0.3);
  --color-border: rgba(var(--color-gray-400-rgb), 0.3);
  --color-error: var(--color-red-400);
  --color-success: var(--color-teal-300);
  --color-warning: var(--color-orange-400);
  --color-info: var(--color-gray-300);
  --color-focus-ring: rgba(var(--color-teal-300-rgb), 0.4);
  --color-btn-primary-text: var(--color-slate-900);
  --color-card-border: rgba(var(--color-gray-400-rgb), 0.15);
  --color-card-border-inner: rgba(var(--color-gray-400-rgb), 0.15);
  --shadow-inset-sm: inset 0 1px 0 rgba(255, 255, 255, 0.1),
    inset 0 -1px 0 rgba(0, 0, 0, 0.15);
  --color-border-secondary: rgba(var(--color-gray-400-rgb), 0.2);
  --color-select-caret: rgba(var(--color-gray-200-rgb), 0.8);

  --focus-ring: 0 0 0 3px var(--color-focus-ring);
  --focus-outline: 2px solid var(--color-primary);
  --status-bg-opacity: 0.15;
  --status-border-opacity: 0.25;
  --select-caret-light: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23134252' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  --select-caret-dark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23f5f5f5' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");

  --color-success-rgb: var(--color-teal-300-rgb);
  --color-error-rgb: var(--color-red-400-rgb);
  --color-warning-rgb: var(--color-orange-400-rgb);
  --color-info-rgb: var(--color-gray-300-rgb);
}

[data-color-scheme="light"] {
  --color-brown-600-rgb: 94, 82, 64;
  --color-teal-500-rgb: 33, 128, 141;
  --color-slate-900-rgb: 19, 52, 59;

  --color-background: var(--color-cream-50);
  --color-surface: var(--color-cream-100);
  --color-text: var(--color-slate-900);
  --color-text-secondary: var(--color-slate-500);
  --color-primary: var(--color-teal-500);
  --color-primary-hover: var(--color-teal-600);
  --color-primary-active: var(--color-teal-700);
  --color-secondary: rgba(var(--color-brown-600-rgb), 0.12);
  --color-secondary-hover: rgba(var(--color-brown-600-rgb), 0.2);
  --color-secondary-active: rgba(var(--color-brown-600-rgb), 0.25);
  --color-border: rgba(var(--color-brown-600-rgb), 0.2);
  --color-btn-primary-text: var(--color-cream-50);
  --color-card-border: rgba(var(--color-brown-600-rgb), 0.12);
  --color-card-border-inner: rgba(var(--color-brown-600-rgb), 0.12);
  --color-error: var(--color-red-500);
  --color-success: var(--color-teal-500);
  --color-warning: var(--color-orange-500);
  --color-info: var(--color-slate-500);
  --color-focus-ring: rgba(var(--color-teal-500-rgb), 0.4);
}

/* =============================================
   PARANDUS: EEMALDATUD html elemendi color ja
   background-color, mis konflikterisid Blocksy
   teemaga. JÃ¤etud ainult font ja box-sizing.
   ============================================= */
html {
  font-size: var(--font-size-base);
  font-family: var(--font-family-base);
  line-height: var(--line-height-normal);
  -webkit-font-smoothing: antialiased;
  box-sizing: border-box;
  /* EEMALDATUD: color ja background-color - need tekitasid konflikti */
}

body {
  margin: 0;
  padding: 0;
}

*,
*::before,
*::after {
  box-sizing: inherit;
}

/* =============================================
   PARANDUS: EEMALDATUD h1-h6 color: var(--color-text)
   mis dark mode puhul muutis pealkirjad heledaks
   isegi kui taust oli hele. Blocksy haldab neid ise.
   ============================================= */
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
  letter-spacing: var(--letter-spacing-tight);
  /* EEMALDATUD: color: var(--color-text); */
}

h1 { font-size: var(--font-size-4xl); }
h2 { font-size: var(--font-size-3xl); }
h3 { font-size: var(--font-size-2xl); }
h4 { font-size: var(--font-size-xl); }
h5 { font-size: var(--font-size-lg); }
h6 { font-size: var(--font-size-md); }

p { margin: 0 0 var(--space-16) 0; }

/* =============================================
   PARANDUS: EEMALDATUD a elemendi color override.
   Blocksy haldab linkide vÃ¤rve ise.
   ============================================= */
a {
  text-decoration: none;
  transition: color var(--duration-fast) var(--ease-standard);
  /* EEMALDATUD: color: var(--color-primary); */
}

a:hover { color: var(--color-primary-hover); }

code,
pre {
  font-family: var(--font-family-mono);
  font-size: calc(var(--font-size-base) * 0.95);
  background-color: var(--color-secondary);
  border-radius: var(--radius-sm);
}

code { padding: var(--space-1) var(--space-4); }

pre {
  padding: var(--space-16);
  margin: var(--space-16) 0;
  overflow: auto;
  border: 1px solid var(--color-border);
}

pre code { background: none; padding: 0; }

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--space-8) var(--space-16);
  border-radius: var(--radius-base);
  font-size: var(--font-size-base);
  font-weight: 500;
  line-height: 1.5;
  cursor: pointer;
  transition: all var(--duration-normal) var(--ease-standard);
  border: none;
  text-decoration: none;
  position: relative;
}

.btn:focus-visible { outline: none; box-shadow: var(--focus-ring); }
.btn--primary { background: var(--color-primary); color: var(--color-btn-primary-text); }
.btn--primary:hover { background: var(--color-primary-hover); }
.btn--primary:active { background: var(--color-primary-active); }

.btn--secondary { background: var(--color-secondary); color: var(--color-text); }
.btn--secondary:hover { background: var(--color-secondary-hover); }
.btn--secondary:active { background: var(--color-secondary-active); }

.btn--outline { background: transparent; border: 1px solid var(--color-border); color: var(--color-text); }
.btn--outline:hover { background: var(--color-secondary); }

.btn--sm { padding: var(--space-4) var(--space-12); font-size: var(--font-size-sm); border-radius: var(--radius-sm); }
.btn--lg { padding: var(--space-10) var(--space-20); font-size: var(--font-size-lg); border-radius: var(--radius-md); }
.btn--full-width { width: 100%; }
.btn:disabled { opacity: 0.5; cursor: not-allowed; }

/* Form elements */
.form-control {
  display: block;
  width: 100%;
  padding: var(--space-8) var(--space-12);
  font-size: var(--font-size-md);
  line-height: 1.5;
  color: var(--color-text);
  background-color: var(--color-surface);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-base);
  transition: border-color var(--duration-fast) var(--ease-standard),
    box-shadow var(--duration-fast) var(--ease-standard);
}

textarea.form-control {
  font-family: var(--font-family-base);
  font-size: var(--font-size-base);
}

select.form-control {
  padding: var(--space-8) var(--space-12);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: var(--select-caret-light);
  background-repeat: no-repeat;
  background-position: right var(--space-12) center;
  background-size: 16px;
  padding-right: var(--space-32);
}

@media (prefers-color-scheme: dark) {
  select.form-control { background-image: var(--select-caret-dark); }
}

[data-color-scheme="dark"] select.form-control { background-image: var(--select-caret-dark); }
[data-color-scheme="light"] select.form-control { background-image: var(--select-caret-light); }

.form-control:focus { border-color: var(--color-primary); outline: var(--focus-outline); }

.form-label { display: block; margin-bottom: var(--space-8); font-weight: var(--font-weight-medium); font-size: var(--font-size-sm); }
.form-group { margin-bottom: var(--space-16); }

/* Card component */
.card {
  background-color: var(--color-surface);
  border-radius: var(--radius-lg);
  border: 1px solid var(--color-card-border);
  box-shadow: var(--shadow-sm);
  overflow: hidden;
  transition: box-shadow var(--duration-normal) var(--ease-standard);
}
.card:hover { box-shadow: var(--shadow-md); }

.card__body { padding: var(--space-16); }
.card__header,
.card__footer {
  padding: var(--space-16);
  border-bottom: 1px solid var(--color-card-border-inner);
}

/* Status indicators */
.status {
  display: inline-flex;
  align-items: center;
  padding: var(--space-6) var(--space-12);
  border-radius: var(--radius-full);
  font-weight: var(--font-weight-medium);
  font-size: var(--font-size-sm);
}
.status--success {
  background-color: rgba(var(--color-success-rgb, 33, 128, 141), var(--status-bg-opacity));
  color: var(--color-success);
  border: 1px solid rgba(var(--color-success-rgb, 33, 128, 141), var(--status-border-opacity));
}
.status--error {
  background-color: rgba(var(--color-error-rgb, 192, 21, 47), var(--status-bg-opacity));
  color: var(--color-error);
  border: 1px solid rgba(var(--color-error-rgb, 192, 21, 47), var(--status-border-opacity));
}
.status--warning {
  background-color: rgba(var(--color-warning-rgb, 168, 75, 47), var(--status-bg-opacity));
  color: var(--color-warning);
  border: 1px solid rgba(var(--color-warning-rgb, 168, 75, 47), var(--status-border-opacity));
}
.status--info {
  background-color: rgba(var(--color-info-rgb, 98, 108, 113), var(--status-bg-opacity));
  color: var(--color-info);
  border: 1px solid rgba(var(--color-info-rgb, 98, 108, 113), var(--status-border-opacity));
}

/* Container layout */
.container {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding-right: var(--space-16);
  padding-left: var(--space-16);
}
@media (min-width: 640px) { .container { max-width: var(--container-sm); } }
@media (min-width: 768px) { .container { max-width: var(--container-md); } }
@media (min-width: 1024px) { .container { max-width: var(--container-lg); } }
@media (min-width: 1280px) { .container { max-width: var(--container-xl); } }

/* Utility classes */
.flex { display: flex; }
.flex-col { flex-direction: column; }
.items-center { align-items: center; }
.justify-center { justify-content: center; }
.justify-between { justify-content: space-between; }
.gap-4 { gap: var(--space-4); }
.gap-8 { gap: var(--space-8); }
.gap-16 { gap: var(--space-16); }
.m-0 { margin: 0; }
.mt-8 { margin-top: var(--space-8); }
.mb-8 { margin-bottom: var(--space-8); }
.mx-8 { margin-left: var(--space-8); margin-right: var(--space-8); }
.my-8 { margin-top: var(--space-8); margin-bottom: var(--space-8); }
.p-0 { padding: 0; }
.py-8 { padding-top: var(--space-8); padding-bottom: var(--space-8); }
.px-8 { padding-left: var(--space-8); padding-right: var(--space-8); }
.py-16 { padding-top: var(--space-16); padding-bottom: var(--space-16); }
.px-16 { padding-left: var(--space-16); padding-right: var(--space-16); }
.block { display: block; }
.hidden { display: none; }

/* Accessibility */
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}
:focus-visible { outline: var(--focus-outline); outline-offset: 2px; }

/* Dark mode specifics */
[data-color-scheme="dark"] .btn--outline { border: 1px solid var(--color-border-secondary); }



/* =====================================================
   TOOTEMAAILM.EE FUTURISTLIK TEEMA
   ===================================================== */

/* ===== VÃ„RVIMUUTUJAD ===== */
:root {
    --neon-cyan: var(--color-primary);
    --neon-blue: var(--color-primary-hover);
    --neon-purple: var(--color-teal-800);
    --neon-green: var(--color-success);
    --dark-bg: var(--color-background);
    --dark-card: var(--color-surface);
    --text-light: var(--color-text);
    --text-gray: var(--color-text-secondary);
}

/* ===== TAUST JA PÃ•HISTIILID ===== */
body {
    background: linear-gradient(135deg, var(--color-background) 0%, var(--color-surface) 100%);
    color: var(--color-text);
    font-family: var(--font-family-base);
}

/* ===== HEADER ===== */
.site-header,
header,
.header,
.elementor-section.header {
    background: var(--color-surface);
    border-bottom: var(--space-2) solid var(--color-primary);
    box-shadow: var(--shadow-lg);
    backdrop-filter: blur(10px);
}

/* ===== NAVIGATSIOON ===== */
.main-navigation a,
.menu a,
nav a,
.elementor-nav-menu a {
    color: var(--color-text);
    transition: all var(--duration-normal) var(--ease-standard);
    font-weight: var(--font-weight-medium);
}
.main-navigation a:hover,
.menu a:hover,
nav a:hover,
.elementor-nav-menu a:hover {
    color: var(--color-primary);
    text-shadow: 0 0 var(--space-10) var(--color-primary);
}

/* ===== KATEGOORIAD JA TOOTEKAARDID ===== */
.product-category,
.category-item,
.product-item,
.woocommerce ul.products li.product,
article,
.post,
.entry,
.elementor-widget-container {
    background: var(--color-surface);
    border: 1px solid var(--color-card-border);
    border-radius: var(--radius-lg);
    transition: all var(--duration-normal) var(--ease-standard);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}
.product-category:hover,
.category-item:hover,
.product-item:hover,
.woocommerce ul.products li.product:hover,
article:hover {
    transform: translateY(-var(--space-8)) scale(1.02);
    box-shadow: var(--shadow-lg);
    border-color: var(--color-primary);
}

/* ===== PEALKIRJAD ===== */
h1, h2, h3, h4, h5, h6,
.entry-title,
.product-title,
.category-title,
.elementor-heading-title {
    color: var(--color-primary);
    font-weight: var(--font-weight-semibold);
    line-height: var(--line-height-tight);
    letter-spacing: var(--letter-spacing-tight);
    text-shadow: 0 0 var(--space-8) rgba(var(--color-teal-500-rgb), 0.3);
}

/* ===== TEKSTID ===== */
/* PARANDUS: Üldised tekstid heledamaks ja teravamaks loetavuse parandamiseks */
p, span, div:not(.elementor-widget-container), li {
    color: var(--color-text-body, rgba(210, 215, 218, 0.95));
    line-height: var(--line-height-normal);
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
a { color: var(--color-primary); transition: all var(--duration-fast) var(--ease-standard); text-decoration: none; }
a:hover { color: var(--color-primary-hover); text-shadow: 0 0 var(--space-10) var(--color-primary); }

/* ===== NUPUD ===== */
.button,
button,
.btn,
input[type="submit"],
.add-to-cart-button,
.woocommerce-Button,
.elementor-button,
.wp-block-button__link {
    background: var(--color-primary);
    color: var(--color-btn-primary-text);
    border: none;
    border-radius: var(--radius-full);
    padding: var(--space-12) var(--space-32);
    font-weight: var(--font-weight-semibold);
    font-size: var(--font-size-base);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    transition: all var(--duration-normal) var(--ease-standard);
    box-shadow: var(--shadow-md);
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.button:hover,
button:hover,
.btn:hover,
input[type="submit"]:hover,
.add-to-cart-button:hover,
.elementor-button:hover {
    background: var(--color-primary-hover);
    transform: translateY(-var(--space-2));
    box-shadow: var(--shadow-lg);
}
.button:active,
button:active,
.btn:active,
input[type="submit"]:active,
.add-to-cart-button:active,
.elementor-button:active {
    background: var(--color-primary-active);
}

/* ===== PILDID - NEON Ã„Ã„RISED ===== */
img {
    border-radius: var(--radius-md);
    transition: all var(--duration-normal) var(--ease-standard);
}
.product-category:hover img,
.category-item:hover img,
.product-item:hover img,
.woocommerce ul.products li.product:hover img {
    box-shadow: 0 0 var(--space-32) rgba(var(--color-teal-500-rgb), 0.5);
    transform: scale(1.05);
}

/* ===== SIDEBAR JA WIDGETS ===== */
.sidebar,
.widget,
aside,
.elementor-widget-sidebar {
    background: var(--color-surface);
    border: 1px solid var(--color-card-border);
    border-radius: var(--radius-lg);
    padding: var(--space-20);
    box-shadow: var(--shadow-sm);
}

/* ===== FOOTER ===== */
.site-footer,
footer,
.elementor-location-footer {
    background: var(--color-surface);
    border-top: var(--space-2) solid var(--color-primary);
    color: var(--color-text);
    padding: var(--space-32) 0;
}

/* ===== FORMID ===== */
input[type="text"],
input[type="email"],
input[type="search"],
input[type="password"],
input[type="tel"],
input[type="number"],
textarea,
select,
.elementor-field {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    color: var(--color-text);
    border-radius: var(--radius-base);
    padding: var(--space-8) var(--space-12);
    font-family: var(--font-family-base);
    font-size: var(--font-size-base);
    transition: border-color var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);
}
input:focus,
textarea:focus,
select:focus {
    outline: var(--focus-outline);
    border-color: var(--color-primary);
    box-shadow: var(--focus-ring);
}
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: var(--select-caret-light);
    background-repeat: no-repeat;
    background-position: right var(--space-12) center;
    background-size: var(--space-16);
    padding-right: var(--space-32);
}
@media (prefers-color-scheme: dark) {
    select { background-image: var(--select-caret-dark); }
}
[data-color-scheme="dark"] select { background-image: var(--select-caret-dark); }
[data-color-scheme="light"] select { background-image: var(--select-caret-light); }

/* ===== TABELID ===== */
table {
    background: var(--color-surface);
    border-radius: var(--radius-md);
    overflow: hidden;
    border: 1px solid var(--color-border);
    width: 100%;
    border-collapse: collapse;
}
th {
    background: var(--color-primary);
    color: var(--color-btn-primary-text);
    padding: var(--space-12);
    font-weight: var(--font-weight-semibold);
    text-align: left;
}
td {
    border-bottom: 1px solid var(--color-card-border);
    padding: var(--space-12);
    color: var(--color-text);
}
tr:hover { background: var(--color-secondary); }

/* ===== CONTENT AREAS ===== */
.content-area,
.site-content,
main,
.elementor-section { background: transparent; }

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar { width: var(--space-12); }
::-webkit-scrollbar-track { background: var(--color-background); }
::-webkit-scrollbar-thumb { background: var(--color-primary); border-radius: var(--radius-md); }
::-webkit-scrollbar-thumb:hover { background: var(--color-primary-hover); }

/* ===== BREADCRUMBS ===== */
.breadcrumbs,
.woocommerce-breadcrumb,
.rank-math-breadcrumb {
    color: var(--color-text-secondary);
    font-size: var(--font-size-sm);
}
.breadcrumbs a,
.woocommerce-breadcrumb a,
.rank-math-breadcrumb a { color: var(--color-primary); }

/* ===== HINNAD ===== */
.price,
.amount,
.woocommerce-Price-amount,
bdi {
    color: var(--color-success);
    font-weight: var(--font-weight-bold);
    text-shadow: 0 0 var(--space-8) rgba(var(--color-success-rgb), 0.3);
}

/* ===== BADGES JA SILDID ===== */
.badge,
.onsale,
.sale-badge,
.woocommerce span.onsale {
    background: var(--color-error);
    color: var(--color-white);
    border-radius: var(--radius-full);
    padding: var(--space-6) var(--space-16);
    font-weight: var(--font-weight-semibold);
    font-size: var(--font-size-sm);
    display: inline-block;
}

/* ===== PAGINATION ===== */
.pagination a,
.page-numbers,
.woocommerce-pagination .page-numbers {
    background: var(--color-surface);
    border: 1px solid var(--color-border);
    color: var(--color-text);
    border-radius: var(--radius-full);
    width: 40px;
    height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: all var(--duration-normal) var(--ease-standard);
    margin: 0 var(--space-4);
    text-decoration: none;
    font-size: var(--font-size-sm);
}
.pagination a:hover,
.page-numbers:hover,
.pagination .current,
.woocommerce-pagination .page-numbers.current {
    background: var(--color-primary);
    color: var(--color-btn-primary-text);
    transform: scale(1.1);
    border-color: var(--color-primary);
}

/* ===== SEARCH BOX ===== */
.search-form,
.woocommerce-product-search { position: relative; }
.search-form input[type="search"],
.woocommerce-product-search input[type="search"] { padding-right: 50px; }

/* ===== WOOCOMMERCE SPETSIIFILISED ELEMENDID ===== */
.woocommerce .star-rating,
.woocommerce-product-rating .star-rating { color: var(--color-warning); }
.woocommerce div.product .woocommerce-tabs ul.tabs li {
    background: var(--color-surface);
    border: 1px solid var(--color-card-border);
    border-radius: var(--radius-base) var(--radius-base) 0 0;
    padding: var(--space-12) var(--space-16);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
    background: var(--color-primary);
    color: var(--color-btn-primary-text);
    border-color: var(--color-primary);
}

/* ===== STATUS INDICATORS ===== */
.status--success {
    background-color: rgba(var(--color-success-rgb), var(--status-bg-opacity));
    color: var(--color-success);
    border: 1px solid rgba(var(--color-success-rgb), var(--status-border-opacity));
    padding: var(--space-6) var(--space-12);
    border-radius: var(--radius-full);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-medium);
}
.status--error {
    background-color: rgba(var(--color-error-rgb), var(--status-bg-opacity));
    color: var(--color-error);
    border: 1px solid rgba(var(--color-error-rgb), var(--status-border-opacity));
    padding: var(--space-6) var(--space-12);
    border-radius: var(--radius-full);
    font-size: var(--font-size-sm);
    font-weight: var(--font-weight-medium);
}

/* ===== ANIMATSIOONID ===== */
@keyframes neon-pulse {
    0%, 100% { box-shadow: 0 0 var(--space-4) var(--color-primary), 0 0 var(--space-8) var(--color-primary); }
    50% { box-shadow: 0 0 var(--space-16) var(--color-primary), 0 0 var(--space-24) var(--color-primary-hover); }
}
@keyframes glow {
    0%, 100% { filter: drop-shadow(0 0 var(--space-8) rgba(var(--color-teal-500-rgb), 0.3)); }
    50% { filter: drop-shadow(0 0 var(--space-16) rgba(var(--color-teal-500-rgb), 0.6)); }
}

/* ===== STAGGERED ANIMATION DELAYS ===== */
.product-category:nth-child(1),
.woocommerce ul.products li.product:nth-child(1) { animation-delay: 0.1s; }
.product-category:nth-child(2),
.woocommerce ul.products li.product:nth-child(2) { animation-delay: 0.2s; }
.product-category:nth-child(3),
.woocommerce ul.products li.product:nth-child(3) { animation-delay: 0.3s; }
.product-category:nth-child(4),
.woocommerce ul.products li.product:nth-child(4) { animation-delay: 0.4s; }
.product-category:nth-child(5),
.woocommerce ul.products li.product:nth-child(5) { animation-delay: 0.5s; }
.product-category:nth-child(6),
.woocommerce ul.products li.product:nth-child(6) { animation-delay: 0.6s; }

/* ===== MOBILE PORTRAIT (480px) ===== */
@media (max-width: 480px) {
    .product-category,
    .category-item,
    .product-item,
    .woocommerce ul.products li.product {
        margin-bottom: var(--space-16);
        padding: var(--space-12);
    }
    h1 { font-size: var(--font-size-3xl); }
    h2 { font-size: var(--font-size-2xl); }
    h3 { font-size: var(--font-size-xl); }
    .button,
    button,
    .elementor-button {
        padding: var(--space-8) var(--space-16);
        font-size: var(--font-size-sm);
        width: 100%;
        margin-bottom: var(--space-8);
    }
    .sidebar,
    .widget,
    aside { padding: var(--space-16); margin-bottom: var(--space-16); }
    table { font-size: var(--font-size-sm); }
    th, td { padding: var(--space-8); }
}

/* ===== MOBILE (768px) ===== */
@media (max-width: 768px) {
    .product-category,
    .category-item,
    .product-item,
    .woocommerce ul.products li.product { margin-bottom: var(--space-20); }
    h1 { font-size: var(--font-size-3xl); }
    h2 { font-size: var(--font-size-2xl); }
    .button,
    button,
    .elementor-button { padding: var(--space-10) var(--space-20); font-size: var(--font-size-sm); }
}

/* ===== TABLET ===== */
@media (max-width: 1024px) and (min-width: 769px) {
    .product-category,
    .woocommerce ul.products li.product { margin-bottom: var(--space-16); }
}

/* ===== DARK MODE FORCED SCROLLBAR ===== */
* { scrollbar-width: thin; scrollbar-color: var(--color-primary) var(--color-background); }

/* ===== FOCUS STATES ===== */
*:focus-visible { outline: var(--focus-outline); outline-offset: var(--space-2); }
.button:focus-visible,
button:focus-visible,
input[type="submit"]:focus-visible { box-shadow: var(--focus-ring); outline: none; }

/* ===== ACCESSIBILITY ===== */
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

/* ===== CONTAINER LAYOUT ===== */
.container { width: 100%; margin-right: auto; margin-left: auto; padding-right: var(--space-16); padding-left: var(--space-16); }
@media (min-width: 640px) { .container { max-width: var(--container-sm); } }
@media (min-width: 768px) { .container { max-width: var(--container-md); } }
@media (min-width: 1024px) { .container { max-width: var(--container-lg); } }
@media (min-width: 1280px) { .container { max-width: var(--container-xl); } }

/* GLOBAALNE TUME TAUST */
body,
.site,
#page,
.blocksy-global-header,
.blocksy-global-footer,
.blocksy-container,
.blocksy-content,
.custom-background,
.elementor-section,
.woocommerce-page,
.archive,
.single,
.header,
footer {
    background: #0a0a0f !important;
    background-color: #0a0a0f !important;
    color: #f0f2ff !important;
}

/* KAARDIEFEKT â€“ vaikimisi */
.blog-post,
.post,
.entry,
.woocommerce ul.products li.product,
.product-category,
.category-item {
    background: rgba(17,18,22,0.96) !important;
    box-shadow: 0 4px 36px 0 rgba(0,243,255,0.22), 0 6px 36px 8px rgba(0,0,0,0.22) !important;
    border-radius: 28px !important;
    border: 2px solid rgba(0,243,255,0.13) !important;
    position: relative;
    overflow: hidden;
    transition: 
      transform 0.22s cubic-bezier(.17,.67,.83,.67),
      box-shadow 0.22s,
      border-color 0.22s;
    will-change: transform, box-shadow;
    z-index: 2;
}

/* Kumav valgus, pehme glow */
.blog-post::before,
.post::before,
.entry::before,
.woocommerce ul.products li.product::before,
.product-category::before,
.category-item::before {
    content: '';
    position: absolute;
    left: 50%; bottom: 10px;
    width: 92%;
    height: 60px;
    background: radial-gradient(circle at 50% 100%, rgba(0,243,255,0.22) 0%, rgba(0,0,0,0.0) 70%);
    filter: blur(12px);
    transform: translateX(-50%);
    z-index: 1;
    pointer-events: none;
}

/* Hoveri efekt tugevam */
.blog-post:hover,
.post:hover,
.entry:hover,
.woocommerce ul.products li.product:hover,
.product-category:hover,
.category-item:hover {
    transform: translateY(-10px) scale(1.04);
    box-shadow: 0 10px 120px 0 rgba(0,243,255,0.35), 0 28px 80px 18px rgba(0,0,0,0.42) !important;
    border-color: #00f3ff !important;
    z-index: 3;
}
.blog-post:hover::before,
.post:hover::before,
.entry:hover::before,
.woocommerce ul.products li.product:hover::before,
.product-category:hover::before,
.category-item:hover::before {
    background: radial-gradient(circle at 50% 100%, rgba(0,243,255,0.55) 0%, rgba(0,0,0,0.0) 70%);
    filter: blur(24px);
}

/* Sektsioonide raamid */
section,
.site-section,
.elementor-section,
.wp-block-group,
.wp-block-cover,
.blocksy-content,
.blocksy-container,
#page,
.site-content,
main {
    border-radius: 26px;
    border: 2px solid rgba(0,243,255,0.16);
    box-shadow: 0 2px 18px 0 rgba(0,243,255,0.09);
    position: relative;
    background-clip: padding-box;
    transition: box-shadow 0.25s, border-color 0.25s;
}
section:hover,
.site-section:hover,
.elementor-section:hover,
.wp-block-group:hover,
.wp-block-cover:hover,
.blocksy-content:hover,
.blocksy-container:hover,
#page:hover,
.site-content:hover,
main:hover {
    box-shadow: 0 8px 54px 2px rgba(0,243,255,0.18);
    border-color: #00f3ff;
}

/* Mobiilis tumedad sisualad */
@media (max-width: 1024px) {
  .entry-content,
  .post-content,
  .woocommerce-product-details__short-description,
  .woocommerce-product-details__description,
  .single-post .post-content,
  .single .entry-content,
  .woocommerce .product .summary,
  .woocommerce-tabs .panel,
  .elementor-section,
  .wp-block-group,
  .site-content,
  body,
  html {
    background: #111216 !important;
    background-color: #111216 !important;
  }
}

/* WooCommerce tabid mobiilis */
@media (max-width:1024px) {
  .woocommerce-Tabs-panel,
  .woocommerce-Tabs-panel--description,
  .woocommerce-Tabs-panel--additional_information,
  .entry-content.wc-tab,
  .woocommerce-Tabs-panel.entry-content.panel,
  #tab-description,
  .woocommerce-Tabs-panel[role="tabpanel"] {
      background: #111216 !important;
      background-color: #111216 !important;
  }
  /* PARANDUS: Eemaldatud "background: transparent !important" tabelite
     lastelt, sest see pÃµhjustas loetamatut teksti. NÃ¼Ã¼d ainult
     mitte-tabeli elemendid saavad lÃ¤bipaistva tausta. */
  .woocommerce-Tabs-panel > *:not(table):not(.wp-block-table),
  #tab-description > *:not(table):not(.wp-block-table) {
      background: transparent !important;
      background-color: transparent !important;
  }

  /* HERO + lastenode */
  [data-prefix="woo_categories"] .hero-section,
  [data-prefix="woo_categories"] .hero-section * {
      background: #111216 !important;
      background-color: #111216 !important;
  }
}

/* Breadcrumb + wrapperid mobiilis */
@media (max-width: 1024px) {
  .woocommerce-breadcrumb,
  .woocommerce-breadcrumb *,
  .ct-customizer-shortcut,
  .ct-customizer-shortcut *,
  .cat-faq-wrapper,
  .cat-faq-wrapper *,
  .product_faq,
  .product_faq *,
  .faq-wrapper,
  .faq-wrapper *,
  .woocommerce-Tabs-panel,
  .woocommerce-Tabs-panel > *:not(table):not(.wp-block-table),
  #tab-description,
  #tab-description > *:not(table):not(.wp-block-table) {
      background: #111216 !important;
      background-color: #111216 !important;
      box-shadow: none !important;
  }
}

/* Product Title taust mobiilis */
@media (max-width: 1024px) {
  .product_title, 
  .product-title, 
  .ct-product-title, 
  .ct-product-title *, 
  .single-product .hero-section, 
  .single-product .ct-entry-content-block,
  .single-product .ct-entry-content-block *,
  .ct-entry-content-block,
  .ct-entry-content-block *,
  .ct-customizer-shortcut,
  .ct-customizer-shortcut * {
      background: #111216 !important;
      background-color: #111216 !important;
      box-shadow: none !important;
  }
}

/* Hero section ja Rank Math breadcrumb taust */
.hero-section,
.hero-section *,
.rank-math-breadcrumb,
.rank-math-breadcrumb *,
.single-product .hero-section,
.single-product .hero-section *,
[data-prefix="woo_categories"] .hero-section,
[data-prefix="woo_categories"] .hero-section *,
.ct-breadcrumbs,
.ct-breadcrumbs * {
    background: #111216 !important;
    background-color: #111216 !important;
    background-image: none !important;
}

.related,
.related *,
.woocommerce .related,
.woocommerce .related *,
.upsells,
.upsells *,
.cross-sells,
.cross-sells *,
.products.related,
.products.upsells,
.products.cross-sells {
    background: #111216 !important;
    background-color: #111216 !important;
}

/* Taust tumedaks sisualadel mobiilis */
@media (max-width:1024px){
  .entry-content,
  .woocommerce-Tabs-panel,
  .ct-entry-content-block {
    background: #111216 !important;
    background-color: #111216 !important;
  }
}

/* Seotud postituste sektsioon â€“ must taust */
.tm-related-posts.tm-related-dark {
  background: #111216 !important;
  background-color: #111216 !important;
  padding: 24px 16px;
  border-radius: 20px;
}

/* Grid */
.tm-related-posts .tm-post-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
@media (max-width:1024px){
  .tm-related-posts .tm-post-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width:640px){
  .tm-related-posts .tm-post-grid { grid-template-columns: 1fr; }
}

/* Kaardid â€“ must kaart + Ãµrn neonÃ¤Ã¤r */
.tm-post-card {
  background: rgba(17,18,22,0.96) !important;
  border: 2px solid rgba(0,243,255,0.13);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0 4px 36px rgba(0,243,255,0.18), 0 6px 32px rgba(0,0,0,0.28);
  transition: transform .22s cubic-bezier(.17,.67,.83,.67), box-shadow .22s, border-color .22s;
  position: relative;
}
.tm-post-card:hover {
  transform: translateY(-6px) scale(1.02);
  box-shadow: 0 10px 80px rgba(0,243,255,0.3), 0 20px 60px rgba(0,0,0,0.4);
  border-color: #00f3ff;
}

/* Meedia + overlay */
.tm-post-card__media { position: relative; display: block; }
.tm-post-card__image { width: 100%; height: 220px; object-fit: cover; display: block; }
.tm-post-card__overlay {
  position: absolute; inset: 0;
  background: linear-gradient(to top, rgba(0,0,0,0.55) 0%, rgba(0,0,0,0.25) 40%, rgba(0,0,0,0) 100%);
  pointer-events: none; transition: opacity .22s; opacity: .9;
}
.tm-post-card:hover .tm-post-card__overlay { opacity: 1; }

/* Sisu */
.tm-post-card__content { padding: 12px 14px 16px; position: relative; }
.tm-post-card__title a { text-decoration: none; }

/* Mobiili loetavus */
@media (max-width:640px){
  .tm-post-card__image { height: 200px; }
  .tm-post-card__title { font-size: 1.05rem; line-height: 1.25; }
  .tm-post-card__overlay {
    background: linear-gradient(to top, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0.35) 45%, rgba(0,0,0,0.05) 100%);
  }
}
.tm-related-title { margin: 0 0 12px 0; }

.epood-otsing-ala {
  background: #111216 !important;
  padding: 22px;
  margin: 28px 0 0 0;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 2px 12px #00f3ff22;
}
.epood-otsing-ala h3 { 
  color: #00f3ff; 
  font-weight: 600;
  margin-bottom: 12px;
}
.epood-otsing-ala input[type="search"],
.epood-otsing-ala input[type="text"] {
  background: #23232a;
  color: #fff;
  border-radius: 7px;
  border: 1px solid #00f3ff44;
  padding: 9px 16px;
  margin-bottom: 8px;
  width: 90%;
  max-width: 340px;
}
.epood-otsing-ala input[type="submit"], 
.epood-otsing-ala button[type="submit"] {
  background: #00f3ff;
  color: #191926;
  border: none;
  border-radius: 7px;
  padding: 8px 18px;
  margin-left: 7px;
  font-weight: bold;
  transition: background .15s;
}
.epood-otsing-ala input[type="submit"]:hover, 
.epood-otsing-ala button[type="submit"]:hover {
  background: #0ff; 
  color: #181824;
}

.openai-caption {
  display: block;
  font-size: 0.95em;
  color: #666;
  margin-bottom: 1.5em;
  text-align: center;
}

/* ============================
   FORCE DARK PAGE TITLE + SIDEBAR KA HELEDAS REÅ½IIMIS
   ============================ */

/* Page title / hero / breadcrumbs */
[data-color-scheme="light"] .page-title,
[data-color-scheme="light"] .ct-page-title,
[data-color-scheme="light"] .ct-entry-header,
[data-color-scheme="light"] .page-hero,
[data-color-scheme="light"] .hero-section,
[data-color-scheme="light"] .ct-breadcrumbs,
[data-color-scheme="light"] .woocommerce-breadcrumb,
[data-color-scheme="light"] .rank-math-breadcrumb {
  background: #111216 !important;
  background-color: #111216 !important;
  color: #f0f2ff !important;
  border-color: rgba(255,255,255,.12) !important;
}
[data-color-scheme="light"] .page-title *,
[data-color-scheme="light"] .ct-page-title *,
[data-color-scheme="light"] .ct-entry-header *,
[data-color-scheme="light"] .page-hero *,
[data-color-scheme="light"] .hero-section *,
[data-color-scheme="light"] .ct-breadcrumbs *,
[data-color-scheme="light"] .woocommerce-breadcrumb *,
[data-color-scheme="light"] .rank-math-breadcrumb * {
  background: transparent !important;
  color: inherit !important;
}

/* Sidebar / widgetid */
[data-color-scheme="light"] .ct-sidebar,
[data-color-scheme="light"] .ct-sidebar-area,
[data-color-scheme="light"] .site-sidebar,
[data-color-scheme="light"] .sidebar,
[data-color-scheme="light"] .widget-area,
[data-color-scheme="light"] .widget,
[data-color-scheme="light"] aside,
[data-color-scheme="light"] .elementor-widget-sidebar {
  background: #111216 !important;
  color: #f0f2ff !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: none !important;
}
[data-color-scheme="light"] .ct-sidebar *,
[data-color-scheme="light"] .widget *,
[data-color-scheme="light"] aside * {
  background: transparent !important;
  color: inherit !important;
}

/* Woo arhiivi pealkiri */
[data-color-scheme="light"] .woocommerce .ct-entry-header,
[data-color-scheme="light"] .archive .ct-entry-header {
  background: #111216 !important;
  color: #f0f2ff !important;
}

/* =========================
   FIX 1: SIDEBAR TUMEDAKS (LIGHT MODE)
   ========================= */
[data-color-scheme="light"] :is(
  .ct-sidebar,
  .ct-sidebar-area,
  .site-sidebar,
  .widget-area,
  #secondary,
  .elementor-widget-sidebar,
  .elementor-widget-sidebar .elementor-widget-container
) {
  --color-surface: #111216;
  --color-background: #0a0a0f;

  background: #111216 !important;
  background-color: #111216 !important;
  color: #e8eeff !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: none !important;
}

[data-color-scheme="light"] :is(
  .ct-sidebar,
  .ct-sidebar-area,
  .site-sidebar,
  .widget-area,
  #secondary
) :is(.widget, .ct-widget, .widget_block, .woocommerce, .wp-block-group) {
  background: transparent !important;
  color: inherit !important;
  border: none !important;
}

[data-color-scheme="light"] .ct-sidebar :is(.ct-widget--boxed, .ct-widget--boxed > .ct-widget) {
  background: #111216 !important;
  color: #e8eeff !important;
  border: 1px solid rgba(255,255,255,.12) !important;
}

[data-color-scheme="light"] .ct-sidebar .card,
[data-color-scheme="light"] .ct-sidebar .card__body {
  background: transparent !important;
  color: inherit !important;
  border: none !important;
  box-shadow: none !important;
}

/* =========================
   FIX 2: PÃ•HITEKST HELEDAM/ERKSAM SISU ALADEL
   ========================= */
[data-color-scheme="light"] {
  --content-text-strong: rgba(235,240,255,.96);
  --content-text-muted:  rgba(235,240,255,.78);
  --content-link:        #84e9f6;
}

[data-color-scheme="light"] :is(
  .entry-content,
  .post-content,
  .single .entry-content,
  .ct-entry-content-block,
  .woocommerce-Tabs-panel,
  .product .summary,
  .woocommerce-product-details__short-description
) {
  color: var(--content-text-strong) !important;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

[data-color-scheme="light"] :is(
  .entry-content,
  .post-content,
  .single .entry-content,
  .ct-entry-content-block,
  .woocommerce-Tabs-panel,
  .product .summary,
  .woocommerce-product-details__short-description
) :is(p, li, dd, span) {
  color: var(--content-text-strong) !important;
}

/* veidi erksamad lingid sisu sees */
[data-color-scheme="light"] :is(
  .entry-content,
  .ct-entry-content-block,
  .woocommerce-Tabs-panel
) a {
  color: var(--content-link) !important;
}

/* peened tekstid */
[data-color-scheme="light"] :is(
  .entry-content .wp-block-quote cite,
  .entry-content .wp-block-pullquote cite,
  .product_meta,
  .posted-on,
  .byline
) {
  color: var(--content-text-muted) !important;
}

/* =========================
   FIX 3: VALGE PILDITAUST â†’ lÃ¤bipaistev
   ========================= */
[data-color-scheme="light"] .archive.woocommerce .products .product .ct-image-container img,
[data-color-scheme="light"] .woocommerce .products .product .ct-image-container img {
  background: transparent !important;
}

/* 1. ÃœLDINE TUME TAUST */
body, html,
.site, .site-content, .content-area,
header, footer, main, section, article, aside, nav,
.wp-block-group, .elementor-section, .elementor-widget-container,
.woocommerce, .woocommerce-page, .single, .ct-sidebar, .widget, .widget-area {
  background: #111216 !important;
  background-color: #111216 !important;
  color: #f0f2ff !important;
}

/* 2. KAARDID - NEON/EFEKTIGA TAUST */
.blog-post, .post, .entry, .woocommerce ul.products li.product,
.product-category, .category-item {
  background: rgba(17,18,22,0.96) !important;
  box-shadow: 0 4px 36px 0 rgba(0,243,255,0.22), 0 6px 36px 8px rgba(0,0,0,0.22) !important;
  border-radius: 28px !important;
  border: 2px solid rgba(0,243,255,0.13) !important;
  position: relative !important;
  overflow: hidden !important;
  transition: box-shadow 0.22s, border-color 0.22s !important;
}

/* 2b. KAARDI HOVER-EFEKT */
.blog-post:hover, .post:hover, .entry:hover, .woocommerce ul.products li.product:hover,
.product-category:hover, .category-item:hover {
  transform: translateY(-10px) scale(1.04) !important;
  box-shadow: 0 10px 120px 0 rgba(0,243,255,0.35), 0 28px 80px 18px rgba(0,0,0,0.42) !important;
  border-color: #00f3ff !important;
  z-index: 3 !important;
}

/* 3. VORMIDE VÃ„LJAD JÃ„Ã„VAD ALATI VALGEKS */
input[type=text], input[type=email], input[type=search], input[type=password],
input[type=tel], input[type=number], textarea, select, .elementor-field {
  background: #fff !important;
  color: #191926 !important;
  border: 1px solid #00f3ff44 !important;
}

/* =====================================================
   TABELITE LOETAVUSE PARANDUS - UNIVERSAALNE
   Sinu tumeda teema jaoks: hele tekst tumedal taustal
   ===================================================== */

/* KÃµik tabelid: kindlusta alati hele tekst tumedal taustal */
table,
table th,
table td,
table tr,
table thead,
table tbody,
table tfoot,
.wp-block-table table,
.wp-block-table th,
.wp-block-table td,
.wp-block-table tr,
.woocommerce table,
.woocommerce table th,
.woocommerce table td,
.woocommerce table tr,
.woocommerce-page table,
.woocommerce-page table th,
.woocommerce-page table td,
.woocommerce-page table tr,
.entry-content table,
.entry-content table th,
.entry-content table td,
.entry-content table tr,
.category-description table,
.category-description table th,
.category-description table td,
.category-description table tr,
.ct-container table,
.ct-container table th,
.ct-container table td,
.ct-container table tr,
.woocommerce-Tabs-panel table,
.woocommerce-Tabs-panel table th,
.woocommerce-Tabs-panel table td,
.woocommerce-Tabs-panel table tr,
#tab-description table,
#tab-description table th,
#tab-description table td,
#tab-description table tr,
.ct-entry-content-block table,
.ct-entry-content-block table th,
.ct-entry-content-block table td,
.ct-entry-content-block table tr {
    color: #f0f2ff !important;
}

/* Tabelite taust: tume, sobib teemaga */
table,
.wp-block-table table,
.woocommerce table,
.woocommerce-page table,
.entry-content table,
.category-description table,
.ct-container table,
.woocommerce-Tabs-panel table,
#tab-description table,
.ct-entry-content-block table {
    background-color: #1a1a24 !important;
    border-collapse: collapse;
    border: 1px solid rgba(0,243,255,0.2) !important;
    border-radius: 10px !important;
    overflow: hidden;
}

/* Tabeli pÃ¤is - neon teal taust, tume tekst */
table thead th,
table thead td,
.wp-block-table thead th,
.wp-block-table thead td,
.woocommerce table thead th,
.woocommerce-page table thead th,
.entry-content table thead th,
.category-description table thead th,
.woocommerce-Tabs-panel table thead th,
#tab-description table thead th,
.ct-entry-content-block table thead th {
    background-color: #13343b !important;
    color: #00f3ff !important;
    font-weight: 600;
    border-bottom: 2px solid rgba(0,243,255,0.3) !important;
}

/* Vahelduvad read - tumedam vs veidi heledam */
table tbody tr:nth-child(odd),
.wp-block-table tbody tr:nth-child(odd),
.woocommerce table tbody tr:nth-child(odd),
.woocommerce-page table tbody tr:nth-child(odd),
.entry-content table tbody tr:nth-child(odd),
.category-description table tbody tr:nth-child(odd),
.woocommerce-Tabs-panel table tbody tr:nth-child(odd),
#tab-description table tbody tr:nth-child(odd),
.ct-entry-content-block table tbody tr:nth-child(odd) {
    background-color: #1a1a24 !important;
}

table tbody tr:nth-child(even),
.wp-block-table tbody tr:nth-child(even),
.woocommerce table tbody tr:nth-child(even),
.woocommerce-page table tbody tr:nth-child(even),
.entry-content table tbody tr:nth-child(even),
.category-description table tbody tr:nth-child(even),
.woocommerce-Tabs-panel table tbody tr:nth-child(even),
#tab-description table tbody tr:nth-child(even),
.ct-entry-content-block table tbody tr:nth-child(even) {
    background-color: #22222e !important;
}

/* Tabeli lahtrite Ã¤Ã¤rised */
table th,
table td,
.wp-block-table th,
.wp-block-table td,
.woocommerce table th,
.woocommerce table td,
.entry-content table th,
.entry-content table td,
.category-description table th,
.category-description table td,
.woocommerce-Tabs-panel table th,
.woocommerce-Tabs-panel table td,
#tab-description table th,
#tab-description table td,
.ct-entry-content-block table th,
.ct-entry-content-block table td {
    border: 1px solid rgba(0,243,255,0.12) !important;
    padding: 10px 14px !important;
}

/* Tabeli sees olevad lingid */
table a,
.wp-block-table a,
.woocommerce table a,
.entry-content table a,
.category-description table a,
.woocommerce-Tabs-panel table a,
#tab-description table a,
.ct-entry-content-block table a {
    color: #00f3ff !important;
}

table a:hover,
.wp-block-table a:hover,
.woocommerce table a:hover,
.entry-content table a:hover,
.category-description table a:hover,
.woocommerce-Tabs-panel table a:hover,
#tab-description table a:hover,
.ct-entry-content-block table a:hover {
    color: #84e9f6 !important;
}

/* Tabeli hover-rida */
table tbody tr:hover,
.wp-block-table tbody tr:hover,
.woocommerce table tbody tr:hover,
.entry-content table tbody tr:hover,
.category-description table tbody tr:hover,
.woocommerce-Tabs-panel table tbody tr:hover,
#tab-description table tbody tr:hover,
.ct-entry-content-block table tbody tr:hover {
    background-color: rgba(0,243,255,0.08) !important;
}

/* DARK MODE KAITSE - ka tumeda reÅ¾iimi puhul jÃ¤Ã¤vad tabelid loetavaks */
@media (prefers-color-scheme: dark) {
    table, table th, table td, table tr,
    .wp-block-table table, .wp-block-table th, .wp-block-table td, .wp-block-table tr,
    .woocommerce table, .woocommerce table th, .woocommerce table td, .woocommerce table tr,
    .woocommerce-page table, .woocommerce-page table th, .woocommerce-page table td, .woocommerce-page table tr,
    .entry-content table, .entry-content table th, .entry-content table td, .entry-content table tr,
    .category-description table, .category-description table th, .category-description table td, .category-description table tr,
    .ct-container table, .ct-container table th, .ct-container table td, .ct-container table tr,
    .woocommerce-Tabs-panel table, .woocommerce-Tabs-panel table th, .woocommerce-Tabs-panel table td,
    #tab-description table, #tab-description table th, #tab-description table td,
    .ct-entry-content-block table, .ct-entry-content-block table th, .ct-entry-content-block table td {
        color:#f0f2ff !important;
    }

    table tbody tr:nth-child(odd),
    .wp-block-table tbody tr:nth-child(odd),
    .woocommerce table tbody tr:nth-child(odd),
    .entry-content table tbody tr:nth-child(odd),
    .category-description table tbody tr:nth-child(odd),
    .woocommerce-Tabs-panel table tbody tr:nth-child(odd),
    #tab-description table tbody tr:nth-child(odd),
    .ct-entry-content-block table tbody tr:nth-child(odd) {
        background-color: #1a1a24 !important;
    }

    table tbody tr:nth-child(even),
    .wp-block-table tbody tr:nth-child(even),
    .woocommerce table tbody tr:nth-child(even),
    .entry-content table tbody tr:nth-child(even),
    .category-description table tbody tr:nth-child(even),
    .woocommerce-Tabs-panel table tbody tr:nth-child(even),
    #tab-description table tbody tr:nth-child(even),
    .ct-entry-content-block table tbody tr:nth-child(even) {
        background-color: #22222e !important;
    }

    table thead th, table thead td,
    .wp-block-table thead th,
    .woocommerce table thead th,
    .entry-content table thead th,
    .category-description table thead th,
    .woocommerce-Tabs-panel table thead th,
    #tab-description table thead th,
    .ct-entry-content-block table thead th {
        background-color: #13343b !important;
        color: #00f3ff !important;
    }
}

/* Inline stiilide Ã¼lekirjutamine - WordPress/Gutenberg lisab
   mÃµnikord inline style="background-color:#fff; color:#fff" */
table[style] td,
table[style] th,
table[style] tr,
table td[style],
table th[style],
table tr[style],
.wp-block-table td[style],
.wp-block-table th[style],
.wp-block-table tr[style],
.has-background td,
.has-background th,
.has-background tr,
figure.wp-block-table.has-background td,
figure.wp-block-table.has-background th,
figure.wp-block-table.has-background tr {
    color: #f0f2ff !important;
    background-color: inherit !important;
}

/* Gutenberg tabeli has-fixed-layout ja striped variandid */
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background-color: #1a1a24 !important;
}
.wp-block-table.is-style-stripes tbody tr:nth-child(even) {
    background-color: #22222e !important;
}
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) td,
.wp-block-table.is-style-stripes tbody tr:nth-child(even) td {
    color: #f0f2ff !important;
}
/* =====================================================
   GUTENBERG TSITAADID / BLOCKQUOTE - VAHED JA STIIL
   ===================================================== */

/* Tavaline tsitaat (blockquote) */
.entry-content blockquote,
.entry-content .wp-block-quote,
.ct-entry-content-block blockquote,
.ct-entry-content-block .wp-block-quote,
.post-content blockquote,
.post-content .wp-block-quote {
    margin: 2em 0 !important;
    padding: 1.5em 1.8em 1.5em 2em !important;
    background: rgba(0, 243, 255, 0.04) !important;
    border-left: 4px solid #00f3ff !important;
    border-radius: 0 12px 12px 0 !important;
    color: #c8d0ff !important;
    font-style: italic;
    position: relative;
    box-shadow: 0 2px 16px rgba(0, 243, 255, 0.06) !important;
}

/* Tsitaadi tekst */
.entry-content blockquote p,
.entry-content .wp-block-quote p,
.ct-entry-content-block blockquote p,
.ct-entry-content-block .wp-block-quote p,
.post-content blockquote p,
.post-content .wp-block-quote p {
    color: #c8d0ff !important;
    font-size: 1.05em;
    line-height: 1.7;
    margin-bottom: 0.5em !important;
}

/* Tsitaadi viimane lõik - ilma alumise marginaalita */
.entry-content blockquote p:last-child,
.entry-content .wp-block-quote p:last-child,
.ct-entry-content-block blockquote p:last-child,
.post-content blockquote p:last-child {
    margin-bottom: 0 !important;
}

/* Tsitaadi autor (cite) */
.entry-content blockquote cite,
.entry-content .wp-block-quote cite,
.entry-content .wp-block-quote__citation,
.ct-entry-content-block blockquote cite,
.post-content blockquote cite {
    display: block;
    margin-top: 0.8em;
    font-size: 0.9em;
    color: #00f3ff !important;
    font-style: normal;
    font-weight: 500;
    opacity: 0.85;
}

/* Suur tsitaat (pullquote) */
.entry-content .wp-block-pullquote,
.ct-entry-content-block .wp-block-pullquote,
.post-content .wp-block-pullquote {
    margin: 2.5em 0 !important;
    padding: 2em 2.5em !important;
    background: rgba(0, 243, 255, 0.06) !important;
    border-top: 3px solid #00f3ff !important;
    border-bottom: 3px solid #00f3ff !important;
    border-left: none !important;
    border-right: none !important;
    border-radius: 0 !important;
    text-align: center;
    box-shadow: 0 4px 24px rgba(0, 243, 255, 0.08) !important;
}

.entry-content .wp-block-pullquote p,
.ct-entry-content-block .wp-block-pullquote p,
.post-content .wp-block-pullquote p {
    color: #f0f2ff !important;
    font-size: 1.2em;
    line-height: 1.6;
    font-weight: 500;
}

.entry-content .wp-block-pullquote cite,
.entry-content .wp-block-pullquote__citation,
.ct-entry-content-block .wp-block-pullquote cite,
.post-content .wp-block-pullquote cite {
    color: #00f3ff !important;
    font-size: 0.85em;
    margin-top: 1em;
    display: block;
}

/* Vahed enne ja pärast tsitaate - et tekst ei oleks liiga koos */
.entry-content > blockquote + *,
.entry-content > .wp-block-quote + *,
.ct-entry-content-block > blockquote + *,
.ct-entry-content-block > .wp-block-quote + *,
.post-content > blockquote + *,
.post-content > .wp-block-quote + * {
    margin-top: 1.8em !important;
}

.entry-content > * + blockquote,
.entry-content > * + .wp-block-quote,
.ct-entry-content-block > * + blockquote,
.ct-entry-content-block > * + .wp-block-quote,
.post-content > * + blockquote,
.post-content > * + .wp-block-quote {
    margin-top: 1.8em !important;
}

/* Pullquote vahed veelgi suuremad */
.entry-content > .wp-block-pullquote + *,
.ct-entry-content-block > .wp-block-pullquote + *,
.post-content > .wp-block-pullquote + * {
    margin-top: 2.2em !important;
}

.entry-content > * + .wp-block-pullquote,
.ct-entry-content-block > * + .wp-block-pullquote,
.post-content > * + .wp-block-pullquote {
    margin-top: 2.2em !important;
}

/* Mobiilis veidi väiksemad vahed ja padding */
@media (max-width: 768px) {
    .entry-content blockquote,
    .entry-content .wp-block-quote,
    .ct-entry-content-block blockquote,
    .post-content blockquote {
        margin: 1.5em 0 !important;
        padding: 1.2em 1em 1.2em 1.4em !important;
    }

    .entry-content .wp-block-pullquote,
    .ct-entry-content-block .wp-block-pullquote,
    .post-content .wp-block-pullquote {
        margin: 2em 0 !important;
        padding: 1.5em 1.2em !important;
    }
}

/* Codex fix 2026-07-18: mobile search submit buttons */
@media (max-width: 480px) {
  .ct-search-form[data-submit-button^="minimal"] button[type="submit"],
  .ct-search-form[data-submit-button^="minimal"] .wp-element-button,
  .ct-search-form[data-form-controls="inside"] button[type="submit"],
  .epood-otsing-ala .ct-search-form button[type="submit"],
  .search-form button[type="submit"],
  .woocommerce-product-search button[type="submit"] {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    aspect-ratio: auto !important;
    padding: 0 !important;
    margin: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 44px !important;
    border-radius: 7px !important;
  }

  .search-form input[type="submit"],
  .woocommerce-product-search input[type="submit"],
  .epood-otsing-ala input[type="submit"] {
    width: auto !important;
    min-width: 44px !important;
    max-width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    aspect-ratio: auto !important;
    padding: 8px 18px !important;
    margin: 8px auto 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  .epood-otsing-ala .ct-search-form,
  .epood-otsing-ala .ct-search-form-inner {
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* Codex fix 2026-07-18: lower mobile search live results */
@media (max-width: 768px) {
  .epood-otsing-ala {
    overflow: visible !important;
    position: relative !important;
    z-index: 20 !important;
  }

  .epood-otsing-ala .ct-search-form,
  .epood-otsing-ala .ct-search-form-inner {
    overflow: visible !important;
  }

  .epood-otsing-ala .ct-search-results {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 360px !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 12px auto 0 !important;
    text-align: left !important;
    z-index: 9999 !important;
    box-sizing: border-box !important;
  }
}

/* Mobile collection-card titles: readable long names */
@media (max-width: 689.98px) {
  [data-products] .woocommerce-loop-product__title,
  [data-products] .woocommerce-loop-category__title {
    font-size: clamp(13px, 3.6vw, 15px) !important;
    line-height: 1.3 !important;
    max-width: 100%;
    white-space: normal !important;
    overflow-wrap: anywhere;
  }
}

/* Codex fix 2026-07-20: lower desktop search live results */
@media (min-width: 769px) {
  .epood-otsing-ala {
    overflow: visible !important;
    position: relative !important;
    z-index: 20 !important;
  }

  .epood-otsing-ala .ct-search-form,
  .epood-otsing-ala .ct-search-form-inner {
    overflow: visible !important;
  }

  .epood-otsing-ala .ct-search-results {
    position: static !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: none !important;
    overflow: visible !important;
    margin: 12px auto 0 !important;
    text-align: left !important;
    z-index: 9999 !important;
    box-sizing: border-box !important;
  }
}


/* =====================================================
   PROGRESSIIVNE KINOMAATILINE FROSTED GLASS TAUST
   Video püsib fikseeritult üle terve esilehe.
   Sektsioonid muutuvad allapoole kerides järk-järgult
   hägustatud klaasiga (frosted glass) tumedamaks,
   kuid ei muutu lõpuni läbipaistmatuks.
   ===================================================== */
html {
    scroll-behavior: smooth;
}

/* Esilehe konteinerite läbipaistvus ja overflow lubamine */
.home #main,
.home .site-main,
.home .entry-content,
.home .elementor-168350 {
    position: relative !important;
    overflow: visible !important;
    background: transparent !important;
    background-color: transparent !important;
}

/* Kangelassektsioon - avar ja läbipaistev */
.home .elementor-element-995e3c1 {
    position: relative !important;
    overflow: visible !important;
    min-height: 80vh !important;
    display: flex !important;
    align-items: center !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    contain: none !important;
    transform: none !important;
    filter: none !important;
}

@media (max-width: 767px) {
    .home .elementor-element-995e3c1 {
        min-height: 65vh !important;
    }
}

/* TAUSTAVIDEO: Fikseeritud üle terve vaateakna nii arvutis, tahvlis kui mobiilis */
.home .elementor-element-995e3c1 .elementor-background-video-container,
.home .elementor-element-995e3c1 .elementor-background-video-container.elementor-hidden-mobile {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    z-index: 0 !important;
    pointer-events: none !important;
    display: block !important;
    overflow: hidden !important;
    transform: none !important;
    clip-path: none !important;
}

.home .elementor-element-995e3c1 .elementor-background-video-hosted {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    min-width: 100vw !important;
    min-height: 100vh !important;
    width: 100vw !important;
    height: 100vh !important;
    object-fit: cover !important;
    display: block !important;
}

/* Hero tekstikonteiner ja tekstide teravus */
.home .elementor-element-995e3c1 .elementor-container {
    position: relative !important;
    z-index: 2 !important;
}

.home .elementor-element-995e3c1,
.home .elementor-element-995e3c1 .elementor-column,
.home .elementor-element-995e3c1 .elementor-widget-wrap,
.home .elementor-element-995e3c1 .elementor-widget,
.home .elementor-element-995e3c1 .elementor-widget-container {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
}

.elementor-element-995e3c1 .elementor-heading-title,
.elementor-element-995e3c1 .elementor-widget-text-editor {
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.85) !important;
}

/* -----------------------------------------------------
   ETAPP 1: Kangelassektsiooni pehme 15% toonimiskiht
   ----------------------------------------------------- */
.home .elementor-element-995e3c1::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(10, 11, 16, 0.15);
    pointer-events: none;
    z-index: 1;
}

/* -----------------------------------------------------
   ETAPP 2: Populaarsete kategooriate päis (Kerge klaas: 35% tumendus, blur 8px)
   ----------------------------------------------------- */
.home .elementor-element-4bd1f4f {
    position: relative !important;
    z-index: 2 !important;
    background: rgba(10, 12, 18, 0.35) !important;
    backdrop-filter: blur(8px) !important;
    -webkit-backdrop-filter: blur(8px) !important;
    padding-top: 50px !important;
    padding-bottom: 20px !important;
    border: none !important;
    box-shadow: none !important;
}

/* -----------------------------------------------------
   ETAPP 3: Kategooriakaardid (Keskmine klaas: 52% tumendus, blur 12px)
   ----------------------------------------------------- */
.home .elementor-element-0171639 {
    position: relative !important;
    z-index: 2 !important;
    background: rgba(10, 12, 18, 0.52) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    padding-top: 10px !important;
    padding-bottom: 50px !important;
    border: none !important;
    box-shadow: none !important;
}

/* Kategooriakaardid - elegantsed poolläbipaistvad klaaskaardid */
.home .elementor-element-0171639 .product-category,
.home .elementor-element-0171639 .category-item {
    background: rgba(18, 22, 30, 0.60) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 14px !important;
    transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s ease, box-shadow 0.3s ease !important;
}

.home .elementor-element-0171639 .product-category:hover,
.home .elementor-element-0171639 .category-item:hover {
    transform: translateY(-6px) !important;
    border-color: rgba(255, 255, 255, 0.28) !important;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.55) !important;
}

/* -----------------------------------------------------
   ETAPP 4: Kampaaniabänner (Tihedam klaas: 65% tumendus, blur 16px)
   ----------------------------------------------------- */
.home .elementor-element-5d5a1c2 {
    position: relative !important;
    z-index: 2 !important;
    background: rgba(10, 12, 18, 0.65) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    padding-top: 40px !important;
    padding-bottom: 40px !important;
    border: none !important;
    box-shadow: none !important;
}

.home .elementor-element-5d5a1c2 .elementor-container {
    background: rgba(18, 22, 30, 0.55) !important;
    backdrop-filter: blur(16px) !important;
    -webkit-backdrop-filter: blur(16px) !important;
    border: 1px solid rgba(255, 255, 255, 0.1) !important;
    border-radius: 16px !important;
    padding: 30px !important;
}

/* -----------------------------------------------------
   ETAPP 5: Toodete plokk (Sügav klaas: 78% tumendus, blur 20px)
   Mitte täiesti läbipaistmatu: video valgusemäng kumab pehmelt toodete taga läbi!
   ----------------------------------------------------- */
.home .elementor-element-227a6c8 {
    position: relative !important;
    z-index: 2 !important;
    background: rgba(10, 12, 18, 0.78) !important;
    backdrop-filter: blur(20px) !important;
    -webkit-backdrop-filter: blur(20px) !important;
    padding-top: 40px !important;
    padding-bottom: 60px !important;
    border: none !important;
    box-shadow: none !important;
}

/* Tootekaardid - kristallselged, kuid stiilse klaaskumaga */
.home .elementor-element-227a6c8 ul.products li.product {
    background: rgba(18, 22, 30, 0.72) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    border: 1px solid rgba(255, 255, 255, 0.08) !important;
    border-radius: 12px !important;
    transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s ease, box-shadow 0.3s ease !important;
}

.home .elementor-element-227a6c8 ul.products li.product:hover {
    transform: translateY(-5px) !important;
    border-color: rgba(255, 255, 255, 0.24) !important;
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.55) !important;
}

/* Jalus (Footer) - kindel tume aluspind */
.ct-footer {
    position: relative !important;
    z-index: 3 !important;
    background: #0a0a0f !important;
}

/* ==========================================================================
   TOOTEMALLI JÕUDLUS JA CLS STABIILSUS (Single Product Core Web Vitals)
   ========================================================================== */

/* 1. Tootekirjelduse ja lühikirjelduse piltide stabiilsus */
.woocommerce-Tabs-panel--description img,
.woocommerce-product-details__short-description img,
.product-entry img {
    max-width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    display: block;
}

.woocommerce-Tabs-panel--description figure {
    margin-left: 0 !important;
    margin-right: 0 !important;
    max-width: 100% !important;
}

/* 2. Toote galerii (.flexy-view) ja pisipiltide (.flexy-pills) ruumireserveering */
.woocommerce-product-gallery .flexy-view {
    aspect-ratio: 1 / 1;
    width: 100%;
    min-height: 350px;
}

.woocommerce-product-gallery .flexy-items > .flexy-item figure {
    aspect-ratio: 1 / 1;
    width: 100%;
}

.woocommerce-product-gallery .flexy-pills {
    min-height: 80px;
    max-height: 95px !important;
    contain: layout size;
    overflow: hidden !important;
}

.woocommerce-product-gallery .flexy-pills ol {
    display: flex !important;
    flex-wrap: nowrap !important;
    --pills-wrap: nowrap !important;
    overflow: hidden !important;
}

.woocommerce-product-gallery .flexy-pills ol li {
    flex-shrink: 0 !important;
    width: var(--thumbs-width, 20%) !important;
}

@media (max-width: 768px) {
    .woocommerce-product-gallery .flexy-view {
        min-height: 320px;
    }
    .woocommerce-product-gallery .flexy-pills {
        min-height: 70px;
        max-height: 85px !important;
        contain: layout size;
        overflow: hidden !important;
    }
    .woocommerce-product-gallery .flexy-pills ol {
        display: flex !important;
        flex-wrap: nowrap !important;
        --pills-wrap: nowrap !important;
        overflow: hidden !important;
    }
    .woocommerce-product-gallery .flexy-pills ol li {
        flex-shrink: 0 !important;
    }
}


