
/* Language switcher icon inside header */
header .lang-switch, .lang-switch.in-header {
  position: absolute;
  top: 12px;
  right: 12px;
  z-index: 50;
}
.lang-switch .btn {
  width: 36px; height: 36px;
  display: grid; place-items: center;
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 10px;
  background: rgba(255,255,255,.9);
  cursor: pointer;
  user-select: none;
}
.lang-switch .btn .icon { font-size: 18px; line-height: 1; }
.lang-switch .menu {
  position: absolute;
  right: 0; margin-top: 8px;
  min-width: 160px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.1);
  border-radius: 12px;
  box-shadow: 0 8px 24px rgba(0,0,0,.08);
  display: none;
}
.lang-switch.open .menu { display: block; }
.lang-switch .item { padding: 10px 12px; display: flex; gap: 8px; align-items: center; cursor: pointer; }
.lang-switch .item:hover { background: #f5f5f5; }

/* Fade transition for language change */
.i18n-root { transition: opacity .25s ease; }
.i18n-root.i18n-fadeout { opacity: 0; }

/* Preloader */
#preloader {
  position: fixed; inset: 0; background: #ff7a00;
  display: flex; align-items: center; justify-content: center;
  z-index: 9999; transition: opacity .4s ease;
}
#preloader img { width: 80px; height: 80px; animation: spin 1.2s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
body.loaded #preloader { opacity: 0; pointer-events: none; }

@media (max-width: 768px){
  header .lang-switch, .lang-switch.in-header { top: 8px; right: 8px; }
}
