/* InfoSage Mobile Menu v1.0.3 — body-level portal, maximal z-index, click-safe */

/* Hide button on desktop */
.eh-hamburger{ display:none !important; }

@media (max-width:900px){
  .eh-hamburger{
    display:inline-flex !important;
    align-items:center; justify-content:center;
    width:44px; height:44px;
    border-radius:10px;
    border:1px solid rgba(255,210,77,.35);
    background:#151026; color:#FFD24D; cursor:pointer;
    box-shadow:0 0 12px rgba(76,175,80,.25);
    transition:transform .15s, box-shadow .2s;
    z-index:2147483647; /* top of the world */
  }
  .eh-hamburger:hover{ transform:translateY(-1px); box-shadow:0 0 16px rgba(76,175,80,.35); }
  .eh-hamburger:focus{ outline:2px solid #4CAF50; outline-offset:2px; }

  .eh-burger-lines, .eh-burger-lines::before, .eh-burger-lines::after{
    content:""; display:block; width:22px; height:2px; background:currentColor;
    border-radius:2px; position:relative; transition:transform .2s, opacity .2s;
  }
  .eh-burger-lines::before{ position:absolute; top:-7px; }
  .eh-burger-lines::after{ position:absolute; top:7px; }
  body.eh-menu-open .eh-burger-lines{ transform:rotate(45deg); }
  body.eh-menu-open .eh-burger-lines::before{ transform:translateY(7px) rotate(90deg); }
  body.eh-menu-open .eh-burger-lines::after{ transform:translateY(-7px) rotate(90deg); }

  /* Hide the theme nav itself on mobile to avoid duplication behind overlay */
  .site-nav{ display:none !important; }
}

/* Body-level overlay portal */
.eh-menu-scrim{
  position:fixed; inset:0; background:rgba(0,0,0,.45);
  opacity:0; pointer-events:none; transition:opacity .18s ease;
  z-index:2147483645;
}
.eh-menu-panel{
  position:fixed;
  top:var(--eh-header-h, 64px); right:12px; left:12px;
  background:#0c0819; color:#E7E6F2;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:12px;
  box-shadow:0 20px 40px rgba(0,0,0,.6);
  transform:translateY(-12px);
  opacity:0; pointer-events:none;
  transition:opacity .18s ease, transform .18s ease;
  z-index:2147483646;
}

/* Panel list */
.eh-menu-panel ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:8px; }
.eh-menu-panel a{ display:block; padding:10px 12px; border-radius:10px; text-decoration:none; color:inherit; }
.eh-menu-panel a:hover{ background:rgba(76,175,80,.12); }

/* Open state */
body.eh-menu-open .eh-menu-scrim{ opacity:1; pointer-events:auto; }
body.eh-menu-open .eh-menu-panel{ opacity:1; pointer-events:auto; transform:translateY(0); }
body.eh-menu-open{ overflow:hidden; }

/* Admin bar offsets */
body.admin-bar .eh-menu-panel{ top:calc(var(--eh-header-h, 64px) + 32px); }
@media (max-width:782px){
  body.admin-bar .eh-menu-panel{ top:calc(var(--eh-header-h, 64px) + 46px); }
}
