/**
 * Sidebar polish + soft module color coding (strip + tint).
 * Module top-level items use .sb-mod-wrap.sb-mod-* from DataController attributes.
 */

/* —— Global polish —— */
.side-bar {
  box-shadow: 1px 0 0 rgba(15, 23, 42, 0.04);
}

#side-bar {
  padding-top: 0.5rem !important;
  padding-bottom: 1rem !important;
  gap: 0.125rem;
  scrollbar-width: thin;
  scrollbar-color: #e5e7eb transparent;
}

#side-bar > div.sb-mod-wrap,
#side-bar > a,
#side-bar > div:not(.sb-mod-wrap) {
  margin-block: 0.125rem;
}

#side-bar a.theme-sidebar-hover,
#side-bar a.drop_down {
  border-radius: 0.5rem;
  letter-spacing: 0.01em;
}

#side-bar .chiled {
  margin-top: 0.25rem !important;
  margin-bottom: 0.35rem !important;
}

#side-bar .chiled .tw-absolute.tw-bg-gray-100 {
  background-color: #e5e7eb !important;
  opacity: 0.7;
}

.side-bar .tw-bg-gray-100 {
  background-color: #f3f4f6;
}

/* —— Module blocks —— */
#side-bar .sb-mod-wrap {
  --sb-accent: #64748b;
  --sb-tint: color-mix(in srgb, var(--sb-accent) 11%, transparent);
  --sb-tint-strong: color-mix(in srgb, var(--sb-accent) 16%, transparent);
  border-radius: 0.55rem;
  background: var(--sb-tint);
  border-inline-start: 3px solid var(--sb-accent);
  padding: 0.15rem 0.2rem 0.15rem 0.15rem;
  margin-block: 0.2rem;
  transition: background-color 0.15s ease;
}

#side-bar .sb-mod-wrap > a.theme-sidebar-hover,
#side-bar .sb-mod-wrap > a.drop_down {
  background-color: transparent !important;
  color: #374151;
  font-weight: 500;
}

#side-bar .sb-mod-wrap > a.theme-sidebar-hover:hover,
#side-bar .sb-mod-wrap > a.drop_down:hover,
#side-bar .sb-mod-wrap > a.theme-sidebar-active,
#side-bar .sb-mod-wrap > a.theme-sidebar-hover:focus {
  background-color: var(--sb-tint-strong) !important;
  color: #1f2937;
}

#side-bar .sb-mod-wrap > a svg,
#side-bar .sb-mod-wrap > a i {
  color: var(--sb-accent) !important;
}

#side-bar .sb-mod-wrap .chiled {
  background: color-mix(in srgb, var(--sb-accent) 6%, transparent);
  border-radius: 0.4rem;
  padding-block: 0.2rem;
  margin-inline-end: 0.15rem;
}

#side-bar .sb-mod-wrap .chiled a {
  color: #4b5563;
}

#side-bar .sb-mod-wrap .chiled a:hover,
#side-bar .sb-mod-wrap .chiled a.theme-sidebar-child-active {
  color: #111827;
}

/* Per-module accents */
#side-bar .sb-mod-wrap.sb-mod-accounting { --sb-accent: #0f766e; }      /* teal */
#side-bar .sb-mod-wrap.sb-mod-manufacturing { --sb-accent: #ea580c; }   /* orange */
#side-bar .sb-mod-wrap.sb-mod-pdt { --sb-accent: #4f46e5; }             /* indigo */
#side-bar .sb-mod-wrap.sb-mod-connector { --sb-accent: #475569; }        /* slate */
#side-bar .sb-mod-wrap.sb-mod-mayar { --sb-accent: #059669; }            /* emerald */
#side-bar .sb-mod-wrap.sb-mod-unitconversion { --sb-accent: #7c3aed; }   /* violet */
#side-bar .sb-mod-wrap.sb-mod-locationfocus { --sb-accent: #0284c7; }    /* sky */
#side-bar .sb-mod-wrap.sb-mod-logincustomizer { --sb-accent: #e11d48; }  /* rose */
#side-bar .sb-mod-wrap.sb-mod-duecollection { --sb-accent: #d97706; }    /* amber */
#side-bar .sb-mod-wrap.sb-mod-superadmin { --sb-accent: #0891b2; }       /* cyan */
#side-bar .sb-mod-wrap.sb-mod-affiliate { --sb-accent: #0e7490; }        /* cyan-dark */

/* Unavailable feature menus (superadmin gray) */
.sb-item-disabled, a.sb-item-disabled, li.sb-item-disabled > a {
  opacity: 0.45 !important;
  cursor: not-allowed !important;
  pointer-events: none !important;
  color: #9ca3af !important;
}

