/* Closer Public: OG Closer-inspired top bar and unified floating dock. */
html{--closer-shell-top:calc(max(env(safe-area-inset-top), 15px) + 10px)}
body #app .closer-sticky-top{
  position:fixed;top:0;left:50%;transform:translate3d(-50%,0,0);
  z-index:45;width:100%;max-width:610px;
  padding:var(--closer-shell-top) 19px 26px;
  background:linear-gradient(180deg,rgba(10,44,72,.985) 0%,rgba(11,47,76,.96) 65%,rgba(12,49,79,.58) 84%,rgba(12,49,79,0) 100%);
  border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;
  visibility:visible;opacity:1;pointer-events:auto;
  transition:transform .24s cubic-bezier(.22,.7,.2,1),opacity .21s ease,visibility .21s ease;
  will-change:transform;
}
body #app .closer-sticky-top.hidden{
  transform:translate3d(-50%,-115%,0);
  opacity:0;visibility:hidden;pointer-events:none
}
body #app .closer-sticky-inner{min-height:43px;display:flex;align-items:center;justify-content:space-between;gap:14px}
body #app .closer-sticky-inner .logo{font-weight:880;font-size:25px;line-height:1.1;letter-spacing:-1.4px;color:#f2f9ff;white-space:nowrap}
body #app .closer-sticky-inner .logo b{color:#d66b9c;font-size:26px;letter-spacing:0}
body #app .closer-sticky-inner .mini-menu{
  display:grid;place-items:center;
  background:rgba(43,99,130,.28);border:1px solid rgba(132,183,209,.33);
  color:#f2f9ff;width:44px;height:44px;min-width:44px;
  padding:0;font-size:23px;line-height:1;border-radius:14px;
  box-shadow:none;touch-action:manipulation
}
body #app .shell{
  padding-top:calc(var(--closer-shell-top) + 75px);
  padding-bottom:calc(112px + env(safe-area-inset-bottom));
}
body #app .intro.improved-intro{
  padding-top:calc(var(--closer-shell-top) + 92px);
  padding-bottom:calc(105px + env(safe-area-inset-bottom));
  min-height:100dvh;
}
body #app nav.dock.closer-floating-dock{
  position:fixed;left:50%;right:auto;bottom:calc(9px + env(safe-area-inset-bottom));
  width:min(calc(100vw - 22px),560px);
  transform:translate3d(-50%,0,0);
  visibility:visible;opacity:1;pointer-events:auto;
  z-index:45;
  transition:transform .28s cubic-bezier(.22,.7,.2,1),opacity .24s ease,visibility .24s ease;
  will-change:transform;
  display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;
  border-radius:24px;padding:7px;
  background:rgba(10,43,68,.96);
  border:1px solid rgba(132,183,209,.3);
  box-shadow:0 12px 35px #020b1c80;
}
body #app nav.dock.closer-floating-dock.dock-hidden{
 transform:translate3d(-50%,calc(100% + 44px),0);
 visibility:hidden;opacity:0;pointer-events:none
}
body #app nav.dock.closer-floating-dock button{min-width:0;min-height:53px;padding:7px 2px;font-weight:730}
body #app nav.dock.closer-floating-dock button.active{background:rgba(98,121,157,.3);color:#fff}
body #app nav.dock.closer-floating-dock .ico{font-size:23px}
body #closer-public-nav-reveal{
 position:fixed;z-index:46;left:50%;bottom:calc(1px + env(safe-area-inset-bottom));
 transform:translateX(-50%);
 width:78px;height:27px;border:0;border-radius:50px;padding:0;
 display:flex;align-items:center;justify-content:center;
 background:transparent;cursor:pointer;touch-action:manipulation
}
body #closer-public-nav-reveal[hidden]{display:none}
body #closer-public-nav-reveal span{
 display:block;width:39px;height:5px;border-radius:8px;background:#bad9e8cc;
 box-shadow:0 1px 8px #061a2a77
}
@media(prefers-reduced-motion:reduce){
 body #app .closer-sticky-top,body #app nav.dock.closer-floating-dock{transition:none}
}
