/*
 * ADMIN_SIDEBAR_COMPACT_V1
 *
 * Sidebar-only overrides. No dashboard, table, card or page-content
 * selectors belong in this file.
 */

.sidebar {
  font-family:
    Inter, system-ui, -apple-system, BlinkMacSystemFont,
    "Segoe UI", sans-serif !important;
}

.sidebar .sidebar-logo {
  padding: 18px 22px 16px !important;
}

.sidebar .sidebar-logo img {
  width: auto !important;
  max-height: 30px !important;
}

.sidebar .sidebar-nav {
  gap: 4px !important;
  padding: 13px 12px !important;
}

.sidebar .sidebar-nav .nav-item {
  min-height: 39px !important;
  gap: 9px !important;
  padding: 8px 10px 8px 12px !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
}

.sidebar .sidebar-nav .nav-item i {
  width: 20px !important;
  min-width: 20px !important;
  font-size: 18px !important;
  text-align: center !important;
}

.sidebar .sidebar-footer {
  padding: 14px 20px !important;
}

.sidebar .admin-info {
  margin-bottom: 10px !important;
  font-size: 12px !important;
}

.sidebar .admin-info strong {
  font-size: 13px !important;
}


/*
 * IGLOCAL_CENTRAL_SIDEBAR_NOTIFICATION_BADGE_V2
 *
 * The text label may expand, but the notification counter must never
 * inherit generic `.nav-item span { flex: 1; }` page rules.
 */
.sidebar .sidebar-nav .nav-item
> span:not(.admin-nav-notification-badge) {
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

.sidebar .sidebar-nav .nav-item
> .admin-nav-notification-badge {
  width: auto !important;
  min-width: 24px !important;
  max-width: 42px !important;
  height: 22px !important;
  flex: 0 0 auto !important;
  margin-left: auto !important;
  padding: 0 7px !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  border: 2px solid #ffffff !important;
  border-radius: 999px !important;
  background: #dc2626 !important;
  color: #ffffff !important;
  box-shadow: 0 3px 9px rgba(220, 38, 38, 0.22) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  white-space: nowrap !important;
}

.sidebar .sidebar-nav .nav-item
> .admin-nav-notification-badge.visible {
  display: inline-flex !important;
}

/* IGOLOCAL_MARKET_INTELLIGENCE_LOGO_SHORTCUT_V1 */
.sidebar-logo .market-heatmap-shortcut {
  margin-top: 13px;
  min-height: 34px;
  padding: 7px 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  border: 1px solid #dcebd6;
  border-radius: 11px;
  color: #47723a;
  background:
    linear-gradient(
      145deg,
      #f3faef,
      #ffffff
    );
  font-size: 11px;
  font-weight: 950;
  letter-spacing: .035em;
  text-transform: uppercase;
  box-shadow: 0 7px 18px rgba(91, 170, 60, .07);
  transition: .16s ease;
}

.sidebar-logo .market-heatmap-shortcut:hover,
.sidebar-logo .market-heatmap-shortcut.active {
  color: #fff;
  border-color: #5baa3c;
  background:
    linear-gradient(
      145deg,
      #67b948,
      #4c9932
    );
  transform: translateY(-1px);
  box-shadow: 0 10px 24px rgba(91, 170, 60, .2);
}

.sidebar-logo .market-heatmap-shortcut i {
  font-size: 17px;
}

.sidebar-logo .market-heatmap-shortcut span:first-of-type {
  flex: 1;
}

.sidebar-logo .market-heatmap-live-dot {
  width: 7px;
  height: 7px;
  flex: 0 0 auto !important;
  border-radius: 50%;
  background: #7bd455;
  box-shadow: 0 0 0 4px rgba(123, 212, 85, .12);
}

.sidebar-logo .market-heatmap-shortcut:hover
.market-heatmap-live-dot,
.sidebar-logo .market-heatmap-shortcut.active
.market-heatmap-live-dot {
  background: #fff;
  box-shadow: 0 0 0 4px rgba(255, 255, 255, .16);
}

/* IGLOCAL_ADMIN_SIDEBAR_HEIGHT_FIT_V2 */
.sidebar {
  height: 100vh !important;
  max-height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
}

.sidebar .sidebar-logo {
  flex: 0 0 auto !important;
  padding: 11px 17px 9px !important;
}

.sidebar .sidebar-logo img {
  max-height: 27px !important;
}

.sidebar-logo .market-heatmap-shortcut {
  min-height: 29px !important;
  margin-top: 7px !important;
  padding: 5px 8px !important;
  border-radius: 9px !important;
  font-size: 10px !important;
}

.sidebar-logo .market-heatmap-shortcut i {
  font-size: 15px !important;
}

.sidebar .sidebar-nav {
  min-height: 0 !important;
  flex: 1 1 auto !important;
  gap: 2px !important;
  padding: 7px 10px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;
  scrollbar-width: thin;
}

.sidebar .sidebar-nav .nav-item {
  min-height: 33px !important;
  gap: 8px !important;
  padding: 6px 9px 6px 10px !important;
  font-size: 12px !important;
}

.sidebar .sidebar-nav .nav-item i {
  width: 18px !important;
  min-width: 18px !important;
  font-size: 16px !important;
}

.sidebar .sidebar-footer {
  flex: 0 0 auto !important;
  padding: 9px 16px !important;
}

.sidebar .admin-info {
  margin-bottom: 6px !important;
  font-size: 11px !important;
}

.sidebar .admin-info strong {
  font-size: 12px !important;
}

@media (max-height: 760px) {
  .sidebar .sidebar-logo {
    padding-top: 8px !important;
    padding-bottom: 7px !important;
  }

  .sidebar-logo .market-heatmap-shortcut {
    min-height: 27px !important;
    margin-top: 5px !important;
    padding: 4px 7px !important;
  }

  .sidebar .sidebar-nav {
    gap: 1px !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
  }

  .sidebar .sidebar-nav .nav-item {
    min-height: 30px !important;
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    font-size: 11px !important;
  }

  .sidebar .sidebar-footer {
    padding-top: 7px !important;
    padding-bottom: 7px !important;
  }
}


/* IGLOCAL_ADMIN_SIDEBAR_NO_MORE_V9 */
@media (min-width: 1001px) {
  .sidebar {
    height: 100dvh !important;
    max-height: 100dvh !important;
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  .sidebar .sidebar-logo {
    flex: 0 0 auto !important;
    padding: 14px 20px 11px !important;
  }

  .sidebar .sidebar-logo img {
    max-height: 29px !important;
  }

  .sidebar-logo .market-heatmap-shortcut {
    min-height: 31px !important;
    margin-top: 7px !important;
    padding: 6px 9px !important;
    font-size: 11px !important;
  }

  .sidebar .sidebar-nav {
    min-height: 0 !important;
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    padding: 8px 10px 6px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    scrollbar-width: none !important;
  }

  .sidebar .sidebar-nav::-webkit-scrollbar {
    width: 0 !important;
    height: 0 !important;
    display: none !important;
  }

  .sidebar .sidebar-nav .nav-item {
    min-height: 36px !important;
    flex: 0 0 auto !important;
    gap: 10px !important;
    padding: 8px 11px 8px 13px !important;
    border-radius: 12px !important;
    font-size: 14px !important;
    line-height: 1.2 !important;
  }

  .sidebar .sidebar-nav .nav-item i {
    width: 20px !important;
    min-width: 20px !important;
    font-size: 18px !important;
  }

  .sidebar .sidebar-secondary-item {
    display: flex !important;
    order: initial !important;
  }

  .sidebar .sidebar-more-toggle {
    display: none !important;
  }

  .sidebar .sidebar-footer {
    flex: 0 0 auto !important;
    padding: 10px 18px 11px !important;
  }

  .sidebar .admin-info {
    margin-bottom: 6px !important;
    font-size: 13px !important;
    line-height: 1.3 !important;
  }

  .sidebar .admin-info strong {
    font-size: 14px !important;
  }

  .sidebar .btn-logout,
  .sidebar .btn-logout-side {
    min-height: 35px !important;
    padding: 7px 10px !important;
    font-size: 11px !important;
  }
}

@media (max-width: 1000px) {
  .sidebar .sidebar-more-toggle {
    display: none !important;
  }

  .sidebar .sidebar-secondary-item {
    display: flex !important;
  }

  .sidebar .sidebar-nav .nav-item {
    min-height: 44px !important;
    padding: 11px 13px 11px 15px !important;
    font-size: 14px !important;
  }

  .sidebar .sidebar-nav .nav-item i {
    font-size: 19px !important;
  }
}
