
/* Sidebar nav icons — crisp inline SVGs (vector). Soft, muted accents. */
.nav-ic{width:18px;height:18px;flex:0 0 auto;stroke:var(--c,currentColor);opacity:.9;transition:opacity .2s ease,transform .2s ease,filter .2s ease}
.nav-btn:hover .nav-ic,.nav-btn.active .nav-ic{opacity:1}
.nav-btn.active .nav-ic{transform:scale(1.06)}
.nav-btn:hover .nav-ic{filter:drop-shadow(0 0 6px var(--c,currentColor))}
/* Tasteful, NOT-overdone palette: cool-dominant (violet/blue/teal) with a few
   gentle warm accents. All muted so they glow softly on the dark sidebar. */
.ic-dash{--c:#A78BFA}
.ic-journal{--c:#8AA0FF}
.ic-backtest{--c:#C4B5FD}
.ic-daily{--c:#5FD0C0}
.ic-analytics{--c:#5FCF8E}
.ic-heatmap{--c:#E8A567}
.ic-monte{--c:#B79CFF}
.ic-calendar{--c:#7FB0F0}
.ic-plans{--c:#EE8FA6}
.ic-tools{--c:#9AAAD6}
.ic-prop{--c:#5BCB97}
.ic-recovery{--c:#6FC7DD}
.ic-notes{--c:#B197FC}
.ic-weekly{--c:#7FB0F0}
.ic-psych{--c:#E59BD2}
.ic-broker{--c:#66C6D6}
.ic-settings{--c:#9AA4C0}
.ic-support{--c:#6FD6A8}


/* ===== Plan badge (sidebar, under TRADERCAB) — premium 3D / high-res ===== */
.tc-plan-tag{ display:none; align-items:center; gap:6px; padding:4px 11px; border-radius:9px; flex-shrink:0;
  font-family:'JetBrains Mono',monospace; font-size:10.5px; font-weight:900;
  letter-spacing:.14em; line-height:1; position:relative; white-space:nowrap; user-select:none;
  -webkit-font-smoothing:antialiased; text-rendering:geometricPrecision;
  transform:translateZ(0); backface-visibility:hidden; will-change:box-shadow,transform; }
.tc-plan-tag.show{ display:inline-flex; }
.tc-plan-tag .pb-text{ position:relative; z-index:3; }
.tc-plan-tag .pb-gem{ position:relative; z-index:3; display:block; }

/* glossy specular sweep (above the surface) */
.tc-plan-tag::after{ content:""; position:absolute; top:0; bottom:0; left:-75%; width:48%; z-index:2; pointer-events:none;
  background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,0.85) 50%,transparent 100%);
  transform:skewX(-20deg); }
@keyframes pbSheen{ 0%{left:-75%} 55%{left:135%} 100%{left:135%} }

/* --- PRO: polished violet glass --- */
.tc-plan-tag.plan-pro{ color:#fff;
  background:
    linear-gradient(180deg,rgba(255,255,255,0.30) 0%,rgba(255,255,255,0.06) 44%,rgba(0,0,0,0.16) 100%),
    linear-gradient(140deg,#A98BFF 0%,#7C5CFC 46%,#5B3FD6 78%,#4A2FC0 100%);
  border:1px solid rgba(214,200,255,0.75);
  box-shadow:0 4px 12px rgba(91,63,214,0.5), 0 0 20px rgba(124,92,252,0.42),
    inset 0 1.2px 0.5px rgba(255,255,255,0.7), inset 0 -2px 5px rgba(40,20,90,0.55);
  text-shadow:0 1px 1.5px rgba(40,18,90,0.6),0 0 7px rgba(255,255,255,0.3);
  overflow:hidden; animation:pbProGlow 2.8s ease-in-out infinite; }
.tc-plan-tag.plan-pro::after{ animation:pbSheen 3.4s ease-in-out infinite; }
@keyframes pbProGlow{ 0%,100%{box-shadow:0 4px 12px rgba(91,63,214,0.42),0 0 18px rgba(124,92,252,0.34),inset 0 1.2px 0.5px rgba(255,255,255,0.7),inset 0 -2px 5px rgba(40,20,90,0.55)}
  50%{box-shadow:0 5px 16px rgba(91,63,214,0.6),0 0 28px rgba(150,120,255,0.62),inset 0 1.2px 0.5px rgba(255,255,255,0.8),inset 0 -2px 5px rgba(40,20,90,0.5)} }

/* --- VIP: polished metallic gold --- */
.tc-plan-tag.plan-vip{ color:#4a3400;
  background:
    linear-gradient(180deg,rgba(255,255,255,0.6) 0%,rgba(255,255,255,0.10) 42%,rgba(120,78,0,0.20) 100%),
    linear-gradient(140deg,#FFF3C4 0%,#FAD45E 30%,#E7A718 62%,#C8860A 100%);
  background-size:auto,220% 100%; background-position:0 0,0 0;
  border:1px solid rgba(255,226,150,0.95);
  box-shadow:0 4px 12px rgba(196,134,16,0.55), 0 0 20px rgba(255,190,60,0.45),
    inset 0 1.2px 0.5px rgba(255,255,255,0.9), inset 0 -2px 5px rgba(150,95,0,0.5);
  text-shadow:0 1px 0.5px rgba(255,255,255,0.55),0 1px 2px rgba(120,78,0,0.45);
  overflow:hidden; animation:pbGoldFlow 3.2s linear infinite, pbVipGlow 2.4s ease-in-out infinite; }
.tc-plan-tag.plan-vip::after{ animation:pbSheen 2.8s ease-in-out infinite; }
@keyframes pbGoldFlow{ 0%{background-position:0 0,0% 0} 100%{background-position:0 0,220% 0} }
@keyframes pbVipGlow{ 0%,100%{box-shadow:0 4px 12px rgba(196,134,16,0.45),0 0 18px rgba(255,190,60,0.4),inset 0 1.2px 0.5px rgba(255,255,255,0.9),inset 0 -2px 5px rgba(150,95,0,0.5)}
  50%{box-shadow:0 5px 16px rgba(196,134,16,0.6),0 0 30px rgba(255,205,80,0.75),inset 0 1.2px 0.5px rgba(255,255,255,0.95),inset 0 -2px 5px rgba(150,95,0,0.45)} }

/* --- ULTRA: iridescent holographic, faceted 3D diamond --- */
.tc-plan-tag.plan-ultra{ color:#0a2c38;
  background:
    linear-gradient(180deg,rgba(255,255,255,0.62) 0%,rgba(255,255,255,0.14) 40%,rgba(70,110,190,0.20) 100%),
    linear-gradient(110deg,#ecfdff 0%,#bdeeff 18%,#9fcdff 36%,#ccb6ff 54%,#ffc2ec 72%,#bff2ff 90%,#ecfdff 100%);
  background-size:auto,280% 280%; background-position:0 0,0% 50%;
  border:1px solid rgba(255,255,255,0.95);
  box-shadow:0 4px 16px rgba(120,200,255,0.6), 0 0 26px rgba(190,200,255,0.55),
    inset 0 1.4px 1px rgba(255,255,255,0.95), inset 0 -2px 6px rgba(80,130,210,0.5);
  text-shadow:0 1px 0.5px rgba(255,255,255,0.85);
  transform:perspective(360px); overflow:hidden;
  animation:pbHolo 5s ease-in-out infinite, pbUltraFloat 3.8s ease-in-out infinite, pbUltraGlow 2.6s ease-in-out infinite; }
.tc-plan-tag.plan-ultra::after{ animation:pbSheen 2.4s ease-in-out infinite; }
.tc-plan-tag.plan-ultra .pb-gem{ filter:drop-shadow(0 0 2px rgba(255,255,255,0.9)); }
.tc-plan-tag.plan-ultra .pb-gem-spark{ transform-box:fill-box; transform-origin:center; animation:pbSpark 1.9s ease-in-out infinite; }
@keyframes pbHolo{ 0%,100%{background-position:0 0,0% 50%} 50%{background-position:0 0,100% 50%} }
@keyframes pbUltraFloat{ 0%,100%{transform:perspective(360px) rotateX(0deg) translateY(0)} 50%{transform:perspective(360px) rotateX(10deg) translateY(-1.5px)} }
@keyframes pbUltraGlow{ 0%,100%{box-shadow:0 4px 16px rgba(120,200,255,0.45),0 0 20px rgba(190,200,255,0.4),inset 0 1.4px 1px rgba(255,255,255,0.95),inset 0 -2px 6px rgba(80,130,210,0.5)}
  50%{box-shadow:0 5px 22px rgba(120,200,255,0.85),0 0 38px rgba(210,200,255,0.7),inset 0 1.4px 1px rgba(255,255,255,1),inset 0 -2px 8px rgba(80,130,210,0.55)} }
@keyframes pbSpark{ 0%,100%{opacity:.55;transform:scale(.8) rotate(0deg)} 50%{opacity:1;transform:scale(1.25) rotate(20deg)} }

@media(prefers-reduced-motion:reduce){
  .tc-plan-tag,.tc-plan-tag::after,.tc-plan-tag .pb-gem-spark{ animation:none !important; }
}
