/* kp-i18n — shared control styling. Per-site override --kp-i18n-accent / --kp-i18n-bg / --kp-i18n-fg. */
.kp-i18n{
  position:fixed; left:16px; bottom:16px; z-index:60;
  --kp-i18n-accent:#444; --kp-i18n-bg:rgba(20,20,22,.92); --kp-i18n-fg:#f4f2ee;
  font-family:inherit;
}
.kp-i18n__toggle{
  display:inline-flex; align-items:center; gap:.42em;
  padding:.5em .8em; border:1px solid rgba(255,255,255,.16);
  border-radius:999px; background:var(--kp-i18n-bg); color:var(--kp-i18n-fg);
  font-size:13px; font-weight:600; letter-spacing:.02em; cursor:pointer;
  box-shadow:0 6px 22px rgba(0,0,0,.28); backdrop-filter:blur(8px);
  transition:transform .18s ease, box-shadow .18s ease;
}
.kp-i18n__toggle:hover{ transform:translateY(-1px); box-shadow:0 10px 28px rgba(0,0,0,.34); }
.kp-i18n__toggle:focus-visible{ outline:2px solid var(--kp-i18n-accent); outline-offset:2px; }
.kp-i18n__globe{ color:var(--kp-i18n-accent); font-size:1.05em; line-height:1; }
.kp-i18n__dot{ opacity:.5; }
.kp-i18n__cur{ font-variant-numeric:tabular-nums; }

.kp-i18n__panel{
  position:absolute; left:0; bottom:calc(100% + 10px); width:min(280px,78vw);
  padding:14px; border-radius:14px; border:1px solid rgba(255,255,255,.12);
  background:var(--kp-i18n-bg); color:var(--kp-i18n-fg);
  box-shadow:0 18px 44px rgba(0,0,0,.4); backdrop-filter:blur(12px);
  transform-origin:bottom left; animation:kpI18nIn .18s ease;
}
@keyframes kpI18nIn{ from{ opacity:0; transform:translateY(6px) scale(.97);} to{ opacity:1; transform:none;} }
.kp-i18n__row{ margin-bottom:12px; }
.kp-i18n__row:last-of-type{ margin-bottom:6px; }
.kp-i18n__lbl{
  display:block; font-size:11px; text-transform:uppercase; letter-spacing:.12em;
  opacity:.6; margin-bottom:7px;
}
.kp-i18n__opts{ display:flex; flex-wrap:wrap; gap:6px; }
.kp-i18n__opt{
  padding:.42em .7em; border-radius:9px; border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.04); color:inherit; font-size:12.5px; font-weight:500;
  cursor:pointer; transition:background .15s ease, border-color .15s ease, color .15s ease;
}
.kp-i18n__opt:hover{ background:rgba(255,255,255,.1); }
.kp-i18n__opt:focus-visible{ outline:2px solid var(--kp-i18n-accent); outline-offset:1px; }
.kp-i18n__opt[aria-current="true"]{
  background:var(--kp-i18n-accent); border-color:var(--kp-i18n-accent);
  color:#fff; font-weight:600;
}
.kp-i18n__note{ margin:2px 0 0; font-size:10.5px; letter-spacing:.04em; opacity:.5; }

@media (prefers-reduced-motion: reduce){
  .kp-i18n__toggle{ transition:none; }
  .kp-i18n__panel{ animation:none; }
}

/* ---- Purrhaus per-site accent override ---- */
.kp-i18n{ --kp-i18n-accent:#E0491F; --kp-i18n-bg:rgba(28,20,16,.92); --kp-i18n-fg:#f6efe6; }
