/* Loaded before menu.js so the floating control never flashes in document flow. */
#desktop-floating-nav {
  position: fixed !important;
  z-index: 2147483000 !important;
  top: auto !important;
  left: auto !important;
  right: 24px !important;
  bottom: 24px !important;
  width: 120px !important;
  min-width: 120px !important;
  background: #fff !important;
  border-radius: 32px !important;
  overflow: hidden !important;
}
#desktop-floating-nav.menu-open { width: 360px !important; min-width: 360px !important; max-height: calc(100vh - 48px) !important; }
#desktop-floating-nav #nav-drag-handle {
  width: 120px !important;
  min-height: 78px !important;
  background: linear-gradient(110deg,#263e67,#39738a) !important;
  color: #fff !important;
  border-radius: 0 !important;
}
#desktop-floating-nav.menu-open #nav-drag-handle { width: 360px !important; }
#desktop-floating-nav #nav-drag-handle > div,
#desktop-floating-nav #nav-drag-handle > div i,
#desktop-floating-nav #nav-drag-handle > div span { color: #fff !important; }
#desktop-floating-nav #nav-drag-handle > div { gap: 16px !important; }
#desktop-floating-nav #nav-drag-handle > div i { font-size: 24px !important; }
#desktop-floating-nav #nav-drag-handle > div span { font-size: 22px !important; font-weight: 800 !important; letter-spacing: .09em !important; }
#desktop-floating-nav #nav-toggle-btn i { font-size: 30px !important; }
#desktop-floating-nav:not(.menu-open) #nav-drag-handle {
  width: 120px !important;
  height: 64px !important;
  min-height: 64px !important;
  padding: 0 18px !important;
  justify-content: center !important;
  gap: 10px !important;
  border-radius: 999px !important;
}
#desktop-floating-nav:not(.menu-open) #nav-drag-handle > div,
#desktop-floating-nav:not(.menu-open) #nav-drag-handle > div i,
#desktop-floating-nav:not(.menu-open) #nav-drag-handle > div span { color: #fff !important; }
#desktop-floating-nav:not(.menu-open) #nav-drag-handle > div i { font-size: 16px !important; }
#desktop-floating-nav:not(.menu-open) #nav-drag-handle > div span { font-size: 16px !important; }
#desktop-floating-nav #nav-content { width: 360px !important; padding: 18px 16px 20px !important; gap: 8px !important; background: #fff !important; overflow-y: auto; }
#desktop-floating-nav #nav-content > a { min-height: 68px !important; padding: 14px 20px !important; gap: 20px !important; font-size: 20px !important; border-radius: 22px !important; line-height: 1.2; }
#desktop-floating-nav #nav-content > a i { font-size: 24px !important; }
#desktop-floating-nav #nav-content > a.rankcs-menu-item,
#desktop-floating-nav #nav-content > button.rankcs-menu-item { min-height: 68px !important; padding: 14px 20px !important; gap: 20px !important; font-size: 20px !important; border-radius: 22px !important; line-height: 1.2; }
#desktop-floating-nav #nav-content > a.rankcs-menu-item i,
#desktop-floating-nav #nav-content > button.rankcs-menu-item i { font-size: 24px !important; }
#desktop-floating-nav #nav-content > a[class*="bg-blue-50"],
#desktop-floating-nav #nav-content > a[class*="bg-blue-100"] { background: linear-gradient(110deg,#bde9ff,#8bbcff) !important; color: #073c83 !important; border-color: #9bd3ff !important; box-shadow: 0 8px 18px rgba(69,151,232,.22); }
#desktop-floating-nav #nav-content > button.rankcs-logout-item { background: linear-gradient(110deg,#ffd3d3,#ffb8ba) !important; color: #8f1018 !important; border-color: #ffc0c2 !important; }
#desktop-floating-nav .rankcs-menu-separator { height: 2px; margin: 10px 8px 2px; border-top: 2px dashed #cbd5e1; }
#desktop-floating-nav #nav-toggle-btn,
#desktop-floating-nav #nav-toggle-btn i { color: #fff !important; }
#desktop-floating-nav #nav-toggle-btn { display: none; }
#desktop-floating-nav.menu-open #nav-toggle-btn { display: block; }
#desktop-floating-nav #nav-content { display: none !important; }
#desktop-floating-nav.menu-open #nav-content { display: flex !important; }
@media (max-width: 1023px) { #desktop-floating-nav { display: none !important; } }
