/*
 * L33T Theme
 * Retro CRT terminal with neon green phosphor glow, BBS/MUD aesthetic
 * Inspired by LambdaMOO, early BBS systems, and 1980s-1990s CRT monitors
 * Completely self-contained - does not depend on main application styles
 */

/* ===== Google Font Import ===== */
@import url('https://fonts.googleapis.com/css2?family=VT323&family=Press+Start+2P&display=swap');

/* ===== CSS Base (scoped) ===== */
.themed-page.theme-l33t {
  box-sizing: border-box;
}

.themed-page.theme-l33t *,
.themed-page.theme-l33t *::before,
.themed-page.theme-l33t *::after {
  box-sizing: inherit;
}

/* ===== CSS Variables ===== */
:root {
  /* L33T colors */
  --l33t-black: #000000;
  --l33t-neon-green: #00ff41;
  --l33t-cyan: #00ddff;
  --l33t-text-light: #cccccc;
  --l33t-text-muted: #b0b0b0;
  --l33t-text-dim: #888888;
  --l33t-dark-gray: #555555;
  --l33t-button-bg: #006600;
  --l33t-surface: #111111;
  --l33t-surface-dark: #0a0a0a;
  --l33t-border: #333333;

  /* Typography */
  --l33t-font-mono: 'VT323', 'IBM Plex Mono', 'Fira Code', 'SF Mono', Consolas, monospace;
  --l33t-font-pixel: 'Press Start 2P', 'VT323', monospace;
  --l33t-font-size-base: 18px;
  --l33t-line-height: 1.6;
}

/* ===== Page Base ===== */
.themed-page.theme-l33t {
  font-family: var(--l33t-font-mono);
  font-size: var(--l33t-font-size-base);
  line-height: var(--l33t-line-height);
  background-color: var(--l33t-black);
  color: var(--l33t-text-light);
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* ===== Global Layout Overrides ===== */
.themed-page.theme-l33t .tw-site-header {
  background-color: var(--l33t-black) !important;
  border-color: var(--l33t-neon-green) !important;
  border-bottom: 1px solid var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t .tw-site-header,
.themed-page.theme-l33t .tw-site-header a,
.themed-page.theme-l33t .tw-site-header .tw-site-logo-text {
  color: var(--l33t-neon-green) !important;
  text-shadow: 0 0 4px var(--l33t-neon-green);
}

.themed-page.theme-l33t .tw-site-header .tw-site-logo img {
  max-height: 2.1rem !important;
  width: 46vw;
  max-width: 220px !important;
  filter: drop-shadow(0 0 8px var(--l33t-neon-green)) drop-shadow(0 0 16px var(--l33t-neon-green));
  border: none !important;
  box-shadow: none !important;
}

.themed-page.theme-l33t .tw-site-header .tw-tab-link,
.themed-page.theme-l33t .tw-site-header .tw-tab-link-active,
.themed-page.theme-l33t .tw-site-header .tw-tab-link:visited,
.themed-page.theme-l33t .tw-site-header .tw-tab-link:focus {
  color: var(--l33t-neon-green) !important;
  font-size: 1.1rem !important;
  padding: 0.4rem 0.6rem !important;
}

/* Nav DROPDOWN BUTTONS hover - black text on green background for readability */
/* Only applies to button elements (dropdown triggers like Programs, Tools) */
/* Regular nav links (Home, FAQ, Messages, etc.) stay green - no green background */
.themed-page.theme-l33t .tw-site-header button.tw-tab-link:hover,
.themed-page.theme-l33t .tw-site-header button.tw-tab-link:hover * {
  color: #000000 !important;
  text-shadow: none !important;
}

/* Fix Cities menu z-index overlap with adjacent nav items */
.themed-page.theme-l33t .tw-site-header details,
body.theme-l33t .tw-site-header details {
  position: relative !important;
  z-index: 1 !important;
}

.themed-page.theme-l33t .tw-site-header details[open],
body.theme-l33t .tw-site-header details[open] {
  z-index: 50 !important;
}

.themed-page.theme-l33t .tw-site-header nav,
body.theme-l33t .tw-site-header nav {
  position: relative !important;
  z-index: 2 !important;
  gap: 0.25rem !important;
}

/* ===== Mobile Menu (Hamburger) Styling ===== */
.themed-page.theme-l33t [data-mobile-menu],
body.theme-l33t [data-mobile-menu] {
  background-color: var(--l33t-black) !important;
  border-color: var(--l33t-neon-green) !important;
  border-bottom: 1px solid var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t [data-mobile-menu] nav,
body.theme-l33t [data-mobile-menu] nav {
  background-color: var(--l33t-black) !important;
}

/* Mobile menu links */
.themed-page.theme-l33t [data-mobile-menu] a,
.themed-page.theme-l33t [data-mobile-menu] summary,
body.theme-l33t [data-mobile-menu] a,
body.theme-l33t [data-mobile-menu] summary {
  color: var(--l33t-neon-green) !important;
  background-color: transparent !important;
  text-shadow: 0 0 6px rgba(0, 255, 65, 0.4) !important;
}

.themed-page.theme-l33t [data-mobile-menu] a:hover,
.themed-page.theme-l33t [data-mobile-menu] summary:hover,
body.theme-l33t [data-mobile-menu] a:hover,
body.theme-l33t [data-mobile-menu] summary:hover {
  background-color: var(--l33t-surface) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.3) !important;
}

/* Mobile menu badges */
.themed-page.theme-l33t [data-mobile-menu] .bg-\[\#dfe7ff\],
body.theme-l33t [data-mobile-menu] .bg-\[\#dfe7ff\] {
  background-color: var(--l33t-surface) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
}

/* Mobile menu chevron icons */
.themed-page.theme-l33t [data-mobile-menu] .text-slate-400,
body.theme-l33t [data-mobile-menu] .text-slate-400 {
  color: var(--l33t-neon-green) !important;
}

/* Mobile menu expandable sections */
.themed-page.theme-l33t [data-mobile-menu] details,
body.theme-l33t [data-mobile-menu] details {
  background-color: var(--l33t-black) !important;
}

.themed-page.theme-l33t [data-mobile-menu] details > div,
body.theme-l33t [data-mobile-menu] details > div {
  background-color: var(--l33t-black) !important;
}

/* Nav menu items larger font */
.themed-page.theme-l33t .tw-site-header a,
.themed-page.theme-l33t .tw-site-header button,
.themed-page.theme-l33t .tw-site-header summary {
  font-size: 1.1rem !important;
}

.themed-page.theme-l33t .tw-site-header .tw-button,
.themed-page.theme-l33t .tw-site-header .tw-button-low-profile-white,
.themed-page.theme-l33t .tw-site-header .tw-button-outline {
  color: var(--l33t-neon-green) !important;
  background-color: var(--l33t-black) !important;
  border-color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 4px var(--l33t-neon-green) !important;
  padding: 0.5rem 1rem !important;
}

.themed-page.theme-l33t .tw-site-header .tw-button:hover {
  box-shadow: 0 0 8px var(--l33t-neon-green), 0 0 16px var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t .tw-site-header summary a,
.themed-page.theme-l33t .tw-site-header summary a:visited,
.themed-page.theme-l33t .tw-site-header summary a:hover,
.themed-page.theme-l33t .tw-site-header summary a:focus {
  background-color: var(--l33t-black) !important;
  border-color: var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t .tw-site-header a.tw-nav-mobile {
  background-color: var(--l33t-black) !important;
  border-color: var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t .tw-site-header .tw-header-signin {
  background-color: var(--l33t-black) !important;
  border-color: var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
}

/* ===== Nav Buttons - Cities Megamenu & Messages (narrow screens) ===== */
.themed-page.theme-l33t .tw-site-header .tw-cities-megamenu-trigger,
.themed-page.theme-l33t .tw-site-header summary a[href*="all_cities"],
.themed-page.theme-l33t .tw-site-header a[href*="message_center"].tw-button,
.themed-page.theme-l33t .tw-site-header .tw-button-low-profile-white {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  border-radius: 0.5rem !important;
  color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 4px rgba(0, 255, 65, 0.3) !important;
  padding: 0.5rem 1rem !important;
}

/* ===== Avatar - Remove circular border, keep square container ===== */
.themed-page.theme-l33t .tw-site-header button[aria-label="Your profile"] img,
.themed-page.theme-l33t .tw-site-header .tw-avatar img,
.themed-page.theme-l33t .tw-site-header img[alt="Your profile"],
.themed-page.theme-l33t .tw-site-header img.rounded-full {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  border-radius: 0 !important;
}

/* Avatar container - ensure clean square border only */
.themed-page.theme-l33t .tw-site-header button[aria-label="Your profile"] {
  border: 1px solid var(--l33t-neon-green) !important;
  border-radius: 0.25rem !important;
  padding: 2px !important;
  background-color: var(--l33t-black) !important;
}

.themed-page.theme-l33t [aria-label="Breadcrumb"] a,
.themed-page.theme-l33t [aria-label="Breadcrumb"] span {
  color: var(--l33t-text-muted) !important;
  font-size: 1.2rem !important;
}

/* ===== Dropdown Menus (Tools, Avatar, etc.) ===== */
.themed-page.theme-l33t .tw-dropdown-menu,
.themed-page.theme-l33t [data-dropdown],
.themed-page.theme-l33t details[open] > div,
.themed-page.theme-l33t .avatar-dropdown,
.themed-page.theme-l33t .tw-avatar-menu,
.themed-page.theme-l33t [class*="dropdown"][class*="bg-white"],
.themed-page.theme-l33t [role="menu"],
body.theme-l33t .tw-avatar-menu,
body.theme-l33t [data-avatar-menu],
body.theme-l33t .avatar-dropdown-content {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 12px rgba(0, 255, 65, 0.3) !important;
  color: var(--l33t-text-light) !important;
}

/* Dropdown menu items */
.themed-page.theme-l33t .tw-dropdown-menu a,
.themed-page.theme-l33t [role="menu"] a,
.themed-page.theme-l33t [role="menuitem"],
.themed-page.theme-l33t details[open] > div a,
body.theme-l33t .tw-avatar-menu a,
body.theme-l33t .avatar-dropdown-content a {
  color: var(--l33t-neon-green) !important;
  text-decoration: none !important;
}

.themed-page.theme-l33t .tw-dropdown-menu a:hover,
.themed-page.theme-l33t [role="menu"] a:hover,
.themed-page.theme-l33t details[open] > div a:hover,
body.theme-l33t .tw-avatar-menu a:hover,
body.theme-l33t details[open] a:hover,
body.theme-l33t .tw-site-header details[open] a:hover {
  background-color: var(--l33t-surface) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.3) !important;
}

/* Selected/active menu items */
.themed-page.theme-l33t .tw-dropdown-menu a.active,
.themed-page.theme-l33t .tw-dropdown-menu a.selected,
.themed-page.theme-l33t .tw-dropdown-menu a[aria-current],
.themed-page.theme-l33t details[open] a.active,
.themed-page.theme-l33t details[open] a.selected,
.themed-page.theme-l33t details[open] a[aria-current],
body.theme-l33t details[open] a.active,
body.theme-l33t details[open] a.selected,
body.theme-l33t details[open] a[aria-current],
body.theme-l33t .bg-white.shadow-lg,
body.theme-l33t a.bg-white,
body.theme-l33t .tw-site-header a.bg-white,
body.theme-l33t .tw-site-header details[open] .bg-white {
  background-color: var(--l33t-surface) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.4), inset 0 0 12px rgba(0, 255, 65, 0.1) !important;
  color: var(--l33t-neon-green) !important;
}

/* Override any inline white backgrounds in dropdowns */
body.theme-l33t .tw-site-header details[open] [class*="bg-white"],
body.theme-l33t details[open] [class*="bg-white"],
.themed-page.theme-l33t details[open] [class*="bg-white"] {
  background-color: var(--l33t-surface) !important;
}

/* Override Tailwind hover:bg-* classes on menu items */
body.theme-l33t .tw-site-header details[open] a:hover,
body.theme-l33t .tw-site-header nav a:hover,
body.theme-l33t details[open] div a:hover,
body.theme-l33t .manage-megamenu a:hover,
.themed-page.theme-l33t .tw-site-header details[open] a:hover,
.themed-page.theme-l33t .manage-megamenu a:hover,
.themed-page.theme-l33t nav details[open] a:hover {
  background-color: var(--l33t-surface) !important;
  color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.3), inset 0 0 4px rgba(0, 255, 65, 0.1) !important;
}

/* Menu items with green background on hover - make text dark for contrast */
body.theme-l33t [class*="hover\:bg-"]:hover,
.themed-page.theme-l33t [class*="hover\:bg-"]:hover,
body.theme-l33t .tw-site-header details[open] a[class*="hover\:bg-"]:hover,
.themed-page.theme-l33t .tw-site-header details[open] a[class*="hover\:bg-"]:hover,
body.theme-l33t details[open] a[class*="bg-emerald"]:hover,
body.theme-l33t details[open] a[class*="bg-green"]:hover,
.themed-page.theme-l33t details[open] a[class*="bg-emerald"]:hover,
.themed-page.theme-l33t details[open] a[class*="bg-green"]:hover {
  background-color: var(--l33t-neon-green) !important;
  color: #000000 !important;
  text-shadow: none !important;
  box-shadow: 0 0 12px rgba(0, 255, 65, 0.5) !important;
}

body.theme-l33t [class*="hover\:bg-"]:hover *,
.themed-page.theme-l33t [class*="hover\:bg-"]:hover *,
body.theme-l33t .tw-site-header summary:hover *,
.themed-page.theme-l33t .tw-site-header summary:hover *,
body.theme-l33t .tw-site-header summary a:hover *,
.themed-page.theme-l33t .tw-site-header summary a:hover * {
  color: #000000 !important;
  text-shadow: none !important;
  background-color: transparent !important;
}

/* Dropdown menu items (Programs, Tools) - icons must turn black on hover */
body.theme-l33t .tw-nav-menu-panel a:hover i,
body.theme-l33t .tw-nav-menu-panel a:hover i.fa,
body.theme-l33t .tw-nav-menu-panel a:hover i.fab,
body.theme-l33t .tw-nav-menu-panel a:hover svg,
.themed-page.theme-l33t .tw-nav-menu-panel a:hover i,
.themed-page.theme-l33t .tw-nav-menu-panel a:hover i.fa,
.themed-page.theme-l33t .tw-nav-menu-panel a:hover svg,
body.theme-l33t .tw-site-header .group .tw-nav-menu-panel a:hover i,
body.theme-l33t .tw-site-header .group .tw-nav-menu-panel a:hover svg {
  color: #000000 !important;
  text-shadow: none !important;
  filter: none !important;
}

/* Manage mega menu - icons must turn black on hover */
body.theme-l33t [data-mega-menu-panel] a:hover i,
body.theme-l33t [data-mega-menu-panel] a:hover i.fa,
body.theme-l33t [data-mega-menu-panel] a:hover svg,
body.theme-l33t [data-mega-menu-panel] button:hover i,
body.theme-l33t [data-mega-menu-panel] button:hover svg,
.themed-page.theme-l33t [data-mega-menu-panel] a:hover i,
.themed-page.theme-l33t [data-mega-menu-panel] a:hover svg,
.themed-page.theme-l33t [data-mega-menu-panel] button:hover i,
.themed-page.theme-l33t [data-mega-menu-panel] button:hover svg {
  color: #000000 !important;
  text-shadow: none !important;
  filter: none !important;
}

/* Cities button hover - ensure count badge is also dark */
body.theme-l33t .tw-site-header summary:hover,
.themed-page.theme-l33t .tw-site-header summary:hover,
body.theme-l33t .tw-site-header summary a:hover,
.themed-page.theme-l33t .tw-site-header summary a:hover {
  background-color: var(--l33t-neon-green) !important;
  color: #000000 !important;
}

/* Admin tools menu - fix strikethrough/blurry text */
.themed-page.theme-l33t .admin-tools-menu a,
.themed-page.theme-l33t [class*="admin"] a,
.themed-page.theme-l33t .tw-dropdown-menu .text-rose-600,
.themed-page.theme-l33t .tw-dropdown-menu [class*="text-rose"],
body.theme-l33t .admin-menu a,
body.theme-l33t details[open] .font-medium,
body.theme-l33t details[open] .font-semibold,
body.theme-l33t .tw-site-header details[open] .font-medium,
body.theme-l33t .tw-site-header details[open] .font-semibold {
  text-decoration: none !important;
  color: var(--l33t-neon-green) !important;
  text-shadow: none !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

/* Admin submenu titles - ensure readability */
body.theme-l33t details[open] h4,
body.theme-l33t details[open] h5,
body.theme-l33t details[open] .text-xs.font-semibold,
body.theme-l33t details[open] .text-sm.font-semibold,
body.theme-l33t .tw-site-header details[open] h4,
body.theme-l33t .tw-site-header details[open] .text-xs,
.themed-page.theme-l33t details[open] .text-xs {
  text-decoration: none !important;
  text-shadow: none !important;
  color: var(--l33t-neon-green) !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
}

/* Avatar menu specific styles */
body.theme-l33t #avatar-menu-dropdown,
body.theme-l33t .avatar-menu-content,
body.theme-l33t [id*="avatar"][id*="menu"],
body.theme-l33t .tw-avatar-menu,
body.theme-l33t [data-controller="avatar-menu"] > div,
body.theme-l33t .tw-site-header details[open] > div,
.themed-page.theme-l33t #avatar-menu-dropdown {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  color: var(--l33t-text-light) !important;
  box-shadow: 0 0 20px rgba(0, 255, 65, 0.3) !important;
}

/* Avatar menu all nested elements */
body.theme-l33t .tw-avatar-menu *,
body.theme-l33t [data-controller="avatar-menu"] > div *,
body.theme-l33t .tw-site-header details[open] > div * {
  background-color: var(--l33t-black) !important;
  color: var(--l33t-text-light) !important;
  border-color: var(--l33t-neon-green) !important;
}

body.theme-l33t .tw-avatar-menu a,
body.theme-l33t [data-controller="avatar-menu"] a,
body.theme-l33t .tw-site-header details[open] a {
  color: var(--l33t-neon-green) !important;
  font-size: 1.2rem !important;
}

body.theme-l33t .tw-avatar-menu h3,
body.theme-l33t .tw-avatar-menu h4,
body.theme-l33t .tw-avatar-menu .font-semibold,
body.theme-l33t [data-controller="avatar-menu"] h3,
body.theme-l33t [data-controller="avatar-menu"] h4 {
  color: var(--l33t-neon-green) !important;
  font-size: 1.3rem !important;
}

body.theme-l33t .tw-avatar-menu .text-slate-500,
body.theme-l33t .tw-avatar-menu .text-slate-600,
body.theme-l33t .tw-avatar-menu .text-gray-500,
body.theme-l33t [data-controller="avatar-menu"] .text-slate-500,
body.theme-l33t .tw-avatar-menu .text-xs,
body.theme-l33t .tw-avatar-menu .text-sm,
body.theme-l33t [data-controller="avatar-menu"] .text-xs,
body.theme-l33t [data-controller="avatar-menu"] .text-sm {
  color: var(--l33t-text-muted) !important;
  font-size: 1.1rem !important;
}

/* Avatar menu general text */
body.theme-l33t .tw-avatar-menu,
body.theme-l33t [data-controller="avatar-menu"] > div {
  font-size: 1.2rem !important;
}

body.theme-l33t .tw-avatar-menu span,
body.theme-l33t [data-controller="avatar-menu"] span {
  font-size: 1.1rem !important;
}

body.theme-l33t .tw-avatar-menu button,
body.theme-l33t [data-controller="avatar-menu"] button {
  font-size: 1.1rem !important;
}

body.theme-l33t .tw-avatar-menu hr,
body.theme-l33t [data-controller="avatar-menu"] hr {
  border-color: var(--l33t-neon-green) !important;
  opacity: 0.5 !important;
}

/* Queue badges in avatar menu */
body.theme-l33t .avatar-menu-content button,
body.theme-l33t [id*="avatar"] button,
.themed-page.theme-l33t .avatar-dropdown button {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
}

/* Sign out link */
body.theme-l33t .avatar-menu-content a[href*="sign_out"],
body.theme-l33t a[data-method="delete"],
.themed-page.theme-l33t a[href*="sign_out"] {
  color: var(--l33t-cyan) !important;
}

/* Avatar RSVP list - fix calendar icon visibility */
body.theme-l33t .avatar-rsvp-icon,
body.theme-l33t .avatar-rsvp-icon svg,
.themed-page.theme-l33t .avatar-rsvp-icon,
.themed-page.theme-l33t .avatar-rsvp-icon svg {
  color: var(--l33t-neon-green) !important;
  fill: var(--l33t-neon-green) !important;
  display: none !important;
}

/* Avatar RSVP title - remove extra indent */
body.theme-l33t .avatar-rsvp-title,
.themed-page.theme-l33t .avatar-rsvp-title {
  color: var(--l33t-neon-green) !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

/* Avatar RSVP item container */
body.theme-l33t .avatar-rsvp-item,
.themed-page.theme-l33t .avatar-rsvp-item {
  padding-left: 0.5rem !important;
}

body.theme-l33t .avatar-rsvp-title-row,
.themed-page.theme-l33t .avatar-rsvp-title-row {
  gap: 0.25rem !important;
}

.themed-page.theme-l33t footer {
  background-color: var(--l33t-black) !important;
  border-color: var(--l33t-neon-green) !important;
  border-top: 1px solid var(--l33t-neon-green) !important;
  color: var(--l33t-text-muted) !important;
}

.themed-page.theme-l33t footer a {
  color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t footer.bg-white {
  background-color: var(--l33t-black) !important;
}

.themed-page.theme-l33t footer .text-slate-500,
.themed-page.theme-l33t footer .text-slate-600,
.themed-page.theme-l33t footer .text-slate-400,
.themed-page.theme-l33t footer .text-muted {
  color: var(--l33t-text-muted) !important;
}

/* ===== Terminal Chrome ===== */
.themed-page.theme-l33t .l33t-terminal {
  background-color: var(--l33t-black);
  border: 4px solid var(--l33t-neon-green);
  box-shadow:
    0 0 10px var(--l33t-neon-green),
    0 0 20px var(--l33t-neon-green),
    0 0 40px rgba(0, 255, 65, 0.5),
    inset 0 0 20px rgba(0, 255, 65, 0.1);
  margin: 2rem 1rem;
  position: relative;
}

.themed-page.theme-l33t .l33t-terminal::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: repeating-linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.1),
    rgba(0, 0, 0, 0.1) 1px,
    transparent 1px,
    transparent 2px
  );
  pointer-events: none;
  z-index: 1;
}

.themed-page.theme-l33t .l33t-header {
  background-color: var(--l33t-black);
  padding: 0.75rem 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--l33t-neon-green);
}

.themed-page.theme-l33t .l33t-header-title {
  font-family: var(--l33t-font-mono);
  font-size: 1.25rem;
  color: var(--l33t-neon-green);
  text-transform: uppercase;
  letter-spacing: 2px;
  text-shadow:
    0 0 4px var(--l33t-neon-green),
    0 0 8px var(--l33t-neon-green);
}

.themed-page.theme-l33t .l33t-status {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.themed-page.theme-l33t .l33t-status-dot {
  width: 8px;
  height: 8px;
  background-color: var(--l33t-neon-green);
  border-radius: 50%;
  box-shadow: 0 0 4px var(--l33t-neon-green), 0 0 8px var(--l33t-neon-green);
  animation: l33t-pulse 2s ease-in-out infinite;
}

@keyframes l33t-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}

.themed-page.theme-l33t .l33t-status-text {
  font-family: var(--l33t-font-mono);
  font-size: 0.75rem;
  color: var(--l33t-neon-green);
  text-transform: uppercase;
  letter-spacing: 1px;
  background-color: var(--l33t-button-bg);
  padding: 0.25rem 0.75rem;
  border: 1px solid var(--l33t-neon-green);
}

.themed-page.theme-l33t .l33t-body {
  padding: 2rem;
  background-color: var(--l33t-black);
  position: relative;
  z-index: 2;
}

.themed-page.theme-l33t .l33t-content-box {
  border: 1px dashed var(--l33t-text-muted);
  padding: 2rem;
  margin-bottom: 2rem;
}

/* ===== Typography ===== */
.themed-page.theme-l33t h1,
.themed-page.theme-l33t h2,
.themed-page.theme-l33t h3,
.themed-page.theme-l33t h4,
.themed-page.theme-l33t h5,
.themed-page.theme-l33t h6 {
  color: var(--l33t-neon-green);
  font-family: var(--l33t-font-mono);
  font-weight: 400;
  margin-top: 2rem;
  margin-bottom: 1rem;
  line-height: 1.3;
  text-shadow:
    0 0 1px var(--l33t-neon-green),
    0 0 2px rgba(0, 255, 65, 0.3);
}

.themed-page.theme-l33t h1 {
  font-size: 2rem;
  text-transform: uppercase;
  letter-spacing: 4px;
  text-shadow:
    0 0 2px var(--l33t-neon-green),
    0 0 4px rgba(0, 255, 65, 0.5);
}

/* ===== Event Title - Terminal Font with Heavy Weight ===== */
.themed-page.theme-l33t .rsvp-title-gradient,
.themed-page.theme-l33t .rsvp-title-gradient h1,
.themed-page.theme-l33t .event-title,
.themed-page.theme-l33t .meetup-form-title,
.themed-page.theme-l33t h3.meetup-form-title {
  font-family: var(--l33t-font-mono) !important;
  font-weight: 700 !important;
  font-size: 3rem !important;
  text-transform: none !important;
  letter-spacing: 1px !important;
  line-height: 1.3 !important;
}

/* Ensure the h3 title text (outside span) matches the span */
.themed-page.theme-l33t h3.meetup-form-title {
  font-size: 3rem !important;
}

/* Main title text (first part) */
.themed-page.theme-l33t .rsvp-card h1,
.themed-page.theme-l33t .rsvp-panel h1 {
  font-size: 3.2rem !important;
}

/* Main event title h3 - non-colored part larger */
.themed-page.theme-l33t .rsvp-card h3,
.themed-page.theme-l33t .rsvp-panel h3,
.themed-page.theme-l33t .rsvp-card-area h3 {
  font-size: 3.2rem !important;
}

/* Date/secondary title part - same size with light glow */
.themed-page.theme-l33t .rsvp-title-gradient {
  font-size: 3rem !important;
  text-shadow:
    0 0 6px rgba(0, 255, 65, 0.4),
    0 0 12px rgba(0, 255, 65, 0.2) !important;
}

/* ===== Event Title Trailing Parens - Faint Glow ===== */
.themed-page.theme-l33t .event-title__trailing-parens {
  font-family: var(--l33t-font-mono) !important;
  color: var(--l33t-cyan) !important;
  font-size: 3rem !important;
  text-shadow:
    0 0 8px rgba(0, 221, 255, 0.5),
    0 0 16px rgba(0, 221, 255, 0.3);
}

.themed-page.theme-l33t h2 {
  font-size: 1.7rem;
  text-transform: uppercase;
  letter-spacing: 2px;
}

.themed-page.theme-l33t h3:not(.meetup-form-title) { font-size: 1.25rem; }
.themed-page.theme-l33t h4 { font-size: 1.125rem; }
.themed-page.theme-l33t h5 { font-size: 1rem; }
.themed-page.theme-l33t h6 { font-size: 0.875rem; }

.themed-page.theme-l33t h2::before,
.themed-page.theme-l33t h3::before,
.themed-page.theme-l33t h4::before,
.themed-page.theme-l33t h5::before,
.themed-page.theme-l33t h6::before {
  content: "> ";
  color: var(--l33t-neon-green);
  opacity: 0.7;
}

.themed-page.theme-l33t p {
  margin-bottom: 1.25rem;
  color: var(--l33t-text-light);
}

.themed-page.theme-l33t strong,
.themed-page.theme-l33t b {
  color: var(--l33t-neon-green);
  font-weight: 400;
  text-shadow: 0 0 2px var(--l33t-neon-green);
}

.themed-page.theme-l33t em,
.themed-page.theme-l33t i {
  font-style: italic;
  color: var(--l33t-cyan);
}

/* ===== Links ===== */
.themed-page.theme-l33t a {
  color: var(--l33t-neon-green);
  text-decoration: none;
  border-bottom: none;
  transition: all 0.15s ease;
}

.themed-page.theme-l33t a:hover {
  color: var(--l33t-cyan);
  text-shadow: 0 0 8px var(--l33t-cyan);
  text-decoration: underline;
}

.themed-page.theme-l33t a:visited {
  color: var(--l33t-cyan);
}

/* ===== Lists ===== */
.themed-page.theme-l33t ul,
.themed-page.theme-l33t ol {
  margin-bottom: 1.25rem;
  padding-left: 1.5rem;
}

.themed-page.theme-l33t li {
  margin-bottom: 0.5rem;
  color: var(--l33t-text-light);
}

.themed-page.theme-l33t ul li::marker {
  content: "> ";
  color: var(--l33t-neon-green);
}

.themed-page.theme-l33t ol li::marker {
  color: var(--l33t-neon-green);
}

/* ===== Code & Pre ===== */
.themed-page.theme-l33t code {
  font-family: var(--l33t-font-mono);
  font-size: 0.9em;
  background-color: var(--l33t-surface-dark);
  color: var(--l33t-neon-green);
  padding: 0.2em 0.4em;
  border: 1px solid var(--l33t-neon-green);
}

.themed-page.theme-l33t pre {
  font-family: var(--l33t-font-mono);
  font-size: 14px;
  background-color: var(--l33t-surface-dark);
  color: var(--l33t-neon-green);
  padding: 1rem;
  margin-bottom: 1.25rem;
  border: 1px solid var(--l33t-neon-green);
  box-shadow: 0 0 4px rgba(0, 255, 65, 0.3);
  overflow-x: auto;
  line-height: 1.5;
}

.themed-page.theme-l33t pre code {
  background: none;
  padding: 0;
  border: none;
  color: inherit;
}

/* ===== Blockquotes ===== */
.themed-page.theme-l33t blockquote {
  border-left: 3px solid var(--l33t-neon-green);
  background-color: var(--l33t-surface);
  padding: 1rem 1.25rem;
  margin: 1.25rem 0;
  color: var(--l33t-text-light);
  box-shadow: 0 0 4px rgba(0, 255, 65, 0.2);
}

.themed-page.theme-l33t blockquote p:last-child {
  margin-bottom: 0;
}

/* ===== Horizontal Rules ===== */
.themed-page.theme-l33t hr {
  border: none;
  border-top: 1px dashed var(--l33t-neon-green);
  margin: 2rem 0;
  box-shadow: 0 0 4px var(--l33t-neon-green);
}

/* ===== Tables ===== */
.themed-page.theme-l33t table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 1.25rem;
  font-size: 14px;
}

.themed-page.theme-l33t thead {
  background-color: var(--l33t-surface);
}

.themed-page.theme-l33t th {
  text-align: left;
  padding: 0.75rem 1rem;
  font-weight: 400;
  color: var(--l33t-neon-green);
  border: 1px solid var(--l33t-border);
  text-transform: uppercase;
  font-size: 12px;
  letter-spacing: 0.1em;
  text-shadow: 0 0 2px var(--l33t-neon-green);
}

.themed-page.theme-l33t td {
  padding: 0.75rem 1rem;
  border: 1px solid var(--l33t-border);
  color: var(--l33t-text-light);
  background-color: var(--l33t-black);
}

.themed-page.theme-l33t tbody tr:hover td {
  background-color: var(--l33t-surface);
}

/* ===== Images ===== */
.themed-page.theme-l33t img {
  max-width: 100%;
  height: auto;
  border: 1px solid var(--l33t-neon-green);
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.3);
  margin: 1rem 0;
}

.themed-page.theme-l33t figure {
  margin: 1.5rem 0;
}

.themed-page.theme-l33t figcaption {
  font-size: 13px;
  color: var(--l33t-text-muted);
  margin-top: 0.5rem;
}

/* ===== Form Fields ===== */
.themed-page.theme-l33t input[type="text"],
.themed-page.theme-l33t input[type="email"],
.themed-page.theme-l33t input[type="url"],
.themed-page.theme-l33t input[type="tel"],
.themed-page.theme-l33t input[type="search"],
.themed-page.theme-l33t input[type="password"],
.themed-page.theme-l33t textarea,
.themed-page.theme-l33t select {
  font-family: var(--l33t-font-mono);
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
  box-shadow: none !important;
}

.themed-page.theme-l33t input::placeholder,
.themed-page.theme-l33t textarea::placeholder {
  color: var(--l33t-text-dim) !important;
}

.themed-page.theme-l33t input:focus,
.themed-page.theme-l33t textarea:focus,
.themed-page.theme-l33t select:focus {
  border-color: var(--l33t-cyan) !important;
  box-shadow: 0 0 8px var(--l33t-neon-green) !important;
  outline: none !important;
}

/* ===== Buttons ===== */
.themed-page.theme-l33t button,
.themed-page.theme-l33t .btn,
.themed-page.theme-l33t .tw-button,
.themed-page.theme-l33t .tw-button-secondary,
.themed-page.theme-l33t .tw-button-outline,
.themed-page.theme-l33t .tw-button-low-profile,
.themed-page.theme-l33t .tw-button-low-profile-white,
.themed-page.theme-l33t .tw-button-brand {
  font-family: var(--l33t-font-mono) !important;
  background-color: var(--l33t-button-bg) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 4px rgba(0, 255, 65, 0.3) !important;
  border-radius: 0 !important;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: all 0.15s ease;
}

.themed-page.theme-l33t button:hover,
.themed-page.theme-l33t .btn:hover,
.themed-page.theme-l33t .tw-button:hover {
  background-color: var(--l33t-neon-green) !important;
  color: var(--l33t-black) !important;
  box-shadow: 0 0 12px var(--l33t-neon-green), 0 0 24px var(--l33t-neon-green) !important;
}

/* Manage megamenu button - match Edit button size */
.themed-page.theme-l33t [data-mega-menu-trigger],
.themed-page.theme-l33t [data-controller="mega-menu"] button,
.themed-page.theme-l33t summary.tw-button {
  font-size: 1.25rem !important;
}

/* Nav menu items with borders - add padding inside */
.themed-page.theme-l33t .tw-site-header summary a,
.themed-page.theme-l33t .tw-site-header details > summary > a,
.themed-page.theme-l33t .tw-site-header summary.tw-button,
.themed-page.theme-l33t .tw-site-header [data-mega-menu-trigger],
body.theme-l33t .tw-site-header summary a,
body.theme-l33t .tw-site-header details summary a,
body.theme-l33t .tw-site-header .tw-button-outline,
body.theme-l33t .tw-site-header .tw-button-low-profile-white {
  padding: 0.6rem 1.2rem !important;
}

/* Button icons - bright green normally, black on hover */
.themed-page.theme-l33t .tw-button img,
.themed-page.theme-l33t .tw-button svg,
.themed-page.theme-l33t .tw-button i,
.themed-page.theme-l33t button img,
.themed-page.theme-l33t button svg,
body.theme-l33t .tw-button img,
body.theme-l33t button img {
  filter: brightness(0) saturate(100%) invert(89%) sepia(50%) saturate(4000%) hue-rotate(70deg) brightness(110%) !important;
}

/* Icons stay green on hover - do NOT apply brightness(0) filter */
/* The green icons should remain visible against dark backgrounds */

/* ===== Badges/Tags ===== */
.themed-page.theme-l33t .badge {
  display: inline-block;
  padding: 0.25em 0.75em;
  font-size: 11px;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  background-color: var(--l33t-button-bg);
  color: var(--l33t-neon-green);
  border: 1px solid var(--l33t-neon-green);
}

/* Count badges on buttons (pink/rose badges) */
.themed-page.theme-l33t .tw-button .rounded-full[class*="bg-rose"],
.themed-page.theme-l33t .tw-button .rounded-full[class*="bg-pink"],
.themed-page.theme-l33t .tw-button-outline .rounded-full,
.themed-page.theme-l33t .page-editor-controls .rounded-full[class*="bg-rose"],
.themed-page.theme-l33t .page-editor-controls .rounded-full[class*="bg-pink"],
.themed-page.theme-l33t [class*="bg-rose-100"],
.themed-page.theme-l33t [class*="bg-rose-500"],
.themed-page.theme-l33t .tw-pill[class*="bg-rose"] {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-cyan) !important;
  color: var(--l33t-cyan) !important;
  font-size: 1rem !important;
  min-width: 1.75rem !important;
  min-height: 1.75rem !important;
  padding: 0.25rem 0.5rem !important;
}

/* ===== Mobile Bottom Floating Nav Bar ===== */
/* Note: This nav is outside .themed-page so we target body.theme-l33t */
body.theme-l33t .fixed.bottom-0,
body.theme-l33t .fixed.bottom-4,
body.theme-l33t [class*="fixed"][class*="bottom-0"],
body.theme-l33t [class*="fixed"][class*="bottom-4"] {
  /* Container itself is transparent, target children */
}

body.theme-l33t .fixed.bottom-0 > div,
body.theme-l33t .fixed.bottom-4 > div,
body.theme-l33t .fixed.bottom-0 .bg-white,
body.theme-l33t .fixed.bottom-4 .bg-white,
body.theme-l33t .fixed.bottom-0 [class*="bg-white"],
body.theme-l33t .fixed.bottom-4 [class*="bg-white"],
body.theme-l33t .fixed.bottom-0 [class*="rounded"],
body.theme-l33t .fixed.bottom-4 [class*="rounded"],
body.theme-l33t [class*="fixed"][class*="bottom"] [class*="bg-white"],
body.theme-l33t [class*="fixed"][class*="bottom"] [class*="rounded-full"],
body.theme-l33t [class*="fixed"][class*="bottom"] > div > div {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 12px rgba(0, 255, 65, 0.4) !important;
}

/* Mobile nav items */
body.theme-l33t .fixed.bottom-0 a,
body.theme-l33t .fixed.bottom-0 button,
body.theme-l33t .fixed.bottom-4 a,
body.theme-l33t .fixed.bottom-4 button,
body.theme-l33t [class*="fixed"][class*="bottom"] a,
body.theme-l33t [class*="fixed"][class*="bottom"] button {
  color: var(--l33t-neon-green) !important;
}

body.theme-l33t .fixed.bottom-0 a:hover,
body.theme-l33t .fixed.bottom-0 button:hover,
body.theme-l33t .fixed.bottom-4 a:hover,
body.theme-l33t .fixed.bottom-4 button:hover {
  background-color: var(--l33t-surface) !important;
}

/* Mobile nav icons */
body.theme-l33t .fixed.bottom-0 img,
body.theme-l33t .fixed.bottom-4 img,
body.theme-l33t [class*="fixed"][class*="bottom"] img {
  filter: brightness(0) saturate(100%) invert(89%) sepia(50%) saturate(4000%) hue-rotate(70deg) brightness(110%) !important;
}

/* ===== RSVP / Event Panels ===== */
.themed-page.theme-l33t .rsvp-card,
.themed-page.theme-l33t .rsvp-panel {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.2) !important;
  color: var(--l33t-text-light) !important;
  border-radius: 0 !important;
}

.themed-page.theme-l33t .rsvp-card {
  background-image: none !important;
}

/* RSVP Form - Larger fonts throughout */
.themed-page.theme-l33t .rsvp-card,
.themed-page.theme-l33t .rsvp-panel,
.themed-page.theme-l33t .render-meetup-rsvp-here {
  font-size: 1.2rem !important;
}

.themed-page.theme-l33t .rsvp-card label,
.themed-page.theme-l33t .rsvp-panel label,
.themed-page.theme-l33t .render-meetup-rsvp-here label {
  font-size: 1.2rem !important;
}

.themed-page.theme-l33t .rsvp-card input,
.themed-page.theme-l33t .rsvp-card textarea,
.themed-page.theme-l33t .rsvp-card select,
.themed-page.theme-l33t .rsvp-panel input,
.themed-page.theme-l33t .rsvp-panel textarea,
.themed-page.theme-l33t .render-meetup-rsvp-here input,
.themed-page.theme-l33t .render-meetup-rsvp-here textarea {
  font-size: 1.2rem !important;
}

.themed-page.theme-l33t .rsvp-card .text-sm,
.themed-page.theme-l33t .rsvp-card .text-xs,
.themed-page.theme-l33t .rsvp-panel .text-sm,
.themed-page.theme-l33t .rsvp-panel .text-xs,
.themed-page.theme-l33t .render-meetup-rsvp-here .text-sm,
.themed-page.theme-l33t .render-meetup-rsvp-here .text-xs {
  font-size: 1.1rem !important;
}

.themed-page.theme-l33t .rsvp-card p,
.themed-page.theme-l33t .rsvp-panel p,
.themed-page.theme-l33t .render-meetup-rsvp-here p {
  font-size: 1.2rem !important;
}

.themed-page.theme-l33t .rsvp-card button,
.themed-page.theme-l33t .rsvp-panel button,
.themed-page.theme-l33t .render-meetup-rsvp-here button {
  font-size: 1.2rem !important;
}

.themed-page.theme-l33t .rsvp-panel .bg-white,
.themed-page.theme-l33t .render-meetup-rsvp-here .bg-white {
  background-color: var(--l33t-black) !important;
}

.themed-page.theme-l33t .rsvp-panel .border-slate-200,
.themed-page.theme-l33t .render-meetup-rsvp-here .border-slate-200 {
  border-color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t .rsvp-panel .shadow-sm,
.themed-page.theme-l33t .rsvp-panel .shadow-lg,
.themed-page.theme-l33t .render-meetup-rsvp-here .shadow-sm,
.themed-page.theme-l33t .render-meetup-rsvp-here .shadow-lg {
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.2) !important;
}

.themed-page.theme-l33t .rsvp-panel .text-slate-900,
.themed-page.theme-l33t .rsvp-panel .text-slate-800,
.themed-page.theme-l33t .rsvp-panel .text-slate-700,
.themed-page.theme-l33t .render-meetup-rsvp-here .text-slate-900 {
  color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t .rsvp-panel .text-slate-600,
.themed-page.theme-l33t .rsvp-panel .text-slate-500,
.themed-page.theme-l33t .rsvp-panel .text-slate-400,
.themed-page.theme-l33t .render-meetup-rsvp-here .text-slate-500 {
  color: var(--l33t-text-muted) !important;
}

.themed-page.theme-l33t .rsvp-panel h3,
.themed-page.theme-l33t .rsvp-panel h4,
.themed-page.theme-l33t .rsvp-panel h5,
.themed-page.theme-l33t .rsvp-panel h6 {
  color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t .rsvp-panel h3::before,
.themed-page.theme-l33t .rsvp-panel h4::before,
.themed-page.theme-l33t .rsvp-panel h5::before,
.themed-page.theme-l33t .rsvp-panel h6::before {
  content: none !important;
}

.themed-page.theme-l33t .rsvp-event-icon,
.themed-page.theme-l33t .rsvp-panel .rounded-full {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  border-radius: 0 !important;
  color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 4px rgba(0, 255, 65, 0.3) !important;
}

.themed-page.theme-l33t .rsvp-event-icon .fa,
.themed-page.theme-l33t .rsvp-panel .rounded-full .fa {
  color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t .rsvp-info-panel {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  border-radius: 0 !important;
}

.themed-page.theme-l33t .rsvp-info-panel .bg-white {
  background-color: var(--l33t-black) !important;
}

.themed-page.theme-l33t .render-meetup-rsvp-here .bg-slate-50,
.themed-page.theme-l33t .render-meetup-rsvp-here .bg-slate-100,
.themed-page.theme-l33t .render-meetup-rsvp-here .bg-indigo-50 {
  background-color: var(--l33t-surface) !important;
}

.themed-page.theme-l33t .render-meetup-rsvp-here .bg-blue-600,
.themed-page.theme-l33t .render-meetup-rsvp-here .bg-emerald-100 {
  background-color: var(--l33t-button-bg) !important;
}

.themed-page.theme-l33t .render-meetup-rsvp-here .text-emerald-500,
.themed-page.theme-l33t .render-meetup-rsvp-here .text-emerald-600,
.themed-page.theme-l33t .render-meetup-rsvp-here .text-blue-600 {
  color: var(--l33t-neon-green) !important;
}

/* ===== Contact + Subscribe Cards ===== */
.themed-page.theme-l33t .contact-us-message,
.themed-page.theme-l33t .subscribe-form {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.2) !important;
  border-radius: 0 !important;
}

.themed-page.theme-l33t .contact-us-message .contact-us-heading,
.themed-page.theme-l33t .subscribe-form h3,
.themed-page.theme-l33t .subscribe-form h4,
.themed-page.theme-l33t .subscribe-form label {
  color: var(--l33t-neon-green) !important;
}

/* Contact Organizers icon - no border, just the icon */
.themed-page.theme-l33t .contact-us-message .rounded-full {
  background-color: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  color: var(--l33t-neon-green) !important;
  box-shadow: none !important;
}

.themed-page.theme-l33t .contact-us-message .rounded-full .fa,
.themed-page.theme-l33t .contact-us-message .rounded-full svg {
  color: var(--l33t-neon-green) !important;
  fill: var(--l33t-neon-green) !important;
}

/* Subscribe section icon - green like Contact Organizers */
.themed-page.theme-l33t .subscribe-form .fa-envelope,
.themed-page.theme-l33t .subscribe-form i.fa,
.themed-page.theme-l33t .subscribe-form i.fa.fa-envelope,
.themed-page.theme-l33t .subscribe-form i.fa.fa-envelope.text-slate-500,
.themed-page.theme-l33t .subscribe-form .text-slate-500.fa-envelope,
body.theme-l33t .subscribe-form .fa-envelope,
body.theme-l33t .subscribe-form i.fa,
body.theme-l33t .subscribe-form i.fa.fa-envelope,
body.theme-l33t .subscribe-form i.fa.fa-envelope.text-slate-500,
body.theme-l33t .subscribe-form .text-slate-500.fa-envelope {
  color: var(--l33t-neon-green) !important;
  text-shadow: 0 0 6px rgba(0, 255, 65, 0.5) !important;
}

/* Subscribe section - align icon and heading */
.themed-page.theme-l33t .subscribe-form .flex.items-center.gap-3,
body.theme-l33t .subscribe-form .flex.items-center.gap-3 {
  display: flex !important;
  align-items: center !important;
}

.themed-page.theme-l33t .subscribe-form h3,
body.theme-l33t .subscribe-form h3 {
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
  display: inline !important;
}

/* Subscribe section icon container - no border, vertically aligned */
.themed-page.theme-l33t .subscribe-form .rounded-full,
.themed-page.theme-l33t [class*="subscribe"] .rounded-full {
  background-color: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: var(--l33t-neon-green) !important;
  display: inline-flex !important;
  align-items: center !important;
  vertical-align: middle !important;
}

.themed-page.theme-l33t .subscribe-form .rounded-full svg,
.themed-page.theme-l33t [class*="subscribe"] .rounded-full svg {
  color: var(--l33t-neon-green) !important;
  fill: var(--l33t-neon-green) !important;
  filter: brightness(0) saturate(100%) invert(89%) sepia(50%) saturate(4000%) hue-rotate(70deg) brightness(110%) !important;
}

.themed-page.theme-l33t .contact-us-message .contact-us-subheading,
.themed-page.theme-l33t .subscribe-form p,
.themed-page.theme-l33t .subscribe-form .text-slate-500 {
  color: var(--l33t-text-muted) !important;
}

/* Contact Organizers - Larger fonts */
.themed-page.theme-l33t .contact-us-message {
  font-size: 1.3rem !important;
}

.themed-page.theme-l33t .contact-us-message .contact-us-heading {
  font-size: 1.5rem !important;
}

.themed-page.theme-l33t .contact-us-message .contact-us-subheading {
  font-size: 1.3rem !important;
}

/* ===== Subscribe Section Layout ===== */
.themed-page.theme-l33t .subscribe-form > div:first-child,
.themed-page.theme-l33t [class*="subscribe"] > div:first-child {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
}

/* Subscribe heading row - icon and text aligned */
.themed-page.theme-l33t .subscribe-form h3,
.themed-page.theme-l33t [class*="subscribe"] h3 {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
}

.themed-page.theme-l33t .subscribe-form h3::before,
.themed-page.theme-l33t [class*="subscribe"] h3::before {
  content: none !important;
}

/* Placeholder text styling */
.themed-page.theme-l33t input::placeholder,
.themed-page.theme-l33t textarea::placeholder {
  font-size: 1.1rem !important;
  color: var(--l33t-text-dim) !important;
}

/* ===== Editor Controls ===== */
.themed-page.theme-l33t .page-editor-controls {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.2) !important;
  border-radius: 0 !important;
}

.themed-page.theme-l33t .page-editor-controls .text-slate-900,
.themed-page.theme-l33t .page-editor-controls .text-slate-800,
.themed-page.theme-l33t .page-editor-controls .text-slate-700 {
  color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t .page-editor-controls .text-slate-500,
.themed-page.theme-l33t .page-editor-controls .text-slate-400 {
  color: var(--l33t-text-muted) !important;
}

.themed-page.theme-l33t .page-editor-controls__inline-toggle,
body.theme-l33t .page-editor-controls__inline-toggle {
  background-color: var(--l33t-black) !important;
  border-color: var(--l33t-neon-green) !important;
  color: #ffffff !important;
  box-shadow: 0 0 4px rgba(0, 255, 65, 0.2) !important;
}

.themed-page.theme-l33t .page-editor-controls__inline-toggle .page-editor-controls__inline-toggle-label,
.themed-page.theme-l33t .page-editor-controls__inline-toggle span,
.themed-page.theme-l33t .page-editor-controls__inline-toggle button.looks-like-link-dotted,
body.theme-l33t .page-editor-controls__inline-toggle .page-editor-controls__inline-toggle-label,
body.theme-l33t .page-editor-controls__inline-toggle span,
body.theme-l33t .page-editor-controls__inline-toggle button.looks-like-link-dotted {
  color: #ffffff !important;
  text-shadow: none !important;
}

.themed-page.theme-l33t .page-editor-controls__inline-toggle .toggle-label,
body.theme-l33t .page-editor-controls__inline-toggle .toggle-label {
  background-color: var(--l33t-dark-gray) !important;
  border: 1px solid var(--l33t-text-muted) !important;
}

.themed-page.theme-l33t .page-editor-controls__inline-toggle .toggle-checkbox,
body.theme-l33t .page-editor-controls__inline-toggle .toggle-checkbox {
  background-color: #ffffff !important;
  border-color: #ffffff !important;
}

.themed-page.theme-l33t .page-editor-controls__inline-toggle .toggle-checkbox:checked + .toggle-label,
body.theme-l33t .page-editor-controls__inline-toggle .toggle-checkbox:checked + .toggle-label {
  background-color: var(--l33t-button-bg) !important;
  border-color: var(--l33t-neon-green) !important;
}

/* Email Stats, Send Preview, Compose Custom buttons - consistent styling */
.themed-page.theme-l33t .page-editor-controls button,
.themed-page.theme-l33t .page-editor-controls a.tw-button,
.themed-page.theme-l33t .page-editor-controls a[class*="tw-button"],
body.theme-l33t .page-editor-controls button,
body.theme-l33t .page-editor-controls a.tw-button {
  font-family: var(--l33t-font) !important;
  font-size: 1.1rem !important;
  height: 2.5rem !important;
  min-height: 2.5rem !important;
  padding: 0.5rem 1rem !important;
  display: inline-flex !important;
  align-items: center !important;
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 4px rgba(0, 255, 65, 0.2) !important;
  text-decoration: none !important;
}

/* Button text and icons */
.themed-page.theme-l33t .page-editor-controls button *,
.themed-page.theme-l33t .page-editor-controls a.tw-button *,
body.theme-l33t .page-editor-controls button *,
body.theme-l33t .page-editor-controls a.tw-button * {
  font-size: 1.1rem !important;
  color: var(--l33t-neon-green) !important;
}

/* Button hover - underline effect, keep text/icons green */
.themed-page.theme-l33t .page-editor-controls button:hover,
.themed-page.theme-l33t .page-editor-controls a.tw-button:hover,
body.theme-l33t .page-editor-controls button:hover,
body.theme-l33t .page-editor-controls a.tw-button:hover {
  background-color: var(--l33t-surface) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.4) !important;
  color: var(--l33t-neon-green) !important;
  text-decoration: underline !important;
}

/* Keep icons and text green on hover */
.themed-page.theme-l33t .page-editor-controls button:hover *,
.themed-page.theme-l33t .page-editor-controls a.tw-button:hover *,
body.theme-l33t .page-editor-controls button:hover *,
body.theme-l33t .page-editor-controls a.tw-button:hover * {
  color: var(--l33t-neon-green) !important;
  text-shadow: 0 0 4px rgba(0, 255, 65, 0.5) !important;
}

/* ===== All Panel Buttons - Keep Icons Green on Hover ===== */
/* Override the broad [class*="hover:bg-"]:hover * rule that turns everything black */

/* Attendee tools, RSVP area, and general tw-button buttons */
.themed-page.theme-l33t .rsvp-card-area button,
.themed-page.theme-l33t .rsvp-card-area a.tw-button,
.themed-page.theme-l33t .rsvp-card-area [class*="tw-button"],
.themed-page.theme-l33t .js-attendee-tools button,
.themed-page.theme-l33t .js-attendee-tools a.tw-button,
.themed-page.theme-l33t .render-meetup-rsvp-here button,
.themed-page.theme-l33t .render-meetup-rsvp-here a.tw-button,
body.theme-l33t .rsvp-card-area button,
body.theme-l33t .rsvp-card-area a.tw-button,
body.theme-l33t .js-attendee-tools button,
body.theme-l33t .render-meetup-rsvp-here button {
  font-family: var(--l33t-font) !important;
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 4px rgba(0, 255, 65, 0.2) !important;
}

/* Button hover - underline effect, keep green */
.themed-page.theme-l33t .rsvp-card-area button:hover,
.themed-page.theme-l33t .rsvp-card-area a.tw-button:hover,
.themed-page.theme-l33t .rsvp-card-area [class*="tw-button"]:hover,
.themed-page.theme-l33t .js-attendee-tools button:hover,
.themed-page.theme-l33t .js-attendee-tools a.tw-button:hover,
.themed-page.theme-l33t .render-meetup-rsvp-here button:hover,
.themed-page.theme-l33t .render-meetup-rsvp-here a.tw-button:hover,
body.theme-l33t .rsvp-card-area button:hover,
body.theme-l33t .rsvp-card-area a.tw-button:hover,
body.theme-l33t .js-attendee-tools button:hover,
body.theme-l33t .render-meetup-rsvp-here button:hover {
  background-color: var(--l33t-surface) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.4) !important;
  color: var(--l33t-neon-green) !important;
  text-decoration: underline !important;
}

/* Keep icons green on hover - override the broad [hover:bg-*]:hover * rule */
.themed-page.theme-l33t .rsvp-card-area button:hover *,
.themed-page.theme-l33t .rsvp-card-area a.tw-button:hover *,
.themed-page.theme-l33t .rsvp-card-area [class*="tw-button"]:hover *,
.themed-page.theme-l33t .js-attendee-tools button:hover *,
.themed-page.theme-l33t .js-attendee-tools a.tw-button:hover *,
.themed-page.theme-l33t .render-meetup-rsvp-here button:hover *,
.themed-page.theme-l33t .render-meetup-rsvp-here a.tw-button:hover *,
body.theme-l33t .rsvp-card-area button:hover *,
body.theme-l33t .rsvp-card-area a.tw-button:hover *,
body.theme-l33t .js-attendee-tools button:hover *,
body.theme-l33t .render-meetup-rsvp-here button:hover * {
  color: var(--l33t-neon-green) !important;
  text-shadow: 0 0 4px rgba(0, 255, 65, 0.5) !important;
  background-color: transparent !important;
}

/* Generic tw-button in any sidebar panel */
.themed-page.theme-l33t aside button:hover *,
.themed-page.theme-l33t aside a.tw-button:hover *,
.themed-page.theme-l33t .sidebar button:hover *,
.themed-page.theme-l33t .sidebar a.tw-button:hover *,
body.theme-l33t aside button:hover *,
body.theme-l33t aside a.tw-button:hover * {
  color: var(--l33t-neon-green) !important;
  text-shadow: 0 0 4px rgba(0, 255, 65, 0.5) !important;
}

/* ===== Global Button/Link Icon Preservation on Hover ===== */
/* Keep icons (Font Awesome, SVG, img) green on hover for all buttons/links */
/* This overrides the broad [hover:bg-*]:hover * rule that turns everything black */
.themed-page.theme-l33t button:hover i,
.themed-page.theme-l33t button:hover i.fa,
.themed-page.theme-l33t button:hover i.fab,
.themed-page.theme-l33t button:hover i.fas,
.themed-page.theme-l33t button:hover i.far,
.themed-page.theme-l33t button:hover svg,
.themed-page.theme-l33t a:hover i,
.themed-page.theme-l33t a:hover i.fa,
.themed-page.theme-l33t a:hover i.fab,
.themed-page.theme-l33t a:hover i.fas,
.themed-page.theme-l33t a:hover i.far,
.themed-page.theme-l33t a:hover svg,
.themed-page.theme-l33t [class*="tw-button"]:hover i,
.themed-page.theme-l33t [class*="tw-button"]:hover svg,
body.theme-l33t button:hover i,
body.theme-l33t button:hover i.fa,
body.theme-l33t button:hover i.fab,
body.theme-l33t button:hover i.fas,
body.theme-l33t button:hover i.far,
body.theme-l33t button:hover svg,
body.theme-l33t a:hover i,
body.theme-l33t a:hover i.fa,
body.theme-l33t a:hover i.fab,
body.theme-l33t a:hover i.fas,
body.theme-l33t a:hover i.far,
body.theme-l33t a:hover svg,
body.theme-l33t [class*="tw-button"]:hover i,
body.theme-l33t [class*="tw-button"]:hover svg {
  color: var(--l33t-neon-green) !important;
  text-shadow: 0 0 4px rgba(0, 255, 65, 0.5) !important;
  filter: none !important;
}

/* Keep img icons visible on hover (don't apply brightness filter) */
.themed-page.theme-l33t button:hover img,
.themed-page.theme-l33t a:hover img,
.themed-page.theme-l33t [class*="tw-button"]:hover img,
body.theme-l33t button:hover img,
body.theme-l33t a:hover img,
body.theme-l33t [class*="tw-button"]:hover img {
  filter: none !important;
}

/* ===== Slider (Info Slider) ===== */
.themed-page.theme-l33t .slider-container {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.2) !important;
  font-size: 1.4rem !important;
}

.themed-page.theme-l33t .slider-container .left-arrow,
.themed-page.theme-l33t .slider-container .right-arrow {
  background-color: transparent !important;
  color: var(--l33t-neon-green) !important;
  font-size: 1.5rem !important;
}

.themed-page.theme-l33t .slider-container .slide span,
.themed-page.theme-l33t .slider-container .byline {
  color: var(--l33t-text-light) !important;
  font-size: 1.3rem !important;
}

.themed-page.theme-l33t .slider-container blockquote {
  color: var(--l33t-text-light) !important;
  font-size: 1.5rem !important;
  line-height: 1.5 !important;
}

.themed-page.theme-l33t .slider-indicators .slider-dot {
  background-color: var(--l33t-dark-gray) !important;
  border-radius: 0 !important;
}

.themed-page.theme-l33t .slider-indicators .slider-dot.active {
  background-color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 4px var(--l33t-neon-green) !important;
}

/* Slider links (View Demos, etc.) */
.themed-page.theme-l33t .slider-container a,
.themed-page.theme-l33t .slider-wrapper a {
  font-size: 1.4rem !important;
}

/* Slider text content (all slides including people info) */
.themed-page.theme-l33t .slider-container .text-sm,
.themed-page.theme-l33t .slider-wrapper .text-sm,
.themed-page.theme-l33t .slider-container .slide,
.themed-page.theme-l33t .slider-wrapper .slide {
  font-size: 1.4rem !important;
}

/* ===== Progress Bar Labels (Attendees counter) ===== */
.themed-page.theme-l33t .rsvp-card-area .text-\[11px\],
.themed-page.theme-l33t .render-meetup-rsvp-here .text-\[11px\] {
  font-size: 1.1rem !important;
  letter-spacing: 0.15em !important;
}

.themed-page.theme-l33t .rsvp-card-area .h-2.rounded-full,
.themed-page.theme-l33t .render-meetup-rsvp-here .h-2.rounded-full {
  height: 0.5rem !important;
  border: 1px solid var(--l33t-neon-green) !important;
  background-color: var(--l33t-black) !important;
}

.themed-page.theme-l33t .rsvp-card-area .h-2.rounded-full > div,
.themed-page.theme-l33t .render-meetup-rsvp-here .h-2.rounded-full > div {
  background-color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 8px var(--l33t-neon-green) !important;
}

/* Badge type indicators (MEETUP badge dot) - small glowing green pixel */
.themed-page.theme-l33t .h-2.w-2.rounded-full[class*="bg-indigo"],
.themed-page.theme-l33t .h-2.w-2.rounded-full[class*="bg-blue"],
.themed-page.theme-l33t .h-2.w-2.rounded-full[class*="bg-slate"],
.themed-page.theme-l33t span.rounded-full > span.h-2.w-2,
body.theme-l33t .h-2.w-2.rounded-full[class*="bg-indigo"],
body.theme-l33t .h-2.w-2.rounded-full[class*="bg-blue"] {
  background-color: var(--l33t-neon-green) !important;
  border-radius: 2px !important;
  box-shadow: 0 0 4px var(--l33t-neon-green), 0 0 8px rgba(0, 255, 65, 0.5), 0 0 1px var(--l33t-neon-green) inset !important;
  width: 0.4rem !important;
  height: 0.4rem !important;
}

/* Badge container styling */
.themed-page.theme-l33t span.rounded-full.border.bg-white,
.themed-page.theme-l33t span.inline-flex.rounded-full[class*="border"][class*="bg-white"] {
  background-color: var(--l33t-black) !important;
  border-color: var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
}

/* ===== Prompt Line / Command Input Effect ===== */
.themed-page.theme-l33t .l33t-prompt {
  display: flex;
  align-items: center;
  margin-top: 2rem;
  padding-top: 1rem;
  border-top: 1px dashed var(--l33t-neon-green);
}

.themed-page.theme-l33t .l33t-prompt::before {
  content: ">";
  color: var(--l33t-neon-green);
  font-size: 1.25rem;
  margin-right: 0.5rem;
  text-shadow: 0 0 4px var(--l33t-neon-green);
  animation: l33t-blink 1s step-end infinite;
}

@keyframes l33t-blink {
  0%, 100% { opacity: 1; }
  50% { opacity: 0; }
}

.themed-page.theme-l33t .l33t-cursor {
  display: inline-block;
  width: 10px;
  height: 1.2em;
  background-color: var(--l33t-neon-green);
  animation: l33t-blink 1s step-end infinite;
  box-shadow: 0 0 4px var(--l33t-neon-green);
}

/* ===== EOF Marker ===== */
.themed-page.theme-l33t .eof-marker {
  text-align: center;
  color: var(--l33t-neon-green);
  margin-top: 3rem;
  padding-top: 1rem;
  border-top: 1px dashed var(--l33t-neon-green);
  font-size: 12px;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  text-shadow: 0 0 4px var(--l33t-neon-green);
}

.themed-page.theme-l33t .eof-marker::before {
  content: "--- TRANSMISSION END ---";
}

/* ===== Content body override ===== */
.themed-page.theme-l33t .show-page-body {
  background: transparent;
  color: var(--l33t-text-light);
}

.themed-page.theme-l33t .show-page-body h1,
.themed-page.theme-l33t .show-page-body h2,
.themed-page.theme-l33t .show-page-body h3,
.themed-page.theme-l33t .show-page-body h4,
.themed-page.theme-l33t .show-page-body h5,
.themed-page.theme-l33t .show-page-body h6 {
  color: var(--l33t-neon-green);
}

.themed-page.theme-l33t .show-page-body a {
  color: var(--l33t-neon-green);
}

.themed-page.theme-l33t .show-page-body a:hover {
  color: var(--l33t-cyan);
}

.themed-page.theme-l33t .themed-content {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0;
}

.themed-page.theme-l33t article.story,
.themed-page.theme-l33t article.bg-white {
  background-color: var(--l33t-black) !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

/* ===== Utility Classes ===== */
.themed-page.theme-l33t .text-muted { color: var(--l33t-text-muted); }
.themed-page.theme-l33t .text-accent { color: var(--l33t-neon-green); }
.themed-page.theme-l33t .text-success { color: var(--l33t-neon-green); }
.themed-page.theme-l33t .text-warning { color: var(--l33t-cyan); }
.themed-page.theme-l33t .text-danger { color: #ff4444; }

/* ===== Responsive ===== */
@media (max-width: 768px) {
  .themed-page.theme-l33t .l33t-terminal {
    margin: 1rem 0.5rem;
    border-width: 3px;
  }

  .themed-page.theme-l33t .l33t-body {
    padding: 1rem;
  }

  .themed-page.theme-l33t h1 { font-size: 1.5rem; letter-spacing: 2px; }
  .themed-page.theme-l33t h2 { font-size: 1.25rem; }
  .themed-page.theme-l33t h3 { font-size: 1.125rem; }
}

/* ===== Social proof avatar alignment ===== */
.themed-page.theme-l33t .profile-container-desktop {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  padding: 4px 0 !important;
  overflow: visible !important;
  max-height: 95px !important;
  gap: 6px 0 !important;
}

/* Parent container needs overflow visible for tooltips */
.themed-page.theme-l33t .social-proof {
  overflow: visible !important;
}

.themed-page.theme-l33t .rsvp-card-area {
  overflow: visible !important;
}

.themed-page.theme-l33t .profile-container-desktop > a {
  display: inline-flex !important;
  align-items: center !important;
  flex: 0 0 36px !important;
  width: 36px !important;
  height: 36px !important;
  margin-right: 6px !important;
  position: relative !important;
  border-bottom: none !important;
}

/* All avatar wrappers - no overlap */
.themed-page.theme-l33t .profile-container-desktop .profile-avatar-wrapper {
  margin-right: 6px !important;
}

.themed-page.theme-l33t .profile-container-desktop .profile-avatar {
  width: 36px !important;
  height: 36px !important;
  display: block !important;
  margin: 0 !important;
  margin-right: 6px !important;
  border-radius: 0 !important;
  border: 1px solid var(--l33t-neon-green) !important;
  image-rendering: pixelated !important;
  image-rendering: -moz-crisp-edges !important;
  image-rendering: crisp-edges !important;
}

/* ===== "Ready for more?" Section ===== */
.themed-page.theme-l33t section.bg-white,
.themed-page.theme-l33t section.rounded-2xl.bg-white,
.themed-page.theme-l33t .rounded-2xl.bg-white,
.themed-page.theme-l33t .rounded-3xl.bg-white {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.2) !important;
  border-radius: 0 !important;
}

.themed-page.theme-l33t section.bg-white h3:not(.meetup-form-title),
.themed-page.theme-l33t .rounded-2xl.bg-white h3:not(.meetup-form-title) {
  color: var(--l33t-neon-green) !important;
  font-size: 1.6rem !important;
}

.themed-page.theme-l33t section.bg-white p,
.themed-page.theme-l33t section.bg-white .text-slate-500,
.themed-page.theme-l33t .rounded-2xl.bg-white .text-slate-500 {
  color: var(--l33t-text-muted) !important;
  font-size: 1.3rem !important;
}

.themed-page.theme-l33t section.bg-white a,
.themed-page.theme-l33t .rounded-2xl.bg-white a {
  font-size: 1.2rem !important;
}

/* ===== Button Container Backgrounds (grey padding fix) ===== */
.themed-page.theme-l33t .bg-slate-200,
.themed-page.theme-l33t .bg-slate-100,
.themed-page.theme-l33t .bg-slate-50,
.themed-page.theme-l33t .bg-gray-200,
.themed-page.theme-l33t .bg-gray-100,
.themed-page.theme-l33t .bg-gray-50 {
  background-color: var(--l33t-black) !important;
}

.themed-page.theme-l33t .rounded-xl.bg-slate-200,
.themed-page.theme-l33t .rounded-lg.bg-slate-200,
.themed-page.theme-l33t .rounded-2xl.bg-slate-200 {
  background-color: var(--l33t-black) !important;
  border: none !important;
  box-shadow: none !important;
}

/* ===== Post-Meetup Actions Box (bg-slate-50/70 container) ===== */
.themed-page.theme-l33t .bg-slate-50\/70,
.themed-page.theme-l33t [class*="bg-slate-50/70"],
.themed-page.theme-l33t .rounded-2xl[class*="bg-slate-50"] {
  background-color: var(--l33t-black) !important;
  border: none !important;
  box-shadow: none !important;
}

/* ===== Working/Progress Spinner Overlay ===== */
.themed-page.theme-l33t #my-spinner {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  border-radius: 0 !important;
  color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 12px var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t #my-spinner .fa,
.themed-page.theme-l33t #my-spinner i {
  color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t #my-spinner .show-my-spinner-message {
  color: var(--l33t-text-light) !important;
}

/* ===== Cities Megamenu Selected City ===== */
.themed-page.theme-l33t .tw-city-card-selected,
.themed-page.theme-l33t .tw-city-card.selected,
.themed-page.theme-l33t .city-card-selected,
.themed-page.theme-l33t [class*="city-card"][class*="selected"],
.themed-page.theme-l33t .bg-orange-50,
.themed-page.theme-l33t .bg-amber-50,
.themed-page.theme-l33t .bg-yellow-50 {
  background-color: var(--l33t-surface) !important;
  border-color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t .tw-city-card-selected .text-slate-900,
.themed-page.theme-l33t .tw-city-card-selected .text-slate-800,
.themed-page.theme-l33t .tw-city-card-selected .text-slate-700 {
  color: var(--l33t-neon-green) !important;
}

/* ===== CITIES MEGAMENU - Complete Overhaul ===== */
/* All city cards need: rounded corners, transparent inner backgrounds, green glow on hover */

/* Base styling - rounded corners for ALL city cards */
.themed-page.theme-l33t a.tw-featured-city,
body.theme-l33t a.tw-featured-city,
.themed-page.theme-l33t details[open] a.tw-featured-city,
body.theme-l33t details[open] a.tw-featured-city,
body.theme-l33t .tw-site-header details[open] a.tw-featured-city {
  border-radius: 1rem !important;
  transition: all 0.15s ease !important;
  overflow: hidden !important;
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
}

/* ALL inner elements must be transparent - override details[open] bg-white rules */
.themed-page.theme-l33t a.tw-featured-city *,
body.theme-l33t a.tw-featured-city *,
.themed-page.theme-l33t details[open] a.tw-featured-city *,
body.theme-l33t details[open] a.tw-featured-city *,
body.theme-l33t .tw-site-header details[open] a.tw-featured-city *,
body.theme-l33t .tw-site-header details[open] a.tw-featured-city div,
body.theme-l33t .tw-site-header details[open] a.tw-featured-city span,
body.theme-l33t .tw-site-header details[open] a.tw-featured-city [class*="bg-"],
body.theme-l33t .tw-site-header details[open] a.tw-featured-city [class*="rounded"],
body.theme-l33t .tw-city-menu-panel a.tw-featured-city *,
body.theme-l33t .tw-city-menu-panel a.tw-featured-city div,
body.theme-l33t .tw-city-menu-panel a.tw-featured-city [class*="bg-"] {
  background-color: transparent !important;
  background: transparent !important;
}

/* City icon circle - green border, transparent background */
.themed-page.theme-l33t a.tw-featured-city .featured-city-icon div,
body.theme-l33t a.tw-featured-city .featured-city-icon div,
body.theme-l33t details[open] a.tw-featured-city .featured-city-icon div,
body.theme-l33t a.tw-featured-city .bg-slate-100,
body.theme-l33t a.tw-featured-city .rounded-2xl.bg-slate-100,
body.theme-l33t details[open] a.tw-featured-city .bg-slate-100 {
  background-color: transparent !important;
  background: transparent !important;
  border: 2px solid var(--l33t-neon-green) !important;
  border-radius: 50% !important;
}

/* City icon color - green */
.themed-page.theme-l33t a.tw-featured-city .featured-city-icon i,
.themed-page.theme-l33t a.tw-featured-city .featured-city-icon svg,
body.theme-l33t a.tw-featured-city .featured-city-icon i,
body.theme-l33t a.tw-featured-city .featured-city-icon svg,
body.theme-l33t details[open] a.tw-featured-city .featured-city-icon i {
  color: var(--l33t-neon-green) !important;
}

/* Selected city (current city) - brighter glow */
.themed-page.theme-l33t a.tw-featured-city[class*="fcf2e9"],
.themed-page.theme-l33t a.tw-featured-city[class*="f2c9a6"],
body.theme-l33t a.tw-featured-city[class*="fcf2e9"],
body.theme-l33t details[open] a.tw-featured-city[class*="fcf2e9"],
body.theme-l33t .tw-site-header details[open] a.tw-featured-city[class*="fcf2e9"] {
  background-color: rgba(0, 255, 65, 0.15) !important;
  border: 2px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 10px rgba(0, 255, 65, 0.3), inset 0 0 15px rgba(0, 255, 65, 0.08) !important;
}

.themed-page.theme-l33t a.tw-featured-city[class*="fcf2e9"] .font-semibold,
body.theme-l33t a.tw-featured-city[class*="fcf2e9"] .font-semibold,
body.theme-l33t details[open] a.tw-featured-city[class*="fcf2e9"] .font-semibold {
  color: var(--l33t-neon-green) !important;
  text-shadow: 0 0 4px var(--l33t-neon-green) !important;
}

/* Hover effect - visible green background + glow for ALL city cards */
.themed-page.theme-l33t a.tw-featured-city:hover,
body.theme-l33t a.tw-featured-city:hover,
.themed-page.theme-l33t details[open] a.tw-featured-city:hover,
body.theme-l33t details[open] a.tw-featured-city:hover,
body.theme-l33t .tw-site-header details[open] a.tw-featured-city:hover,
body.theme-l33t .tw-city-menu-panel a.tw-featured-city:hover {
  background-color: rgba(0, 255, 65, 0.2) !important;
  box-shadow: 0 0 15px rgba(0, 255, 65, 0.5), inset 0 0 20px rgba(0, 255, 65, 0.15) !important;
  border-color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t a.tw-featured-city:hover .font-semibold,
body.theme-l33t a.tw-featured-city:hover .font-semibold,
body.theme-l33t details[open] a.tw-featured-city:hover .font-semibold {
  color: var(--l33t-neon-green) !important;
  text-shadow: 0 0 4px rgba(0, 255, 65, 0.5) !important;
}

/* View All Cities button - arrow icon should have no background */
.themed-page.theme-l33t .tw-city-menu-panel a.tw-button i,
.themed-page.theme-l33t .tw-city-menu-panel a.tw-button i.fa,
.themed-page.theme-l33t .tw-city-menu-panel a.tw-button i.fa-arrow-right,
body.theme-l33t .tw-city-menu-panel a.tw-button i,
body.theme-l33t .tw-city-menu-panel a.tw-button i.fa-arrow-right,
body.theme-l33t details[open] .tw-city-menu-panel a.tw-button i,
body.theme-l33t a[href*="all_cities"] i,
body.theme-l33t a[href*="all_cities"] i.fa-arrow-right {
  background-color: transparent !important;
  background: none !important;
  filter: none !important;
  color: var(--l33t-neon-green) !important;
}

/* ===== Title Colored Text Glow ===== */
.themed-page.theme-l33t h3 span[style*="color"],
.themed-page.theme-l33t h3 em,
.themed-page.theme-l33t .story-title span,
.themed-page.theme-l33t .text-brand-green,
.themed-page.theme-l33t [style*="color: rgb(67, 111, 73)"],
.themed-page.theme-l33t [style*="color:#436f49"],
.themed-page.theme-l33t [style*="color: #436f49"] {
  text-shadow: 0 0 6px currentColor, 0 0 12px currentColor !important;
}

/* ===== Date/Time/Location Panel Font Sizes ===== */
.themed-page.theme-l33t .rsvp-info-panel {
  font-size: 1.1rem !important;
}

.themed-page.theme-l33t .rsvp-info-panel .text-base {
  font-size: 1.2rem !important;
}

.themed-page.theme-l33t .rsvp-info-panel .text-sm {
  font-size: 1.2rem !important;
}

/* Date/time and address second lines in rsvp-info-panel */
.themed-page.theme-l33t .rsvp-info-panel .text-sm.text-slate-500 {
  font-size: 1.35rem !important;
}

/* Add to cal and Directions links */
.themed-page.theme-l33t .rsvp-info-panel .text-sm.font-medium,
.themed-page.theme-l33t .rsvp-info-panel summary.text-sm {
  font-size: 1.35rem !important;
}

/* Space between icons and text in Directions, Add to cal, etc. */
.themed-page.theme-l33t .rsvp-info-panel i.fa,
.themed-page.theme-l33t .rsvp-info-panel svg,
.themed-page.theme-l33t .rsvp-info-panel .fa {
  margin-right: 0.35rem !important;
}

/* ===== Paragraph font size inside ablk spans ===== */
.themed-page.theme-l33t span.ablk p,
.themed-page.theme-l33t .ablk p {
  font-size: 1.4rem !important;
}

/* ===== Table font sizes inside ablk spans ===== */
.themed-page.theme-l33t span.ablk table,
.themed-page.theme-l33t .ablk table,
.themed-page.theme-l33t span.ablk th,
.themed-page.theme-l33t .ablk th,
.themed-page.theme-l33t span.ablk td,
.themed-page.theme-l33t .ablk td {
  font-size: 1.4rem !important;
}

/* ===== List font sizes inside ablk spans ===== */
.themed-page.theme-l33t span.ablk ul,
.themed-page.theme-l33t .ablk ul,
.themed-page.theme-l33t span.ablk ol,
.themed-page.theme-l33t .ablk ol,
.themed-page.theme-l33t span.ablk li,
.themed-page.theme-l33t .ablk li {
  font-size: 1.4rem !important;
}

/* ===== Transparent images need green glow for visibility ===== */
.themed-page.theme-l33t .ablk img,
.themed-page.theme-l33t span.ablk img,
.themed-page.theme-l33t article img,
.themed-page.theme-l33t .rsvp-card-area img.img-fluid {
  filter:
    drop-shadow(0 0 12px rgba(0, 255, 65, 0.5))
    drop-shadow(0 0 24px rgba(0, 255, 65, 0.3))
    drop-shadow(0 0 40px rgba(0, 255, 65, 0.2)) !important;
}

/* ===== Tooltips (social icons, attendee avatars, etc.) ===== */
.themed-page.theme-l33t .social-icon-tooltip,
.themed-page.theme-l33t [data-tooltip]::after,
.themed-page.theme-l33t .tooltip,
.themed-page.theme-l33t .tippy-content,
.themed-page.theme-l33t .profile-avatar-tooltip[data-tooltip]::after {
  font-size: 1.2rem !important;
}

/* Profile avatar tooltips - ensure visibility */
.themed-page.theme-l33t .profile-container-desktop .profile-avatar-wrapper::after {
  background-color: var(--l33t-black) !important;
  color: var(--l33t-neon-green) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 12px rgba(0, 255, 65, 0.5) !important;
  font-family: var(--l33t-font-mono) !important;
  font-size: 1rem !important;
  padding: 8px 12px !important;
  border-radius: 0 !important;
  z-index: 99999 !important;
  position: absolute !important;
  left: 0 !important;
  transform: translateY(-8px) !important;
}

.themed-page.theme-l33t .profile-container-desktop .profile-avatar-wrapper::before {
  border-color: var(--l33t-neon-green) transparent transparent !important;
  z-index: 99999 !important;
  left: 12px !important;
  transform: translateY(0) !important;
}

.themed-page.theme-l33t .profile-container-desktop .profile-avatar-wrapper:hover {
  z-index: 99998 !important;
}

.themed-page.theme-l33t .profile-container-desktop .profile-avatar-wrapper:hover::after {
  transform: translateY(-12px) !important;
}

.themed-page.theme-l33t .profile-container-desktop .profile-avatar-wrapper:hover::before {
  transform: translateY(-2px) !important;
}

/* General data-tooltip attribute tooltips */
.themed-page.theme-l33t [data-tooltip]::after {
  background-color: var(--l33t-black) !important;
  color: var(--l33t-neon-green) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 12px rgba(0, 255, 65, 0.5) !important;
  font-family: var(--l33t-font-mono) !important;
  z-index: 99999 !important;
  border-radius: 0 !important;
}

/* ===== Admin/Editor Panel Text Sizes ===== */
.themed-page.theme-l33t .page-editor-controls p.text-sm,
.themed-page.theme-l33t .page-editor-controls .text-sm,
.themed-page.theme-l33t .page-editor-controls p {
  font-size: 1.3rem !important;
}

.themed-page.theme-l33t .page-editor-controls h3 {
  font-size: 1.3rem !important;
}

/* Invites Sent badge and similar status badges */
.themed-page.theme-l33t .page-editor-controls .text-xs,
.themed-page.theme-l33t .page-editor-controls span.text-xs {
  font-size: 1.1rem !important;
}

/* ===== Panel Icons - Terminal Style ===== */
/* Event Setup, Attendee Tools, and status icons */
.themed-page.theme-l33t .page-editor-controls .rounded-full[class*="bg-indigo"],
.themed-page.theme-l33t .page-editor-controls .rounded-full[class*="bg-emerald"],
.themed-page.theme-l33t .js-attendee-tools .rounded-full[class*="bg-indigo"],
.themed-page.theme-l33t .rsvp-card-area .rounded-full[class*="bg-emerald"] {
  background-color: var(--l33t-black) !important;
  border: 2px solid var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.3) !important;
}

.themed-page.theme-l33t .page-editor-controls .rounded-full[class*="bg-indigo"] i,
.themed-page.theme-l33t .page-editor-controls .rounded-full[class*="bg-emerald"] i,
.themed-page.theme-l33t .js-attendee-tools .rounded-full[class*="bg-indigo"] i,
.themed-page.theme-l33t .rsvp-card-area .rounded-full[class*="bg-emerald"] i {
  color: var(--l33t-neon-green) !important;
  text-shadow: 0 0 8px var(--l33t-neon-green);
}

/* ===== Cities Megamenu - All City Names Readable ===== */
.themed-page.theme-l33t a.tw-featured-city .font-semibold,
.themed-page.theme-l33t a.tw-featured-city .text-slate-900,
.themed-page.theme-l33t a.tw-featured-city .text-sm,
.themed-page.theme-l33t .tw-featured-city .font-semibold,
body.theme-l33t a.tw-featured-city .font-semibold,
body.theme-l33t a.tw-featured-city .text-slate-900,
body.theme-l33t .tw-featured-city .font-semibold,
body.theme-l33t details[open] a.tw-featured-city .font-semibold,
body.theme-l33t details[open] a.tw-featured-city .text-slate-900,
body.theme-l33t .tw-site-header details[open] a.tw-featured-city .font-semibold,
body.theme-l33t .tw-city-menu-panel a.tw-featured-city .font-semibold {
  color: var(--l33t-text-light) !important;
  text-shadow: none !important;
  text-decoration: none !important;
}

/* Selected city gets bright green */
.themed-page.theme-l33t a.tw-featured-city[class*="fcf2e9"] .font-semibold,
.themed-page.theme-l33t a.tw-featured-city.bg-\[\#fcf2e9\] .font-semibold,
body.theme-l33t a.tw-featured-city[class*="fcf2e9"] .font-semibold,
body.theme-l33t details[open] a.tw-featured-city[class*="fcf2e9"] .font-semibold {
  color: var(--l33t-neon-green) !important;
  text-shadow: 0 0 4px var(--l33t-neon-green) !important;
}

/* City status text (Next: Feb 9, Last: 2d ago, etc.) */
.themed-page.theme-l33t a.tw-featured-city .text-slate-500,
body.theme-l33t a.tw-featured-city .text-slate-500,
body.theme-l33t details[open] a.tw-featured-city .text-slate-500,
body.theme-l33t details[open] a.tw-featured-city .text-xs,
body.theme-l33t .tw-city-menu-panel a.tw-featured-city .text-slate-500,
body.theme-l33t .tw-city-menu-panel a.tw-featured-city .text-xs {
  color: var(--l33t-text-muted) !important;
}

/* Cities menu parenthetical numbers - make more visible */
.themed-page.theme-l33t a.tw-featured-city .text-slate-400,
.themed-page.theme-l33t a.tw-featured-city .text-slate-500,
.themed-page.theme-l33t a.tw-featured-city .text-gray-400,
.themed-page.theme-l33t a.tw-featured-city .text-gray-500,
body.theme-l33t a.tw-featured-city .text-slate-400,
body.theme-l33t a.tw-featured-city .text-gray-400,
body.theme-l33t details[open] .text-slate-400,
body.theme-l33t details[open] .text-gray-400,
body.theme-l33t .tw-site-header details[open] .text-slate-400,
body.theme-l33t .tw-site-header details[open] .text-gray-400 {
  color: var(--l33t-text-light) !important;
  opacity: 0.85 !important;
}

/* Cities button count in nav - make visible */
.themed-page.theme-l33t .tw-site-header details summary a span.text-\[\#31439b\],
.themed-page.theme-l33t .tw-site-header details summary a span[class*="opacity-70"],
body.theme-l33t .tw-site-header details summary a span.text-\[\#31439b\],
body.theme-l33t .tw-site-header details summary a span[class*="opacity-70"] {
  color: var(--l33t-neon-green) !important;
  opacity: 1 !important;
}

/* ===== Alert Bar - Terminal Theme ===== */
/* Main alert bar container - green glow background */
body.theme-l33t #universal-alert-bar,
body.theme-l33t .alert-bar-container {
  background-color: rgba(0, 25, 8, 0.95) !important;
  background-image: linear-gradient(to bottom, rgba(0, 255, 65, 0.15), rgba(0, 255, 65, 0.06)) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 30px rgba(0, 255, 65, 0.35), inset 0 0 50px rgba(0, 255, 65, 0.1) !important;
}

/* Remove all inner borders/backgrounds */
body.theme-l33t #universal-alert-bar *,
body.theme-l33t .alert-bar-container * {
  border: none !important;
  background-color: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

/* Alert bar text - bright green */
body.theme-l33t #universal-alert-bar,
body.theme-l33t #universal-alert-bar .alert-message-text,
body.theme-l33t #universal-alert-bar span,
body.theme-l33t .alert-bar-container {
  color: var(--l33t-neon-green) !important;
  font-family: var(--l33t-font-mono) !important;
  font-size: 1.2rem !important;
}

/* Alert bar buttons - bright green background, black text */
body.theme-l33t #universal-alert-bar button:not(.alert-bar-close),
body.theme-l33t .alert-bar-container button:not(.alert-bar-close),
body.theme-l33t #universal-alert-bar .alert-action-primary,
body.theme-l33t #universal-alert-bar .alert-action-dismiss {
  background-color: var(--l33t-neon-green) !important;
  color: #000000 !important;
  border: none !important;
  font-weight: 700 !important;
  text-shadow: none !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.5) !important;
}

body.theme-l33t #universal-alert-bar button:not(.alert-bar-close) span,
body.theme-l33t #universal-alert-bar .alert-action-primary span,
body.theme-l33t #universal-alert-bar .alert-action-dismiss span,
body.theme-l33t #universal-alert-bar .action-text,
body.theme-l33t #universal-alert-bar .dismiss-text {
  color: #000000 !important;
  text-shadow: none !important;
}

body.theme-l33t #universal-alert-bar button:not(.alert-bar-close):hover,
body.theme-l33t .alert-bar-container button:not(.alert-bar-close):hover {
  background-color: #33ff66 !important;
  box-shadow: 0 0 16px rgba(0, 255, 65, 0.7) !important;
}

/* Close button (X) - minimal styling, no border */
body.theme-l33t #universal-alert-bar .alert-bar-close,
body.theme-l33t .alert-bar-container .alert-bar-close {
  background-color: transparent !important;
  color: var(--l33t-neon-green) !important;
  border: none !important;
}

body.theme-l33t #universal-alert-bar .alert-bar-close:hover,
body.theme-l33t .alert-bar-container .alert-bar-close:hover {
  background-color: transparent !important;
  color: #33ff66 !important;
  text-shadow: 0 0 8px var(--l33t-neon-green) !important;
}

/* ===== Support Button - Terminal Glow on Hover ===== */
body.theme-l33t button[class*="Support"],
body.theme-l33t button:has(img[alt*="Support"]),
.themed-page.theme-l33t button[class*="Support"] {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
}

body.theme-l33t button[class*="Support"]:hover,
body.theme-l33t button:has(img[alt*="Support"]):hover,
.themed-page.theme-l33t button[class*="Support"]:hover,
body.theme-l33t .fixed.bottom-0 button:hover,
body.theme-l33t .fixed.bottom-4 button:hover {
  background-color: var(--l33t-neon-green) !important;
  border-color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 12px var(--l33t-neon-green), 0 0 24px var(--l33t-neon-green) !important;
  color: #000000 !important;
}

body.theme-l33t button[class*="Support"]:hover img,
body.theme-l33t button:has(img[alt*="Support"]):hover img {
  filter: brightness(0) !important;
}

/* Support FAB trigger button (floating button) */
body.theme-l33t [data-support-trigger] {
  background-color: var(--l33t-black) !important;
  border: 2px solid var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
}

body.theme-l33t [data-support-trigger]:hover {
  background-color: var(--l33t-neon-green) !important;
  border-color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 12px var(--l33t-neon-green), 0 0 24px var(--l33t-neon-green) !important;
  color: #000000 !important;
}

body.theme-l33t [data-support-trigger]:hover img,
body.theme-l33t [data-support-trigger]:hover svg {
  filter: brightness(0) !important;
}

/* ===== Support Panel / Floating Contact Form ===== */
body.theme-l33t [data-support-panel],
body.theme-l33t [data-support-panel] * {
  font-family: var(--l33t-font-mono) !important;
}

body.theme-l33t [data-support-panel] {
  background-color: var(--l33t-black) !important;
  border: 2px solid var(--l33t-neon-green) !important;
  border-radius: 0 !important;
  box-shadow: 0 0 30px rgba(0, 255, 65, 0.4) !important;
}

body.theme-l33t [data-support-panel] [data-support-header] {
  background-color: var(--l33t-black) !important;
  border-color: var(--l33t-neon-green) !important;
}

body.theme-l33t [data-support-panel] h3,
body.theme-l33t [data-support-panel] h4 {
  color: var(--l33t-neon-green) !important;
  font-size: 1.5rem !important;
}

body.theme-l33t [data-support-panel] p {
  color: var(--l33t-text-light) !important;
  font-size: 1.2rem !important;
}

body.theme-l33t [data-support-panel] label {
  color: var(--l33t-neon-green) !important;
  font-size: 1.1rem !important;
}

body.theme-l33t [data-support-panel] textarea,
body.theme-l33t [data-support-panel] input {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  border-radius: 0 !important;
  color: var(--l33t-neon-green) !important;
  font-size: 1.2rem !important;
}

body.theme-l33t [data-support-panel] textarea::placeholder,
body.theme-l33t [data-support-panel] input::placeholder {
  color: var(--l33t-text-dim) !important;
  font-size: 1.2rem !important;
}

body.theme-l33t [data-support-panel] button {
  font-size: 1.2rem !important;
}

/* Send button specific styling */
body.theme-l33t [data-support-panel] [data-support-send] {
  background-color: var(--l33t-neon-green) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  color: #000000 !important;
  border-radius: 0 !important;
}

body.theme-l33t [data-support-panel] [data-support-send]:hover {
  background-color: var(--l33t-neon-green) !important;
  box-shadow: 0 0 12px var(--l33t-neon-green) !important;
}

/* Send button text and icon must be black on green background */
body.theme-l33t [data-support-panel] [data-support-send],
body.theme-l33t [data-support-panel] [data-support-send] * {
  color: #000000 !important;
}

body.theme-l33t [data-support-panel] [data-support-send] i.fa-arrow-right::before {
  color: #000000 !important;
}

body.theme-l33t [data-support-panel] [data-support-close] {
  color: var(--l33t-neon-green) !important;
}

/* Close button X icon - ensure Font Awesome icon is visible */
body.theme-l33t [data-support-panel] [data-support-close] i,
body.theme-l33t [data-support-panel] [data-support-close] i.fa,
body.theme-l33t [data-support-panel] [data-support-close] i.fa-times {
  color: var(--l33t-neon-green) !important;
  font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", FontAwesome !important;
  font-weight: 900 !important;
  font-style: normal !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
  filter: none !important;
  background: transparent !important;
  display: inline-block !important;
  width: auto !important;
  height: auto !important;
}

/* Force X icon content if fa-times isn't rendering */
body.theme-l33t [data-support-panel] [data-support-close] i.fa-times::before {
  content: "\f00d" !important;
  font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", FontAwesome !important;
  font-weight: 900 !important;
  color: var(--l33t-neon-green) !important;
}

/* Send button arrow icon */
body.theme-l33t [data-support-panel] [data-support-send] i,
body.theme-l33t [data-support-panel] [data-support-send] i.fa,
body.theme-l33t [data-support-panel] [data-support-send] i.fa-arrow-right {
  color: inherit !important;
  font-family: "Font Awesome 6 Free", "Font Awesome 5 Free", FontAwesome !important;
  font-weight: 900 !important;
  font-style: normal !important;
  -webkit-font-smoothing: antialiased !important;
  -moz-osx-font-smoothing: grayscale !important;
}

body.theme-l33t [data-support-panel] a {
  color: var(--l33t-neon-green) !important;
  font-size: 1.2rem !important;
}

/* Gradient bar at top - make it green */
body.theme-l33t [data-support-panel] .bg-gradient-to-r {
  background: var(--l33t-neon-green) !important;
  box-shadow: 0 0 8px var(--l33t-neon-green) !important;
}

/* Support button icon - always bright green */
body.theme-l33t button img[alt*="Support"],
body.theme-l33t .fixed.bottom-0 button img,
body.theme-l33t .fixed.bottom-4 button img {
  filter: brightness(0) saturate(100%) invert(89%) sepia(50%) saturate(4000%) hue-rotate(70deg) brightness(110%) !important;
}

/* Mobile bottom nav - Support button specifically */
body.theme-l33t .fixed.bottom-0 button,
body.theme-l33t .fixed.bottom-4 button,
body.theme-l33t [class*="fixed"][class*="bottom"] button {
  background-color: var(--l33t-black) !important;
  color: var(--l33t-neon-green) !important;
}

body.theme-l33t .fixed.bottom-0 button:hover,
body.theme-l33t .fixed.bottom-4 button:hover,
body.theme-l33t [class*="fixed"][class*="bottom"] button:hover {
  background-color: var(--l33t-neon-green) !important;
  color: #000000 !important;
  box-shadow: 0 0 12px var(--l33t-neon-green), 0 0 24px var(--l33t-neon-green) !important;
}

/* Support button icon on hover - make it black */
body.theme-l33t .fixed.bottom-0 button:hover img,
body.theme-l33t .fixed.bottom-4 button:hover img,
body.theme-l33t [class*="fixed"][class*="bottom"] button:hover img,
body.theme-l33t [data-support-trigger]:hover img {
  filter: brightness(0) !important;
}

/* ===== Limited Capacity Notice Box ===== */
/* Override inline Tailwind JIT orange/cream colors */
.themed-page.theme-l33t .border-\[\#f9e4d2\],
.themed-page.theme-l33t [class*="border-[#f9e4d2]"] {
  border-color: var(--l33t-neon-green) !important;
}

.themed-page.theme-l33t .bg-\[\#fcf2e9\],
.themed-page.theme-l33t [class*="bg-[#fcf2e9]"] {
  background-color: var(--l33t-black) !important;
}

.themed-page.theme-l33t .text-\[\#864913\],
.themed-page.theme-l33t [class*="text-[#864913]"] {
  color: var(--l33t-text-light) !important;
}

.themed-page.theme-l33t .text-\[\#df7920\],
.themed-page.theme-l33t [class*="text-[#df7920]"] {
  color: var(--l33t-neon-green) !important;
  text-shadow: 0 0 4px var(--l33t-neon-green) !important;
}

/* ===== SweetAlert2 Modals ===== */
body.theme-l33t .swal2-popup,
.themed-page.theme-l33t .swal2-popup {
  background-color: var(--l33t-black) !important;
  border: 2px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 30px rgba(0, 255, 65, 0.4), inset 0 0 50px rgba(0, 255, 65, 0.05) !important;
  border-radius: 0 !important;
  font-family: var(--l33t-font-mono) !important;
}

body.theme-l33t .swal2-title,
.themed-page.theme-l33t .swal2-title {
  color: var(--l33t-neon-green) !important;
  font-family: var(--l33t-font-mono) !important;
  text-shadow: 0 0 4px var(--l33t-neon-green) !important;
}

body.theme-l33t .swal2-html-container,
body.theme-l33t .swal2-content,
.themed-page.theme-l33t .swal2-html-container,
.themed-page.theme-l33t .swal2-content {
  color: var(--l33t-text-light) !important;
  font-family: var(--l33t-font-mono) !important;
  font-size: 1.3rem !important;
  line-height: 1.6 !important;
}

body.theme-l33t .swal2-html-container a,
.themed-page.theme-l33t .swal2-html-container a {
  color: var(--l33t-neon-green) !important;
}

/* SweetAlert icon - terminal green */
body.theme-l33t .swal2-icon,
.themed-page.theme-l33t .swal2-icon {
  border-color: var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
}

body.theme-l33t .swal2-icon.swal2-warning,
.themed-page.theme-l33t .swal2-icon.swal2-warning {
  border-color: var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
}

body.theme-l33t .swal2-icon .swal2-icon-content,
.themed-page.theme-l33t .swal2-icon .swal2-icon-content {
  color: var(--l33t-neon-green) !important;
}

/* SweetAlert buttons */
body.theme-l33t .swal2-confirm,
.themed-page.theme-l33t .swal2-confirm {
  background-color: var(--l33t-button-bg) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
  font-family: var(--l33t-font-mono) !important;
  font-size: 1.2rem !important;
  border-radius: 0 !important;
  box-shadow: 0 0 8px rgba(0, 255, 65, 0.3) !important;
  padding: 0.75rem 1.5rem !important;
}

body.theme-l33t .swal2-confirm:hover,
.themed-page.theme-l33t .swal2-confirm:hover {
  background-color: var(--l33t-neon-green) !important;
  color: var(--l33t-black) !important;
}

body.theme-l33t .swal2-cancel,
.themed-page.theme-l33t .swal2-cancel {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  color: var(--l33t-neon-green) !important;
  font-family: var(--l33t-font-mono) !important;
  font-size: 1.2rem !important;
  border-radius: 0 !important;
  padding: 0.75rem 1.5rem !important;
}

body.theme-l33t .swal2-cancel:hover,
.themed-page.theme-l33t .swal2-cancel:hover {
  background-color: var(--l33t-neon-green) !important;
  color: var(--l33t-black) !important;
}

/* SweetAlert backdrop */
body.theme-l33t .swal2-container,
.themed-page.theme-l33t .swal2-container {
  background-color: rgba(0, 0, 0, 0.85) !important;
}

/* ===== Bootstrap Modals ===== */
body.theme-l33t .modal-content,
.themed-page.theme-l33t .modal-content {
  background-color: var(--l33t-black) !important;
  border: 2px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 30px rgba(0, 255, 65, 0.4), inset 0 0 50px rgba(0, 255, 65, 0.05) !important;
  border-radius: 0 !important;
  font-family: var(--l33t-font-mono) !important;
  color: var(--l33t-text-light) !important;
}

body.theme-l33t .modal-header,
.themed-page.theme-l33t .modal-header {
  border-bottom: 1px solid var(--l33t-neon-green) !important;
  background-color: var(--l33t-black) !important;
}

body.theme-l33t .modal-title,
.themed-page.theme-l33t .modal-title {
  color: var(--l33t-neon-green) !important;
  font-family: var(--l33t-font-mono) !important;
  font-size: 1.4rem !important;
  text-shadow: 0 0 4px var(--l33t-neon-green) !important;
}

body.theme-l33t .modal-body,
.themed-page.theme-l33t .modal-body {
  background-color: var(--l33t-black) !important;
  color: var(--l33t-text-light) !important;
  font-size: 1.2rem !important;
}

body.theme-l33t .modal-body p,
.themed-page.theme-l33t .modal-body p {
  font-size: 1.2rem !important;
}

body.theme-l33t .modal-footer,
.themed-page.theme-l33t .modal-footer {
  border-top: 1px solid var(--l33t-neon-green) !important;
  background-color: var(--l33t-black) !important;
}

body.theme-l33t .modal-backdrop,
.themed-page.theme-l33t .modal-backdrop {
  background-color: #000000 !important;
  opacity: 0.85 !important;
}

/* Bootstrap modal close button */
body.theme-l33t .modal .btn-close,
body.theme-l33t .modal .close,
.themed-page.theme-l33t .modal .btn-close,
.themed-page.theme-l33t .modal .close {
  color: var(--l33t-neon-green) !important;
  opacity: 1 !important;
  filter: invert(56%) sepia(95%) saturate(1000%) hue-rotate(85deg) brightness(110%) !important;
}

/* ===== Email Stats Modal ===== */
body.theme-l33t #email-stats-modal .modal-content,
.themed-page.theme-l33t #email-stats-modal .modal-content {
  background-color: var(--l33t-black) !important;
  border: 2px solid var(--l33t-neon-green) !important;
  box-shadow: 0 0 30px rgba(0, 255, 65, 0.4) !important;
}

body.theme-l33t #email-stats-modal .modal-header,
.themed-page.theme-l33t #email-stats-modal .modal-header {
  background-color: var(--l33t-black) !important;
  border-bottom: 1px solid var(--l33t-neon-green) !important;
}

body.theme-l33t #email-stats-modal .modal-title,
body.theme-l33t #email-stats-modal h5,
.themed-page.theme-l33t #email-stats-modal .modal-title {
  color: var(--l33t-neon-green) !important;
  font-family: var(--l33t-font-mono) !important;
}

body.theme-l33t #email-stats-modal .modal-body,
.themed-page.theme-l33t #email-stats-modal .modal-body {
  background-color: var(--l33t-black) !important;
  font-size: 1.2rem !important;
}

/* Stats cards */
body.theme-l33t #email-stats-modal .rounded-xl,
body.theme-l33t #email-stats-modal .rounded-lg,
body.theme-l33t #email-stats-modal [class*="border-"],
.themed-page.theme-l33t #email-stats-modal .rounded-xl,
.themed-page.theme-l33t #email-stats-modal .rounded-lg {
  background-color: var(--l33t-black) !important;
  border-color: var(--l33t-neon-green) !important;
  border-radius: 0 !important;
}

body.theme-l33t #email-stats-modal .text-slate-500,
body.theme-l33t #email-stats-modal .text-slate-600,
body.theme-l33t #email-stats-modal .text-gray-500,
body.theme-l33t #email-stats-modal .text-xs,
body.theme-l33t #email-stats-modal .text-sm,
.themed-page.theme-l33t #email-stats-modal .text-slate-500 {
  color: var(--l33t-text-muted) !important;
  font-size: 1.1rem !important;
}

body.theme-l33t #email-stats-modal .text-slate-900,
body.theme-l33t #email-stats-modal .text-slate-800,
body.theme-l33t #email-stats-modal .font-bold,
body.theme-l33t #email-stats-modal .font-semibold,
body.theme-l33t #email-stats-modal .text-2xl,
body.theme-l33t #email-stats-modal .text-xl,
body.theme-l33t #email-stats-modal .text-lg,
.themed-page.theme-l33t #email-stats-modal .text-slate-900 {
  color: var(--l33t-neon-green) !important;
  font-size: 1.5rem !important;
}

/* Stats card icons */
body.theme-l33t #email-stats-modal .bg-slate-100,
body.theme-l33t #email-stats-modal .bg-slate-50,
body.theme-l33t #email-stats-modal .bg-gray-100,
.themed-page.theme-l33t #email-stats-modal .bg-slate-100 {
  background-color: var(--l33t-surface) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  border-radius: 0 !important;
}

body.theme-l33t #email-stats-modal .bg-slate-100 svg,
body.theme-l33t #email-stats-modal .bg-slate-50 svg,
.themed-page.theme-l33t #email-stats-modal svg {
  color: var(--l33t-neon-green) !important;
  stroke: var(--l33t-neon-green) !important;
}

body.theme-l33t #email-stats-modal .modal-footer,
.themed-page.theme-l33t #email-stats-modal .modal-footer {
  background-color: var(--l33t-black) !important;
  border-top: 1px solid var(--l33t-neon-green) !important;
}

/* Chart container */
body.theme-l33t #email-stats-modal .rounded-2xl,
.themed-page.theme-l33t #email-stats-modal .rounded-2xl {
  background-color: var(--l33t-black) !important;
  border: 1px solid var(--l33t-neon-green) !important;
  border-radius: 0 !important;
}

/* Header icon */
body.theme-l33t #email-stats-modal .bg-slate-900,
body.theme-l33t #email-stats-modal .bg-black,
.themed-page.theme-l33t #email-stats-modal .bg-slate-900 {
  background-color: var(--l33t-neon-green) !important;
  border-radius: 0 !important;
}

body.theme-l33t #email-stats-modal .bg-slate-900 svg,
.themed-page.theme-l33t #email-stats-modal .bg-slate-900 svg {
  color: var(--l33t-black) !important;
  stroke: var(--l33t-black) !important;
}

/* ===== Print Styles ===== */
@media print {
  .themed-page.theme-l33t {
    background: white;
    color: black;
  }

  .themed-page.theme-l33t .l33t-terminal {
    border: 1px solid #333;
    box-shadow: none;
  }

  .themed-page.theme-l33t .l33t-header {
    display: none;
  }
}
