/* PATCH V38: sidebar landing bisa diklik, overlay tidak menutup menu */
.haji-header{
  z-index:2000!important;
  overflow:visible!important;
}
.haji-menu-btn{
  height:46px!important;
  border:1px solid #dfece7!important;
  background:#fff!important;
  border-radius:15px!important;
  padding:0 16px!important;
  font-weight:800!important;
  color:#0a5f48!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  box-shadow:0 10px 22px rgba(3,55,43,.07)!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:2003!important;
}
.haji-header{grid-template-columns:auto 1fr auto auto!important;gap:16px!important;align-items:center!important}
.haji-nav{
  position:fixed!important;
  top:0!important;
  left:0!important;
  bottom:0!important;
  width:min(330px,86vw)!important;
  height:100dvh!important;
  background:rgba(255,255,255,.985)!important;
  z-index:2004!important;
  box-shadow:22px 0 55px rgba(15,31,27,.18)!important;
  transform:translateX(-105%)!important;
  transition:transform .24s ease!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  justify-content:flex-start!important;
  gap:8px!important;
  padding:82px 18px 18px!important;
  overflow:auto!important;
  color:#10251f!important;
  pointer-events:auto!important;
  -webkit-overflow-scrolling:touch!important;
}
.haji-nav.open{transform:translateX(0)!important;pointer-events:auto!important}
.haji-nav,.haji-nav *{pointer-events:auto!important}
.haji-nav:before{content:'Menu Navigasi';position:absolute;top:22px;left:20px;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:#08745a;font-weight:900}
.landing-nav-close{position:absolute;top:14px;right:14px;width:42px;height:42px;border:0;border-radius:14px;background:#f1faf6;color:#095e49;display:grid;place-items:center;font-size:28px;font-weight:800;line-height:1;cursor:pointer;z-index:1}
.haji-nav a{
  height:auto!important;
  min-height:48px!important;
  border:1px solid #e3eee9!important;
  border-radius:16px!important;
  padding:0 16px!important;
  background:#fff!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  font-size:15px!important;
  font-weight:800!important;
  color:#10251f!important;
  box-shadow:none!important;
  cursor:pointer!important;
  position:relative!important;
  z-index:0!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:rgba(8,122,95,.12)!important;
}
.haji-nav a:after{display:none!important}
.haji-nav a.active{background:#087a5f!important;color:#fff!important;border-color:#087a5f!important}
.haji-nav a:hover{background:#eefbf6!important;color:#087a5f!important}
.haji-nav a.active:hover{background:#087a5f!important;color:#fff!important}
.landing-side-overlay{
  position:fixed!important;
  inset:0!important;
  background:rgba(6,18,14,.43)!important;
  z-index:1999!important;
  opacity:0!important;
  visibility:hidden!important;
  transition:.2s ease!important;
  backdrop-filter:blur(2px)!important;
  pointer-events:none!important;
}
.landing-side-overlay.show{opacity:1!important;visibility:visible!important;pointer-events:auto!important}
body.landing-sidebar-open{overflow:hidden!important}
@media(min-width:900px){.haji-nav{width:310px!important}.haji-menu-btn{margin-left:auto}.haji-header{padding-left:clamp(42px,5.5vw,96px)!important;padding-right:clamp(42px,5.5vw,96px)!important}.haji-login-btn{justify-self:end}}
@media(max-width:760px){.haji-header{position:sticky!important;top:0!important;padding:12px 14px!important;grid-template-columns:1fr auto auto!important}.haji-brand strong{max-width:145px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.haji-menu-btn{height:42px!important;padding:0 12px!important;border-radius:13px!important;font-size:0!important}.haji-menu-btn span{font-size:18px!important}.haji-login-btn{height:42px;min-width:76px;padding:0 16px}.haji-nav{padding-top:76px!important}}
@media(max-width:390px){.haji-brand strong{max-width:118px}.haji-login-btn{min-width:68px;padding:0 12px}.haji-logo{width:36px!important;height:36px!important;flex-basis:36px!important}}

/* V52 green override */
.bottom-nav a.active,.bottom-nav button.active,.bottom-nav .active{background:#e9f9ef!important;color:#087353!important;border-color:#bdebd7!important}
.bottom-nav a,.bottom-nav button,.gps-modal button,.haji-sidebar-panel a{color:#087353!important}
.gps-modal .btn.primary,.attendance-submit,.haji-sidebar-panel .active{background:linear-gradient(135deg,#087353,#0f8a63)!important;color:#fff!important}
