/* ============================================
   FORCE STICKY HEADER - FINAL FIX
   This overrides any conflicting CSS
   ============================================ */

/* Critical: Remove position from html/body that breaks sticky */
/* Only body gets overflow-x: hidden. If <html> also gets it (or gets an
   explicit overflow-y), <html> becomes its own scroll container and
   position: sticky on the header stops working entirely. */
html {
  position: static !important;
}
body {
  position: static !important;
  overflow-x: hidden !important;
}

/* Force sticky on header with high specificity.
   Two site templates coexist: the legacy obfuscated-class template
   (header.shadow_purple_dcb9, e.solid-77f7. apk.menu-bottom-c7b5, aplikasi.menu-bottom-c7b5, etc.) and the
   redesigned template (header.filter-last-3b52, e.solid-77f7. index.menu-bottom-c7b5, apk-download.menu-bottom-c7b5).
   Both selectors must stay here or one template's sticky header breaks. */
header.shadow_purple_dcb9,
header.filter-last-3b52 {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 1000 !important;
  transform: translateZ(0) !important;
}

/* Ensure main wrapper allows sticky */
main {
  overflow: visible !important;
}

/* css-noise: 94a5 */
.notice-left-74a8 {
  padding: 0.4rem;
  font-size: 14px;
  line-height: 1.1;
}

/* css-noise: fd8d */
.shadow-element-d8 {
  padding: 0.4rem;
  font-size: 10px;
  line-height: 1.0;
}
