/* Generado por secure/civtac/ediciones/cabecera_congreso.py · no editar a mano */
/* Explora Docentes 2.0 · componente compartido. Cada sitio ajusta las variables en su propia hoja (sobre .d20-eco). */
.d20-eco{--d20-eco-fondo:#1C1220;--d20-eco-texto:#FBF5EA;--d20-eco-tenue:#D8CBDB;--d20-eco-acento:#F0B424;
  --d20-eco-panel:#FBF5EA;--d20-eco-panel-texto:#241828;--d20-eco-panel-tenue:#584A5C;--d20-eco-borde:#DCD2C8;
  --d20-eco-letra:'Segoe UI',Roboto,Helvetica,Arial,sans-serif;--d20-eco-alto:36px;--d20-eco-ancho:1200px;--d20-eco-z:10050;
  position:relative;z-index:var(--d20-eco-z);background:var(--d20-eco-fondo);color:var(--d20-eco-texto);
  font:400 13px/1.3 var(--d20-eco-letra);letter-spacing:0;text-transform:none}
.d20-eco *,.d20-eco *::before,.d20-eco *::after{box-sizing:border-box}
.d20-eco__barra{max-width:var(--d20-eco-ancho);margin:0 auto;padding:0 16px;height:var(--d20-eco-alto);
  display:flex;align-items:center;justify-content:space-between;gap:16px}
.d20-eco a{color:inherit}
.d20-eco__marca{font-weight:700;text-decoration:none;display:inline-flex;align-items:center;min-height:32px;padding:0 4px}
.d20-eco__marca:hover{text-decoration:underline}
.d20-eco__explora{position:static}
.d20-eco__boton{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 8px;
  border-radius:4px;color:var(--d20-eco-tenue);font-weight:600;user-select:none}
.d20-eco__boton::-webkit-details-marker{display:none}
.d20-eco__boton::marker{content:''}
.d20-eco__boton:hover,.d20-eco__explora[open] .d20-eco__boton{color:var(--d20-eco-texto)}
.d20-eco__flecha{display:block;transition:transform .15s ease}
.d20-eco__explora[open] .d20-eco__flecha,.d20-eco-movil__det[open] .d20-eco__flecha{transform:rotate(180deg)}
.d20-eco :focus-visible,.d20-eco-movil :focus-visible{outline:2px solid var(--d20-eco-acento);outline-offset:2px}
.d20-eco__panel{position:absolute;left:0;right:0;top:100%;background:var(--d20-eco-panel);color:var(--d20-eco-panel-texto);
  border-top:3px solid var(--d20-eco-acento);box-shadow:0 16px 32px rgba(36,24,40,.18);max-height:calc(100vh - var(--d20-eco-alto));overflow:auto}
.d20-eco__rejilla{max-width:var(--d20-eco-ancho);margin:0 auto;padding:20px 16px 24px;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:18px 24px}
.d20-eco__cat{margin:0 0 6px;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--d20-eco-panel-tenue)}
.d20-eco__lista,.d20-eco-movil__lista{list-style:none;margin:0;padding:0}
.d20-eco__lista a{display:flex;align-items:center;min-height:36px;padding:4px 0;font-size:15px;font-weight:600;text-decoration:none;color:var(--d20-eco-panel-texto)}
.d20-eco__lista a:hover{text-decoration:underline}
.d20-eco a[aria-current],.d20-eco-movil a[aria-current]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.d20-eco__aqui{font-size:11px;font-weight:700;margin-left:2px;opacity:.75}
.d20-eco__actual{display:block;padding:8px 0;min-height:36px;font-size:15px;font-weight:700}
.d20-eco-movil .d20-eco__actual{min-height:44px;padding:11px 0 11px 12px;font-size:inherit}
.d20-eco-movil__titulo{margin:12px 0 0;font-weight:700}
/* dentro del menú móvil del sitio: hereda su letra y sus colores */
/* color: por defecto hereda el del menú del sitio; si su contenedor no fija color (el texto quedaría oscuro sobre fondo oscuro),
   el sitio define --d20-eco-movil-texto en .d20-eco-movil o en un antepasado */
.d20-eco-movil{border-top:1px solid currentColor;border-color:rgba(127,127,127,.35);margin-top:8px;padding-top:4px;font:inherit;color:var(--d20-eco-movil-texto,inherit)}
.d20-eco-movil__boton{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;min-height:48px;padding:12px 0;font-weight:600}
.d20-eco-movil__boton::-webkit-details-marker{display:none}
.d20-eco-movil__boton::marker{content:''}
.d20-eco-movil__cat{margin:10px 0 2px;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.75}
/* Dentro del menú de otro sitio el plegable no puede crecer sin límite: si la cabecera del sitio es fija y su menú
   no tiene tope, los últimos enlaces quedan inalcanzables (lo vio la dueña en la Editorial, 22 sep 2026). Esto es
   un cinturón: cada sitio debe poner su propio tope (ver GUIA-INTEGRACION.md). SIN overscroll-behavior, para que al
   terminar el panel el gesto CONTINÚE en el menú del sitio y no se quede encerrado. Y sin summary pegajoso: con
   «background: inherit» salía transparente y el texto se leía por debajo (hallazgo de QC con captura). */
.d20-eco-movil__det[open]{max-height:min(68vh,520px);overflow-y:auto;overflow-anchor:none}
.d20-eco-movil__lista a{display:flex;align-items:center;min-height:44px;padding:6px 0 6px 12px;text-decoration:none;color:inherit}
.d20-eco-movil__marca{display:flex;align-items:center;min-height:44px;padding:6px 0 6px 12px;font-weight:700;color:inherit}
@media (prefers-reduced-motion:reduce){.d20-eco__flecha{transition:none}}
@media print{.d20-eco{display:none}}

/* Cabecera propia del Congreso (estilo E) bajo la franja del ecosistema. Usa los tokens de civtac-e.css. */
.cvh ~ .cv { padding-top:0; --cabecera:64px; }   /* la cabecera fija de www ya no está: el contenido no reserva sus 86 px */
.cvh { position:sticky; top:0; z-index:60; background:#081A24; color:#fff; border-bottom:1px solid rgba(95,212,230,.22);
       font-family:var(--f-texto,'Manrope',system-ui,sans-serif); }
.cvh [hidden] { display:none !important; }
.cvh__fila { max-width:1200px; margin:0 auto; padding:0 24px; min-height:64px; display:flex; align-items:center; gap:20px; box-sizing:border-box; }
.cvh__marca { display:flex; align-items:baseline; gap:12px; margin-right:auto; text-decoration:none; color:#fff; min-height:44px; align-self:center; }
.cvh__marca { align-items:center; }
.cvh__logo { font:800 23px/1 var(--f-rotulo,'Montserrat',system-ui,sans-serif); letter-spacing:.05em;
             background:linear-gradient(90deg,#2CC3DA,#F0B424); -webkit-background-clip:text; background-clip:text; color:transparent; }
.cvh__sub { font:600 13px/1.3 var(--f-texto,'Manrope',system-ui,sans-serif); color:#9FB4BE; }
.cvh__lista { list-style:none; margin:0; padding:0; display:flex; gap:2px; }
.cvh__lista a { display:flex; align-items:center; min-height:48px; padding:0 12px; color:#C9D3D9; font:700 15px var(--f-texto,'Manrope',system-ui,sans-serif);
                text-decoration:none; border-bottom:3px solid transparent; }
.cvh__lista a:hover, .cvh__lista a[aria-current] { color:#fff; border-bottom-color:#F0B424; }
.cvh__cta { display:inline-flex; align-items:center; min-height:44px; padding:0 18px; border-radius:22px; background:#F0B424; color:#112632 !important;
            font:800 14px var(--f-rotulo,'Montserrat',system-ui,sans-serif); letter-spacing:.02em; text-decoration:none; white-space:nowrap; }
.cvh__cta:hover { background:#FFD66B; }
.cvh a:focus-visible, .cvh button:focus-visible { outline:3px solid #F0B424; outline-offset:2px; }
.cvh__menu { display:none; align-items:center; gap:10px; min-height:44px; min-width:44px; padding:0 14px; border:1.5px solid rgba(95,212,230,.5); border-radius:22px;
             background:transparent; color:#fff; font:700 15px var(--f-texto,'Manrope',system-ui,sans-serif); cursor:pointer; }
.cvh__ico, .cvh__ico::before, .cvh__ico::after { display:block; width:18px; height:2px; background:currentColor; border-radius:1px; position:relative; }
.cvh__ico::before, .cvh__ico::after { content:""; position:absolute; left:0; }
.cvh__ico::before { top:-6px; } .cvh__ico::after { top:6px; }
.cvh__menu[aria-expanded="true"] .cvh__ico { background:transparent; }
.cvh__menu[aria-expanded="true"] .cvh__ico::before { top:0; transform:rotate(45deg); }
.cvh__menu[aria-expanded="true"] .cvh__ico::after { top:0; transform:rotate(-45deg); }
.cvh__panel { max-height:calc(100vh - 60px); overflow:auto; overscroll-behavior:contain; background:#0E2632; border-top:1px solid rgba(95,212,230,.22); }
.cvh__bloque { padding:16px 20px; }
.cvh__bloque--eco { background:#0A1D27; padding-top:0; }   /* el componente trae su propio separador */
.cvh__panel-t { margin:0 0 6px; font:800 12px var(--f-rotulo,'Montserrat',system-ui,sans-serif); letter-spacing:.2em; text-transform:uppercase; color:#5FD4E6; }
.cvh__panel-lista { list-style:none; margin:0 0 12px; padding:0; }
.cvh__panel-lista a { display:flex; align-items:center; min-height:48px; color:#fff; font:700 17px var(--f-texto,'Manrope',system-ui,sans-serif); text-decoration:none;
                      border-bottom:1px solid rgba(255,255,255,.08); }
.cvh__panel-lista a[aria-current] { color:#FFD66B; }
.cvh__cta--panel { margin-top:4px; }
@media (max-width:991px){
  .cvh__nav, .cvh__sub, .cvh__fila > .cvh__cta { display:none; }
  .cvh__menu { display:inline-flex; }
  .cvh__fila { min-height:60px; padding:0 16px; gap:12px; }
  .cvh ~ .cv { --cabecera:60px; }
}
@media (min-width:992px){ .cvh__panel { display:none !important; } }
body:has(.cvh__menu[aria-expanded="true"]) #whatsapp-widget { display:none; }   /* no tapa el panel del menú móvil */
.cvh__lista a, .cvh__marca, .cvh__sub { white-space:nowrap; }
@media (min-width:992px) and (max-width:1180px){ .cvh__sub { display:none; } .cvh__lista a { padding:0 9px; } .cvh__fila { gap:14px; } }
@media (prefers-reduced-motion:no-preference){ .cvh__lista a, .cvh__cta { transition:color .15s, background .15s, border-color .15s; } }
