/*  Nitro – Menú simuladores
    – Escritorio: fila única, logos escalables
    – Móvil: logo + nombre, lista debajo, sin separadores
    (actualizado 06-ago-2025)
=================================================================== */

/* ═══════════════════  ESCRITORIO (≥768 px)  ════════════════════ */
@media (min-width: 768px) {
  nav.menu-simuladores-nav {
    margin: 20px auto 0;
    max-width: 1600px;
    padding: 0 10px;
    position: relative;
    /* variable para altura de logo → escala con viewport */
    --logo-h: clamp(18px, 4vw, 30px);
    --gap: clamp(8px, 2vw, 32px);
  }

  /* trigger oculto */
  nav.menu-simuladores-nav .mobile-trigger {
    display: none !important;
  }

  /* lista: fila única, sin envolver, logos escalan */
  nav.menu-simuladores-nav .menu-simuladores-list {
    display: flex;
    flex-wrap: nowrap; /* nunca salta de línea */
    justify-content: center;
    align-items: center;
    gap: var(--gap);
    list-style: none;
    margin: 0;
    padding: 0;
  }

  nav.menu-simuladores-nav .menu-simuladores-item {
    position: relative;
    flex: 0 0 auto; /* ancho natural, sin compresión rara */
  }
  nav.menu-simuladores-nav .menu-simuladores-item:not(:last-child)::after {
    content: "";
    position: absolute;
    right: calc(-0.5 * var(--gap));
    top: 50%;
    transform: translateY(-50%);
    width: 1px;
    height: 24px;
    background: #fff;
  }

  /* logo */
  nav.menu-simuladores-nav .menu-simuladores-item picture img {
    display: block;
    height: var(--logo-h);
    width: auto;
    object-fit: contain;
    transition: transform 0.2s ease;
  }
  nav.menu-simuladores-nav .menu-simuladores-item:hover picture img,
  nav.menu-simuladores-nav .menu-simuladores-item.active picture img {
    transform: scale(1.2);
  }

  /* item activo (fondo rojo) */
  nav.menu-simuladores-nav .menu-simuladores-item.active {
    background: #8b0000;
    padding: 6px 10px;
    border-radius: 4px;
  }

  /* líneas “hamburguesa” del botón editar */
  nav.menu-simuladores-nav .menu-simuladores-item a span {
    display: block;
    width: 20px;
    height: 2px;
    background: #fff;
  }
  nav.menu-simuladores-nav .menu-simuladores-item a span + span {
    margin-top: 4px;
  }

  /* ocultar nombre en escritorio */
  nav.menu-simuladores-nav .menu-simuladores-item span.sim-nombre {
    display: none;
  }
}

/* ═════════════════════  MÓVIL (≤767 px)  ═════════════════════ */
@media (max-width: 767px) {
  nav.menu-simuladores-nav {
    position: relative;
  }

  /* trigger (sin fondo) */
  nav.menu-simuladores-nav .mobile-trigger {
    display: flex !important;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 8px 12px;
    font-size: 16px;
    color: #fff;
    background: transparent;
    border: 1px solid transparent;
    cursor: pointer;
  }
  nav.menu-simuladores-nav .mobile-trigger .arrow-down {
    margin-left: 6px;
    border: solid #fff;
    border-width: 0 2px 2px 0;
    padding: 4px;
    transform: rotate(45deg);
  }

  /* lista desplegable (debajo) */
  nav.menu-simuladores-nav .menu-simuladores-list {
    display: none; /* slideToggle la muestra */
    position: absolute;
    top: 100%;
    left: 0;
    width: 100vw;
    margin-left: -10px; /* compensa padding nav */
    margin-right: -10px;
    flex-direction: column;
    background: #222;
    padding: 8px 0;
    border-radius: 0 0 12px 12px;
    list-style: none;
    z-index: 20;
  }

  /* ítem fila */
  nav.menu-simuladores-nav .menu-simuladores-item {
    width: 100%;
    padding: 8px 16px;
    box-sizing: border-box;
  }

  /* enlace = flex → logo + nombre en línea */
  nav.menu-simuladores-nav .menu-simuladores-item > a {
    display: flex !important;
    align-items: center !important;
    gap: 12px;
    width: 100%;
    border: none !important; /* elimina borde blanco heredado */
  }

  /* logo móvil */
  nav.menu-simuladores-nav .menu-simuladores-item > a picture {
    flex: 0 0 auto;
  }
  nav.menu-simuladores-nav .menu-simuladores-item > a picture img {
    width: 36px;
    height: 36px;
    object-fit: contain;
  }

  /* nombre visible */
  nav.menu-simuladores-nav .menu-simuladores-item > a .sim-nombre {
    display: inline-block !important;
    flex: 1 1 auto;
    font-size: 16px;
    color: #fff;
    line-height: 1.25;
    white-space: normal;
  }

  /* sin separadores en móvil */
  nav.menu-simuladores-nav .menu-simuladores-item:not(:last-child)::after {
    display: none;
  }

  /* botón editar (tres rayas) */
  nav.menu-simuladores-nav .sim-edit a {
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: center;
  }
  nav.menu-simuladores-nav .sim-edit a span {
    width: 24px;
    height: 3px;
    background: #fff;
  }

  /* ítem activo en móvil */
  nav.menu-simuladores-nav .menu-simuladores-item.active {
    background: #8b0000 !important;
  }
  /* lista: altura máxima 75 vh y scroll propio */
  nav.menu-simuladores-nav.mobile-open .menu-simuladores-list {
    max-height: 75vh; /* se adapta al alto del dispositivo */
    overflow-y: auto; /* solo la lista se desplaza */
    -webkit-overflow-scrolling: touch; /* inercia iOS */
  }
}

body.nsim-lock-scroll {
  overflow: hidden;
  touch-action: none;
}
