/* =========================================================
   css/i18n.css — menu akun + bahasa di header, dan pengaman
   tampilan saat mesin terjemahan (js/i18n.js) masih bekerja.

   Semua warna memakai token yang sudah ada di css/style.css:1-40.
   Tidak ada nilai warna baru diperkenalkan di sini.
   ========================================================= */

/* Sembunyikan isi halaman HANYA pada kunjungan berbahasa Inggris yang
   kamusnya belum siap, supaya teks Indonesia tidak sempat terlihat lalu
   berganti. js/i18n.js menempelkan .i18n-siap paling lambat 1200 ms
   apa pun yang terjadi — jadi halaman tidak pernah bisa terkunci kosong.
   Saat JavaScript mati, lang tetap "id" dan aturan ini tidak pernah aktif. */
html[lang="en"]:not(.i18n-siap) body {
  visibility: hidden;
}

/* ===== Pembungkus menu ===== */
.akun-menu {
  position: relative;
  display: inline-flex;
  align-items: center;
}

/* Tombol setting dibungkus rapi dalam bentuk pill kompak:
   ikon roda gigi bersanding dengan label Setting yang elegan. */
.akun-menu-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  height: 32px;
  padding: 0 11px;
  border-radius: 9999px;
  font-family: inherit;
  font-size: 0.78rem;
  font-weight: 500;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  background: var(--surface-sunken);
  border: 1px solid var(--surface-border);
  color: var(--light-text);
  white-space: nowrap;
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: all 0.25s ease;
}

.akun-menu-toggle:hover {
  color: var(--primary-color);
  background-color: rgba(0, 170, 255, 0.08);
  border-color: rgba(0, 170, 255, 0.3);
  box-shadow: 0 0 12px rgba(0, 170, 255, 0.15);
  transform: translateY(-1px);
}

.akun-menu-toggle i {
  font-size: 0.82rem;
  transition: transform 0.3s ease;
}

.akun-menu-label {
  font-size: 0.76rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1;
}

.akun-menu[data-terbuka="true"] .akun-menu-toggle i {
  transform: rotate(60deg);
}

.akun-menu[data-terbuka="true"] .akun-menu-toggle {
  color: var(--primary-color);
  background-color: rgba(0, 170, 255, 0.08);
  border-color: rgba(0, 170, 255, 0.3);
}

/* ===== Panel melayang ===== */
.akun-menu-panel {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  min-width: 218px;
  max-width: min(268px, calc(100vw - 24px));
  padding: 6px;
  /* --panel-bg memang token untuk "modal, dropdown" (css/style.css:33-35):
     lebih pekat dari kartu konten supaya teks tetap terbaca di atas
     halaman yang ramai. */
  background: var(--panel-bg);
  border: 1px solid var(--surface-border-strong);
  border-radius: var(--radius-md);
  backdrop-filter: var(--surface-blur);
  -webkit-backdrop-filter: var(--surface-blur);
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.5);
  /* Di atas .mobile-top-header (1001) dan header#main-header (1000). */
  z-index: 1002;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition:
    opacity 0.2s ease,
    transform 0.2s ease,
    visibility 0.2s ease;
}

/* Jembatan transparan agar kursor tidak kehilangan hover saat melintasi celah 8px */
.akun-menu-panel::before {
  content: "";
  position: absolute;
  top: -10px;
  left: 0;
  right: 0;
  height: 10px;
}

.akun-menu[data-terbuka="true"] .akun-menu-panel {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Desktop: sorot (hover) langsung memunculkan menu tanpa harus klik */
@media (min-width: 769px) {
  .akun-menu:hover .akun-menu-panel,
  .akun-menu:focus-within .akun-menu-panel {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    pointer-events: auto;
  }

  .akun-menu:hover .akun-menu-toggle i {
    transform: rotate(60deg);
  }

  .akun-menu:hover .akun-menu-toggle {
    color: var(--primary-color);
    background-color: rgba(0, 170, 255, 0.08);
    border-color: rgba(0, 170, 255, 0.3);
  }
}

/* ===== Isi panel ===== */
.akun-menu-judul {
  margin: 8px 12px 4px;
  font-size: 0.64rem;
  font-style: normal;
  font-weight: 600;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--dark-text);
}

.akun-menu-pisah {
  height: 1px;
  margin: 6px 8px;
  background: var(--surface-border);
}

.akun-menu-item {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  padding: 9px 12px;
  border: 0;
  border-radius: var(--radius-sm);
  background: transparent;
  color: var(--light-text);
  font-family: inherit;
  font-size: 0.82rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.3;
  text-align: left;
  text-decoration: none;
  cursor: pointer;
  transition:
    background-color 0.18s ease,
    color 0.18s ease;
}

.akun-menu-item:hover,
.akun-menu-item:focus-visible {
  background-color: rgba(0, 170, 255, 0.1);
  color: var(--primary-color);
  outline: none;
}

.akun-menu-item i {
  width: 1em;
  font-size: 0.95em;
  text-align: center;
}

.akun-menu-bendera {
  font-size: 1.05em;
  line-height: 1;
}

.akun-menu-centang {
  margin-left: auto;
  font-size: 0.75em;
  color: var(--primary-color);
  opacity: 0;
}

.akun-menu-bahasa[aria-checked="true"] {
  color: var(--primary-color);
}

.akun-menu-bahasa[aria-checked="true"] .akun-menu-centang {
  opacity: 1;
}

/* ===== Mode HP ===== */
/* Panel turun dari header atas (.mobile-top-header, tinggi 60px) — nav
   bawah tidak menghalangi. Lebar dijaga supaya tidak pernah memicu
   scroll horizontal di layar 360-390px. */
@media (max-width: 768px) {
  .akun-menu-toggle {
    height: 28px;
    padding: 0 9px;
    gap: 5px;
  }

  .akun-menu-toggle i {
    font-size: 0.76rem;
  }

  .akun-menu-label {
    font-size: 0.7rem;
  }

  .akun-menu-panel {
    top: calc(100% + 8px);
    min-width: 200px;
    max-width: calc(100vw - 30px);
  }

  .akun-menu-item {
    padding: 10px 12px;
    font-size: 0.84rem;
  }
}

/* Penanda teks yang diterjemahkan mesin saat itu juga (komentar pengunjung,
   artikel yang belum di-prabuild) — bukan dari kamus yang sudah ditinjau.
   Sengaja tanpa efek visual bawaan: ini kait untuk debugging dan untuk
   kalau suatu saat mau ditandai ke pembaca. */
[data-i18n-mt] {
  /* tidak ada gaya; lihat komentar di atas */
}
