/* Panel flotante del menú móvil. Carga después del resto de hojas: solo cambia la presentación. */
.mobile-backdrop{background:rgba(2,7,14,.5)}
.mobile-menu.open{top:var(--mobile-menu-top,72px);right:12px;bottom:auto;left:auto;width:min(340px,calc(100% - 24px));height:auto;max-height:calc(100dvh - var(--mobile-menu-top,72px) - 12px);padding:18px 14px 14px;background:#101c2c;border:1px solid #2c4055;border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.55);transform-origin:top right;animation:mobile-menu-in .16s ease-out}
@keyframes mobile-menu-in{from{opacity:0;transform:translateY(-8px) scale(.98)}to{opacity:1;transform:none}}
.mobile-panel-heading{align-items:center;justify-content:space-between;padding:0 6px 4px;border-bottom:0}
.mobile-panel-heading h2{margin:0;color:var(--cyan);font-size:11px;font-weight:700;letter-spacing:.2em;line-height:1.3;text-transform:uppercase}
.mobile-close{display:inline-flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;background:#16283b}
.mobile-close svg{width:18px;height:18px}
.mobile-nav-group{margin-top:14px}
.mobile-nav-group h3{margin:0 6px 6px;color:#849bb3;font-size:11px;letter-spacing:.18em}
.mobile-menu a.mobile-nav-row,.mobile-menu .mobile-platform-row{justify-content:flex-start;gap:14px;min-height:52px;margin:2px 0;padding:6px;border:0;border-radius:12px;background:transparent;color:#e0edfa;font-size:15px;font-weight:600;transition:background-color .12s ease}
.mobile-menu .mobile-nav-row:hover,.mobile-menu .mobile-platform-row:hover,.mobile-menu details[open]>.mobile-platform-row{background:#16283b}
.mobile-menu .mobile-nav-row span,.mobile-menu .mobile-platform-row span{color:inherit}
.mobile-menu .mobile-nav-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;border-radius:11px;background:#16283b;color:var(--cyan-2)}
.mobile-menu details[open]>.mobile-platform-row .mobile-nav-icon,.mobile-menu .mobile-nav-row:hover .mobile-nav-icon,.mobile-menu .mobile-platform-row:hover .mobile-nav-icon{background:#1d3a52}
.mobile-menu .mobile-nav-icon svg{color:var(--cyan-2)}
.mobile-platform-row>svg{margin-left:auto;margin-right:6px;transition:transform .16s ease}
.mobile-platform[open] summary .mobile-nav-icon svg{transform:none}
.mobile-platform-links{margin:2px 0 6px 25px;padding:2px 0 2px 12px;border-left:1px solid #315069;animation:mobile-links-in .14s ease-out}
@keyframes mobile-links-in{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
.mobile-menu .mobile-platform-links a{min-height:42px;padding:10px;border-radius:9px;color:#b3c8dc;font-size:14px}
.mobile-menu .mobile-platform-links a:hover{background:#16283b;color:#e0edfa}
.mobile-menu-footer{margin-top:14px;padding-top:14px;border-top:1px solid #25364a}
.mobile-menu a.mobile-menu-cta{justify-content:center;min-height:50px;padding:12px;border-radius:12px;background:var(--cyan);color:#06121d;font-size:15px;font-weight:700;transition:background-color .12s ease}
.mobile-menu a.mobile-menu-cta:hover{background:var(--cyan-2)}
.mobile-menu a:focus-visible,.mobile-menu summary:focus-visible,.mobile-close:focus-visible{outline:2px solid var(--cyan-2);outline-offset:2px}
@media(prefers-reduced-motion:reduce){.mobile-menu.open,.mobile-platform-links{animation:none}.mobile-platform-row>svg,.mobile-menu a.mobile-nav-row,.mobile-menu .mobile-platform-row,.mobile-menu a.mobile-menu-cta{transition:none}}
