.ehi-premium-nav{display:none}
@media (max-width:1024px){
  body.ehi-premium-nav-open{overflow:hidden}
  .ast-mobile-header-wrap .ast-button-wrap,.ast-mobile-header-wrap .menu-toggle,.ast-mobile-header-wrap .ast-builder-menu-mobile,.ast-mobile-header-content,.ast-header-button-1,.ast-builder-button-wrap{display:none!important}
  .ehi-premium-nav{display:block;position:fixed;inset:0;z-index:999990;pointer-events:none;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
  .ehi-premium-nav__toggle{pointer-events:auto;position:absolute;top:clamp(18px,3vw,34px);right:clamp(18px,3vw,34px);z-index:4;width:58px;height:58px;padding:0;border:1px solid rgba(255,255,255,.72);border-radius:18px;background:linear-gradient(145deg,#26aaf5,#1469e8);box-shadow:0 14px 35px rgba(4,52,132,.42),0 0 22px rgba(58,156,255,.4),inset 0 1px 0 rgba(255,255,255,.62);cursor:pointer;transition:transform .22s ease,box-shadow .22s ease;animation:ehiPremiumMenuFloat 3.2s ease-in-out infinite}
  .ehi-premium-nav__toggle span{position:absolute;left:17px;width:24px;height:2px;border-radius:4px;background:#fff;box-shadow:0 1px 3px rgba(0,25,70,.3);transition:transform .24s ease,opacity .18s ease,top .24s ease}
  .ehi-premium-nav__toggle span:nth-child(1){top:20px}.ehi-premium-nav__toggle span:nth-child(2){top:28px}.ehi-premium-nav__toggle span:nth-child(3){top:36px}
  .ehi-premium-nav.is-open .ehi-premium-nav__toggle span:nth-child(1){top:28px;transform:rotate(45deg)}.ehi-premium-nav.is-open .ehi-premium-nav__toggle span:nth-child(2){opacity:0}.ehi-premium-nav.is-open .ehi-premium-nav__toggle span:nth-child(3){top:28px;transform:rotate(-45deg)}
  .ehi-premium-nav__overlay{position:absolute;inset:0;background:rgba(5,18,43,.20);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);opacity:0;transition:opacity .24s ease;pointer-events:none}
  .ehi-premium-nav__panel{pointer-events:none;position:absolute;top:clamp(88px,11vw,112px);right:clamp(16px,3vw,34px);width:min(390px,calc(100vw - 32px));padding:22px;border:1px solid rgba(255,255,255,.78);border-radius:28px;color:#102e58;background:linear-gradient(145deg,rgba(255,255,255,.58),rgba(210,224,255,.42));-webkit-backdrop-filter:blur(30px) saturate(145%);backdrop-filter:blur(30px) saturate(145%);box-shadow:0 30px 80px rgba(2,18,54,.38),0 0 24px rgba(102,174,255,.3),inset 0 1px 0 #fff;opacity:0;transform:translateY(-12px) scale(.96);transform-origin:top right;transition:opacity .24s ease,transform .24s ease}
  .ehi-premium-nav.is-open .ehi-premium-nav__overlay{opacity:1;pointer-events:auto}.ehi-premium-nav.is-open .ehi-premium-nav__panel{opacity:1;transform:none;pointer-events:auto}
  .ehi-premium-nav__brand{display:flex;align-items:center;gap:12px;padding:0 4px 16px;border-bottom:1px solid rgba(32,78,142,.14)}
  .ehi-premium-nav__brand img{width:46px;height:46px;object-fit:contain;filter:drop-shadow(0 5px 10px rgba(20,91,169,.18))}.ehi-premium-nav__brand span{font-weight:800;font-size:.96rem;color:#17365f}
  .ehi-premium-nav__links{display:grid;gap:10px;padding:16px 0}
  .ehi-premium-nav__link{display:grid;grid-template-columns:48px 1fr 18px;align-items:center;gap:13px;min-height:64px;padding:8px 14px;border:1px solid rgba(255,255,255,.8);border-radius:17px;color:#102d58!important;text-decoration:none!important;background:rgba(255,255,255,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.9);transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
  .ehi-premium-nav__link:hover,.ehi-premium-nav__link:focus-visible{transform:translateX(3px);background:rgba(255,255,255,.64);box-shadow:0 10px 24px rgba(22,83,155,.12),inset 0 1px 0 #fff;outline:none}
  .ehi-premium-nav__icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;color:#1078f2;background:linear-gradient(145deg,rgba(255,255,255,.95),rgba(225,235,255,.82));box-shadow:0 8px 18px rgba(31,93,171,.12),inset 0 1px 0 #fff}.ehi-premium-nav__icon svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .ehi-premium-nav__label{font-weight:800;font-size:1rem}.ehi-premium-nav__arrow{font-size:1.8rem;line-height:1;color:#173d70}
  .ehi-premium-nav__login{display:flex;align-items:center;justify-content:center;gap:11px;min-height:60px;border:1px solid rgba(255,255,255,.76);border-radius:16px;color:#fff!important;text-decoration:none!important;background:linear-gradient(105deg,#2caaf4,#106ef2);box-shadow:0 14px 30px rgba(16,105,232,.36),0 0 18px rgba(50,163,255,.28),inset 0 1px 0 rgba(255,255,255,.55);font-size:1.04rem;font-weight:900}
  .ehi-premium-nav__login-icon{width:24px;height:24px}.ehi-premium-nav__login-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  .ehi-premium-nav__motto{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:18px;color:#1c4f8d;font-size:.88rem}.ehi-premium-nav__motto span{height:1px;background:linear-gradient(90deg,transparent,#2389f5)}.ehi-premium-nav__motto span:last-child{background:linear-gradient(90deg,#2389f5,transparent)}.ehi-premium-nav__motto strong{font-weight:800}
}
@media (max-width:520px){
  .ehi-premium-nav__toggle{
    width:56px;
    height:56px;
    top:22px;
    right:20px;
    border-radius:17px
  }
  .ehi-premium-nav__toggle span{left:17px;width:22px}
  .ehi-premium-nav__toggle span:nth-child(1){top:19px}
  .ehi-premium-nav__toggle span:nth-child(2){top:27px}
  .ehi-premium-nav__toggle span:nth-child(3){top:35px}
  .ehi-premium-nav.is-open .ehi-premium-nav__toggle span:nth-child(1),
  .ehi-premium-nav.is-open .ehi-premium-nav__toggle span:nth-child(3){top:27px}

  .ehi-premium-nav__panel{
    top:94px;
    right:20px;
    width:calc(100vw - 40px);
    max-width:390px;
    padding:20px;
    border-radius:27px
  }

  .ehi-premium-nav__brand{
    display:flex;
    gap:11px;
    padding:0 4px 15px
  }

  .ehi-premium-nav__brand img{
    width:44px;
    height:44px
  }

  .ehi-premium-nav__brand span{
    font-size:.94rem
  }

  .ehi-premium-nav__links{
    gap:10px;
    padding:15px 0
  }

  .ehi-premium-nav__link{
    grid-template-columns:46px 1fr 18px;
    min-height:64px;
    padding:8px 13px;
    border-radius:17px
  }

  .ehi-premium-nav__icon{
    width:44px;
    height:44px
  }

  .ehi-premium-nav__label{
    font-size:.98rem
  }

  .ehi-premium-nav__login{
    min-height:59px
  }

  .ehi-premium-nav__motto{
    margin-top:17px;
    font-size:.84rem
  }
}

@keyframes ehiPremiumMenuFloat{
  0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-4px) scale(1.025)}
}

.ehi-premium-nav.is-open .ehi-premium-nav__toggle{
  animation:ehiPremiumMenuFloat 3.2s ease-in-out infinite
}

@media (prefers-reduced-motion:reduce){
  .ehi-premium-nav__toggle,
  .ehi-premium-nav.is-open .ehi-premium-nav__toggle{
    animation:none
  }
}
/* =========================================================
   FASE 3 RESPONSIVE — ADMINISTRADOR Y TEACHER
   Navegación móvil/tablet: altura útil, scroll y zonas seguras
   ========================================================= */
@media (max-width: 1024px) {
  .ehi-premium-nav {
    min-height: 100dvh;
  }

  .ehi-premium-nav__toggle {
    top: max(clamp(18px, 3vw, 34px), env(safe-area-inset-top));
    right: max(clamp(18px, 3vw, 34px), env(safe-area-inset-right));
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }

  .ehi-premium-nav__panel {
    top: max(clamp(88px, 11vw, 112px), calc(env(safe-area-inset-top) + 76px));
    right: max(clamp(16px, 3vw, 34px), env(safe-area-inset-right));
    max-height: calc(
      100dvh - max(clamp(88px, 11vw, 112px), calc(env(safe-area-inset-top) + 76px))
      - max(16px, env(safe-area-inset-bottom))
    );
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    -webkit-overflow-scrolling: touch;
  }

  .ehi-premium-nav__brand,
  .ehi-premium-nav__link,
  .ehi-premium-nav__login {
    min-width: 0;
  }

  .ehi-premium-nav__brand span,
  .ehi-premium-nav__label {
    overflow-wrap: anywhere;
  }

  .ehi-premium-nav__link,
  .ehi-premium-nav__login {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }

  .ehi-premium-nav__toggle:focus-visible,
  .ehi-premium-nav__link:focus-visible,
  .ehi-premium-nav__login:focus-visible {
    outline: 3px solid rgba(37, 99, 235, .38);
    outline-offset: 3px;
  }
}

@media (max-width: 700px) {
  .ehi-premium-nav__panel {
    left: max(12px, env(safe-area-inset-left));
    right: max(12px, env(safe-area-inset-right));
    width: auto;
    max-width: none;
  }
}

@media (max-width: 520px) {
  .ehi-premium-nav__toggle {
    top: max(16px, env(safe-area-inset-top));
    right: max(14px, env(safe-area-inset-right));
    width: 52px;
    height: 52px;
    border-radius: 16px;
  }

  .ehi-premium-nav__toggle span {
    left: 15px;
    width: 22px;
  }

  .ehi-premium-nav__toggle span:nth-child(1) {
    top: 17px;
  }

  .ehi-premium-nav__toggle span:nth-child(2) {
    top: 25px;
  }

  .ehi-premium-nav__toggle span:nth-child(3) {
    top: 33px;
  }

  .ehi-premium-nav.is-open .ehi-premium-nav__toggle span:nth-child(1),
  .ehi-premium-nav.is-open .ehi-premium-nav__toggle span:nth-child(3) {
    top: 25px;
  }

  .ehi-premium-nav__panel {
    top: max(78px, calc(env(safe-area-inset-top) + 66px));
    left: max(10px, env(safe-area-inset-left));
    right: max(10px, env(safe-area-inset-right));
    width: auto;
    max-width: none;
    max-height: calc(
      100dvh - max(78px, calc(env(safe-area-inset-top) + 66px))
      - max(10px, env(safe-area-inset-bottom))
    );
    padding: 15px;
    border-radius: 22px;
  }

  .ehi-premium-nav__brand {
    gap: 10px;
    padding-bottom: 12px;
  }

  .ehi-premium-nav__brand img {
    flex: 0 0 40px;
    width: 40px;
    height: 40px;
  }

  .ehi-premium-nav__brand span {
    font-size: .9rem;
    line-height: 1.25;
  }

  .ehi-premium-nav__links {
    gap: 8px;
    padding: 12px 0;
  }

  .ehi-premium-nav__link {
    grid-template-columns: 42px minmax(0, 1fr) 14px;
    gap: 10px;
    min-height: 56px;
    padding: 7px 10px;
    border-radius: 15px;
  }

  .ehi-premium-nav__icon {
    width: 40px;
    height: 40px;
    border-radius: 12px;
  }

  .ehi-premium-nav__icon svg {
    width: 22px;
    height: 22px;
  }

  .ehi-premium-nav__label {
    font-size: .92rem;
    line-height: 1.2;
  }

  .ehi-premium-nav__arrow {
    font-size: 1.45rem;
  }

  .ehi-premium-nav__login {
    min-height: 52px;
    padding: 8px 12px;
    font-size: .96rem;
  }

  .ehi-premium-nav__motto {
    margin-top: 13px;
    font-size: .78rem;
  }
}

@media (max-width: 360px) {
  .ehi-premium-nav__panel {
    padding: 12px;
  }

  .ehi-premium-nav__link {
    grid-template-columns: 38px minmax(0, 1fr) 12px;
    gap: 8px;
  }

  .ehi-premium-nav__icon {
    width: 36px;
    height: 36px;
  }

  .ehi-premium-nav__label {
    font-size: .86rem;
  }

  .ehi-premium-nav__motto {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .ehi-premium-nav__motto span {
    display: none;
  }
}

@media (max-height: 620px) and (orientation: landscape) {
  .ehi-premium-nav__toggle {
    top: max(8px, env(safe-area-inset-top));
    right: max(10px, env(safe-area-inset-right));
    width: 48px;
    height: 48px;
  }

  .ehi-premium-nav__toggle span {
    left: 14px;
    width: 20px;
  }

  .ehi-premium-nav__toggle span:nth-child(1) {
    top: 15px;
  }

  .ehi-premium-nav__toggle span:nth-child(2) {
    top: 23px;
  }

  .ehi-premium-nav__toggle span:nth-child(3) {
    top: 31px;
  }

  .ehi-premium-nav.is-open .ehi-premium-nav__toggle span:nth-child(1),
  .ehi-premium-nav.is-open .ehi-premium-nav__toggle span:nth-child(3) {
    top: 23px;
  }

  .ehi-premium-nav__panel {
    top: max(62px, calc(env(safe-area-inset-top) + 56px));
    max-height: calc(
      100dvh - max(62px, calc(env(safe-area-inset-top) + 56px))
      - max(8px, env(safe-area-inset-bottom))
    );
  }

  .ehi-premium-nav__brand {
    padding-bottom: 8px;
  }

  .ehi-premium-nav__links {
    padding: 8px 0;
  }

  .ehi-premium-nav__link {
    min-height: 48px;
  }

  .ehi-premium-nav__motto {
    display: none;
  }
}
