/* ==========================================================================
   langsw.css — prepínač jazykov SK / EN / DE.

   Vlastný súbor zámerne: cv.html nenačítava style.css, takže by tam
   prepínač ostal bez štýlu. Z rovnakého dôvodu má každá premenná aj
   náhradnú hodnotu — na CV stránke :root z style.css neexistuje.
   ========================================================================== */

.langsw {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  margin-left: 18px;
  padding: 3px;
  border: 1px solid var(--line, #C7D1CB);
  border-radius: 999px;
  background: var(--paper, #F3F5F4);
  flex: none;
}

/* Selektory idú zámerne cez .langsw. Prepínač sedí v .nav__links, kde
   platí `.nav__links a.is-active` — a to by inak prebilo bielu farbu
   aktívneho jazyka a nechalo tmavozelený text na zelenej pilulke. */
.langsw .langsw__opt {
  display: block;
  padding: 6px 12px;
  border-radius: 999px;
  font-family: var(--font-mono, "IBM Plex Mono", ui-monospace, monospace);
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .12em;
  line-height: 1;
  text-decoration: none;
  color: var(--ink-60, #41534b);
  transition: color .16s ease, background .16s ease, box-shadow .16s ease;
}
.langsw .langsw__opt:hover {
  color: var(--ink, #0E1F19);
  background: rgba(14, 138, 95, .12);
}

/* Aktívny jazyk je plná zelená pilulka s bielym textom. Nespolieha sa len
   na farbu — líši sa aj váhou písma, takže ho rozozná aj farboslepý
   návštevník a prežije aj čiernobielu tlač. */
.langsw .langsw__opt.is-active {
  background: var(--signal-dark, #0A6B4A);
  color: #fff;
  font-weight: 700;
  box-shadow: 0 1px 2px rgba(14, 31, 25, .28), 0 0 0 1px var(--signal-dark, #0A6B4A);
}
.langsw .langsw__opt.is-active:hover {
  background: var(--signal-dark, #0A6B4A);
  color: #fff;
}
.langsw .langsw__opt:focus-visible {
  outline: 2px solid var(--signal, #0E8A5F);
  outline-offset: 2px;
}

/* V rozbalenom menu na telefóne sedí prepínač na vlastnom riadku. */
@media (max-width: 720px) {
  .langsw { margin-left: 0; align-self: flex-start; }
}

@media print { .langsw { display: none !important; } }
