/* Přepínač jazyka CS/EN. Samostatný soubor, protože ho používají všechny
   šablony webu (hlavní stránky, blog, Akademie i landing page), které jinak
   sdílený styl nemají. */
.langsw{
  display:inline-flex; align-items:center; gap:.25rem;
  font-family:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size:.72rem; font-weight:500; letter-spacing:.06em;
  padding:.28rem .5rem; border-radius:100px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04);
  line-height:1; white-space:nowrap;
}
.langsw__opt{
  color:rgba(255,255,255,.52); text-decoration:none;
  padding:.16rem .3rem; border-radius:100px;
  transition:color .2s, background .2s;
}
.langsw__opt:hover{ color:#fff; }
.langsw__opt.is-on{ color:#D8FF47; }
.langsw__sep{ color:rgba(255,255,255,.22); }

/* světlý podklad (landing page /web-plzen/) - jinak by byl přepínač neviditelný */
.langsw--light{ border-color:rgba(0,0,0,.18); background:rgba(0,0,0,.03); }
.langsw--light .langsw__opt{ color:rgba(0,0,0,.5); }
.langsw--light .langsw__opt:hover{ color:#0A0A0A; }
.langsw--light .langsw__opt.is-on{ color:#FF3B1F; }
.langsw--light .langsw__sep{ color:rgba(0,0,0,.25); }

@media (max-width:880px){
  .langsw{ font-size:.68rem; padding:.24rem .42rem; }
}

/* ── tip na druhou jazykovou verzi (js/lang.js) ── */
.langhint{
  position:fixed; left:50%; bottom:16px; transform:translate(-50%,140%);
  z-index:120; display:flex; align-items:center; gap:.85rem;
  max-width:min(92vw,560px); padding:.7rem .8rem .7rem 1rem;
  border-radius:14px; border:1px solid rgba(255,255,255,.14);
  background:rgba(18,18,20,.94); backdrop-filter:blur(12px);
  box-shadow:0 18px 40px -18px rgba(0,0,0,.8);
  color:#F2F0EA; font-size:.88rem; line-height:1.35;
  opacity:0; transition:transform .35s cubic-bezier(.2,.8,.2,1), opacity .3s;
}
.langhint.is-in{ transform:translate(-50%,0); opacity:1; }
.langhint__t{ flex:1 1 auto; }
.langhint__go{
  flex:0 0 auto; color:#0A0A0A; background:#D8FF47; text-decoration:none;
  font-weight:700; font-size:.8rem; padding:.42rem .8rem; border-radius:100px;
  white-space:nowrap;
}
.langhint__go:hover{ filter:brightness(1.06); }
.langhint__x{
  flex:0 0 auto; width:28px; height:28px; border:0; border-radius:50%;
  background:transparent; color:rgba(255,255,255,.5); font-size:1.1rem;
  line-height:1; cursor:pointer;
}
.langhint__x:hover{ color:#fff; background:rgba(255,255,255,.08); }
@media (max-width:520px){
  .langhint{ left:12px; right:12px; transform:translateY(140%); max-width:none; flex-wrap:wrap; }
  .langhint.is-in{ transform:translateY(0); }
  .langhint__t{ flex:1 1 100%; }
}
@media (prefers-reduced-motion:reduce){ .langhint{ transition:none; } }
