/* =========================================================
   TL — SHORTCODE MENU (tl_sidebar_menu) — ESTILOS
   (no depende de .tl-sidebar-fixed)
   ========================================================= */

/* Base: que NO herede colores raros del theme */
.tl-acc-menu,
.tl-acc-menu *{
  box-sizing: border-box;
}

.tl-acc-menu{
  font-size: 16px !important;
  line-height: 1.05 !important;
  color: #000 !important;
}

@media (max-width: 899px){
  .tl-acc-menu{
    font-size: 16px !important;
  }
}

/* FIX: evita RTL / alineaciones raras del tema */
.tl-acc-menu,
.tl-acc-menu summary{
  direction: ltr !important;
  text-align: left !important;
}

/* Nunca subrayado */
.tl-acc-menu a,
.tl-acc-menu a:hover,
.tl-acc-menu a:focus,
.tl-acc-menu a:active{
  text-decoration: none !important;
  box-shadow: none !important;
  color: inherit !important; /* clave para que no salga blanco */
}

/* Fila con indent por nivel */
.tl-acc-menu .tl-row{
  padding-left: var(--tl-indent, 0px) !important;
  margin: 6px 0 !important;
}

/* Pills */
.tl-acc-menu .tl-menu-link{
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;

  padding: 6px 10px !important;
  border-radius: 16px !important;

  color: #000 !important;
  background: transparent !important;

  font-weight: 500 !important;
}

/* Hover: SOLO negrita */
.tl-acc-menu .tl-menu-link:hover{
  font-weight: 700 !important;
  background: transparent !important;
  color: #000 !important;
}

/* Activo: pill roja */
.tl-acc-menu .tl-menu-link.is-active{
  background: #af1a1a !important;
  color: #fff !important;
  font-weight: 700 !important;
}

/* Details: sin marker */
.tl-acc-menu details > summary{
  list-style: none !important;
}
.tl-acc-menu details > summary::-webkit-details-marker{
  display: none !important;
}


/* Cabecera: botón + pill, siempre en la MISMA posición */

/* Aunque el botón esté al final en HTML, lo ponemos visualmente a la IZQUIERDA */
.tl-acc-menu .tl-acc-toggle{
  order: -1 !important;            /* <<< LA CLAVE */
  flex: 0 0 22px !important;

  width: 22px !important;
  height: 22px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  appearance: none !important;
  border: 0 !important;
  background: transparent !important;
  padding: 0 !important;
  border-radius: 6px !important;
  cursor: pointer !important;
}

/* El pill NO debe empujar nada, y si es largo, recorta */
.tl-acc-menu .tl-acc-head > a{
  order: 0 !important;
  flex: 0 1 auto !important;
  min-width: 0 !important;
  max-width: 100% !important;

  display: inline-flex !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}


.tl-acc-menu .tl-acc-arrow{
  width: 18px !important;
  height: 18px !important;
  display: block !important;
  position: relative !important;
}

/* triángulo */
.tl-acc-menu .tl-acc-arrow:before{
  content: "" !important;
  position: absolute !important;
  left: 3px !important;
  top: 5px !important;
  width: 0 !important;
  height: 0 !important;
  border-left: 8px solid #000 !important;
  border-top: 6px solid transparent !important;
  border-bottom: 6px solid transparent !important;
  transition: transform .18s ease !important;
  transform-origin: 40% 50% !important;
}

/* abierto = flecha hacia abajo */
.tl-acc-menu details[open] > summary .tl-acc-arrow:before{
  transform: rotate(90deg) !important;
}

/* cuerpo: indent visual + línea */
/* cuerpo: indent visual + línea */
.tl-acc-menu .tl-acc-body{
  margin: 6px 0 10px 0 !important;

  /* SOLO el offset del “árbol” (línea), SIN sumar indent del nivel */
  padding-left: 14px !important;

  border-left: 1px solid rgba(0,0,0,0.35) !important; /* negra 1px */
}

/* =========================================================
   TL — DESKTOP: scroll dentro del menú lateral
   ========================================================= */

@media (min-width: 900px){
  .tl-sidebar-fixed{
    /* En vez de height:100vh (que a veces da 1-2px de overflow),
       fijamos el panel por arriba/abajo y se acaba el micro-scroll */
    position: fixed !important;
    top: 0 !important;
    bottom: 0 !important;
    left: 0 !important;

    /* Mantenemos tu ancho si ya lo tienes en otro CSS; si aquí no, no pasa nada */

    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;

    background: #fff !important;
    overscroll-behavior: contain !important;

    margin: 0 !important;
    padding-top: 0 !important;

    /* Aire extra abajo para que el último item no se pegue */
    padding-bottom: 32px !important;

    box-sizing: border-box !important;
  }
}

@media (min-width: 900px){
  .tl-acc-menu{ margin-bottom: 0 !important; padding-bottom: 0 !important; }
}

/* =========================================================
   TL — FIX DESKTOP: quitar micro-scroll y dar aire abajo
   ========================================================= */
@media (min-width: 900px){

  /* Aire real abajo dentro del menú (para que el último no quede pegado) */
  .tl-acc-menu{
    padding-bottom: 32px !important;
  }

  /* Quita el margen inferior del último item visible para evitar micro-scroll */
  .tl-acc-menu .tl-row:last-child{
    margin-bottom: 0 !important;
  }

  /* Si el último elemento es un <details> (sección), también quitamos su margen */
  .tl-acc-menu details:last-child{
    margin-bottom: 0 !important;
  }
}

/* =========================================================
   TL — FIX GUTENBERG: quita márgenes/paddings que generan micro-scroll
   SOLO dentro del sidebar fijo en DESKTOP
   ========================================================= */
@media (min-width: 900px){

  /* El primer contenedor Gutenberg dentro del header trae margin-top/bottom inline
     => eso genera el “micro-scroll” fantasma */
  .tl-sidebar-fixed > .wp-block-group{
    margin-top: 0 !important;
    margin-bottom: 0 !important;

    /* opcional: si quieres conservar aire arriba, déjalo con padding
       pero sin márgenes */
    padding-top: 34px !important; /* respeta tu diseño actual */
    padding-bottom: 32px !important; /* aire abajo (además del del sidebar) */
  }

  /* A veces Gutenberg mete min-height inline (686px) que no pinta aquí */
  .tl-sidebar-fixed > .wp-block-group[style*="min-height"]{
    min-height: 0 !important;
  }
}

