/* Kategooriapuu külgribas — tootelehtedel (#product-sidebar) ning poe ja kategoorialehtedel (#shop-sidebar).
   WooCommerce'i kategooriavidin + Flatsome'i .toggle nupud; vt inc/cue-product-layout.php (arvud, välistused).
   Disain: arenduse kaust/kategooriapuu-vasak-desktop.html. Värvid: sg-tokens.css.
   Tasemed: L0 = .product-categories > li, L1 = > ul > li, L2 = > ul > li > ul > li, L3 = sügavam. */

:is(#product-sidebar, #shop-sidebar) {
  --sgb-tree-chev: #8A8D92;
  --sgb-chev-right: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m9 18 6-6-6-6'/%3E%3C/svg%3E");
  /* Flatsome pöörab avatud haru nuppu 180° (.active > .toggle) → nool alla muutub avatuna üles */
  --sgb-chev-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
}
:is(#product-sidebar, #shop-sidebar) .widget_product_categories .widget-title {
  display: block;
  margin: 0 0 10px;
  padding: 0 14px;
  font: 700 12px/1.2 var(--sg-font);
  letter-spacing: 2px;
  text-transform: uppercase;
  color: var(--sg-text-muted);
}
:is(#product-sidebar, #shop-sidebar) .widget_product_categories .is-divider {
  display: none;
}
:is(#product-sidebar, #shop-sidebar) .product-categories,
:is(#product-sidebar, #shop-sidebar) .product-categories ul {
  margin: 0;
  padding: 0;
  list-style: none;
  font-family: var(--sg-font);
}

/* Kõik read: [nimi][arv][nool] */
:is(#product-sidebar, #shop-sidebar) .product-categories li {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  align-items: center;
  column-gap: 10px;
  margin: 0;
  padding: 0;
  border: 0;
}
:is(#product-sidebar, #shop-sidebar) .product-categories li > a {
  grid-column: 1;
  display: flex;
  align-items: center;
  margin: 0;
  color: var(--sg-text-secondary);
}
:is(#product-sidebar, #shop-sidebar) .product-categories li > a:hover {
  color: var(--sg-accent-text);
}
:is(#product-sidebar, #shop-sidebar) .product-categories li > .count {
  display: block; /* Flatsome peidab alamkategooriate arvu */
  grid-column: 2;
  opacity: 1;
  font-size: 12px;
  line-height: 1.2;
  color: var(--sg-text-muted);
}
:is(#product-sidebar, #shop-sidebar) .product-categories li > ul.children {
  grid-column: 1 / -1;
  width: auto; /* Flatsome annab 100% — koos taandega läheks üle ääre */
  border-left: 1px solid var(--sg-line);
}
/* Flatsome'i nool: alamtasemetel peidus (disainis on nool ainult 1. tasemel) */
:is(#product-sidebar, #shop-sidebar) .product-categories ul li > .toggle {
  display: none;
}
/* Flatsome lisab ::before täpi */
:is(#product-sidebar, #shop-sidebar) .product-categories li::before {
  content: none;
}

/* ---------------- L0: ülemine tase ---------------- */
:is(#product-sidebar, #shop-sidebar) .product-categories > li {
  padding-right: 14px;
  border-bottom: 1px solid var(--sg-line);
}
:is(#product-sidebar, #shop-sidebar) .product-categories > li > a {
  min-height: 48px;
  padding: 0 0 0 14px;
  font-size: 15px;
  color: var(--sg-text);
}
:is(#product-sidebar, #shop-sidebar) .product-categories > li > .count {
  min-width: 28px;
  padding: 3px 8px;
  border-radius: 11px;
  background: var(--sg-surface);
  text-align: center;
  box-sizing: border-box;
}
/* Suletud: hall nool paremale */
:is(#product-sidebar, #shop-sidebar) .product-categories > li:not(.has-child)::after {
  content: "";
  grid-column: 3;
  grid-row: 1;
  width: 16px;
  height: 16px;
  background: var(--sgb-tree-chev);
  -webkit-mask: var(--sgb-chev-right) center / contain no-repeat;
          mask: var(--sgb-chev-right) center / contain no-repeat;
}
/* Flatsome'i nupp: avatult oranž nool üles, suletult hall nool alla */
:is(#product-sidebar, #shop-sidebar) .product-categories > li > .toggle {
  grid-column: 3;
  grid-row: 1;
  position: static;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 16px;
  height: 16px;
  min-height: 0;
  margin: 0;
  padding: 0;
  border: 0;
  background: var(--sgb-tree-chev);
  opacity: 1;
  -webkit-mask: var(--sgb-chev-down) center / contain no-repeat;
          mask: var(--sgb-chev-down) center / contain no-repeat;
}
:is(#product-sidebar, #shop-sidebar) .product-categories > li.active > .toggle {
  background: var(--sg-accent-text);
}
:is(#product-sidebar, #shop-sidebar) .product-categories > li > .toggle i {
  display: none;
}

/* Avatud L0: beež kast */
:is(#product-sidebar, #shop-sidebar) .product-categories > li.active,
:is(#product-sidebar, #shop-sidebar) .product-categories > li.current-cat-parent,
:is(#product-sidebar, #shop-sidebar) .product-categories > li.current-cat.has-child {
  border-bottom: 0;
  border-radius: 16px;
  background: var(--sg-warm);
  padding-bottom: 6px;
}
:is(#product-sidebar, #shop-sidebar) .product-categories > li.active > a,
:is(#product-sidebar, #shop-sidebar) .product-categories > li.current-cat-parent > a,
:is(#product-sidebar, #shop-sidebar) .product-categories > li.current-cat > a {
  font-weight: 700;
  color: var(--sg-accent-text);
}
:is(#product-sidebar, #shop-sidebar) .product-categories > li.active > .count,
:is(#product-sidebar, #shop-sidebar) .product-categories > li.current-cat-parent > .count,
:is(#product-sidebar, #shop-sidebar) .product-categories > li.current-cat > .count {
  background: #fff;
}

/* ---------------- L1 ---------------- */
:is(#product-sidebar, #shop-sidebar) .product-categories > li > ul.children {
  margin: 0 0 0 22px;
}
:is(#product-sidebar, #shop-sidebar) .product-categories > li > ul > li > a {
  min-height: 34px;
  padding: 0 0 0 16px;
  font-size: 14px;
}
:is(#product-sidebar, #shop-sidebar) .product-categories > li > ul > li > .count {
  padding-right: 0;
}
:is(#product-sidebar, #shop-sidebar) .product-categories > li > ul > li.current-cat-parent > a,
:is(#product-sidebar, #shop-sidebar) .product-categories > li > ul > li.active > a {
  min-height: 36px;
  font-weight: 700;
  color: var(--sg-text);
}

/* ---------------- L2 ---------------- */
:is(#product-sidebar, #shop-sidebar) .product-categories > li > ul > li > ul.children {
  margin: 0 0 4px 16px;
}
:is(#product-sidebar, #shop-sidebar) .product-categories > li > ul > li > ul > li > a {
  min-height: 32px;
  padding: 0 0 0 16px;
  font-size: 13px;
}
/* Avatud L2 (ja sügavam): valge kaart, oranž pealkiri */
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul li.current-cat-parent,
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul li.active,
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul li.current-cat.has-child {
  margin: 4px 8px 4px 6px;
  padding-bottom: 4px;
  border-radius: 12px;
  background: #fff;
}
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul li.current-cat-parent > a,
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul li.active > a,
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul li.current-cat.has-child > a {
  min-height: 36px;
  padding-left: 10px;
  font-size: 14px;
  font-weight: 700;
  color: var(--sg-accent-text);
}
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul li.current-cat-parent > .count,
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul li.active > .count,
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul li.current-cat.has-child > .count {
  padding-right: 10px;
}

/* ---------------- L3 ja sügavam ---------------- */
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul ul.children {
  margin: 0 0 4px 12px;
}
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul ul li > a {
  min-height: 32px;
  padding: 4px 0 4px 12px;
  font-size: 13px;
  line-height: 1.3;
}
:is(#product-sidebar, #shop-sidebar) .product-categories ul ul ul li > .count {
  padding-right: 10px;
}

/* Praegune kategooria: paks, tume */
:is(#product-sidebar, #shop-sidebar) .product-categories ul li.current-cat:not(.has-child) > a {
  font-weight: 700;
  color: var(--sg-text);
}
