/* Grafos · selector de idioma — www.grafos.cl/lang/grafos-lang.css */
.gl-switcher { position: relative; display: inline-block; font: 500 14px/1.2 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; z-index: 1000; }
.gl-switcher.gl-floating { position: fixed; top: 12px; right: 12px; }
.gl-btn { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border: 1px solid rgba(0,0,0,.15); border-radius: 999px; background: #fff; color: #1f2933; cursor: pointer; }
.gl-btn:hover, .gl-btn:focus-visible { border-color: #2a8fc9; outline: none; box-shadow: 0 0 0 3px rgba(42,143,201,.2); }
.gl-caret { font-size: 10px; opacity: .6; }
.gl-flag { display: inline-flex; width: 21px; height: 14px; border-radius: 2px; overflow: hidden; box-shadow: 0 0 0 1px rgba(0,0,0,.12); flex: none; }
.gl-flag svg { width: 100%; height: 100%; display: block; }
.gl-menu { position: absolute; right: 0; top: calc(100% + 6px); min-width: 170px; margin: 0; padding: 6px; list-style: none; background: #fff; border-radius: 10px; box-shadow: 0 10px 30px rgba(0,0,0,.15); }
.gl-menu[hidden] { display: none; }
.gl-menu a { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 6px; color: #1f2933; text-decoration: none; }
.gl-menu a:hover, .gl-menu a:focus-visible { background: #eef6fb; outline: none; }
.gl-menu a.gl-current { font-weight: 700; background: #f4f7f9; }

/* Aviso de sugerencia (fondo oscuro → texto blanco) */
.gl-suggest { position: fixed; left: 50%; bottom: 16px; transform: translate(-50%, 140%); display: flex; align-items: center; gap: 10px; max-width: calc(100% - 32px); padding: 10px 12px 10px 14px; background: #1b2b3a; color: #fff; border-radius: 12px; box-shadow: 0 12px 32px rgba(0,0,0,.3); font: 400 14px/1.35 system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; z-index: 1001; transition: transform .35s ease; }
.gl-suggest.gl-show { transform: translate(-50%, 0); }
.gl-suggest-text { color: #fff; }
.gl-suggest-go { flex: none; padding: 6px 12px; border-radius: 999px; background: #2a8fc9; color: #fff; font-weight: 600; text-decoration: none; white-space: nowrap; }
.gl-suggest-go:hover { background: #1f7ab0; color: #fff; }
.gl-suggest-x { flex: none; width: 28px; height: 28px; border: 0; border-radius: 50%; background: transparent; color: #fff; font-size: 20px; line-height: 1; cursor: pointer; }
.gl-suggest-x:hover { background: rgba(255,255,255,.12); }
@media (max-width: 520px) {
  .gl-suggest { flex-wrap: wrap; justify-content: center; text-align: center; bottom: 10px; }
  .gl-suggest-text { flex-basis: 100%; padding: 0 22px; }
  .gl-suggest-x { position: absolute; top: 6px; right: 6px; }
}
@media (prefers-reduced-motion: reduce) { .gl-suggest { transition: none; } }

/* Ubicación en el header de grafos.cl (header_v2.php) */
.cab .cont > .menu { margin-left: auto; }
.cab .cont > .gl-switcher { flex: none; margin-left: 6px; }
.cab .gl-btn { padding: 6px 9px; }
@media (max-width: 1100px) {
  .cab .cont > .gl-switcher { margin-left: auto; margin-right: 4px; }
}
@media (max-width: 1240px) and (min-width: 1101px) {
  .cab .gl-code, .cab .gl-caret { display: none; }
}

/* Hero del index: el alto se ajusta al texto más largo de cualquier idioma (evita que el botón tape la barra de progreso) */
.hero .textos { display: grid; min-height: 0; }
.hero .textos .texto { position: relative; inset: auto; grid-area: 1 / 1; padding-bottom: 8px; }

/* Ubicación en el header del Aula Virtual (/Aula/) */
.hdr-der > .gl-switcher { flex: none; margin-right: 6px; }
.hdr-der .gl-btn { padding: 6px 9px; }
@media (max-width: 700px) {
  .hdr-der .gl-code, .hdr-der .gl-caret { display: none; }
  .hdr-der > .gl-switcher { margin-right: 2px; }
}
