/* Academia de Alto Impacto — MENÚ MÓVIL DE LAS PÁGINAS PÚBLICAS (07/10/2026, orden de Engels: «¿dónde está la UX que pido tanto?»).
 * Cabecera de UNA sola línea en móvil/tablet (<= 1200 px): logo + «Entrar» + botón hamburguesa de 48 px; el menú entero es un CAJÓN a pantalla completa
 * con todos los enlaces en lista vertical (>= 56 px), foco atrapado, Escape, scroll bloqueado detrás y safe-area de iPhone. Nunca scroll horizontal.
 * Sirve a la cabecera de las landings (.al-nav) y a la de Focus News (.nta-cab). Lo activa /assets/js/menu-movil.js (añade html.mu-js; sin JS la fila se queda como antes
 * pero envuelta en dos líneas, nunca cortada). Sin estilos en línea (CSP). */

/* ---------- escritorio: el botón y el cajón no existen ---------- */
.mu-burger{display:none}
.mu-cajon{display:none}
/* la sesión ya no va DENTRO de <nav>: el menú se pega a la derecha y el botón de sesión queda a su lado */
.al-nav__in>.al-menu{margin-left:auto}
html.mu-lock .ck{display:none}

/* ---------- móvil y tablet ---------- */
@media (max-width:1200px){
  /* sin JS: la fila pasa a dos líneas (nunca se corta) */
  html:not(.mu-js) .al-nav__in,html:not(.mu-js) .nta-cab__in{flex-wrap:wrap;row-gap:4px}
  html:not(.mu-js) .al-menu,html:not(.mu-js) .nta-menu{flex-wrap:wrap;order:5;width:100%}

  /* con JS: una línea limpia */
  html.mu-js .al-nav .al-menu,html.mu-js .nta-cab .nta-menu{display:none}
  html.mu-js .al-nav .al-nav__in,html.mu-js .nta-cab .nta-cab__in{flex-wrap:nowrap;gap:8px;min-height:64px;padding:max(6px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) 6px max(14px,env(safe-area-inset-left));justify-content:flex-start}
  html.mu-js .al-nav .al-logo,html.mu-js .nta-cab .nta-logo{margin-right:auto;min-width:0;flex:0 1 auto;gap:.5rem}
  html.mu-js .al-nav .al-logo .ap-logo__img{width:46px}
  html.mu-js .nta-cab .nta-logo img{width:46px;height:auto}
  html.mu-js .al-nav .ap-logo__t,html.mu-js .nta-cab .nta-logo__t{display:grid;line-height:1.05;white-space:nowrap}
  html.mu-js .al-nav .ap-logo__t span,html.mu-js .nta-cab .nta-logo__t span{display:none}
  html.mu-js .al-nav .ap-logo__t b,html.mu-js .nta-cab .nta-logo__t b{display:block;font-size:1rem;font-weight:800;letter-spacing:-.01em;white-space:nowrap}
  html.mu-js .al-nav .mu-slot,html.mu-js .nta-cab .mu-slot{flex:none}
  html.mu-js .al-nav .mu-slot .al-btn,html.mu-js .nta-cab .mu-slot .nt-btn{white-space:nowrap;min-height:44px;padding-inline:1rem}
  html.mu-js .nta-cab .nta-cab__acc{margin-left:0;flex:none;gap:6px}

  html.mu-js .mu-burger{display:inline-flex;flex:none;align-items:center;justify-content:center;width:48px;height:48px;padding:0;border:1.5px solid rgba(195,175,214,.45);border-radius:14px;background:rgba(255,255,255,.06);color:#f7f1fa;cursor:pointer;-webkit-tap-highlight-color:transparent}
  html.mu-js .mu-burger:hover{background:rgba(240,86,19,.18);border-color:#ff7a3d}
  .mu-burger__l,.mu-burger__l::before,.mu-burger__l::after{display:block;width:22px;height:2.5px;border-radius:2px;background:currentColor;content:"";position:relative}
  .mu-burger__l::before{position:absolute;top:-7px;left:0}
  .mu-burger__l::after{position:absolute;top:7px;left:0}

  /* el cajón */
  html.mu-js .mu-cajon:not([hidden]){display:flex;flex-direction:column;position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
    background:radial-gradient(ellipse 120% 50% at 50% -10%,rgba(138,75,208,.32),rgba(138,75,208,0) 70%),#160620;color:#f7f1fa;
    padding:0 max(18px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));animation:mu-entra .2s ease-out}
  @keyframes mu-entra{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
  .mu-cajon__cab{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:68px;padding-top:max(8px,env(safe-area-inset-top));background:#160620;border-bottom:1px solid rgba(195,175,214,.2)}
  .mu-cajon .al-logo,.mu-cajon .nta-logo{margin:0;gap:.5rem;color:#f7f1fa}
  .mu-cajon .ap-logo__img{width:46px;height:auto}
  .mu-cajon .ap-logo__t span{display:none}
  .mu-cajon .ap-logo__t b{font-size:1rem;color:#f7f1fa}
  .mu-cerrar{display:inline-flex;align-items:center;justify-content:center;flex:none;width:48px;height:48px;padding:0;border:1.5px solid rgba(195,175,214,.45);border-radius:14px;background:rgba(255,255,255,.06);color:#f7f1fa;cursor:pointer}
  .mu-cerrar:hover{background:rgba(240,86,19,.18);border-color:#ff7a3d}
  .mu-cerrar__x{position:relative;display:block;width:22px;height:22px}
  .mu-cerrar__x::before,.mu-cerrar__x::after{content:"";position:absolute;left:0;top:9.5px;width:22px;height:2.5px;border-radius:2px;background:currentColor}
  .mu-cerrar__x::before{transform:rotate(45deg)}
  .mu-cerrar__x::after{transform:rotate(-45deg)}
  .mu-lista,.mu-sub{list-style:none;margin:0;padding:0}
  .mu-lista{margin-top:6px}
  .mu-lnk{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:58px;padding:.6rem .3rem;border-bottom:1px solid rgba(195,175,214,.16);font-size:1.18rem;font-weight:700;line-height:1.25;color:#f7f1fa;text-decoration:none}
  .mu-lnk:hover,.mu-lnk:focus-visible{color:#fff;background:rgba(240,86,19,.14)}
  .mu-lnk[aria-current="page"]{color:#ffb38f}
  .mu-fl{flex:none;width:20px;height:20px;fill:none;stroke:#ff7a3d;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
  .mu-ac>summary{cursor:pointer;list-style:none}
  .mu-ac>summary::-webkit-details-marker{display:none}
  .mu-ac>summary .mu-fl{transform:rotate(90deg);transition:transform .2s}
  .mu-ac[open]>summary .mu-fl{transform:rotate(-90deg)}
  .mu-sub .mu-lnk{min-height:54px;padding-left:1.1rem;font-size:1.06rem;font-weight:600;color:#e7dcf1}
  .mu-cajon__pie{margin-top:auto;display:grid;gap:10px;padding-top:22px}
  .mu-cajon__pie .al-btn,.mu-cajon__pie .nt-btn{display:flex;align-items:center;justify-content:center;min-height:56px;width:100%;font-size:1.05rem}
  html.mu-lock,html.mu-lock body{overflow:hidden}
  .mu-centinela{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}
}
@media (max-width:350px){
  html.mu-js .al-nav .ap-logo__t,html.mu-js .nta-cab .nta-logo__t{display:none}
  html.mu-js .al-nav .al-nav__in,html.mu-js .nta-cab .nta-cab__in{gap:6px}
}
@media (prefers-reduced-motion:reduce){.mu-cajon{animation:none !important}}
