/* Globe language picker -- see i18n/globe.js */

/* small spinning earth right after the 117 logo; margin-right:auto keeps the nav pushed to the right */
.nav-globe{
  display:inline-flex;align-items:center;gap:5px;
  margin:0 auto 0 12px;padding:0;border:0;background:none;cursor:pointer;color:var(--ink);
  -webkit-tap-highlight-color:transparent;
}
.nav-globe canvas{
  width:56px;height:56px;display:block;border-radius:50%;
  box-shadow:0 0 0 1px rgba(17,17,17,.06), 0 2px 8px rgba(30,70,160,.25);
  transition:transform .25s cubic-bezier(.22,1,.36,1);
}
.nav-globe:hover canvas, .nav-globe:focus-visible canvas{transform:scale(1.12);}
.nav-globe .ng-code{font-size:10px;font-weight:700;letter-spacing:.06em;opacity:.7;}
@media (max-width:480px){
  header nav{gap:12px;}
  .nav-globe{margin-left:6px;}
  .nav-globe canvas{width:48px;height:48px;}
}

/* the panel: the earth on black, languages underneath */
html.globe-open{overflow:hidden;}
.globe-panel{
  position:fixed;inset:0;z-index:1000;
  background:radial-gradient(ellipse at 50% 30%, #0b1224 0%, #020306 60%, #000 100%);
  color:#fff;overflow-y:auto;-webkit-overflow-scrolling:touch;
  display:flex;flex-direction:column;align-items:center;
  padding:56px 20px 40px;
  opacity:0;visibility:hidden;transition:opacity .35s ease, visibility 0s linear .35s;
}
.globe-panel.open{opacity:1;visibility:visible;transition:opacity .35s ease;}
.globe-panel .gl-stage{
  display:flex;justify-content:center;
  transform:scale(.86);transition:transform .7s cubic-bezier(.22,1,.36,1);
}
.globe-panel.open .gl-stage{transform:scale(1);}
.globe-panel canvas{display:block;touch-action:none;cursor:grab;}
.globe-panel canvas:active{cursor:grabbing;}
.gl-close{
  position:fixed;top:14px;right:16px;width:44px;height:44px;
  border:0;background:none;color:#fff;font-size:30px;line-height:1;cursor:pointer;opacity:.8;
}
.gl-close:hover{opacity:1;}
.gl-list{width:100%;max-width:520px;margin-top:8px;}
.gl-label{
  font-size:11px;letter-spacing:.16em;text-transform:uppercase;opacity:.55;
  margin:22px 0 10px;
}
.gl-lang{
  display:flex;flex-direction:column;align-items:flex-start;gap:2px;width:100%;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);color:#fff;
  padding:12px 14px;border-radius:10px;cursor:pointer;font:inherit;text-align:start;
  transition:background .2s, border-color .2s;
}
.gl-lang:hover, .gl-lang:focus-visible{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.4);}
.gl-lang.on{border-color:#fff;}
.gl-first .gl-lang{padding:16px 18px;background:rgba(255,59,48,.12);border-color:rgba(255,59,48,.55);}
.gl-first .gl-name{font-size:20px;}
.gl-name{font-size:15px;font-weight:600;}
.gl-sub{font-size:12px;opacity:.65;}
.gl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;}
@media (prefers-reduced-motion: reduce){
  .globe-panel, .globe-panel .gl-stage{transition:none;}
}
