/* ===== VARIABILI BASE ===== */
.etm-wrapper {
  /* rientri per livelli: 0..4 (fino al 5° livello totale) */
  --indent-0: 0rem;
  --indent-1: 2rem;
  --indent-2: 3rem;
  --indent-3: 4rem;
  --indent-4: 5rem;

  --toggle-slot: 1.25em;     /* box del toggle: scala con tipografia */
  --chev-size: 0.9em;        /* dimensione freccia (proporzionata al testo) */
  --line-color: rgba(0,0,0,0.12); /* modificabile da Elementor */
  --line-arm: 12px;          /* lunghezza braccetto orizzontale */
  --line-offset: 1.25rem;    /* distanza dalla colonna testo alla colonna linee/toggle */
}

.etm-menu,
.etm-submenu { list-style: none; margin: 0; padding: 0; }
.etm-submenu[hidden] { display: none !important; }

.etm-item { margin: 4px 0; }

/* ===== RIGA INTERATTIVA (sfondo su tutta la riga: link + toggle) ===== */
.etm-row {
  position: relative;
  display: flex;
  align-items: center;
  gap: 1.5rem;
  color: inherit;
  background: transparent;   /* gestito da Elementor: hover/corrente/parent */
  border-radius: 6px;
}

/* link ereditano colore, nessuno sfondo proprio */
.etm-link {
  flex: 1 1 auto;
  display: block;
  text-decoration: none;
  color: inherit;
  background: transparent;
}

.etm-row .etm-link {
  padding: 10px;
}

.etm-row > .etm-link {
  margin-left: 2.5em !important;
}

/* indentazione per livelli */
.etm-depth-1, .etm-depth-2, .etm-depth-3, .etm-depth-4  {
    margin-left: .55em;
}
.etm-depth-0 > .etm-row { padding-left: var(--indent-0); }
.etm-submenu.etm-depth-1 > .etm-item > .etm-row { padding-left: var(--indent-1); }
.etm-submenu.etm-depth-2 > .etm-item > .etm-row { padding-left: var(--indent-2); }
.etm-submenu.etm-depth-3 > .etm-item > .etm-row { padding-left: var(--indent-3); }
.etm-submenu.etm-depth-4 > .etm-item > .etm-row { padding-left: var(--indent-4); }

/* ===== TOGGLE (freccia) allineato al testo ===== */
.etm-toggle {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: var(--toggle-slot);
  height: var(--toggle-slot);
  margin-left: 0px;
  background: transparent!important;
  border: none;
  padding: 0;
  color: currentColor;      /* eredita dalla riga */
  font-size: 1em;           /* scala con tipografia del livello */
  cursor: pointer;
  user-select: none;
}

button.etm-toggle {
    background: transparent !important;
}
.etm-toggle--placeholder { visibility: hidden; }

.etm-toggle::before {
  content: '';
  display: block;
  width: var(--chev-size);
  height: var(--chev-size);
  background: no-repeat center / contain;
  background-image: url("data:image/svg+xml;utf8,\
  <svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'>\
  <path d='M6 3l5 5-5 5' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/></svg>");
  transform: rotate(0deg);
  transition: transform .18s ease;
}
.etm-toggle[aria-expanded="true"]::before { transform: rotate(90deg); }

/* ===== LINEE ALBERO per livelli 1..4 ===== */
.etm-submenu.etm-depth-1 > .etm-item,
.etm-submenu.etm-depth-2 > .etm-item,
.etm-submenu.etm-depth-3 > .etm-item,
.etm-submenu.etm-depth-4 > .etm-item { position: relative; }

/* verticali (1..4) */
.etm-submenu.etm-depth-1 > .etm-item::before {
  content: ""; position: absolute; left: calc(var(--indent-1) - var(--line-offset));
  top: -10px; bottom: -10px; width: 1px; background: var(--line-color);
}
.etm-submenu.etm-depth-2 > .etm-item::before {
  content: ""; position: absolute; left: calc(var(--indent-2) - var(--line-offset));
  top: -10px; bottom: -10px; width: 1px; background: var(--line-color);
}
.etm-submenu.etm-depth-3 > .etm-item::before {
  content: ""; position: absolute; left: calc(var(--indent-3) - var(--line-offset));
  top: -10px; bottom: -10px; width: 1px; background: var(--line-color);
}
.etm-submenu.etm-depth-4 > .etm-item::before {
  content: ""; position: absolute; left: calc(var(--indent-4) - var(--line-offset));
  top: -10px; bottom: -10px; width: 1px; background: var(--line-color);
}

/* tronca la verticale sull’ultimo elemento del gruppo */
.etm-submenu.etm-depth-1 > .etm-item:last-child::before,
.etm-submenu.etm-depth-2 > .etm-item:last-child::before,
.etm-submenu.etm-depth-3 > .etm-item:last-child::before,
.etm-submenu.etm-depth-4 > .etm-item:last-child::before { bottom: 50%; }

/* braccetto orizzontale che entra nella riga (1..4) */
.etm-submenu.etm-depth-1 > .etm-item > .etm-row::before {
  content: ""; position: absolute; left: calc(var(--indent-1) - var(--line-offset));
  width: var(--line-arm); height: 1px; background: var(--line-color);
  top: 50%; transform: translateY(-50%);
}
.etm-submenu.etm-depth-2 > .etm-item > .etm-row::before {
  content: ""; position: absolute; left: calc(var(--indent-2) - var(--line-offset));
  width: var(--line-arm); height: 1px; background: var(--line-color);
  top: 50%; transform: translateY(-50%);
}
.etm-submenu.etm-depth-3 > .etm-item > .etm-row::before {
  content: ""; position: absolute; left: calc(var(--indent-3) - var(--line-offset));
  width: var(--line-arm); height: 1px; background: var(--line-color);
  top: 50%; transform: translateY(-50%);
}
.etm-submenu.etm-depth-4 > .etm-item > .etm-row::before {
  content: ""; position: absolute; left: calc(var(--indent-4) - var(--line-offset));
  width: var(--line-arm); height: 1px; background: var(--line-color);
  top: 50%; transform: translateY(-50%);
}

/* ===== STATI (sfondo su LINK) ===== */
.etm-link:hover { background: rgba(0,0,0,0.045); } /* fallback; in Elementor puoi impostare i colori */

.etm-item.etm-current > .etm-row .etm-link { font-weight: 600; }
.etm-item.etm-current-ancestor > .etm-row .etm-link {}

/* Focus accessibile sul link */
.etm-link:focus { outline: 2px solid rgba(0,0,0,0.2); outline-offset: 2px; }

/* niente bordi: tutta la resa è su background delle righe */
.etm-link, .etm-row, .etm-toggle { border: 0; }

/* Correzioni personalizzate */
.etm-item::before, .etm-row::before {
  background: #808285 !important;
}