
/* === TLT 3D Overrides — v4 (sitewide, enforced) ===
   Goal: absolute consistency across all member pages.
   - Thin black outlines + unified shadows
   - Uniform sidebar menu height + 1px gap
   - Tier pill = the button (no outer box)
   - Extra guards: box-sizing, line-height fallback, stricter selectors
--------------------------------------------------------------------- */
:root{
  --tlt-shadow: 0 10px 20px rgba(0,0,0,0.25);
  --tlt-border: 1px solid #000;
  --menu-h: 44px;   /* tweak to 42/40/48 */
  --menu-gap: 1px;  /* 1px or 2px */
}

/* Global containers/cards */
.stat-item, .bootcamp-cta, .authority-stat, .success-stat,
.feature-card, .testimonial-slider, .testimonial-slide,
.pricing-container, .pricing-toggle, .toggle-switch, .yearly-badge,
.member-counter, .scarcity-section, .pricing-card,
.video-content-wrapper, .video-wrapper, .video-caption,
.mastermind-content, .mastermind-detail,
.inner-circle-content, .inner-circle-detail,
.welcome-content, .testimonial, .login-form, .demo-note, .success-message,
/* Dashboard */
.header, .welcome-section, .stat-card, .onboarding-section,
.calendar-container, .event-item,
/* Generic fallbacks */
.card, .panel, .module, .widget, .box,
[class*="card"], [class*="panel"], [class*="module"], [class*="widget"], [class*="box"]{
  border: var(--tlt-border) !important;
  box-shadow: var(--tlt-shadow) !important;
  box-sizing: border-box !important;
}

/* Buttons (global) */
.cta-button, .pricing-btn, .btn, .btn-login, .btn-register,
.login-button, .test-login-button, .submit-btn,
button[type="button"], button[type="submit"], input[type="submit"],
a.button, a.btn{
  border: var(--tlt-border) !important;
  box-shadow: var(--tlt-shadow) !important;
  box-sizing: border-box !important;
}
.cta-button:hover, .pricing-btn:hover, .btn:hover,
.btn-login:hover, .btn-register:hover, .login-button:hover, .test-login-button:hover,
.submit-btn:hover, a.button:hover, a.btn:hover,
.feature-card:hover, .pricing-card:hover{ box-shadow: var(--tlt-shadow) !important; }

/* Sidebar shell */
.sidebar{ border: var(--tlt-border) !important; box-shadow: var(--tlt-shadow) !important; box-sizing: border-box !important; }

/* Tier area: remove outer box; make pill the button */
.current-tier{ border:none!important; box-shadow:none!important; background:transparent!important; }
.current-tier .tier-badge, .tier-badge{
  display:flex; align-items:center; justify-content:center;
  height: var(--menu-h) !important;
  width: calc(100% - 1rem) !important;
  margin: 0 0.5rem var(--menu-gap) 0.5rem !important;
  border-radius: 9999px !important;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  border: var(--tlt-border) !important;
  box-shadow: var(--tlt-shadow) !important;
  box-sizing: border-box !important;
}

/* Sidebar menu: uniform height + small gap (strict) */
.sidebar ul{ padding: .25rem 0 !important; margin: 0 !important; list-style: none !important; }
.sidebar ul li{ margin: 0 0 var(--menu-gap) 0 !important; }
.sidebar ul li:last-child{ margin-bottom: 0 !important; }

/* Core selector + fallbacks for any links in the sidebar */
.sidebar ul li a,
.sidebar ul li a.active,
.sidebar a[href]{
  display: flex !important;
  align-items: center !important;
  height: var(--menu-h) !important;
  line-height: calc(var(--menu-h) - 2px) !important; /* fallback for non-flex metrics */
  padding: 0 1rem !important;
  width: calc(100% - 1rem) !important;
  margin-left: .5rem !important;
  border-radius: 9999px !important; /* keeps pill shape even on alt pages */
  font-size: .9rem !important;
  gap: .6rem !important;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
  border: var(--tlt-border) !important;
  box-shadow: var(--tlt-shadow) !important;
  box-sizing: border-box !important;
}

/* Hover consistency */
.sidebar ul li a:hover, .sidebar ul li a.active:hover, .sidebar a[href]:hover{
  box-shadow: var(--tlt-shadow) !important;
}
