/* ================= VARIANT 1: CLEAN MINIMAL (Light) ================= */
.variant-clean {
  --bg: #fafaf9;
  --bg-2: #f4f4f2;
  --bg-3: #ffffff;
  --fg: #0a0a0f;
  --fg-muted: #737380;
  --line: rgba(10,10,15,0.08);
  --accent: #4F46E5;
  --accent-fg: #ffffff;
  background: var(--bg);
  color: var(--fg);
  font-family: 'Inter', system-ui, sans-serif;
}
.variant-clean .nav-brand { font-family: 'Outfit', 'Inter', sans-serif; font-weight: 700; letter-spacing: -0.02em; }

/* Dark mode for Clean */
.variant-clean.dark {
  --bg: #050507;
  --bg-2: #111118;
  --bg-3: #0A0A0F;
  --fg: #f4f4f5;
  --fg-muted: #8a8a99;
  --line: rgba(255,255,255,0.07);
  --accent: #6D73FF;
  --accent-fg: #ffffff;
}
.variant-clean.dark .app-window { background: var(--bg-3); box-shadow: 0 30px 80px rgba(0,0,0,0.5), 0 0 0 1px var(--line); }
.variant-clean.dark .avatar { background: #1A1A24; color: #DDE0FF; }
.variant-clean.dark .avatar[data-color="violet"] { background: #312E81; color: #C4B5FD; }
.variant-clean.dark .avatar[data-color="amber"] { background: #422e05; color: #fde68a; }
.variant-clean.dark .avatar[data-color="rose"] { background: #4a1d29; color: #fecdd3; }
.variant-clean.dark .avatar[data-color="teal"] { background: #134e4a; color: #99f6e4; }
.variant-clean.dark .bubble.them { border-color: rgba(255,255,255,0.1); }
.variant-clean.dark .bubble.me { background: var(--accent); color: #fff; }
.variant-clean.dark .nav-tab.active { background: var(--accent); }
.variant-clean.dark .reaction.mine { background: var(--accent); }
.variant-clean.dark .composer-btn { background: var(--accent); }
.variant-clean .app-window { background: var(--bg-3); box-shadow: 0 30px 80px rgba(0,0,0,0.08), 0 0 0 1px var(--line); }
.variant-clean .window-bar { background: var(--bg-2); border-bottom: 1px solid var(--line); }
.variant-clean .window-bar .title { color: var(--fg-muted); font-weight: 500; }
.variant-clean .top-nav { border-bottom: 1px solid var(--line); background: var(--bg-3); }
.variant-clean .nav-brand svg { color: #0a0a0a; }
.variant-clean .nav-tab { color: var(--fg-muted); }
.variant-clean .nav-tab:hover { background: var(--bg-2); color: var(--fg); }
.variant-clean .nav-tab.active { background: var(--accent); color: var(--accent-fg); }
.variant-clean .nav-user { border: 1px solid var(--line); }
.variant-clean .chat-list { border-right: 1px solid var(--line); background: var(--bg-3); }
.variant-clean .chat-list-header { border-bottom: 1px solid var(--line); }
.variant-clean .chat-search { background: var(--bg-2); color: var(--fg); }
.variant-clean .chat-item:hover { background: var(--bg-2); }
.variant-clean .chat-item.active { background: var(--bg-2); }
.variant-clean .avatar { background: #e5e5e5; color: #0a0a0a; }
.variant-clean .avatar[data-color="violet"] { background: #ddd6fe; color: #5b21b6; }
.variant-clean .avatar[data-color="amber"] { background: #fde68a; color: #78350f; }
.variant-clean .avatar[data-color="rose"] { background: #fecdd3; color: #881337; }
.variant-clean .avatar[data-color="teal"] { background: #99f6e4; color: #134e4a; }
.variant-clean .chat-header { border-bottom: 1px solid var(--line); }
.variant-clean .icon-btn { color: var(--fg-muted); }
.variant-clean .icon-btn:hover { background: var(--bg-2); color: var(--fg); }
.variant-clean .bubble.me { background: var(--accent); color: var(--accent-fg); border-radius: 18px 18px 4px 18px; }
.variant-clean .bubble.them { background: transparent; color: var(--fg); border: 1px solid var(--line); border-radius: 18px 18px 18px 4px; }
.variant-clean .reaction { background: var(--bg-2); border: 1px solid var(--line); }
.variant-clean .reaction.mine { background: var(--accent); color: var(--accent-fg); border-color: var(--accent); }
.variant-clean .event-pill { background: var(--bg-2); color: var(--fg-muted); }
.variant-clean .composer { border-top: 1px solid var(--line); }
.variant-clean .composer-box { background: var(--bg-2); }
.variant-clean .composer-btn { background: var(--accent); color: var(--accent-fg); }
.variant-clean .presence { border-color: var(--bg-3); }


/* ================= VARIANT 2: PLAYFUL DISCORD-VIBES ================= */
.variant-playful {
  --bg: #1a1625;
  --bg-2: #2a2338;
  --bg-3: #221b30;
  --fg: #f5f3ff;
  --fg-muted: #9691b3;
  --accent: #a78bfa;
  --accent-2: #f472b6;
  --accent-3: #60a5fa;
  background: radial-gradient(ellipse at top left, #3d1a54 0%, #1a1625 50%);
  color: var(--fg);
  font-family: 'Plus Jakarta Sans', 'Inter', sans-serif;
}
.variant-playful .app-window { background: var(--bg-3); }
.variant-playful .window-bar { background: rgba(0,0,0,0.25); }
.variant-playful .window-bar .title { color: #fff; font-weight: 700; font-size: 13px; }
.variant-playful .top-nav { background: linear-gradient(90deg, #2a1a48 0%, #1a1625 100%); border-bottom: 1px solid rgba(255,255,255,0.05); }
.variant-playful .nav-brand { font-size: 18px; background: linear-gradient(135deg, #f472b6, #a78bfa); -webkit-background-clip: text; -webkit-text-fill-color: transparent; }
.variant-playful .nav-tab { color: var(--fg-muted); font-weight: 600; }
.variant-playful .nav-tab:hover { background: rgba(255,255,255,0.06); color: #fff; }
.variant-playful .nav-tab.active { background: linear-gradient(135deg, #a78bfa, #f472b6); color: #fff; box-shadow: 0 4px 14px rgba(167,139,250,0.4); }
.variant-playful .nav-user { background: rgba(255,255,255,0.05); }
.variant-playful .chat-list { background: rgba(0,0,0,0.15); border-right: 1px solid rgba(255,255,255,0.04); }
.variant-playful .chat-search { background: rgba(0,0,0,0.3); color: #fff; }
.variant-playful .chat-item:hover { background: rgba(255,255,255,0.04); }
.variant-playful .chat-item.active { background: linear-gradient(90deg, rgba(167,139,250,0.2), rgba(244,114,182,0.1)); }
.variant-playful .avatar { background: linear-gradient(135deg, #a78bfa, #f472b6); color: #fff; font-weight: 800; }
.variant-playful .avatar[data-color="teal"] { background: linear-gradient(135deg, #34d399, #60a5fa); }
.variant-playful .avatar[data-color="amber"] { background: linear-gradient(135deg, #fbbf24, #f472b6); }
.variant-playful .avatar[data-color="rose"] { background: linear-gradient(135deg, #fb7185, #a78bfa); }
.variant-playful .avatar[data-color="violet"] { background: linear-gradient(135deg, #a78bfa, #60a5fa); }
.variant-playful .chat-header { background: rgba(0,0,0,0.2); border-bottom: 1px solid rgba(255,255,255,0.05); }
.variant-playful .icon-btn:hover { background: rgba(255,255,255,0.08); }
.variant-playful .messages { background: radial-gradient(ellipse at bottom right, rgba(244,114,182,0.06), transparent 50%); }
.variant-playful .bubble.me { background: linear-gradient(135deg, #a78bfa, #8b5cf6); color: #fff; border-radius: 20px 20px 4px 20px; box-shadow: 0 4px 14px rgba(167,139,250,0.25); }
.variant-playful .bubble.them { background: rgba(255,255,255,0.06); color: #fff; border-radius: 20px 20px 20px 4px; backdrop-filter: blur(10px); }
.variant-playful .reaction { background: rgba(255,255,255,0.08); }
.variant-playful .reaction.mine { background: rgba(167,139,250,0.3); border: 1px solid #a78bfa; }
.variant-playful .event-pill { background: rgba(52,211,153,0.15); color: #34d399; }
.variant-playful .event-pill.rejected { background: rgba(251,113,133,0.15); color: #fb7185; }
.variant-playful .composer { background: rgba(0,0,0,0.2); }
.variant-playful .composer-box { background: rgba(255,255,255,0.06); }
.variant-playful .composer-btn { background: linear-gradient(135deg, #a78bfa, #f472b6); color: #fff; box-shadow: 0 4px 14px rgba(167,139,250,0.4); }
.variant-playful .presence { border-color: var(--bg-3); }


/* ================= VARIANT 3: Y2K GLASSMORPHISM ================= */
.variant-y2k {
  --bg: #0a0a1f;
  --fg: #f8fafc;
  --fg-muted: rgba(248,250,252,0.6);
  --accent: #c7d2fe;
  color: var(--fg);
  font-family: 'Space Grotesk', 'Inter', sans-serif;
  background:
    radial-gradient(ellipse 80% 50% at 20% 20%, rgba(168,85,247,0.4), transparent),
    radial-gradient(ellipse 60% 40% at 80% 80%, rgba(59,130,246,0.35), transparent),
    radial-gradient(ellipse 70% 60% at 50% 50%, rgba(236,72,153,0.2), transparent),
    #0a0a1f;
}
.variant-y2k .app-window {
  background: rgba(255,255,255,0.04);
  backdrop-filter: blur(30px);
  -webkit-backdrop-filter: blur(30px);
  border: 1px solid rgba(255,255,255,0.12);
  box-shadow: 0 30px 80px rgba(0,0,0,0.3), inset 0 1px 0 rgba(255,255,255,0.15);
}
.variant-y2k .window-bar { background: rgba(255,255,255,0.04); border-bottom: 1px solid rgba(255,255,255,0.08); }
.variant-y2k .window-bar .title { color: rgba(255,255,255,0.7); font-weight: 500; letter-spacing: 0.08em; font-size: 11px; text-transform: uppercase; }
.variant-y2k .top-nav { background: rgba(255,255,255,0.02); border-bottom: 1px solid rgba(255,255,255,0.08); }
.variant-y2k .nav-brand { font-weight: 700; letter-spacing: -0.03em; font-size: 18px; }
.variant-y2k .nav-tab {
  color: var(--fg-muted);
  font-weight: 500;
  border: 1px solid transparent;
}
.variant-y2k .nav-tab:hover { background: rgba(255,255,255,0.06); color: #fff; border-color: rgba(255,255,255,0.1); }
.variant-y2k .nav-tab.active {
  background: rgba(255,255,255,0.15);
  color: #fff;
  border-color: rgba(255,255,255,0.25);
  backdrop-filter: blur(10px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
}
.variant-y2k .nav-user { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); }
.variant-y2k .chat-list { background: rgba(255,255,255,0.02); border-right: 1px solid rgba(255,255,255,0.08); }
.variant-y2k .chat-search { background: rgba(255,255,255,0.06); color: #fff; border: 1px solid rgba(255,255,255,0.08); }
.variant-y2k .chat-item:hover { background: rgba(255,255,255,0.05); }
.variant-y2k .chat-item.active {
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.15);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
}
.variant-y2k .avatar {
  background: linear-gradient(135deg, #e0e7ff, #c7d2fe);
  color: #312e81;
  border: 1px solid rgba(255,255,255,0.3);
}
.variant-y2k .avatar[data-color="violet"] { background: linear-gradient(135deg, #e9d5ff, #c4b5fd); color: #4c1d95; }
.variant-y2k .avatar[data-color="rose"] { background: linear-gradient(135deg, #fecdd3, #f9a8d4); color: #831843; }
.variant-y2k .avatar[data-color="teal"] { background: linear-gradient(135deg, #a7f3d0, #7dd3fc); color: #064e3b; }
.variant-y2k .avatar[data-color="amber"] { background: linear-gradient(135deg, #fde68a, #fdba74); color: #7c2d12; }
.variant-y2k .chat-header { background: rgba(255,255,255,0.02); border-bottom: 1px solid rgba(255,255,255,0.08); }
.variant-y2k .icon-btn:hover { background: rgba(255,255,255,0.08); }
.variant-y2k .bubble.me {
  background: linear-gradient(135deg, rgba(199,210,254,0.9), rgba(196,181,253,0.8));
  color: #1e1b4b;
  border-radius: 20px 20px 6px 20px;
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255,255,255,0.3);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.4), 0 4px 14px rgba(124,58,237,0.2);
}
.variant-y2k .bubble.them {
  background: rgba(255,255,255,0.08);
  color: #fff;
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 20px 20px 20px 6px;
  backdrop-filter: blur(20px);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.1);
}
.variant-y2k .reaction { background: rgba(255,255,255,0.08); border: 1px solid rgba(255,255,255,0.1); backdrop-filter: blur(10px); }
.variant-y2k .reaction.mine { background: rgba(199,210,254,0.25); border-color: rgba(199,210,254,0.5); }
.variant-y2k .event-pill { background: rgba(255,255,255,0.08); color: rgba(255,255,255,0.8); border: 1px solid rgba(255,255,255,0.1); backdrop-filter: blur(10px); }
.variant-y2k .event-pill.rejected { background: rgba(251,113,133,0.15); color: #fda4af; border-color: rgba(251,113,133,0.3); }
.variant-y2k .composer { background: rgba(255,255,255,0.02); border-top: 1px solid rgba(255,255,255,0.08); }
.variant-y2k .composer-box { background: rgba(255,255,255,0.06); border: 1px solid rgba(255,255,255,0.1); backdrop-filter: blur(10px); }
.variant-y2k .composer-btn { background: linear-gradient(135deg, #e0e7ff, #c4b5fd); color: #312e81; border: 1px solid rgba(255,255,255,0.3); box-shadow: inset 0 1px 0 rgba(255,255,255,0.4); }
.variant-y2k .presence { border-color: #0a0a1f; }


/* ================= VARIANT 4: CYBERPUNK NEON ================= */
.variant-cyber {
  --bg: #05050a;
  --fg: #e0e0e8;
  --fg-muted: #6b7280;
  --neon-cyan: #00f0ff;
  --neon-magenta: #ff00aa;
  --neon-lime: #b6ff3d;
  color: var(--fg);
  font-family: 'JetBrains Mono', 'Courier New', monospace;
  background:
    repeating-linear-gradient(0deg, transparent 0, transparent 2px, rgba(0,240,255,0.015) 2px, rgba(0,240,255,0.015) 4px),
    radial-gradient(ellipse at center, #0c0c18 0%, #05050a 70%);
}
.variant-cyber .app-window {
  background: #08080f;
  border: 1px solid rgba(0,240,255,0.2);
  box-shadow: 0 0 40px rgba(255,0,170,0.15), 0 0 80px rgba(0,240,255,0.08);
}
.variant-cyber .window-bar { background: #05050a; border-bottom: 1px solid rgba(0,240,255,0.15); }
.variant-cyber .window-bar .title { color: var(--neon-cyan); font-size: 11px; letter-spacing: 0.15em; text-transform: uppercase; }
.variant-cyber .window-bar .title::before { content: "// "; opacity: 0.5; }
.variant-cyber .top-nav { background: #05050a; border-bottom: 1px solid rgba(0,240,255,0.15); }
.variant-cyber .nav-brand { color: var(--neon-cyan); text-transform: uppercase; letter-spacing: 0.1em; font-size: 13px; text-shadow: 0 0 10px rgba(0,240,255,0.5); }
.variant-cyber .nav-tab { color: var(--fg-muted); text-transform: uppercase; letter-spacing: 0.1em; font-size: 11px; font-weight: 500; border: 1px solid transparent; }
.variant-cyber .nav-tab:hover { color: var(--neon-cyan); border-color: rgba(0,240,255,0.2); }
.variant-cyber .nav-tab.active { color: var(--neon-lime); border-color: var(--neon-lime); background: rgba(182,255,61,0.05); box-shadow: 0 0 10px rgba(182,255,61,0.2); }
.variant-cyber .nav-tab.active::before { content: "> "; }
.variant-cyber .nav-user { border: 1px solid rgba(0,240,255,0.15); }
.variant-cyber .chat-list { background: #05050a; border-right: 1px solid rgba(0,240,255,0.15); }
.variant-cyber .chat-list-title { color: var(--neon-cyan); text-transform: uppercase; letter-spacing: 0.15em; font-size: 11px; }
.variant-cyber .chat-list-title::before { content: "[ "; opacity: 0.5; }
.variant-cyber .chat-list-title::after { content: " ]"; opacity: 0.5; }
.variant-cyber .chat-search { background: #0c0c18; border: 1px solid rgba(0,240,255,0.15); color: var(--fg); }
.variant-cyber .chat-item:hover { background: rgba(0,240,255,0.04); }
.variant-cyber .chat-item.active { background: rgba(0,240,255,0.06); border-left: 2px solid var(--neon-cyan); padding-left: 10px; }
.variant-cyber .chat-item-name { color: var(--fg); }
.variant-cyber .avatar {
  background: #0c0c18;
  border: 1px solid var(--neon-cyan);
  color: var(--neon-cyan);
  border-radius: 4px;
  font-family: 'JetBrains Mono', monospace;
  text-shadow: 0 0 8px rgba(0,240,255,0.5);
}
.variant-cyber .avatar[data-color="violet"] { border-color: var(--neon-magenta); color: var(--neon-magenta); text-shadow: 0 0 8px rgba(255,0,170,0.5); }
.variant-cyber .avatar[data-color="amber"] { border-color: var(--neon-lime); color: var(--neon-lime); text-shadow: 0 0 8px rgba(182,255,61,0.5); }
.variant-cyber .avatar[data-color="rose"] { border-color: #ff5500; color: #ff5500; text-shadow: 0 0 8px rgba(255,85,0,0.5); }
.variant-cyber .avatar[data-color="teal"] { border-color: var(--neon-cyan); color: var(--neon-cyan); }
.variant-cyber .chat-header { background: #05050a; border-bottom: 1px solid rgba(0,240,255,0.15); }
.variant-cyber .chat-header-name { color: var(--neon-cyan); font-family: 'JetBrains Mono', monospace; }
.variant-cyber .chat-header-name::before { content: "@"; opacity: 0.5; }
.variant-cyber .icon-btn { color: var(--neon-cyan); }
.variant-cyber .icon-btn:hover { background: rgba(0,240,255,0.1); }
.variant-cyber .bubble.me {
  background: transparent;
  color: var(--neon-magenta);
  border: 1px solid var(--neon-magenta);
  border-radius: 4px;
  box-shadow: 0 0 15px rgba(255,0,170,0.15), inset 0 0 15px rgba(255,0,170,0.05);
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
}
.variant-cyber .bubble.them {
  background: transparent;
  color: var(--neon-cyan);
  border: 1px solid var(--neon-cyan);
  border-radius: 4px;
  box-shadow: 0 0 15px rgba(0,240,255,0.15), inset 0 0 15px rgba(0,240,255,0.05);
  font-family: 'JetBrains Mono', monospace;
  font-size: 13px;
}
.variant-cyber .bubble .ts { color: rgba(255,255,255,0.4); font-size: 9px; letter-spacing: 0.1em; }
.variant-cyber .reaction { background: #0c0c18; border: 1px solid rgba(0,240,255,0.2); border-radius: 2px; color: var(--neon-lime); }
.variant-cyber .reaction.mine { border-color: var(--neon-lime); box-shadow: 0 0 10px rgba(182,255,61,0.2); }
.variant-cyber .event-pill { background: transparent; border: 1px dashed var(--neon-lime); color: var(--neon-lime); border-radius: 2px; text-transform: uppercase; letter-spacing: 0.1em; font-size: 10px; }
.variant-cyber .event-pill.rejected { border-color: var(--neon-magenta); color: var(--neon-magenta); }
.variant-cyber .composer { background: #05050a; border-top: 1px solid rgba(0,240,255,0.15); }
.variant-cyber .composer-box { background: #0c0c18; border: 1px solid rgba(0,240,255,0.2); border-radius: 4px; }
.variant-cyber .composer-box::before { content: ">"; color: var(--neon-lime); margin-right: 6px; font-weight: bold; }
.variant-cyber .composer-btn { background: var(--neon-lime); color: #05050a; border-radius: 4px; box-shadow: 0 0 15px rgba(182,255,61,0.3); }
.variant-cyber .presence { border-color: #08080f; }


/* ================= VARIANT 5: WARM SOFT ================= */
.variant-warm {
  --bg: #f7f2e9;
  --bg-2: #efe6d4;
  --bg-3: #fdfaf3;
  --fg: #3d2e1f;
  --fg-muted: #8a7560;
  --accent: #c75d3a;
  --accent-2: #e8a87c;
  --line: rgba(61,46,31,0.1);
  background: var(--bg);
  color: var(--fg);
  font-family: 'Inter', sans-serif;
}
.variant-warm .nav-brand { font-family: 'Fraunces', 'Playfair Display', serif; font-weight: 700; font-size: 20px; letter-spacing: -0.02em; }
.variant-warm .chat-header-name { font-family: 'Fraunces', 'Playfair Display', serif; font-size: 17px; }
.variant-warm .chat-list-title { font-family: 'Fraunces', serif; font-size: 16px; font-weight: 600; }
.variant-warm .app-window { background: var(--bg-3); box-shadow: 0 20px 60px rgba(61,46,31,0.12); border: 1px solid var(--line); }
.variant-warm .window-bar { background: var(--bg-2); border-bottom: 1px solid var(--line); }
.variant-warm .window-bar .title { color: var(--fg-muted); font-weight: 500; }
.variant-warm .top-nav { background: var(--bg-3); border-bottom: 1px solid var(--line); }
.variant-warm .nav-tab { color: var(--fg-muted); font-weight: 500; border-radius: 999px; }
.variant-warm .nav-tab:hover { background: var(--bg-2); color: var(--fg); }
.variant-warm .nav-tab.active { background: var(--accent); color: #fff; }
.variant-warm .nav-user { background: var(--bg-2); border-radius: 999px; }
.variant-warm .chat-list { background: var(--bg-2); }
.variant-warm .chat-search { background: var(--bg-3); border: 1px solid var(--line); color: var(--fg); border-radius: 999px; }
.variant-warm .chat-item { border-radius: 14px; }
.variant-warm .chat-item:hover { background: rgba(255,255,255,0.5); }
.variant-warm .chat-item.active { background: var(--bg-3); box-shadow: 0 2px 8px rgba(61,46,31,0.06); }
.variant-warm .avatar { background: #e8a87c; color: #7c3a1e; font-family: 'Fraunces', serif; font-weight: 700; }
.variant-warm .avatar[data-color="violet"] { background: #bfa4c9; color: #4a2a5c; }
.variant-warm .avatar[data-color="amber"] { background: #e8c87c; color: #5c3e1a; }
.variant-warm .avatar[data-color="rose"] { background: #e8a4a4; color: #5c1e1e; }
.variant-warm .avatar[data-color="teal"] { background: #a4c9bf; color: #1e4a3e; }
.variant-warm .chat-header { background: var(--bg-3); border-bottom: 1px solid var(--line); }
.variant-warm .icon-btn:hover { background: var(--bg-2); }
.variant-warm .messages { background: var(--bg-3); }
.variant-warm .bubble.me { background: var(--accent); color: #fff; border-radius: 20px 20px 6px 20px; }
.variant-warm .bubble.them { background: var(--bg-2); color: var(--fg); border-radius: 20px 20px 20px 6px; }
.variant-warm .reaction { background: var(--bg-2); border: 1px solid var(--line); }
.variant-warm .reaction.mine { background: var(--accent); color: #fff; }
.variant-warm .event-pill { background: var(--bg-2); color: var(--fg-muted); border: 1px solid var(--line); }
.variant-warm .event-pill.rejected { background: rgba(199,93,58,0.1); color: var(--accent); }
.variant-warm .composer { background: var(--bg-3); border-top: 1px solid var(--line); }
.variant-warm .composer-box { background: var(--bg-2); border-radius: 999px; padding-left: 16px; }
.variant-warm .composer-btn { background: var(--accent); color: #fff; border-radius: 50%; }
.variant-warm .presence { border-color: var(--bg-3); }


/* ================= VARIANT 6: BRUTAL GAMING ================= */
.variant-brutal {
  --bg: #0d0d0d;
  --bg-2: #161616;
  --bg-3: #1a1a1a;
  --fg: #ffffff;
  --fg-muted: #808080;
  --lime: #d4ff3d;
  --line: #2a2a2a;
  background: var(--bg);
  color: var(--fg);
  font-family: 'Inter', sans-serif;
}
.variant-brutal .nav-brand {
  font-family: 'Archivo Black', 'Inter', sans-serif;
  font-weight: 900;
  font-size: 22px;
  text-transform: uppercase;
  letter-spacing: -0.03em;
}
.variant-brutal .chat-header-name { font-weight: 800; font-size: 16px; text-transform: uppercase; letter-spacing: -0.01em; }
.variant-brutal .chat-list-title { font-weight: 900; font-size: 18px; text-transform: uppercase; letter-spacing: -0.02em; }
.variant-brutal .app-window { background: var(--bg); border: 2px solid var(--lime); border-radius: 0; box-shadow: 12px 12px 0 var(--lime); }
.variant-brutal .window-bar { background: var(--bg); border-bottom: 2px solid var(--lime); }
.variant-brutal .window-bar .title { color: var(--lime); font-weight: 800; text-transform: uppercase; letter-spacing: 0.1em; font-size: 11px; }
.variant-brutal .top-nav { background: var(--bg); border-bottom: 2px solid var(--line); }
.variant-brutal .nav-tab { color: var(--fg-muted); font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; font-size: 12px; border-radius: 0; border: 2px solid transparent; }
.variant-brutal .nav-tab:hover { color: var(--fg); background: var(--bg-2); }
.variant-brutal .nav-tab.active { background: var(--lime); color: #000; }
.variant-brutal .nav-user { background: var(--bg-2); border: 2px solid var(--line); border-radius: 0; }
.variant-brutal .chat-list { background: var(--bg); border-right: 2px solid var(--line); }
.variant-brutal .chat-search { background: var(--bg-2); border: 2px solid var(--line); color: var(--fg); border-radius: 0; font-weight: 500; }
.variant-brutal .chat-item { border-radius: 0; border-left: 4px solid transparent; }
.variant-brutal .chat-item:hover { background: var(--bg-2); }
.variant-brutal .chat-item.active { background: var(--bg-2); border-left-color: var(--lime); }
.variant-brutal .chat-item-name { font-weight: 800; text-transform: uppercase; font-size: 13px; letter-spacing: -0.01em; }
.variant-brutal .avatar { background: var(--lime); color: #000; border-radius: 0; font-weight: 900; font-family: 'Archivo Black', sans-serif; }
.variant-brutal .avatar[data-color="violet"] { background: #a78bfa; }
.variant-brutal .avatar[data-color="amber"] { background: #fbbf24; }
.variant-brutal .avatar[data-color="rose"] { background: #fb7185; }
.variant-brutal .avatar[data-color="teal"] { background: #2dd4bf; }
.variant-brutal .chat-header { background: var(--bg); border-bottom: 2px solid var(--line); }
.variant-brutal .icon-btn { border-radius: 0; border: 2px solid var(--line); }
.variant-brutal .icon-btn:hover { background: var(--lime); color: #000; border-color: var(--lime); }
.variant-brutal .bubble.me { background: var(--lime); color: #000; border-radius: 0; font-weight: 600; border: 2px solid #000; box-shadow: 4px 4px 0 #fff; }
.variant-brutal .bubble.them { background: var(--fg); color: #000; border-radius: 0; font-weight: 600; border: 2px solid var(--fg); box-shadow: 4px 4px 0 var(--lime); }
.variant-brutal .bubble .ts { color: rgba(0,0,0,0.6); font-weight: 700; font-size: 10px; text-transform: uppercase; }
.variant-brutal .reaction { background: var(--bg-2); border: 2px solid var(--line); border-radius: 0; font-weight: 700; }
.variant-brutal .reaction.mine { background: var(--lime); color: #000; border-color: var(--lime); }
.variant-brutal .event-pill { background: var(--bg-2); border: 2px solid var(--line); border-radius: 0; text-transform: uppercase; letter-spacing: 0.05em; font-weight: 800; font-size: 11px; }
.variant-brutal .event-pill.rejected { border-color: #fb7185; color: #fb7185; }
.variant-brutal .composer { background: var(--bg); border-top: 2px solid var(--line); }
.variant-brutal .composer-box { background: var(--bg-2); border: 2px solid var(--line); border-radius: 0; }
.variant-brutal .composer-btn { background: var(--lime); color: #000; border-radius: 0; font-weight: 900; }
.variant-brutal .presence { border-color: var(--bg); border-width: 3px; }

/* Profile card & call overlay — inherit from variant */
.variant-clean .profile-card { background: #fff; border: 1px solid var(--line); }
.variant-clean .profile-card-banner { background: linear-gradient(135deg, #e5e5e5, #d4d4d4); }
.variant-clean .profile-card-avatar { border-color: #fff; }
.variant-clean .profile-card-meta { border-top-color: var(--line); color: var(--fg-muted); }
.variant-clean .call-overlay { background: #fff; border: 1px solid var(--line); color: var(--fg); }

.variant-playful .profile-card { background: linear-gradient(180deg, #2a1a48, #1a1625); border: 1px solid rgba(255,255,255,0.08); }
.variant-playful .profile-card-banner { background: linear-gradient(135deg, #a78bfa, #f472b6); }
.variant-playful .profile-card-avatar { border-color: #2a1a48; }
.variant-playful .call-overlay { background: linear-gradient(135deg, #2a1a48, #1a1625); border: 1px solid rgba(167,139,250,0.3); }

.variant-y2k .profile-card { background: rgba(255,255,255,0.08); backdrop-filter: blur(30px); border: 1px solid rgba(255,255,255,0.15); }
.variant-y2k .profile-card-banner { background: linear-gradient(135deg, #c4b5fd, #f9a8d4); }
.variant-y2k .profile-card-avatar { border-color: #1a1a2e; }
.variant-y2k .call-overlay { background: rgba(255,255,255,0.08); backdrop-filter: blur(30px); border: 1px solid rgba(255,255,255,0.15); }

.variant-cyber .profile-card { background: #0c0c18; border: 1px solid var(--neon-cyan); box-shadow: 0 0 30px rgba(0,240,255,0.2); }
.variant-cyber .profile-card-banner { background: repeating-linear-gradient(90deg, #00f0ff, #00f0ff 2px, transparent 2px, transparent 8px), linear-gradient(135deg, #ff00aa 0%, #00f0ff 100%); }
.variant-cyber .profile-card-avatar { border-color: #0c0c18; border-radius: 4px; }
.variant-cyber .call-overlay { background: #0c0c18; border: 1px solid var(--neon-lime); box-shadow: 0 0 30px rgba(182,255,61,0.2); }

.variant-warm .profile-card { background: var(--bg-3); border: 1px solid var(--line); color: var(--fg); }
.variant-warm .profile-card-banner { background: linear-gradient(135deg, #e8a87c, #c75d3a); }
.variant-warm .profile-card-avatar { border-color: var(--bg-3); }
.variant-warm .profile-card-meta { border-top-color: var(--line); }
.variant-warm .call-overlay { background: var(--bg-3); border: 1px solid var(--line); color: var(--fg); }

.variant-brutal .profile-card { background: var(--bg); border: 2px solid var(--lime); border-radius: 0; box-shadow: 8px 8px 0 var(--lime); }
.variant-brutal .profile-card-banner { background: var(--lime); }
.variant-brutal .profile-card-avatar { border-color: var(--bg); border-radius: 0; border-width: 3px; }
.variant-brutal .profile-card-meta { border-top-color: var(--line); }
.variant-brutal .call-overlay { background: var(--bg); border: 2px solid var(--lime); border-radius: 0; box-shadow: 6px 6px 0 var(--lime); }


/* Typing indicator */
.typing { display: inline-flex; gap: 3px; padding: 4px 2px; }
.typing span { width: 6px; height: 6px; border-radius: 50%; background: currentColor; opacity: 0.4; animation: typingDot 1.3s infinite; }
.typing span:nth-child(2) { animation-delay: 0.15s; }
.typing span:nth-child(3) { animation-delay: 0.3s; }
@keyframes typingDot {
  0%, 60%, 100% { transform: translateY(0); opacity: 0.4; }
  30% { transform: translateY(-4px); opacity: 1; }
}

/* Tweaks panel */
.tweaks-panel {
  position: fixed;
  bottom: 20px;
  right: 20px;
  width: 280px;
  background: rgba(20,20,24,0.95);
  backdrop-filter: blur(20px);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 14px;
  padding: 16px;
  z-index: 200;
  color: #fff;
  font-family: 'Inter', system-ui, sans-serif;
  box-shadow: 0 20px 50px rgba(0,0,0,0.5);
  display: none;
}
.tweaks-panel.open { display: block; }
.tweaks-panel h3 { font-size: 12px; text-transform: uppercase; letter-spacing: 0.1em; opacity: 0.7; margin-bottom: 14px; font-weight: 600; }
.tweaks-row { margin-bottom: 12px; }
.tweaks-row label { display: block; font-size: 11px; opacity: 0.6; margin-bottom: 6px; }
.tweaks-row input[type="color"] { width: 100%; height: 34px; border-radius: 8px; background: transparent; border: 1px solid rgba(255,255,255,0.1); cursor: pointer; }
.tweaks-row input[type="range"] { width: 100%; }
.tweaks-row select { width: 100%; background: rgba(255,255,255,0.05); border: 1px solid rgba(255,255,255,0.1); color: #fff; padding: 8px; border-radius: 8px; font-size: 12px; }
