/* Salt Kitchen Sticky / Frozen Header Update - 2026-06-12
   Keeps Customer and Admin top navigation visible while page content scrolls. */
:root{
  --sk-ocean-teal:#0f6f73;
  --sk-ocean-teal-dark:#074f52;
  --sk-warm-gold:#d8a331;
  --sk-header-height:68px;
  --sk-admin-topbar-height:64px;
}
html,body{
  overflow-x:hidden!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y!important;
  overscroll-behavior-y:auto;
}
body.customer-page{
  padding-top:var(--sk-header-height)!important;
}
.customer-header,.site-header,.modern-mobile-header{
  position:fixed!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:99990!important;
  min-height:var(--sk-header-height)!important;
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid rgba(15,111,115,.16)!important;
  box-shadow:0 8px 24px rgba(15,111,115,.08)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
.customer-header.is-scrolled,.site-header.is-scrolled{
  box-shadow:0 12px 30px rgba(15,111,115,.16)!important;
}
.customer-logo,.site-header .logo{
  font-family:"Trebuchet MS","Segoe UI",Arial,sans-serif!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  color:var(--sk-ocean-teal-dark)!important;
}
.customer-logo .brand-icon,.brand-icon{
  width:40px!important;
  height:40px!important;
  object-fit:contain!important;
}
.customer-nav a,.site-header nav a{
  font-size:13px!important;
  line-height:1.15!important;
  font-weight:850!important;
  padding:8px 10px!important;
  min-height:38px!important;
}
.customer-menu-btn,.menu-btn,.mobile-menu-btn{
  width:42px!important;
  height:40px!important;
  min-width:42px!important;
  min-height:40px!important;
  padding:0!important;
  border-radius:13px!important;
  background:linear-gradient(135deg,var(--sk-ocean-teal),var(--sk-ocean-teal-dark))!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(15,111,115,.22)!important;
}
.customer-menu-btn .menu-lines,
.customer-menu-btn .menu-lines:before,
.customer-menu-btn .menu-lines:after{
  background:#fff!important;
}
@media(max-width:900px){
  :root{--sk-header-height:60px;--sk-admin-topbar-height:60px;}
  body.customer-page{padding-top:60px!important;padding-bottom:78px!important;}
  .customer-header,.site-header,.modern-mobile-header{
    min-height:60px!important;
    height:60px!important;
    padding:8px 10px!important;
    flex-wrap:nowrap!important;
  }
  .customer-logo,.site-header .logo{
    font-size:15px!important;
    max-width:calc(100vw - 66px)!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .customer-logo .brand-icon,.brand-icon{width:34px!important;height:34px!important;}
  .customer-nav,.site-header nav{
    position:fixed!important;
    top:66px!important;
    left:10px!important;
    right:10px!important;
    max-height:calc(100dvh - 86px)!important;
    overflow-y:auto!important;
    -webkit-overflow-scrolling:touch!important;
    touch-action:pan-y!important;
    border-radius:22px!important;
    z-index:99999!important;
  }
  .customer-nav a,.site-header nav a{
    font-size:13px!important;
    min-height:42px!important;
    padding:10px 12px!important;
  }
}
/* Admin fixed topbar */
.admin-main-wrap{min-height:100vh!important;}
.admin-topbar{
  position:fixed!important;
  top:0!important;
  right:0!important;
  left:var(--sidebar,278px)!important;
  height:var(--sk-admin-topbar-height)!important;
  z-index:99980!important;
  background:rgba(255,255,255,.96)!important;
  border-bottom:1px solid rgba(15,111,115,.14)!important;
  box-shadow:0 8px 24px rgba(15,111,115,.08)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}
.admin-topbar.is-scrolled{box-shadow:0 12px 30px rgba(15,111,115,.16)!important;}
.admin-content{
  padding-top:calc(var(--sk-admin-topbar-height) + 18px)!important;
}
.admin-sidebar{
  position:fixed!important;
  top:0!important;
  bottom:0!important;
  left:0!important;
}
@media(max-width:900px){
  .admin-topbar{
    left:0!important;
    height:60px!important;
    min-height:60px!important;
    padding:8px 10px!important;
  }
  .admin-content{
    padding-top:76px!important;
  }
  .mobile-menu-btn{font-size:20px!important;}
}
/* Floating back-to-top helper */
.sk-back-top{
  position:fixed;
  right:16px;
  bottom:88px;
  width:44px;
  height:44px;
  border:0;
  border-radius:999px;
  background:linear-gradient(135deg,var(--sk-ocean-teal),var(--sk-ocean-teal-dark));
  color:#fff;
  font-weight:950;
  box-shadow:0 14px 30px rgba(15,111,115,.28);
  z-index:99970;
  opacity:0;
  transform:translateY(12px);
  pointer-events:none;
  transition:.2s ease;
}
.sk-back-top.show{opacity:1;transform:translateY(0);pointer-events:auto;}
