/* SV Aurora ERP — global color themes (InvSmart-style) */

:root,
[data-theme="aurora"] {
  /* Default — Aurora navy + orange */
  --brand-red: #d94c1a;
  --brand-magenta: #f15a24;
  --brand-blue: #1a2238;
  --brand-blue-mid: #243049;
  --brand-blue-bright: #007bff;
  --brand-star: #f15a24;
  --tint-rgb: 26, 34, 56;
  --accent-rgb: 241, 90, 36;
  --sidebar-0: #1a2238;
  --sidebar-1: #243049;
  --sidebar-2: #2f3d5a;
  --sidebar-deep: #12182a;
  --glow-mid: 64, 140, 255;
  --shell: #ffffff;
  --surface: #f4f7fb;
  --surface-2: #e8edf3;
  --ink: #1c2434;
  --ink-soft: #4a5568;
  --ink-mute: #8b95a5;
  --line: rgba(var(--tint-rgb), 0.08);
  --accent: var(--brand-magenta);
  --accent-soft: #fff0ea;
  --ok: #2e7d32;
  --ok-soft: #e8f5e9;
  --warn: #ed6c02;
  --warn-soft: #fff4e5;
  --info: var(--brand-blue-mid);
  --info-soft: #e8f2ff;
  --ease: cubic-bezier(0.22, 1, 0.36, 1);
}

[data-theme="classic"] {
  --brand-red: #c8102e;
  --brand-magenta: #d4145a;
  --brand-blue: #0a2a5c;
  --brand-blue-mid: #1a4a8c;
  --brand-blue-bright: #2d6bb8;
  --brand-star: #e31c3d;
  --tint-rgb: 10, 42, 92;
  --accent-rgb: 212, 20, 90;
  --sidebar-0: #0a2a5c;
  --sidebar-1: #123a72;
  --sidebar-2: #1a4a8c;
  --sidebar-deep: #061a3a;
  --glow-mid: 45, 107, 184;
  --surface: #f3f6fb;
  --surface-2: #e7edf6;
  --ink: #0a2a5c;
  --ink-soft: #4a5d7a;
  --ink-mute: #7a8ba3;
  --accent-soft: #fce4ec;
  --info-soft: #e4eef9;
}

[data-theme="ocean"] {
  --brand-red: #c2410c;
  --brand-magenta: #e85d4c;
  --brand-blue: #0b4f5c;
  --brand-blue-mid: #0f6a7a;
  --brand-blue-bright: #1494a8;
  --brand-star: #e85d4c;
  --tint-rgb: 11, 79, 92;
  --accent-rgb: 232, 93, 76;
  --sidebar-0: #083d48;
  --sidebar-1: #0b4f5c;
  --sidebar-2: #0f6a7a;
  --sidebar-deep: #042830;
  --glow-mid: 20, 148, 168;
  --surface: #f2f8f9;
  --surface-2: #e3eef1;
  --ink: #0b4f5c;
  --ink-soft: #4a6b73;
  --ink-mute: #7a9399;
  --accent-soft: #fde8e4;
  --info-soft: #e0f3f6;
}

[data-theme="graphite"] {
  --brand-red: #b45309;
  --brand-magenta: #d97706;
  --brand-blue: #1f2937;
  --brand-blue-mid: #374151;
  --brand-blue-bright: #4b5563;
  --brand-star: #d97706;
  --tint-rgb: 31, 41, 55;
  --accent-rgb: 217, 119, 6;
  --sidebar-0: #111827;
  --sidebar-1: #1f2937;
  --sidebar-2: #374151;
  --sidebar-deep: #030712;
  --glow-mid: 75, 85, 99;
  --surface: #f4f5f7;
  --surface-2: #e5e7eb;
  --ink: #1f2937;
  --ink-soft: #4b5563;
  --ink-mute: #6b7280;
  --accent-soft: #fef3c7;
  --info-soft: #e5e7eb;
}

[data-theme="forest"] {
  --brand-red: #a16207;
  --brand-magenta: #ca8a04;
  --brand-blue: #14532d;
  --brand-blue-mid: #166534;
  --brand-blue-bright: #15803d;
  --brand-star: #ca8a04;
  --tint-rgb: 20, 83, 45;
  --accent-rgb: 202, 138, 4;
  --sidebar-0: #0f3d22;
  --sidebar-1: #14532d;
  --sidebar-2: #166534;
  --sidebar-deep: #052e16;
  --glow-mid: 21, 128, 61;
  --surface: #f3f7f4;
  --surface-2: #e4ede6;
  --ink: #14532d;
  --ink-soft: #3f6b4f;
  --ink-mute: #6b8a75;
  --accent-soft: #fef9c3;
  --info-soft: #dcfce7;
}

[data-theme="steel"] {
  --brand-red: #1d4ed8;
  --brand-magenta: #2563eb;
  --brand-blue: #243447;
  --brand-blue-mid: #334155;
  --brand-blue-bright: #475569;
  --brand-star: #2563eb;
  --tint-rgb: 36, 52, 71;
  --accent-rgb: 37, 99, 235;
  --sidebar-0: #1a2736;
  --sidebar-1: #243447;
  --sidebar-2: #334155;
  --sidebar-deep: #0f172a;
  --glow-mid: 59, 130, 246;
  --surface: #f4f6f9;
  --surface-2: #e8edf3;
  --ink: #243447;
  --ink-soft: #475569;
  --ink-mute: #64748b;
  --accent-soft: #dbeafe;
  --info-soft: #e2e8f0;
}

[data-theme="crimson"] {
  --brand-red: #9f1239;
  --brand-magenta: #e11d48;
  --brand-blue: #4a0e1f;
  --brand-blue-mid: #7f1d35;
  --brand-blue-bright: #9f1239;
  --brand-star: #e11d48;
  --tint-rgb: 74, 14, 31;
  --accent-rgb: 225, 29, 72;
  --sidebar-0: #3b0a18;
  --sidebar-1: #4a0e1f;
  --sidebar-2: #7f1d35;
  --sidebar-deep: #1f040c;
  --glow-mid: 244, 63, 94;
  --surface: #faf4f6;
  --surface-2: #f1e4e8;
  --ink: #4a0e1f;
  --ink-soft: #6b3a48;
  --ink-mute: #94707a;
  --accent-soft: #ffe4e6;
  --info-soft: #fce7f3;
}

[data-theme="midnight"] {
  --brand-red: #0891b2;
  --brand-magenta: #22d3ee;
  --brand-blue: #0b1220;
  --brand-blue-mid: #1e293b;
  --brand-blue-bright: #334155;
  --brand-star: #22d3ee;
  --tint-rgb: 11, 18, 32;
  --accent-rgb: 34, 211, 238;
  --sidebar-0: #060a12;
  --sidebar-1: #0b1220;
  --sidebar-2: #1e293b;
  --sidebar-deep: #020617;
  --glow-mid: 6, 182, 212;
  --surface: #f1f5f9;
  --surface-2: #e2e8f0;
  --ink: #0b1220;
  --ink-soft: #334155;
  --ink-mute: #64748b;
  --accent-soft: #cffafe;
  --info-soft: #e0f2fe;
}

[data-theme="copper"] {
  --brand-red: #c2410c;
  --brand-magenta: #ea580c;
  --brand-blue: #2c1810;
  --brand-blue-mid: #5c3420;
  --brand-blue-bright: #7c4a2d;
  --brand-star: #ea580c;
  --tint-rgb: 44, 24, 16;
  --accent-rgb: 234, 88, 12;
  --sidebar-0: #1c100a;
  --sidebar-1: #2c1810;
  --sidebar-2: #5c3420;
  --sidebar-deep: #120a06;
  --glow-mid: 249, 115, 22;
  --surface: #f7f3f0;
  --surface-2: #ebe3dc;
  --ink: #2c1810;
  --ink-soft: #6b4a3a;
  --ink-mute: #9a7d6c;
  --accent-soft: #ffedd5;
  --info-soft: #ffedd5;
}

[data-theme="azure"] {
  --brand-red: #0369a1;
  --brand-magenta: #0284c7;
  --brand-blue: #0c4a6e;
  --brand-blue-mid: #0369a1;
  --brand-blue-bright: #0ea5e9;
  --brand-star: #0284c7;
  --tint-rgb: 12, 74, 110;
  --accent-rgb: 2, 132, 199;
  --sidebar-0: #0a3a57;
  --sidebar-1: #0c4a6e;
  --sidebar-2: #0369a1;
  --sidebar-deep: #082f49;
  --glow-mid: 14, 165, 233;
  --surface: #f0f9ff;
  --surface-2: #e0f2fe;
  --ink: #0c4a6e;
  --ink-soft: #3d6f8c;
  --ink-mute: #6b93a8;
  --accent-soft: #e0f2fe;
  --info-soft: #e0f2fe;
}

[data-theme="ink"] {
  --brand-red: #0f766e;
  --brand-magenta: #14b8a6;
  --brand-blue: #0f172a;
  --brand-blue-mid: #1e293b;
  --brand-blue-bright: #334155;
  --brand-star: #14b8a6;
  --tint-rgb: 15, 23, 42;
  --accent-rgb: 20, 184, 166;
  --sidebar-0: #020617;
  --sidebar-1: #0f172a;
  --sidebar-2: #1e293b;
  --sidebar-deep: #01040f;
  --glow-mid: 45, 212, 191;
  --surface: #f8fafc;
  --surface-2: #e2e8f0;
  --ink: #0f172a;
  --ink-soft: #334155;
  --ink-mute: #64748b;
  --accent-soft: #ccfbf1;
  --info-soft: #e2e8f0;
}

[data-theme="orchid"] {
  --brand-red: #9d174d;
  --brand-magenta: #db2777;
  --brand-blue: #4c1d55;
  --brand-blue-mid: #6b2d77;
  --brand-blue-bright: #86198f;
  --brand-star: #db2777;
  --tint-rgb: 76, 29, 85;
  --accent-rgb: 219, 39, 119;
  --sidebar-0: #3b1643;
  --sidebar-1: #4c1d55;
  --sidebar-2: #6b2d77;
  --sidebar-deep: #2a0f30;
  --glow-mid: 236, 72, 153;
  --surface: #faf5f8;
  --surface-2: #f3e8ef;
  --ink: #4c1d55;
  --ink-soft: #6b4a72;
  --ink-mute: #947a99;
  --accent-soft: #fce7f3;
  --info-soft: #fae8ff;
}

[data-theme="glacier"] {
  --brand-red: #4338ca;
  --brand-magenta: #4f46e5;
  --brand-blue: #1e3a5f;
  --brand-blue-mid: #2a4a73;
  --brand-blue-bright: #3b82f6;
  --brand-star: #4f46e5;
  --tint-rgb: 30, 58, 95;
  --accent-rgb: 79, 70, 229;
  --sidebar-0: #162c4a;
  --sidebar-1: #1e3a5f;
  --sidebar-2: #2a4a73;
  --sidebar-deep: #0f2038;
  --glow-mid: 99, 102, 241;
  --surface: #f4f7fb;
  --surface-2: #e6eef7;
  --ink: #1e3a5f;
  --ink-soft: #4a6280;
  --ink-mute: #7a8fa8;
  --accent-soft: #e0e7ff;
  --info-soft: #dbeafe;
}

[data-theme="olive"] {
  --brand-red: #4d7c0f;
  --brand-magenta: #65a30d;
  --brand-blue: #3f4a2e;
  --brand-blue-mid: #55633d;
  --brand-blue-bright: #6b7c4f;
  --brand-star: #65a30d;
  --tint-rgb: 63, 74, 46;
  --accent-rgb: 101, 163, 13;
  --sidebar-0: #303824;
  --sidebar-1: #3f4a2e;
  --sidebar-2: #55633d;
  --sidebar-deep: #1f2616;
  --glow-mid: 132, 204, 22;
  --surface: #f5f6f1;
  --surface-2: #e8ebe1;
  --ink: #3f4a2e;
  --ink-soft: #5c6750;
  --ink-mute: #848c78;
  --accent-soft: #ecfccb;
  --info-soft: #f0f4e8;
}

[data-theme="sandstone"] {
  --brand-red: #9a3412;
  --brand-magenta: #c2410c;
  --brand-blue: #5c4033;
  --brand-blue-mid: #7a5645;
  --brand-blue-bright: #9a715c;
  --brand-star: #c2410c;
  --tint-rgb: 92, 64, 51;
  --accent-rgb: 194, 65, 12;
  --sidebar-0: #463027;
  --sidebar-1: #5c4033;
  --sidebar-2: #7a5645;
  --sidebar-deep: #2e1f18;
  --glow-mid: 234, 88, 12;
  --surface: #f7f3ef;
  --surface-2: #ebe3db;
  --ink: #5c4033;
  --ink-soft: #7a5e50;
  --ink-mute: #a0897c;
  --accent-soft: #ffedd5;
  --info-soft: #f5ebe3;
}

[data-theme="berry"] {
  --brand-red: #9d174d;
  --brand-magenta: #be185d;
  --brand-blue: #3b0a2a;
  --brand-blue-mid: #5b1340;
  --brand-blue-bright: #831843;
  --brand-star: #be185d;
  --tint-rgb: 59, 10, 42;
  --accent-rgb: 190, 24, 93;
  --sidebar-0: #2a071e;
  --sidebar-1: #3b0a2a;
  --sidebar-2: #5b1340;
  --sidebar-deep: #1a0412;
  --glow-mid: 244, 63, 94;
  --surface: #faf4f7;
  --surface-2: #f1e4eb;
  --ink: #3b0a2a;
  --ink-soft: #6b3a55;
  --ink-mute: #987088;
  --accent-soft: #fce7f3;
  --info-soft: #fce7f3;
}

[data-theme="slate-mint"] {
  --brand-red: #047857;
  --brand-magenta: #10b981;
  --brand-blue: #1f2a37;
  --brand-blue-mid: #334155;
  --brand-blue-bright: #475569;
  --brand-star: #10b981;
  --tint-rgb: 31, 42, 55;
  --accent-rgb: 16, 185, 129;
  --sidebar-0: #15202b;
  --sidebar-1: #1f2a37;
  --sidebar-2: #334155;
  --sidebar-deep: #0b1219;
  --glow-mid: 52, 211, 153;
  --surface: #f4f7f6;
  --surface-2: #e5ece9;
  --ink: #1f2a37;
  --ink-soft: #475569;
  --ink-mute: #64748b;
  --accent-soft: #d1fae5;
  --info-soft: #e2e8f0;
}

/* ========== Theme picker (topnav) ========== */
.theme-menu {
  position: relative;
  overflow: visible;
}

.theme-menu .top-icon {
  overflow: visible;
}

.theme-menu.is-open .top-icon {
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.22);
}

.theme-menu .top-icon svg {
  width: 18px;
  height: 18px;
}

.theme-menu-dot {
  position: absolute;
  top: 7px;
  right: 7px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--runtime-accent, var(--brand-magenta));
  border: 2px solid var(--runtime-primary, var(--brand-blue));
  box-shadow: 0 0 0 1px rgba(255, 255, 255, 0.35);
  pointer-events: none;
}

.theme-dropdown {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 400;
  width: min(300px, calc(100vw - 24px));
  padding: 8px;
  border-radius: 16px;
  background: #fff;
  border: 1px solid color-mix(in srgb, var(--runtime-primary, var(--brand-blue)) 12%, #ffffff);
  box-shadow: 0 18px 40px rgba(var(--runtime-tint-rgb, var(--tint-rgb)), 0.16);
  animation: rise 0.2s var(--ease, ease) both;
  color: var(--ink);
  pointer-events: auto;
}

.theme-dropdown[hidden] {
  display: none !important;
}

.theme-dropdown-head {
  padding: 10px 12px 12px;
  margin-bottom: 4px;
  border-bottom: 1px solid color-mix(in srgb, var(--runtime-primary, var(--brand-blue)) 10%, #ffffff);
}

.theme-dropdown-head strong {
  display: block;
  font-size: 0.9rem;
  color: var(--runtime-primary, var(--brand-blue));
}

.theme-dropdown-head span {
  display: block;
  margin-top: 2px;
  font-size: 0.72rem;
  color: var(--ink-mute);
}

.theme-dropdown-list {
  display: flex;
  flex-direction: column;
  gap: 2px;
  max-height: min(420px, calc(100vh - 140px));
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(var(--runtime-tint-rgb, var(--tint-rgb)), 0.28) transparent;
}

.theme-menu-item {
  width: 100%;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  padding: 9px 10px;
  border: 0;
  border-radius: 12px;
  background: transparent;
  text-align: left;
  cursor: pointer;
  font: inherit;
  color: inherit;
  pointer-events: auto;
  transition: background 0.15s ease;
}

.theme-menu-item:hover {
  background: var(--surface);
}

.theme-menu-item.is-active {
  background: var(--accent-soft);
}

.theme-menu-swatch {
  display: grid;
  grid-template-columns: 1.2fr 0.7fr 0.7fr;
  width: 36px;
  height: 22px;
  border-radius: 7px;
  overflow: hidden;
  border: 1px solid rgba(var(--runtime-tint-rgb, var(--tint-rgb)), 0.12);
  flex-shrink: 0;
}

.theme-menu-swatch span {
  display: block;
}

.theme-menu-copy strong {
  display: block;
  font-size: 0.84rem;
  font-weight: 700;
  color: var(--runtime-primary, var(--brand-blue));
}

.theme-menu-copy span {
  display: block;
  margin-top: 1px;
  font-size: 0.7rem;
  color: var(--ink-mute);
  line-height: 1.25;
}

.theme-menu-check {
  width: 16px;
  height: 16px;
  color: var(--runtime-accent, var(--brand-magenta));
  opacity: 0;
}

.theme-menu-item.is-active .theme-menu-check {
  opacity: 1;
}

.topnav,
.topnav-right,
.theme-menu,
.user-menu-wrap {
  overflow: visible;
}
