/* ── PeopleIndex CSS ────────────────────────────────── */
/* UI styling — animations, transitions, and resets */

:root {
  --font-family: 'Plus Jakarta Sans', system-ui, -apple-system, sans-serif;
  --crm-primary: #1473F9;
  --app-canvas: #F1F3F5;
}

html, body, #app {
  height: 100%;
  min-height: 100%;
  font-family: var(--font-family);
  margin: 0;
  padding: 0;
  background-color: var(--app-canvas);
}

.hidden {
  display: none !important;
}

body {
  color: #111827;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  user-select: none;
  -webkit-user-select: none;
  overflow: hidden;
}

/* ── Slick Scrollbars ────────────────────────────── */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: transparent;
}

::-webkit-scrollbar-thumb {
  background: #CBD5E1;
  border-radius: 9999px;
}

::-webkit-scrollbar-thumb:hover {
  background: #94A3B8;
}

.no-scrollbar::-webkit-scrollbar { display: none; }
.no-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }

.custom-scroll::-webkit-scrollbar { width: 4px; height: 4px; }
.custom-scroll::-webkit-scrollbar-thumb { background: #E2E8F0; border-radius: 4px; }
.custom-scroll::-webkit-scrollbar-thumb:hover { background: #CBD5E1; }
.custom-scroll::-webkit-scrollbar-track { background: transparent; }

/* ── Skeleton Shimmer Animation ──────────────────── */
.crm-skeleton,
.crm-skeleton-soft {
  --skeleton-shimmer: rgba(255, 255, 255, 0.78);
  position: relative;
  overflow: hidden;
  background:
    linear-gradient(90deg, transparent, var(--skeleton-shimmer), transparent),
    var(--skeleton-bg);
  background-size: 220% 100%;
  animation: crm-skeleton-shimmer var(--skeleton-speed, 1.45s) ease-in-out infinite;
}

.crm-skeleton {
  --skeleton-bg: #E8EAED;
}

.crm-skeleton-soft {
  --skeleton-bg: #F1F3F5;
}

.crm-skeleton-card {
  border: 1px solid #DEE1E5;
  background: #FFFFFF;
  box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04);
}

@keyframes crm-skeleton-shimmer {
  0% {
    background-position: 220% 0;
  }
  100% {
    background-position: -220% 0;
  }
}

/* ── Kanban Board Native Scrolling & GPU Acceleration ───────────────── */
.kanban-board {
  overscroll-behavior-x: contain;
  -webkit-overflow-scrolling: touch;
  will-change: scroll-position;
  transform: translateZ(0);
  backface-visibility: hidden;
  contain: layout;
}

.column-scroll-area {
  scrollbar-width: thin;
  scrollbar-color: #CBD5E1 transparent;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
  will-change: scroll-position;
  transform: translateZ(0);
  contain: layout style;
}

/* ── Modern Web Performance: Layout Containment & Content Visibility ── */
.kanban-column {
  content-visibility: auto;
  contain-intrinsic-size: auto 360px auto 800px;
  contain: layout style;
}

.kanban-card {
  content-visibility: auto;
  contain-intrinsic-size: auto 344px auto 104px;
  contain: layout style;
  will-change: transform, box-shadow;
  transform: translateZ(0);
  backface-visibility: hidden;
}

.deal-kanban-board .kanban-card,
.loan-kanban-board .kanban-card {
  contain-intrinsic-size: auto 344px auto 120px;
}

.column-scroll-area::-webkit-scrollbar {
  width: 6px;
}

.column-scroll-area::-webkit-scrollbar-track {
  background: transparent;
}

.column-scroll-area::-webkit-scrollbar-thumb {
  background: #CBD5E1;
  border-radius: 9999px;
}

.column-scroll-area::-webkit-scrollbar-thumb:hover {
  background: #94A3B8;
}

.lead-kanban-board .kanban-card {
  width: 344px;
  min-height: 104px;
  height: 104px;
  border-radius: 12px !important;
  padding: 0px 20px !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 15px !important;
  border: 1px solid rgba(15, 23, 42, 0.043) !important;
  background: #ffffff !important;
  outline: none !important;
  box-shadow: rgba(15, 23, 42, 0.25) 0px 14px 14px -11px, rgba(15, 23, 42, 0.48) 0px 42px 50px -42px !important;
  cursor: pointer;
  -webkit-user-drag: none;
  user-drag: none;
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}

/* ── Deal, SA & Loan Kanban Board Card Layout ──────── */

.deal-kanban-board .kanban-card,
.sa-kanban-board .kanban-card,
.loan-kanban-board .kanban-card {
  width: 344px !important;
  min-height: auto !important;
  height: auto !important;
  max-height: none !important;
  overflow: visible !important;
  padding: 12px 14px !important;
  border-radius: 12px !important;
  border: 1px solid rgb(229, 231, 235) !important;
  box-shadow: rgba(15, 23, 42, 0.25) 0px 14px 14px -11px, rgba(15, 23, 42, 0.48) 0px 42px 50px -42px !important;
  background: #ffffff !important;
  display: flex !important;
  flex-direction: column !important;
  cursor: pointer;
  transition: transform 0.15s ease, box-shadow 0.15s ease, border-color 0.15s ease;
  box-sizing: border-box !important;
}

.deal-kanban-board .kanban-card:hover,
.sa-kanban-board .kanban-card:hover,
.loan-kanban-board .kanban-card:hover {
  transform: translateY(-1px);
  border-color: rgba(16, 24, 40, 0.16) !important;
  box-shadow: rgba(15, 23, 42, 0.28) 0px 16px 18px -11px, rgba(15, 23, 42, 0.52) 0px 46px 54px -42px !important;
}

.deal-avatar-ring {
  box-shadow: none !important;
}

.deal-meta-dot {
  display: inline-block;
  width: 4px;
  height: 4px;
  border-radius: 9999px;
  background-color: #6b7280;
  margin: 0 6px;
  flex-shrink: 0;
}

.deal-kanban-board .kanban-card .deal-title-owner,
.sa-kanban-board .kanban-card .deal-title-owner,
.loan-kanban-board .kanban-card .deal-title-owner {
  box-sizing: border-box;
  width: 45px;
  min-width: 45px;
  height: 45px;
  border-radius: 9999px;
  overflow: visible;
}

.deal-kanban-board .kanban-card .deal-study-summary,
.sa-kanban-board .kanban-card .deal-study-summary,
.loan-kanban-board .kanban-card .deal-study-summary {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-height: 20px !important;
  padding-left: 55px !important;
  font-size: 14px;
  font-weight: 500;
  color: #6b7280;
  margin-bottom: 2px;
}

.deal-kanban-board .kanban-card .kanban-card-fields,
.sa-kanban-board .kanban-card .kanban-card-fields,
.loan-kanban-board .kanban-card .kanban-card-fields {
  margin-top: 4px;
  gap: 4px;
}

.deal-kanban-board .kanban-card .deal-card-meta-row,
.sa-kanban-board .kanban-card .deal-card-meta-row,
.loan-kanban-board .kanban-card .deal-card-meta-row {
  order: 1;
  margin-top: 4px;
  padding-left: 55px !important;
  border-top: 0px;
  overflow: hidden;
  display: flex;
  align-items: center;
  gap: 0;
}

.deal-kanban-board .kanban-card .deal-card-meta-row .deal-intake-pill,
.sa-kanban-board .kanban-card .deal-card-meta-row .deal-intake-pill,
.loan-kanban-board .kanban-card .deal-card-meta-row .deal-intake-pill {
  border-radius: 9999px !important;
  height: 28px;
  padding: 0px 10px;
  font-size: 12px;
  font-weight: 600;
}

.deal-kanban-board .kanban-card .deal-card-meta-row .deal-status-pill,
.sa-kanban-board .kanban-card .deal-card-meta-row .deal-status-pill,
.loan-kanban-board .kanban-card .deal-card-meta-row .deal-status-pill {
  border-radius: 8px !important;
  height: 28px;
  padding: 0px 10px;
  font-size: 12px;
  font-weight: 600;
}

.deal-kanban-board .invoice-stack-card,
.sa-kanban-board .invoice-stack-card,
.loan-kanban-board .invoice-stack-card {
  padding: 16px !important;
  border: 1px solid #f3f4f6 !important;
  border-radius: 12px !important;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05) !important;
  background: #ffffff !important;
  width: 344px !important;
}

.deal-kanban-board .invoice-stack-card:hover,
.sa-kanban-board .invoice-stack-card:hover,
.loan-kanban-board .invoice-stack-card:hover {
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.08) !important;
}

.kanban-column.kanban-column-collapsed {
  width: 64px !important;
  min-width: 64px !important;
  max-width: 64px !important;
  height: 290px !important;
  min-height: 290px !important;
  max-height: 290px !important;
  align-self: flex-start !important;
  background: #f3f4f6 !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 20px !important;
  margin-right: 16px !important;
  margin-bottom: 12px !important;
  padding: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
  cursor: pointer !important;
  transition: background 0.15s ease, border-color 0.15s ease !important;
}

.kanban-column.kanban-column-collapsed:hover {
  background: #ebeef2 !important;
  border-color: #d1d5db !important;
}

.kanban-column.kanban-column-collapsed .kanban-column-header {
  height: 100% !important;
  min-height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 20px 6px 14px 6px !important;
  box-sizing: border-box !important;
}

.kanban-column.kanban-column-collapsed .btn-collapse-col {
  background: transparent !important;
  border: none !important;
  color: #9ca3af !important;
  padding: 0 !important;
  margin: 0 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 20px !important;
  height: 20px !important;
  transition: color 0.15s ease !important;
}

.kanban-column.kanban-column-collapsed:hover .btn-collapse-col {
  color: #4b5563 !important;
}

.kanban-column.kanban-column-collapsed .kanban-column-title {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  overflow: visible !important;
  gap: 12px !important;
  margin-top: 14px !important;
  padding: 0 !important;
}

.kanban-column.kanban-column-collapsed .kanban-column-title-text {
  writing-mode: vertical-rl !important;
  text-orientation: mixed !important;
  white-space: nowrap !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #2D3748 !important;
  letter-spacing: -0.01em !important;
  user-select: none !important;
  cursor: pointer !important;
}

.kanban-column.kanban-column-collapsed .kanban-column-students {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #64748b !important;
  line-height: 1 !important;
  background: transparent !important;
  border-radius: 0 !important;
  min-width: 0 !important;
  height: auto !important;
  padding: 0 !important;
}

.kanban-column.kanban-column-collapsed .kanban-column-students svg {
  width: 14px !important;
  height: 14px !important;
  color: #8a94a6 !important;
  flex-shrink: 0 !important;
}

.kanban-column.kanban-column-collapsed .kanban-column-count {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 2.5px 8px !important;
  border-radius: 9999px !important;
  background-color: #e5e7eb !important;
  color: #64748b !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  margin-top: auto !important;
  border: none !important;
}

.sa-kanban-board ~ #btn-open-shortcuts,
.deal-kanban-board ~ #btn-open-shortcuts {
  display: none !important;
}

.column-dot {
  width: 10px !important;
  height: 10px !important;
  border-radius: 9999px !important;
  flex-shrink: 0 !important;
  display: inline-block !important;
}

.bg-crm-primary\/20 {
  background-color: rgba(20, 115, 249, 0.2) !important;
}
.text-crm-primary {
  color: rgb(20, 115, 249) !important;
}

/* Collapsed column handled by .kanban-column.kanban-column-collapsed above */

/* Avatar Colors (Pastel fills + deep readable text) */
.avatar-letter-A { background-color: #DBEAFE !important; color: #1D4ED8 !important; }
.avatar-letter-B { background-color: #FEF3C7 !important; color: #B45309 !important; }
.avatar-letter-C { background-color: #FEF3C7 !important; color: #B45309 !important; }
.avatar-letter-D { background-color: #DCFCE7 !important; color: #15803D !important; }
.avatar-letter-E { background-color: #FCE7F3 !important; color: #BE185D !important; }
.avatar-letter-F { background-color: #FCE7F3 !important; color: #BE185D !important; }
.avatar-letter-G { background-color: #FFE4E6 !important; color: #E11D48 !important; }
.avatar-letter-H { background-color: #FEE2E2 !important; color: #B91C1C !important; }
.avatar-letter-I { background-color: #EDE9FE !important; color: #6D28D9 !important; }
.avatar-letter-J { background-color: #D1FAE5 !important; color: #065F46 !important; }
.avatar-letter-K { background-color: #F3E8FF !important; color: #9333EA !important; }
.avatar-letter-L { background-color: #CCFBF1 !important; color: #0F766E !important; }
.avatar-letter-M { background-color: #FFEDD5 !important; color: #C2410C !important; }
.avatar-letter-N { background-color: #F3E8FF !important; color: #7E22CE !important; }
.avatar-letter-O { background-color: #FEF3C7 !important; color: #B45309 !important; }
.avatar-letter-P { background-color: #FCE7F3 !important; color: #BE185D !important; }
.avatar-letter-Q { background-color: #EDE9FE !important; color: #6D28D9 !important; }
.avatar-letter-R { background-color: #FEF9C3 !important; color: #A16207 !important; }
.avatar-letter-S { background-color: #EDE9FE !important; color: #6D28D9 !important; }
.avatar-letter-T { background-color: #CCFBF1 !important; color: #0F766E !important; }
.avatar-letter-U { background-color: #DBEAFE !important; color: #1D4ED8 !important; }
.avatar-letter-V { background-color: #FFE4E6 !important; color: #E11D48 !important; }
.avatar-letter-W { background-color: #CCFBF1 !important; color: #0F766E !important; }
.avatar-letter-X { background-color: #F3E8FF !important; color: #9333EA !important; }
.avatar-letter-Y { background-color: #E0E7FF !important; color: #4338CA !important; }
.avatar-letter-Z { background-color: #FEF3C7 !important; color: #B45309 !important; }
.sa-pill-awaiting-input {
  background-color: #FEF3ED !important;
  color: #EA580B !important;
}

.sa-pill-doc-in-progress {
  background-color: #ECFDF3 !important;
  color: #16A34A !important;
}

.sa-pill-to-do {
  background-color: #F9F5FF !important;
  color: #9333EA !important;
}

.sa-pill-in-progress {
  background-color: #EFF8FF !important;
  color: #2563EB !important;
}

.sa-pill-awaiting-decision {
  background-color: #F0F9FF !important;
  color: #026AA2 !important;
}

.sa-pill-conditional,
.sa-pill-interview {
  background-color: #FEF0C7 !important;
  color: #B54708 !important;
}

.sa-pill-funds {
  background-color: #FDF2F8 !important;
  color: #C11574 !important;
}

.sa-pill-visa-not-required {
  background-color: #F4F3FF !important;
  color: #5925DC !important;
}

.sa-pill-visa-rejected {
  background-color: #FEF3F2 !important;
  color: #DF3330 !important;
}

.sa-pill-default {
  background-color: #F2F4F7 !important;
  color: #344054 !important;
}

.kanban-card:hover {
  transform: translateY(-1px);
  border-color: transparent !important;
  box-shadow: rgba(15, 23, 42, 0.29) 0px 16px 16px -12px, rgba(15, 23, 42, 0.54) 0px 48px 58px -46px !important;
}

.kanban-card:focus {
  outline: none !important;
}

.kanban-card.card-focused {
  outline: none !important;
  box-shadow: 0 0 0 2px #3b82f6, 0 0 0 4px rgba(59, 130, 246, 0.15) !important;
  transform: scale(1.01);
  z-index: 10;
}

.kanban-column-students {
  display: inline-flex;
  min-width: 22px;
  height: 22px;
  align-items: center;
  justify-content: center;
  padding: 0px 6px;
  border-radius: 9999px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  background: rgb(228, 231, 235) !important;
  color: rgb(154, 157, 163) !important;
  font-size: 12px !important;
}

.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

@keyframes card-fade-in {
  from {
    opacity: 0;
    transform: translateY(6px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ── Next Year Card Format ─────────────────────── */
.card-next-year {
  background: #FEF3C7B3 !important;
  border: 1px dashed rgb(252, 211, 77) !important;
  border-radius: 12px;
  padding: 20px;
  display: flex;
  align-items: center;
  gap: 0px !important;
  min-height: 80px;
  width: 344px;
  box-shadow: none !important;
  transition: all 150ms ease;
}

.card-next-year:hover {
  box-shadow: 0 3px 10px #00000014 !important;
}



/* ── Modal / Overlay Animations ────────────────── */
.animate-fadeIn {
  animation: fadeIn 0.15s ease-out forwards;
}

.animate-scaleUp {
  animation: scaleUp 0.18s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes fadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes scaleUp {
  from { opacity: 0; transform: scale(0.96); }
  to { opacity: 1; transform: scale(1); }
}

/* ── Drawer Slide Animations ───────────────────── */
.drawer-backdrop {
  transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.drawer-panel {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ── Line Clamping ─────────────────────────────── */
.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* ── Toast Notifications ───────────────────────── */
.crm-toast {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  background: #1F2937;
  color: white;
  padding: 8px 18px;
  border-radius: 9999px;
  font-size: 12px;
  font-weight: 500;
  z-index: 99999;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
  animation: toast-in 0.25s ease-out, toast-out 0.25s ease-in 2.5s forwards;
  pointer-events: none;
}

@keyframes toast-in {
  from { opacity: 0; transform: translate(-50%, 12px); }
  to { opacity: 1; transform: translate(-50%, 0); }
}

@keyframes toast-out {
  from { opacity: 1; }
  to { opacity: 0; }
}

/* ── Agile Fluid Responsive Sidebar ─────────────────── */
.app-sidebar {
  --sb-logo-h: 56px;
  --sb-logo-size: 32px;
  --sb-btn-size: 38px;
  --sb-icon-size: 22px;
  --sb-nav-gap: 6px;
  --sb-nav-pad-y: 6px;
  --sb-bottom-pad-b: 12px;
  --sb-bottom-gap: 6px;

  height: 100vh;
  height: 100dvh;
  max-height: 100vh;
  overflow: hidden !important;
  display: flex;
  flex-direction: column;
}

.sidebar-logo-container {
  height: var(--sb-logo-h);
}

.sidebar-logo-btn {
  width: var(--sb-btn-size);
  height: var(--sb-btn-size);
}

.sidebar-logo-btn svg {
  width: var(--sb-logo-size) !important;
  height: var(--sb-logo-size) !important;
}

.sidebar-nav {
  gap: var(--sb-nav-gap) !important;
  padding-top: var(--sb-nav-pad-y) !important;
  padding-bottom: 2px !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
  overflow: hidden !important;
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}

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

.sidebar-bottom {
  margin-top: auto !important;
  gap: var(--sb-bottom-gap) !important;
  padding-top: 4px !important;
  padding-bottom: var(--sb-bottom-pad-b) !important;
  padding-left: 8px !important;
  padding-right: 8px !important;
}

.sidebar-btn {
  width: var(--sb-btn-size) !important;
  height: var(--sb-btn-size) !important;
  min-width: var(--sb-btn-size) !important;
  min-height: var(--sb-btn-size) !important;
  padding: 0 !important;
}

.sidebar-btn svg {
  width: var(--sb-icon-size) !important;
  height: var(--sb-icon-size) !important;
  max-width: var(--sb-icon-size) !important;
  max-height: var(--sb-icon-size) !important;
}

.sidebar-btn .sidebar-mask-icon {
  width: var(--sb-icon-size) !important;
  height: var(--sb-icon-size) !important;
}

.sidebar-btn .sidebar-logout-icon {
  width: var(--sb-icon-size) !important;
  height: var(--sb-icon-size) !important;
}

.sidebar-notif-dot {
  width: 7px !important;
  height: 7px !important;
  top: 7px !important;
  right: 7px !important;
}

/* Height-based Fluid Responsive Scaling */
@media (max-height: 880px) {
  .app-sidebar {
    --sb-logo-h: 52px;
    --sb-logo-size: 30px;
    --sb-btn-size: 36px;
    --sb-icon-size: 21px;
    --sb-nav-gap: 5px;
    --sb-nav-pad-y: 5px;
    --sb-bottom-pad-b: 10px;
    --sb-bottom-gap: 5px;
  }
  .sidebar-notif-dot {
    width: 6px !important;
    height: 6px !important;
    top: 6px !important;
    right: 6px !important;
  }
}

@media (max-height: 770px) {
  .app-sidebar {
    --sb-logo-h: 48px;
    --sb-logo-size: 28px;
    --sb-btn-size: 34px;
    --sb-icon-size: 20px;
    --sb-nav-gap: 4px;
    --sb-nav-pad-y: 4px;
    --sb-bottom-pad-b: 8px;
    --sb-bottom-gap: 4px;
  }
  .sidebar-notif-dot {
    width: 6px !important;
    height: 6px !important;
    top: 5px !important;
    right: 5px !important;
  }
}

@media (max-height: 700px) {
  .app-sidebar {
    --sb-logo-h: 42px;
    --sb-logo-size: 26px;
    --sb-btn-size: 30px;
    --sb-icon-size: 18px;
    --sb-nav-gap: 3px;
    --sb-nav-pad-y: 3px;
    --sb-bottom-pad-b: 6px;
    --sb-bottom-gap: 3px;
  }
  .sidebar-notif-dot {
    width: 5px !important;
    height: 5px !important;
    top: 4px !important;
    right: 4px !important;
  }
}

@media (max-height: 620px) {
  .app-sidebar {
    --sb-logo-h: 36px;
    --sb-logo-size: 22px;
    --sb-btn-size: 26px;
    --sb-icon-size: 15px;
    --sb-nav-gap: 2px;
    --sb-nav-pad-y: 2px;
    --sb-bottom-pad-b: 4px;
    --sb-bottom-gap: 2px;
  }
  .sidebar-notif-dot {
    width: 5px !important;
    height: 5px !important;
    top: 3px !important;
    right: 3px !important;
  }
}

@media (max-height: 540px) {
  .app-sidebar {
    --sb-logo-h: 30px;
    --sb-logo-size: 18px;
    --sb-btn-size: 22px;
    --sb-icon-size: 13px;
    --sb-nav-gap: 1px;
    --sb-nav-pad-y: 1px;
    --sb-bottom-pad-b: 2px;
    --sb-bottom-gap: 1px;
  }
}

/* ── Sidebar Custom Mask Icons ─────────────────── */
.sidebar-mask-icon {
  width: var(--sb-icon-size, 25px);
  height: var(--sb-icon-size, 25px);
  display: inline-block;
  background-color: currentColor;
  mask-size: contain;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-position: center;
  -webkit-mask-position: center;
}

.sidebar-new-lead-icon {
  mask-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAxElEQVR4nO2ZQQ6CMBQF535CPJQh8VIKV1LYPzdsxECLCekH3iSzJW/SdgUYY/7lCnTAAKiwA9AC9dqIe4DxmrFZcxIKbpUT0gUYqoTPnJA+wFAlfOeEaCcmKT1QDplQeqCihmz93VkcgkNwyBIOwSE4ZAmHsMOQrZFDznq15BAcIofgEByCQ35xCAcP0UYmKT1QDplwmJA+wEglfOWEtAGGKuEjJ6QOMFQJL2TSBBirGW+spBr/nkZ4M/14nbJPwhjDFx9F72wBUalX3AAAAABJRU5ErkJggg==");
  -webkit-mask-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAAyCAYAAAAeP4ixAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAxElEQVR4nO2ZQQ6CMBQF535CPJQh8VIKV1LYPzdsxECLCekH3iSzJW/SdgUYY/7lCnTAAKiwA9AC9dqIe4DxmrFZcxIKbpUT0gUYqoTPnJA+wFAlfOeEaCcmKT1QDplQeqCihmz93VkcgkNwyBIOwSE4ZAmHsMOQrZFDznq15BAcIofgEByCQ35xCAcP0UYmKT1QDplwmJA+wEglfOWEtAGGKuEjJ6QOMFQJL2TSBBirGW+spBr/nkZ4M/14nbJPwhjDFx9F72wBUalX3AAAAABJRU5ErkJggg==");
}

.sidebar-card-fields-icon {
  mask-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAABE0lEQVR4nO2YUWrCQBRFz4f0q11B7T5KaxdWXYaIG2irCxC7IOsugleGRvAjM2MIJG/iO3AhMBO4J5kJZMBxHMdxRsoHsAWOQAWo51TAH7ABZm2KT4D1AIWVyarulsVieV1JZJeNjGeWEtgaKKhMvlMCRwMFlUnY2FGG+NqoZULHKCokUUYrsAOeG+ZPgX0JAtPEPS8lCORwAXwJ/RO7YR+RCOV/SxCQsUQZuphcgJEKfAIPV/PC9bzHcXUVeGyY+9TjuLoKzBue0KLHcd3NHqgMlFOXH5oSfikPKYGNgYLK5Csl8AqcDJRUIu9kWBkoqUiW3MDEqMTy1qPFC+FV/dSbZqjD3UN9kPXWprjjOI7jUApn11dW6VzyqCAAAAAASUVORK5CYII=");
  -webkit-mask-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAACXBIWXMAAAsTAAALEwEAmpwYAAABE0lEQVR4nO2YUWrCQBRFz4f0q11B7T5KaxdWXYaIG2irCxC7IOsugleGRvAjM2MIJG/iO3AhMBO4J5kJZMBxHMdxRsoHsAWOQAWo51TAH7ABZm2KT4D1AIWVyarulsVieV1JZJeNjGeWEtgaKKhMvlMCRwMFlUnY2FGG+NqoZULHKCokUUYrsAOeG+ZPgX0JAtPEPS8lCORwAXwJ/RO7YR+RCOV/SxCQsUQZuphcgJEKfAIPV/PC9bzHcXUVeGyY+9TjuLoKzBue0KLHcd3NHqgMlFOXH5oSfikPKYGNgYLK5Csl8AqcDJRUIu9kWBkoqUiW3MDEqMTy1qPFC+FV/dSbZqjD3UN9kPXWprjjOI7jUApn11dW6VzyqCAAAAAASUVORK5CYII=");
}
