/* PANEL DE NAVEGACION - generado por ensamblar_acercarse.py
   Sustituye la tira de 22 enlaces con scroll horizontal que tenia la barra.
   Va en archivo aparte para no tocar el estilo.css heredado de Pilares. */
.topbar{overflow:visible !important;position:fixed}
/* El grupo de navegacion se centra respecto a la VENTANA, no respecto al hueco
   que dejan el logo y los controles: con margin:auto quedaba descentrado. */
.topbar .tnav{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);
  display:flex;align-items:center;gap:8px}
/* donde estas: etiqueta, no boton. Los grupos van al lado y se abren solos. */
.tb-aqui{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;
  border-radius:9px;background:var(--panel2);border:1px solid var(--line);
  font-size:13px;font-weight:700;color:var(--txt);white-space:nowrap;
  max-width:min(24vw,300px);overflow:hidden;text-overflow:ellipsis}
.tb-sep{width:1px;height:24px;background:var(--line);margin:0 4px}
/* UN COLOR POR TRAMO. Valores literales: son los mismos que el :root de
   Pilares (--suave, --accent2, --medio, --muted). Con var() el color calculado
   no salia el esperado, y un literal no puede fallar. */
.gtab.tr0 .gcount{background:rgba(92,214,160,.20);color:#5cd6a0}
.gtab.tr1 .gcount{background:rgba(79,195,247,.20);color:#4fc3f7}
.gtab.tr2 .gcount{background:rgba(255,206,84,.20);color:#ffce54}
.gtab.tr3 .gcount{background:rgba(154,164,182,.20);color:#9aa4b6}
.gtab.tr0.abierta{border-color:#5cd6a0}
.gtab.tr1.abierta{border-color:#4fc3f7}
.gtab.tr2.abierta{border-color:#ffce54}
.gtab.tr3.abierta{border-color:#9aa4b6}
.leyenda{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px}
.leyenda span{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;
  color:var(--muted);background:var(--panel2);border:1px solid var(--line);
  border-radius:9px;padding:5px 10px}
.leyenda i{width:11px;height:11px;border-radius:3px;display:inline-block}
.tbl-wrap{overflow-x:auto;margin:16px 0}
.tbl-wrap table.tbl{margin:0}
table.tbl td{border:1px solid #667287}
table.tbl th{border:1px solid #667287;background:var(--panel3);
  border-bottom-width:2px;border-bottom-color:#7d8ba3}
table.tbl{border:2px solid #7d8ba3;border-radius:6px;overflow:hidden}
table.tbl tr:nth-child(even) td{background:rgba(255,255,255,.035)}
.gtabs{display:flex;align-items:center;gap:4px}
.gtab{display:inline-flex;align-items:center;gap:6px;background:transparent;
  border:1px solid transparent;color:var(--muted);border-radius:9px;padding:6px 11px;
  font-family:var(--ui);font-size:12px;font-weight:800;cursor:pointer;
  letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.gtab:hover{color:var(--txt);background:var(--panel2);border-color:var(--line)}
.gtab.abierta{color:var(--txt);background:var(--panel2);border-color:var(--accent)}
.gtab.activa{color:var(--accent)}
.gcount{display:inline-block;min-width:16px;height:16px;line-height:16px;text-align:center;
  border-radius:8px;background:var(--panel2);color:var(--muted);font-size:10px;padding:0 4px}
.gtab.activa .gcount,.gtab.abierta .gcount{background:var(--accent);color:#0c0e13}
.tb-nav{width:32px;height:32px;flex:0 0 32px;display:inline-flex;align-items:center;
  justify-content:center;border-radius:9px;border:1px solid var(--line);
  background:var(--panel2);color:var(--txt);font-size:17px;line-height:1;text-decoration:none}
.tb-nav:hover{border-color:var(--accent);color:var(--accent);text-decoration:none}
.tb-nav.vacia{opacity:.25;pointer-events:none}

/* El desplegable cuelga DE LA BARRA, no tapa la pantalla: se abre, se elige y
   se sigue leyendo. Se cierra sin querer al mover el raton fuera o pulsar Esc. */
.navpanel{position:fixed;top:var(--topbar-h);left:0;right:0;z-index:59;display:none}
.navpanel.abierto{display:block}
.ghoja{display:none;background:var(--panel);border-bottom:1px solid var(--line);
  box-shadow:0 16px 40px rgba(0,0,0,.4);padding:16px 22px 20px;
  max-height:calc(100vh - var(--topbar-h) - 20px);overflow-y:auto}
.ghoja.abierta{display:block}
.ghead{font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--muted);
  font-weight:800;margin-bottom:11px}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:7px;
  max-width:1180px;margin:0 auto}
.pitem{display:flex;align-items:center;gap:9px;padding:9px 11px;border-radius:10px;
  border:1px solid var(--line);background:var(--panel2);color:var(--txt);
  font-size:13px;line-height:1.25;text-decoration:none}
.pitem:hover{border-color:var(--accent);text-decoration:none}
.pitem.activo{border-color:var(--accent);background:var(--accent);color:#0c0e13;font-weight:700}
.pitem.activo .pnum{background:rgba(0,0,0,.25);color:#0c0e13}
.pnum{flex:0 0 21px;height:21px;line-height:21px;text-align:center;border-radius:50%;
  background:var(--accent);color:#0c0e13;font-size:11px;font-weight:800}
.pitem.foco{outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:1100px){
  .tb-aqui{display:none}          /* la barra prioriza los grupos */
  .tb-sep{display:none}
}
@media(max-width:720px){
  .gtab{padding:6px 8px;font-size:11px;letter-spacing:.02em}
  .gcount{display:none}
  .pgrid{grid-template-columns:1fr 1fr}
  .ghoja{padding:14px}
}
