/* ==========================================================================
   DESIGN SYSTEM & VARIABLES â€” PREMIUM MASCULINE REDESIGN
   ========================================================================== */
:root {
  /* === Backgrounds === */
  --bg-main: #05070d;
  --bg-sidebar: rgba(6, 8, 16, 0.98);
  --bg-card: rgba(255, 255, 255, 0.025);
  --bg-card-hover: rgba(255, 255, 255, 0.048);
  --bg-modal: rgba(5, 7, 13, 0.99);
  --bg-input: rgba(0, 0, 0, 0.4);

  /* === Borders === */
  --border-color: rgba(255, 255, 255, 0.06);
  --border-glow: rgba(59, 158, 245, 0.22);
  --border-hover: rgba(255, 255, 255, 0.12);
  --border-focus: rgba(59, 158, 245, 0.55);

  /* === MASCULINE PREMIUM COLOR PALETTE === */

  /* PRIMARY: Electric Azure Blue â€” technical, powerful, authoritative */
  --color-primary: hsl(213, 90%, 62%);
  --color-primary-dark: hsl(213, 90%, 48%);
  --color-primary-light: hsl(213, 90%, 74%);
  --color-primary-glow: hsla(213, 90%, 62%, 0.18);
  --color-primary-rgb: 59, 158, 245;

  /* SECONDARY: Deep cobalt (darker blue for depth, NO PINK) */
  --color-secondary: hsl(225, 85%, 58%);
  --color-secondary-dark: hsl(225, 85%, 44%);
  --color-secondary-glow: hsla(225, 85%, 58%, 0.16);
  --color-secondary-rgb: 51, 100, 232;

  /* ACCENT: Premium Amber Gold â€” exclusive, prestigious */
  --color-accent: hsl(40, 92%, 54%);
  --color-accent-dark: hsl(35, 88%, 44%);
  --color-accent-glow: hsla(40, 92%, 54%, 0.22);
  --color-accent-rgb: 240, 168, 18;

  /* States */
  --color-success: hsl(155, 68%, 50%);
  --color-success-glow: hsla(155, 68%, 50%, 0.2);
  --color-warning: hsl(38, 92%, 54%);
  --color-warning-glow: hsla(38, 92%, 54%, 0.2);
  --color-danger: hsl(0, 75%, 60%);
  --color-danger-glow: hsla(0, 75%, 60%, 0.2);

  /* === Typography === */
  --text-primary: #e8edf5;
  --text-secondary: #8899b4;
  --text-muted: #4a5a72;

  /* === Fonts === */
  --font-main: 'Plus Jakarta Sans', sans-serif;
  --font-display: 'Outfit', sans-serif;

  /* === Shadows === */
  --shadow-sm: 0 2px 10px rgba(0, 0, 0, 0.35);
  --shadow-md: 0 8px 32px rgba(0, 0, 0, 0.5);
  --shadow-lg: 0 20px 64px rgba(0, 0, 0, 0.7);
  --shadow-xl: 0 32px 80px rgba(0, 0, 0, 0.8);
  --shadow-glow-primary: 0 0 28px hsla(213, 90%, 62%, 0.4);
  --shadow-glow-secondary: 0 0 24px hsla(225, 85%, 58%, 0.35);
  --shadow-glow-accent: 0 0 24px hsla(40, 92%, 54%, 0.4);
  /* Legacy aliases */
  --shadow-glow-cyan: 0 0 28px hsla(213, 90%, 62%, 0.4);
  --shadow-glow-purple: 0 0 24px hsla(225, 85%, 58%, 0.35);
  --shadow-glow-green: 0 0 20px hsla(155, 68%, 50%, 0.35);

  /* === Transitions === */
  --transition-fast: 0.16s cubic-bezier(0.4, 0, 0.2, 1);
  --transition-normal: 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  --transition-bounce: 0.38s cubic-bezier(0.34, 1.56, 0.64, 1);

  /* === Glassmorphism === */
  --glass-blur: blur(24px);
  --glass-blur-sm: blur(12px);
}

/* ==========================================================================
   RESET & GLOBAL STYLES
   ========================================================================== */
html {
  scroll-behavior: smooth;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: var(--font-main);
  background: #07090f;
  background-image:
    radial-gradient(ellipse 80% 60% at 20% -10%, hsla(250, 84%, 72%, 0.08) 0%, transparent 60%),
    radial-gradient(ellipse 60% 50% at 80% 110%, hsla(316, 82%, 67%, 0.07) 0%, transparent 55%),
    radial-gradient(ellipse 40% 40% at 50% 50%, rgba(255,255,255,0.01) 0%, transparent 100%);
  color: var(--text-primary);
  min-height: 100vh;
  overflow-x: hidden;
  position: relative;
  display: flex;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Scrollbar Customization */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: var(--bg-main);
}

::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.06);
  border-radius: 10px;
  border: 2px solid var(--bg-main);
}

::-webkit-scrollbar-thumb:hover {
  background: var(--color-primary-glow);
}

/* ==========================================================================
   BACKGROUND GLOW DECORATIONS
   ========================================================================== */
.bg-glow {
  position: fixed;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  pointer-events: none;
  filter: blur(140px);
  z-index: -1;
  opacity: 0.22;
  mix-blend-mode: screen;
}

.bg-glow-1 {
  background: radial-gradient(circle, hsla(250, 84%, 72%, 0.8) 0%, rgba(0,0,0,0) 70%);
  top: -15%;
  left: 10%;
  width: 600px;
  height: 600px;
  opacity: 0.14;
  animation: floatGlow1 22s ease-in-out infinite alternate;
}

.bg-glow-2 {
  background: radial-gradient(circle, hsla(316, 82%, 67%, 0.8) 0%, rgba(0,0,0,0) 70%);
  bottom: -10%;
  right: 0%;
  width: 500px;
  height: 500px;
  opacity: 0.12;
  animation: floatGlow2 28s ease-in-out infinite alternate;
}

.bg-glow-3 {
  background: radial-gradient(circle, hsla(38, 95%, 58%, 0.7) 0%, rgba(0,0,0,0) 70%);
  top: 40%;
  left: 50%;
  width: 300px;
  height: 300px;
  opacity: 0.06;
  animation: floatGlow3 25s ease-in-out infinite alternate;
}

@keyframes floatGlow1 {
  0% { transform: translate(0, 0) scale(1); }
  50% { transform: translate(60px, -40px) scale(1.1); }
  100% { transform: translate(120px, 20px) scale(0.95); }
}

@keyframes floatGlow2 {
  0% { transform: translate(0, 0) scale(1); }
  50% { transform: translate(-80px, 60px) scale(1.15); }
  100% { transform: translate(-140px, -20px) scale(0.9); }
}

@keyframes floatGlow3 {
  0% { transform: translate(0, 0) scale(1); }
  100% { transform: translate(50px, 80px) scale(1.08); }
}

/* ==========================================================================
   LAYOUT STRUCTURE
   ========================================================================== */
.app-container {
  display: flex;
  width: 100vw;
  min-height: 100vh;
  z-index: 1;
}

/* ==========================================================================
   SIDEBAR STYLES
   ========================================================================== */
.sidebar {
  width: 290px;
  background: var(--bg-sidebar);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border-right: 1px solid var(--border-color);
  padding: 2.2rem 1.6rem;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  position: relative;
  z-index: 10;
}

.sidebar-brand {
  display: flex;
  align-items: center;
  gap: 1.1rem;
  margin-bottom: 2.8rem;
}

.brand-logo {
  width: 44px;
  height: 44px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 0 20px hsla(250, 84%, 72%, 0.4), 0 4px 12px rgba(0,0,0,0.4);
  transition: transform var(--transition-normal), box-shadow var(--transition-normal);
  position: relative;
  overflow: hidden;
}

.brand-logo::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,0.15) 0%, rgba(255,255,255,0) 60%);
  border-radius: 14px;
  z-index: 1;
}

.sidebar-brand:hover .brand-logo {
  transform: rotate(8deg) scale(1.06);
  box-shadow: 0 0 30px hsla(250, 84%, 72%, 0.55), 0 6px 18px rgba(0,0,0,0.4);
}

.brand-icon {
  font-size: 1.4rem;
  color: white;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.brand-info h2 {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 800;
  letter-spacing: 0.5px;
  background: linear-gradient(to right, #ffffff 20%, #c4b8ff 60%, var(--color-primary) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin: 0;
}

.brand-info span {
  font-size: 0.72rem;
  color: var(--text-secondary);
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-weight: 600;
  display: block;
  margin-top: 0.15rem;
}

/* Guild Selector dropdown */
.guild-selector-container {
  margin-bottom: 2.2rem;
}

.guild-selector-container label {
  display: block;
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--text-muted);
  text-transform: uppercase;
  margin-bottom: 0.6rem;
  letter-spacing: 1px;
}

.guild-selector-container label i {
  margin-right: 0.4rem;
  color: var(--color-primary);
}

.select-wrapper {
  position: relative;
}

#guild-select {
  width: 100%;
  padding: 0.8rem 2.5rem 0.8rem 1.1rem;
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  color: var(--text-primary);
  font-family: var(--font-main);
  font-size: 0.92rem;
  font-weight: 500;
  outline: none;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  transition: var(--transition-fast);
  backdrop-filter: var(--glass-blur);
}

#guild-select:hover {
  background: rgba(255, 255, 255, 0.03);
  border-color: var(--color-primary-glow);
}

#guild-select:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 15px var(--color-primary-glow);
  background: rgba(0, 0, 0, 0.4);
}

.select-chevron {
  position: absolute;
  right: 1.1rem;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  color: var(--text-secondary);
  font-size: 0.85rem;
  transition: transform var(--transition-fast);
}

#guild-select:focus + .select-chevron {
  transform: translateY(-50%) rotate(180deg);
  color: var(--color-primary);
}

/* Navigation Menu */
.sidebar-menu {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  flex-grow: 1;
}

.menu-item {
  display: flex;
  align-items: center;
  gap: 1.1rem;
  padding: 0.8rem 1.2rem;
  color: var(--text-secondary);
  text-decoration: none;
  border-radius: 12px;
  font-weight: 500;
  font-size: 0.95rem;
  transition: var(--transition-normal);
  border-left: 3px solid transparent;
  position: relative;
  overflow: hidden;
}

.menu-item i {
  font-size: 1.15rem;
  transition: transform var(--transition-fast);
}

.menu-item:hover {
  color: var(--text-primary);
  background: rgba(59, 158, 245, 0.06);
  border-left-color: rgba(59, 158, 245, 0.3);
  padding-left: 1.35rem;
}

.menu-item:hover i {
  transform: scale(1.12) translateX(1px);
  color: var(--color-primary);
}

.menu-item.active {
  color: var(--text-primary);
  background: linear-gradient(90deg, rgba(59, 158, 245, 0.12) 0%, rgba(59, 158, 245, 0.02) 100%);
  border-left-color: var(--color-primary);
  font-weight: 600;
  padding-left: 1.35rem;
}

.menu-item.active i {
  color: var(--color-primary);
  filter: drop-shadow(0 0 6px hsla(213, 90%, 62%, 0.7));
}

/* System active status dot in sidebar */
.menu-item {
  justify-content: flex-start;
}

.menu-item > span:first-of-type {
  flex: 1;
}

.system-status-dot {
  display: none;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: transparent;
  flex-shrink: 0;
  margin-left: auto;
  transition: background 0.3s ease, box-shadow 0.3s ease;
}

.system-status-dot.active {
  display: inline-block;
  background: #23d160;
  box-shadow: 0 0 6px rgba(35, 209, 96, 0.7);
}

/* Bot Status Badge */
.bot-status-card {
  margin-top: auto;
  padding: 1.1rem;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.01) 0%, rgba(255, 255, 255, 0.02) 100%);
  border: 1px solid var(--border-color);
  border-radius: 14px;
  display: flex;
  align-items: center;
  gap: 0.85rem;
  box-shadow: var(--shadow-sm);
  transition: border-color var(--transition-fast);
}

.bot-status-card:hover {
  border-color: rgba(255, 255, 255, 0.1);
}

.status-indicator {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  position: relative;
}

.status-indicator.online {
  background-color: var(--color-success);
  box-shadow: 0 0 10px var(--color-success);
}

.status-indicator.online::after {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: var(--color-success);
  opacity: 0.6;
  animation: pulseStatus 2.2s cubic-bezier(0.24, 0, 0.38, 1) infinite;
}

@keyframes pulseStatus {
  0% { transform: scale(1); opacity: 0.7; }
  100% { transform: scale(2.8); opacity: 0; }
}

.status-info h4 {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: 0.15rem;
}

.status-info p {
  font-size: 0.75rem;
  color: var(--text-muted);
  font-weight: 500;
}

/* ==========================================================================
   MAIN CONTENT AREA
   ========================================================================== */
.main-content {
  flex-grow: 1;
  padding: 2.8rem 3.5rem;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  gap: 2.6rem;
  z-index: 1;
}

/* Header */
.main-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header-title h1 {
  font-family: var(--font-display);
  font-size: 2.3rem;
  font-weight: 800;
  margin-bottom: 0.35rem;
  letter-spacing: -0.75px;
  background: linear-gradient(135deg, #ffffff 30%, #a5b4fc 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.header-title p {
  color: var(--text-secondary);
  font-size: 0.98rem;
  font-weight: 500;
}

.server-badge {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  padding: 0.6rem 1.2rem;
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid var(--border-color);
  border-radius: 50px;
  backdrop-filter: var(--glass-blur);
  box-shadow: var(--shadow-sm);
  transition: transform var(--transition-fast), border-color var(--transition-fast);
}

.server-badge:hover {
  transform: translateY(-2px);
  border-color: var(--color-primary-glow);
}

.server-badge-icon {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--bg-card);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border: 1.5px solid var(--border-color);
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.2);
}

.server-badge-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.server-badge-icon i {
  color: var(--color-primary);
  font-size: 0.9rem;
}

#server-badge-name {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--text-primary);
}

/* ==========================================================================
   SERVER STATISTICS GRID
   ========================================================================== */
/* ==========================================================================
   SERVER STATISTICS GRID
   ========================================================================== */
.stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1.6rem;
}

.stat-card {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: 18px;
  padding: 1.4rem 1.6rem;
  display: flex;
  align-items: center;
  gap: 1.4rem;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  transition: var(--transition-normal);
  position: relative;
  overflow: hidden;
}

.stat-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, rgba(255,255,255,0.01) 0%, rgba(255,255,255,0.03) 100%);
  pointer-events: none;
}

.stat-card:hover {
  transform: translateY(-5px);
  border-color: var(--color-primary-glow);
  box-shadow: 0 12px 35px rgba(0, 217, 255, 0.08), inset 0 0 10px rgba(0, 217, 255, 0.02);
}

.stat-icon {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  flex-shrink: 0;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
  transition: transform var(--transition-fast);
}

.stat-card:hover .stat-icon {
  transform: scale(1.08) rotate(3deg);
}

.stat-icon.circulation {
  background: rgba(16, 185, 129, 0.08);
  color: var(--color-success);
  border: 1px solid var(--color-success-glow);
  box-shadow: 0 0 15px rgba(16, 185, 129, 0.15);
}

.stat-icon.average {
  background: rgba(0, 217, 255, 0.08);
  color: var(--color-primary);
  border: 1px solid var(--color-primary-glow);
  box-shadow: 0 0 15px rgba(0, 217, 255, 0.15);
}

.stat-icon.accounts {
  background: rgba(167, 139, 250, 0.08);
  color: var(--color-secondary);
  border: 1px solid var(--color-secondary-glow);
  box-shadow: 0 0 15px rgba(167, 139, 250, 0.15);
}

.stat-icon.items {
  background: rgba(245, 158, 11, 0.08);
  color: var(--color-warning);
  border: 1px solid rgba(245, 158, 11, 0.2);
  box-shadow: 0 0 15px rgba(245, 158, 11, 0.15);
}

.stat-info h3 {
  font-size: 0.76rem;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--text-muted);
  letter-spacing: 0.8px;
  margin-bottom: 0.35rem;
}

.stat-value {
  font-family: var(--font-display);
  font-size: 1.6rem;
  font-weight: 800;
  color: #ffffff;
}

/* ==========================================================================
   CONTENT PANELS & TABS
   ========================================================================== */
.content-panel {
  background: transparent;
  border: none;
  box-shadow: none;
  padding: 0;
  min-height: 0;
  position: relative;
  overflow: visible;
}

.content-panel::after {
  display: none;
}

.tab-panel {
  display: none;
  animation: fadeIn 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}

.tab-panel.active {
  display: block;
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateY(12px); }
  to { opacity: 1; transform: translateY(0); }
}

/* ==========================================================================
   LEADERBOARD: PODIUM (1st, 2nd, 3rd)
   ========================================================================== */
.leaderboard-podium {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 2.2rem;
  margin-bottom: 4rem;
  padding-top: 2rem;
}

.podium-place {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  cursor: pointer;
  transition: transform var(--transition-normal);
}

.podium-place:hover {
  transform: translateY(-8px);
}

.podium-avatar-wrapper {
  position: relative;
  margin-bottom: 1.1rem;
  transition: transform var(--transition-normal);
}

.podium-place:hover .podium-avatar-wrapper {
  transform: scale(1.04);
}

.podium-avatar {
  width: 84px;
  height: 84px;
  border-radius: 50%;
  object-fit: cover;
  border: 3.5px solid #64748b;
  box-shadow: var(--shadow-md);
  background: #0f172a;
  transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.podium-crown {
  position: absolute;
  top: -26px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 2.1rem;
  filter: drop-shadow(0 4px 10px rgba(0,0,0,0.5));
}

.podium-rank-badge {
  position: absolute;
  bottom: -6px;
  left: 50%;
  transform: translateX(-50%);
  background: #090d16;
  border-radius: 50px;
  padding: 0.2rem 0.8rem;
  font-size: 0.75rem;
  font-weight: 800;
  border: 1.5px solid var(--border-color);
  color: #ffffff;
  box-shadow: 0 2px 6px rgba(0,0,0,0.3);
}

.podium-name {
  font-family: var(--font-display);
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: 0.35rem;
  max-width: 140px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: center;
  color: #ffffff;
}

.podium-money {
  font-size: 0.92rem;
  font-weight: 800;
  display: flex;
  align-items: center;
  gap: 0.3rem;
  margin-bottom: 0.8rem;
}

.podium-money img {
  width: 15px;
  height: 15px;
  object-fit: contain;
}

.podium-pedestal {
  width: 130px;
  border-radius: 16px 16px 4px 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.1rem;
  font-weight: 900;
  font-family: var(--font-display);
  border: 1px solid var(--border-color);
  border-bottom: none;
  background: linear-gradient(to top, rgba(255,255,255,0.01), rgba(255,255,255,0.06));
  position: relative;
  overflow: hidden;
  box-shadow: inset 0 2px 5px rgba(255,255,255,0.05);
}

.podium-pedestal::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: rgba(255, 255, 255, 0.15);
}

/* Individual Podium Sizes & Colorations */
.podium-first {
  order: 2;
}

.podium-first .podium-avatar {
  width: 106px;
  height: 106px;
  border-color: #f59e0b;
  box-shadow: 0 0 30px rgba(245, 158, 11, 0.3);
}

.podium-first .podium-pedestal {
  height: 135px;
  background: linear-gradient(to top, rgba(245, 158, 11, 0.01), rgba(245, 158, 11, 0.12));
  border-color: rgba(245, 158, 11, 0.25);
  color: #fbbf24;
  text-shadow: 0 0 15px rgba(245, 158, 11, 0.45);
}

.podium-first .podium-pedestal::after {
  background: #f59e0b;
}

.podium-first .podium-name {
  font-size: 1.25rem;
  font-weight: 800;
  background: linear-gradient(to right, #ffffff, #fef08a);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.podium-first .podium-money {
  color: #fbbf24;
  font-size: 1.1rem;
}

.podium-second {
  order: 1;
}

.podium-second .podium-avatar {
  border-color: #cbd5e1;
  box-shadow: 0 0 20px rgba(203, 213, 225, 0.2);
}

.podium-second .podium-pedestal {
  height: 95px;
  background: linear-gradient(to top, rgba(203, 213, 225, 0.01), rgba(203, 213, 225, 0.08));
  border-color: rgba(203, 213, 225, 0.2);
  color: #cbd5e1;
  text-shadow: 0 0 10px rgba(203, 213, 225, 0.3);
}

.podium-second .podium-pedestal::after {
  background: #cbd5e1;
}

.podium-third {
  order: 3;
}

.podium-third .podium-avatar {
  border-color: #d97706;
  box-shadow: 0 0 20px rgba(217, 119, 6, 0.2);
}

.podium-third .podium-pedestal {
  height: 75px;
  background: linear-gradient(to top, rgba(217, 119, 6, 0.01), rgba(217, 119, 6, 0.08));
  border-color: rgba(217, 119, 6, 0.2);
  color: #d97706;
  text-shadow: 0 0 10px rgba(217, 119, 6, 0.3);
}

.podium-third .podium-pedestal::after {
  background: #d97706;
}

/* ==========================================================================
   LEADERBOARD: TABLE
   ========================================================================== */
.table-container {
  overflow-x: auto;
  border-radius: 16px;
  border: 1px solid var(--border-color);
  background: rgba(5, 7, 12, 0.4);
  box-shadow: inset 0 2px 8px rgba(0,0,0,0.3);
}

.leaderboard-table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
}

.leaderboard-table th {
  padding: 1.2rem 1.6rem;
  font-size: 0.76rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--text-secondary);
  border-bottom: 1px solid var(--border-color);
  letter-spacing: 1px;
  background: rgba(255, 255, 255, 0.01);
}

.leaderboard-table td {
  padding: 1.1rem 1.6rem;
  border-bottom: 1px solid var(--border-color);
  font-size: 0.95rem;
  vertical-align: middle;
}

.leaderboard-table tbody tr {
  transition: var(--transition-fast);
}

.leaderboard-table tbody tr:hover {
  background: rgba(255, 255, 255, 0.02);
}

.leaderboard-table tbody tr:last-child td {
  border-bottom: none;
}

.col-rank { width: 10%; text-align: center; }
.col-user { width: 35%; }
.col-wallet { width: 18%; }
.col-bank { width: 18%; }
.col-total { width: 19%; }
.col-actions { width: 10%; text-align: center; }

/* Rank Column styles */
.rank-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 0.92rem;
  background: rgba(255, 255, 255, 0.03);
  border: 1.5px solid var(--border-color);
  color: var(--text-secondary);
  box-shadow: var(--shadow-sm);
}

/* User column styles */
.user-cell {
  display: flex;
  align-items: center;
  gap: 0.85rem;
}

.user-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  border: 1.5px solid var(--border-color);
  background: #0f172a;
}

.user-name-info {
  display: flex;
  flex-direction: column;
}

.user-name-info h4 {
  font-weight: 700;
  font-size: 0.96rem;
  color: #ffffff;
}

.user-name-info span {
  font-size: 0.75rem;
  color: var(--text-muted);
  margin-top: 0.1rem;
}

/* Cash columns styling */
.money-cell {
  font-family: var(--font-display);
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 0.35rem;
}

.money-cell img {
  width: 15px;
  height: 15px;
  object-fit: contain;
}

.money-cell.total {
  font-weight: 800;
  color: var(--color-primary);
  text-shadow: 0 0 10px rgba(0, 217, 255, 0.15);
}

/* Action button style */
.action-btn {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--border-color);
  border-radius: 10px;
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--text-secondary);
  cursor: pointer;
  transition: var(--transition-fast);
  outline: none;
}

.action-btn:hover {
  background: var(--color-primary-glow);
  color: white;
  border-color: var(--color-primary);
  box-shadow: 0 0 10px rgba(0, 217, 255, 0.3);
}

/* ==========================================================================
   SHOP TAB DESIGN
   ========================================================================== */
/* ==========================================================================
   SHOP TAB DESIGN
   ========================================================================== */
.shop-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1.6rem;
}

.shop-card {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: 18px;
  padding: 1.6rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 230px;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  transition: var(--transition-normal);
  position: relative;
  overflow: hidden;
}

.shop-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, rgba(255,255,255,0.01) 0%, rgba(255,255,255,0.03) 100%);
  pointer-events: none;
}

.shop-card:hover {
  transform: translateY(-6px);
  border-color: var(--color-primary-glow);
  box-shadow: 0 12px 35px rgba(0, 217, 255, 0.08), inset 0 0 10px rgba(0, 217, 255, 0.01);
}

.shop-card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1rem;
}

.shop-item-badge {
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
  padding: 0.25rem 0.75rem;
  border-radius: 50px;
  letter-spacing: 0.8px;
  box-shadow: var(--shadow-sm);
}

.shop-item-badge.default {
  background: rgba(167, 139, 250, 0.08);
  color: var(--color-secondary);
  border: 1px solid var(--color-secondary-glow);
}

.shop-item-badge.custom {
  background: rgba(0, 217, 255, 0.08);
  color: var(--color-primary);
  border: 1px solid var(--color-primary-glow);
}

.shop-card-content h3 {
  font-family: var(--font-display);
  font-size: 1.3rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 0.6rem;
  letter-spacing: -0.3px;
}

.shop-card-content p {
  font-size: 0.88rem;
  color: var(--text-secondary);
  line-height: 1.5;
  margin-bottom: 1.6rem;
}

.shop-card-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
  padding-top: 1.1rem;
  margin-top: auto;
}

.item-price {
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 1.25rem;
  color: var(--color-success);
  display: flex;
  align-items: center;
  gap: 0.4rem;
  text-shadow: 0 0 10px rgba(16, 185, 129, 0.15);
}

.item-price img {
  width: 15px;
  height: 15px;
}

.item-stock {
  font-size: 0.75rem;
  color: var(--text-muted);
  font-weight: 500;
}

.item-stock span {
  color: var(--text-secondary);
  font-weight: 700;
}

/* ==========================================================================
   USER LOOKUP & PROFILE CARD DESIGN
   ========================================================================== */
.search-box-container {
  max-width: 650px;
  margin: 0 auto 3rem auto;
}

.search-bar {
  display: flex;
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid var(--border-color);
  border-radius: 14px;
  padding: 0.5rem;
  align-items: center;
  box-shadow: var(--shadow-sm);
  transition: var(--transition-fast);
  backdrop-filter: var(--glass-blur);
}

.search-bar:focus-within {
  border-color: var(--color-primary);
  box-shadow: 0 0 20px var(--color-primary-glow);
  background: rgba(0, 0, 0, 0.4);
}

.search-bar-icon {
  color: var(--text-muted);
  font-size: 1.15rem;
  margin-left: 1.1rem;
  margin-right: 0.6rem;
  transition: color var(--transition-fast);
}

.search-bar:focus-within .search-bar-icon {
  color: var(--color-primary);
}

.search-bar input {
  flex-grow: 1;
  background: transparent;
  border: none;
  outline: none;
  color: var(--text-primary);
  font-family: var(--font-main);
  font-size: 0.98rem;
  font-weight: 500;
  padding: 0.6rem 0.5rem;
}

.search-bar input::placeholder {
  color: var(--text-muted);
}

.search-bar button {
  background: var(--color-primary);
  color: white;
  border: none;
  border-radius: 10px;
  padding: 0.7rem 1.7rem;
  font-family: var(--font-main);
  font-weight: 700;
  font-size: 0.92rem;
  cursor: pointer;
  transition: var(--transition-fast);
  box-shadow: var(--shadow-sm);
}

.search-bar button:hover {
  background: hsl(190, 100%, 42%);
  transform: translateY(-1px);
  box-shadow: var(--shadow-glow-cyan);
}

.search-bar button:active {
  transform: translateY(0);
}

.search-hint {
  font-size: 0.78rem;
  color: var(--text-muted);
  margin-top: 0.6rem;
  padding-left: 0.6rem;
  font-weight: 500;
}

/* User profile layout inside result / modal */
.user-profile-header {
  display: flex;
  align-items: center;
  gap: 1.6rem;
  margin-bottom: 2.2rem;
}

.profile-avatar-lg {
  width: 96px;
  height: 96px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid rgba(255,255,255,0.06);
  box-shadow: var(--shadow-md), 0 0 20px rgba(255,255,255,0.03);
  background: #0f172a;
}

.profile-title-info h2 {
  font-family: var(--font-display);
  font-size: 2rem;
  font-weight: 800;
  color: #ffffff;
  letter-spacing: -0.5px;
}

.profile-title-info p {
  font-size: 0.88rem;
  color: var(--text-muted);
  margin-top: 0.2rem;
  font-weight: 500;
}

/* Two columns grid for profile stats */
.profile-grid-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 2rem;
  margin-bottom: 2rem;
}

@media (max-width: 768px) {
  .profile-grid-layout {
    grid-template-columns: 1fr;
  }
}

.profile-subcard {
  background: rgba(5, 7, 12, 0.4);
  border: 1px solid var(--border-color);
  border-radius: 16px;
  padding: 1.4rem;
  box-shadow: inset 0 2px 8px rgba(0,0,0,0.2);
}

.profile-subcard h3 {
  font-size: 0.8rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--text-muted);
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
  padding-bottom: 0.6rem;
  margin-bottom: 1.1rem;
  letter-spacing: 0.8px;
}

.subcard-balances {
  display: flex;
  flex-direction: column;
  gap: 0.95rem;
}

.balance-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.98rem;
}

.balance-item span:first-child {
  color: var(--text-secondary);
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-weight: 500;
}

.balance-item span:first-child i {
  color: var(--color-primary);
  width: 16px;
}

.balance-val {
  font-family: var(--font-display);
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 0.3rem;
  color: #ffffff;
}

.balance-val img {
  width: 15px;
  height: 15px;
}

.balance-val.total-val {
  color: var(--color-primary);
  font-size: 1.2rem;
  font-weight: 800;
  text-shadow: 0 0 10px rgba(0, 217, 255, 0.2);
}

/* Game Stats inside Lookup */
.subcard-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.8rem;
  text-align: center;
}

.stat-minibox {
  background: rgba(255,255,255,0.01);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  padding: 0.8rem 0.5rem;
  transition: transform var(--transition-fast);
}

.stat-minibox:hover {
  transform: translateY(-2px);
  border-color: rgba(255,255,255,0.1);
}

.stat-minibox span {
  display: block;
  font-size: 0.72rem;
  color: var(--text-muted);
  text-transform: uppercase;
  margin-bottom: 0.35rem;
  font-weight: 600;
}

.stat-minibox p {
  font-family: var(--font-display);
  font-size: 1.4rem;
  font-weight: 800;
  color: #ffffff;
}

.stat-minibox.won p { color: var(--color-success); text-shadow: 0 0 10px rgba(16, 185, 129, 0.1); }
.stat-minibox.lost p { color: var(--color-danger); text-shadow: 0 0 10px rgba(239, 68, 68, 0.1); }

/* Cooldowns section */
.cooldowns-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
  gap: 0.85rem;
  margin-top: 1rem;
}

.cooldown-badge {
  background: rgba(255,255,255,0.01);
  border: 1px solid var(--border-color);
  border-radius: 10px;
  padding: 0.7rem;
  text-align: center;
  transition: border-color var(--transition-fast);
}

.cooldown-badge span {
  display: block;
  font-size: 0.72rem;
  color: var(--text-muted);
  text-transform: uppercase;
  margin-bottom: 0.25rem;
  font-weight: 600;
}

.cooldown-badge p {
  font-size: 0.85rem;
  font-weight: 700;
}

.cooldown-badge.ready {
  border-color: rgba(16, 185, 129, 0.15);
  background: rgba(16, 185, 129, 0.02);
}

.cooldown-badge.ready p {
  color: var(--color-success);
}

.cooldown-badge.waiting {
  border-color: rgba(245, 158, 11, 0.15);
  background: rgba(245, 158, 11, 0.02);
}

.cooldown-badge.waiting p {
  color: var(--color-warning);
}

/* Inventory List Section */
.inventory-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 0.85rem;
}

.inventory-item-card {
  background: rgba(255, 255, 255, 0.01);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  padding: 0.8rem 1.1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
  transition: all var(--transition-fast);
}

.inventory-item-card:hover {
  border-color: rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.02);
  transform: translateY(-2px);
}

.inv-item-info h4 {
  font-size: 0.88rem;
  font-weight: 700;
  color: #ffffff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 120px;
}

.inv-item-info span {
  display: block;
  font-size: 0.72rem;
  color: var(--text-muted);
  margin-top: 0.15rem;
  font-weight: 500;
}

.inv-item-qty {
  background: var(--color-primary-glow);
  border: 1px solid var(--color-primary);
  border-radius: 50px;
  padding: 0.2rem 0.65rem;
  font-size: 0.78rem;
  font-weight: 800;
  font-family: var(--font-display);
  color: #ffffff;
  box-shadow: var(--shadow-glow-cyan);
}

/* Empty inventory note */
.empty-inventory-text {
  font-size: 0.88rem;
  color: var(--text-muted);
  text-align: center;
  padding: 1.8rem 0;
  font-weight: 500;
}

/* ==========================================================================
   MODAL CARD DESIGN
   ========================================================================== */
.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(3, 5, 8, 0.8);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 100;
  opacity: 0;
  pointer-events: none;
  transition: var(--transition-normal);
}

.modal-overlay.open {
  opacity: 1;
  pointer-events: auto;
}

.modal-card {
  width: 100%;
  max-width: 660px;
  background: var(--bg-modal);
  border: 1px solid var(--border-color);
  border-radius: 24px;
  padding: 2.6rem;
  position: relative;
  max-height: 90vh;
  overflow-y: auto;
  box-shadow: var(--shadow-lg), 0 0 50px rgba(0,0,0,0.5);
  transform: scale(0.92) translateY(20px);
  transition: var(--transition-normal);
}

.modal-overlay.open .modal-card {
  transform: scale(1) translateY(0);
}

.modal-close-btn {
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  width: 32px;
  height: 32px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--border-color);
  border-radius: 50%;
  color: var(--text-secondary);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--transition-fast);
}

.modal-close-btn:hover {
  background: rgba(255, 255, 255, 0.1);
  color: var(--text-primary);
  border-color: var(--border-hover);
  transform: rotate(90deg);
}

/* ==========================================================================
   LOADING & EMPTY STATES
   ========================================================================== */
.loading-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(7, 9, 14, 0.7);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  z-index: 99;
  display: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
}

.loading-overlay.active {
  display: flex;
}

.spinner {
  width: 44px;
  height: 44px;
  border: 3.5px solid rgba(255, 255, 255, 0.05);
  border-top-color: var(--color-primary);
  border-radius: 50%;
  animation: spin 0.85s linear infinite;
  box-shadow: 0 0 15px var(--color-primary-glow);
}

@keyframes spin {
  to { transform: rotate(360deg); }
}

.loading-overlay p {
  color: var(--text-secondary);
  font-size: 0.95rem;
  font-weight: 600;
  letter-spacing: 0.5px;
}

.empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 4.5rem 2rem;
  color: var(--text-secondary);
}

.empty-icon {
  font-size: 3.2rem;
  color: var(--text-muted);
  margin-bottom: 1.4rem;
  text-shadow: 0 4px 10px rgba(0,0,0,0.3);
}

.empty-state h3 {
  font-family: var(--font-display);
  font-size: 1.3rem;
  font-weight: 700;
  margin-bottom: 0.6rem;
  color: var(--text-primary);
}

.empty-state p {
  font-size: 0.88rem;
  max-width: 340px;
  line-height: 1.5;
}

/* ==========================================================================
   RESPONSIVE DESIGN Adjustments
   ========================================================================== */
@media (max-width: 1024px) {
  .app-container {
    flex-direction: column;
  }
  
  .sidebar {
    width: 100%;
    border-right: none;
    border-bottom: 1px solid var(--border-color);
    padding: 1.6rem;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
  }
  
  .sidebar-brand {
    margin-bottom: 0;
  }
  
  .guild-selector-container {
    margin-bottom: 0;
    width: 230px;
  }
  
  .sidebar-menu {
    flex-direction: row;
    width: 100%;
    order: 3;
    gap: 0.4rem;
    overflow-x: auto;
    padding-bottom: 0.25rem;
  }
  
  .menu-item {
    flex-grow: 1;
    justify-content: center;
    border-left: none;
    border-bottom: 3px solid transparent;
    padding: 0.75rem 1rem;
    white-space: nowrap;
  }
  
  .menu-item:hover {
    padding-left: 1rem;
  }
  
  .menu-item.active {
    border-left-color: transparent;
    border-bottom-color: var(--color-primary);
    background: linear-gradient(180deg, rgba(0, 217, 255, 0.06) 0%, rgba(0, 217, 255, 0) 100%);
    padding-left: 1rem;
  }
  
  .bot-status-card {
    display: none;
  }
  
  .main-content {
    padding: 1.8rem;
    gap: 2rem;
  }
}

@media (max-width: 600px) {
  .sidebar {
    flex-direction: column;
    align-items: stretch;
  }
  
  .guild-selector-container {
    width: 100%;
  }
  
  .sidebar-menu {
    flex-direction: column;
  }
  
  .main-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.1rem;
  }
  
  .leaderboard-podium {
    flex-direction: row;
    gap: 0.6rem;
    align-items: flex-end;
    margin-bottom: 2rem;
  }
  
  .podium-place {
    width: 32%;
  }
  
  .podium-avatar {
    width: 62px;
    height: 62px;
    border-width: 2px;
  }
  
  .podium-first .podium-avatar {
    width: 76px;
    height: 76px;
    border-width: 3px;
  }
  
  .podium-crown {
    font-size: 1.6rem;
    top: -20px;
  }
  
  .podium-pedestal {
    font-size: 0.8rem;
    padding: 0.2rem 0.6rem;
    height: auto;
    border-radius: 8px;
  }
  
  .podium-name {
    font-size: 0.78rem;
    max-width: 80px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  
  .podium-money {
    font-size: 0.72rem;
  }
  
  .podium-avatar-wrapper {
    margin-bottom: 0.6rem;
  }
}

/* ==========================================================================
   AUTHENTICATION CARD & LOGIN STYLES
   ========================================================================== */
.auth-card {
  margin: 1.2rem 0;
  padding: 0.1rem;
}

.auth-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.6rem;
  width: 100%;
  padding: 0.8rem 1.2rem;
  border-radius: 12px;
  font-family: var(--font-main);
  font-size: 0.92rem;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
  transition: var(--transition-normal);
  border: none;
}

.login-btn {
  background: linear-gradient(135deg, #5865F2 0%, #404eed 100%);
  color: #ffffff;
  box-shadow: 0 4px 15px rgba(88, 101, 242, 0.35);
}

.login-btn:hover {
  background: linear-gradient(135deg, #4752c4 0%, #353fa3 100%);
  transform: translateY(-2px);
  box-shadow: 0 6px 22px rgba(88, 101, 242, 0.45);
}

.user-profile-mini {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid var(--border-color);
  border-radius: 14px;
  padding: 0.8rem 1rem;
  margin: 1.2rem 0;
  box-shadow: var(--shadow-sm);
}

#user-avatar-mini {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid var(--color-primary);
  box-shadow: var(--shadow-glow-cyan);
}

.user-info-mini {
  flex: 1;
  min-width: 0;
}

.user-info-mini h4 {
  font-size: 0.88rem;
  font-weight: 700;
  color: #ffffff;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.user-info-mini span {
  font-size: 0.72rem;
  color: var(--color-primary);
  font-weight: 600;
  letter-spacing: 0.5px;
}

#logout-btn {
  background: rgba(239, 68, 68, 0.08);
  border: 1px solid rgba(239, 68, 68, 0.15);
  border-radius: 8px;
  color: var(--color-danger);
  font-size: 1.1rem;
  cursor: pointer;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all var(--transition-fast);
  outline: none;
}

#logout-btn:hover {
  background: var(--color-danger);
  color: white;
  border-color: var(--color-danger);
  transform: scale(1.05);
  box-shadow: 0 0 10px rgba(239, 68, 68, 0.3);
}

/* ==========================================================================
   SETTINGS LAYOUT & FORM STYLES
   ========================================================================== */
.settings-card {
  background: rgba(5, 7, 12, 0.35);
  border: 1px solid var(--border-color);
  border-radius: 20px;
  padding: 2.2rem;
  box-shadow: inset 0 2px 8px rgba(0,0,0,0.2);
}

.settings-card h2 {
  font-size: 1.55rem;
  font-weight: 800;
  color: #ffffff;
  margin-bottom: 0.6rem;
  letter-spacing: -0.5px;
  font-family: var(--font-display);
}

.settings-desc {
  font-size: 0.92rem;
  color: var(--text-secondary);
  margin-bottom: 2.2rem;
  line-height: 1.5;
}

.settings-grid {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
}

.setting-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  background: rgba(255, 255, 255, 0.01);
  border: 1px solid var(--border-color);
  border-radius: 14px;
  padding: 1.3rem 1.5rem;
  transition: all 0.3s ease;
}

.setting-row:hover {
  border-color: rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.02);
}

.setting-info {
  flex: 1;
}

.setting-info h4 {
  font-size: 1rem;
  font-weight: 700;
  color: #ffffff;
  margin-bottom: 0.35rem;
}

.setting-info p {
  font-size: 0.82rem;
  color: var(--text-secondary);
  margin: 0;
  line-height: 1.4;
}

.setting-controls {
  display: flex;
  align-items: center;
  gap: 1.6rem;
}

/* Custom form selector inputs */
select.channel-select, 
.settings-form-layout select {
  background: rgba(0, 0, 0, 0.3) !important;
  border: 1px solid var(--border-color);
  border-radius: 10px;
  color: #ffffff !important;
  font-family: var(--font-main);
  font-size: 0.88rem;
  font-weight: 500;
  padding: 0.75rem 2.6rem 0.75rem 1.1rem;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='white'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 1.1rem center !important;
  background-size: 1rem !important;
  cursor: pointer;
  min-width: 230px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  backdrop-filter: var(--glass-blur);
}

select.channel-select:focus,
.settings-form-layout select:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 15px var(--color-primary-glow);
  outline: none;
  background: rgba(0, 0, 0, 0.4) !important;
}

/* Toggle Switches */
.switch {
  position: relative;
  display: inline-block;
  width: 52px;
  height: 28px;
  flex-shrink: 0;
}

.switch input {
  opacity: 0;
  width: 0;
  height: 0;
}

.slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.08);
  transition: .35s;
  border-radius: 34px;
  border: 1px solid var(--border-color);
}

.slider:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 4px;
  bottom: 4px;
  background-color: #94a3b8;
  transition: .35s cubic-bezier(0.25, 0.8, 0.25, 1.1);
  border-radius: 50%;
  box-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

input:checked + .slider {
  background-color: var(--color-primary-glow);
  border-color: var(--color-primary);
  box-shadow: 0 0 10px rgba(0, 217, 255, 0.15);
}

input:focus + .slider {
  border-color: var(--color-primary);
}

input:checked + .slider:before {
  transform: translateX(24px);
  background-color: var(--color-primary);
}

/* Ticket form specific layouts */
.settings-form-layout {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.form-group {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.form-group label {
  font-size: 0.92rem;
  font-weight: 700;
  color: #ffffff;
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.form-group label i {
  color: var(--color-primary);
}

.settings-form-layout select {
  width: 100%;
  max-width: 500px;
}

.group-hint {
  font-size: 0.78rem;
  color: var(--text-muted);
  margin: 0;
  font-weight: 500;
}

/* Submit Actions */
.form-actions {
  margin-top: 2.2rem;
  display: flex;
  justify-content: flex-end;
  gap: 0.85rem;
}

.submit-btn {
  position: relative;
  background: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 40%, var(--color-secondary) 100%);
  color: #ffffff;
  border: none;
  font-family: var(--font-main);
  font-size: 0.9rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  padding: 0.8rem 2rem;
  border-radius: 12px;
  cursor: pointer;
  box-shadow: 0 4px 20px hsla(250, 84%, 72%, 0.35), 0 1px 0 rgba(255,255,255,0.08) inset;
  transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1);
  overflow: hidden;
  white-space: nowrap;
}

.submit-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 60%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.18), transparent);
  transform: skewX(-20deg);
  transition: left 0.6s ease;
}

.submit-btn:hover::before {
  left: 160%;
}

.submit-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px hsla(250, 84%, 72%, 0.48), 0 1px 0 rgba(255,255,255,0.1) inset;
  filter: brightness(1.06);
}

.submit-btn:active {
  transform: translateY(0) scale(0.98);
  box-shadow: 0 2px 12px hsla(250, 84%, 72%, 0.3);
}

/* ==========================================================================
   MODULAR SYSTEMS AND CUSTOM ITEMS STYLING
   ========================================================================== */
.setting-card-box {
  background: rgba(5, 7, 12, 0.3);
  border: 1px solid var(--border-color);
  border-radius: 16px;
  padding: 1.6rem;
  transition: all 0.3s ease;
  box-shadow: inset 0 2px 5px rgba(0,0,0,0.15);
}

.setting-card-box:hover {
  border-color: rgba(255, 255, 255, 0.12);
}

.setting-box-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
  padding-bottom: 0.85rem;
  margin-bottom: 0.85rem;
}

.setting-box-header h3 {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 700;
  color: #ffffff;
  font-family: var(--font-display);
}

#item-editor-form input[type="text"],
#item-editor-form input[type="number"],
#item-editor-form textarea {
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid var(--border-color);
  border-radius: 10px;
  color: #ffffff;
  font-family: var(--font-main);
  font-size: 0.92rem;
  font-weight: 500;
  padding: 0.75rem 1.1rem;
  width: 100%;
  box-sizing: border-box;
  transition: all 0.3s ease;
}

#item-editor-form input[type="text"]:focus,
#item-editor-form input[type="number"]:focus,
#item-editor-form textarea:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 15px var(--color-primary-glow);
  outline: none;
  background: rgba(0, 0, 0, 0.4);
}

#item-editor-form select {
  width: 100%;
  max-width: 100%;
}

.badge {
  font-size: 0.72rem;
  font-weight: 800;
  padding: 0.25rem 0.75rem;
  border-radius: 50px;
  text-transform: uppercase;
  display: inline-block;
  letter-spacing: 0.8px;
  box-shadow: var(--shadow-sm);
}

.badge-success {
  background: rgba(46, 204, 113, 0.08);
  color: #2ecc71;
  border: 1px solid rgba(46, 204, 113, 0.2);
}

.badge-danger {
  background: rgba(231, 76, 60, 0.08);
  color: #e74c3c;
  border: 1px solid rgba(231, 76, 60, 0.2);
}

select option {
  background-color: #07090e;
  color: #f8fafc;
}

/* Accordion / Collapsible Sections */
.accordion-section {
  border: 1px solid var(--border-color);
  border-radius: 14px;
  background: rgba(16, 23, 39, 0.2);
  margin-bottom: 1.4rem;
  overflow: hidden;
  transition: border-color var(--transition-fast);
}

.accordion-section:hover {
  border-color: rgba(255, 255, 255, 0.12);
}

.accordion-header {
  padding: 1.1rem 1.4rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  background: rgba(255, 255, 255, 0.01);
  user-select: none;
  font-weight: 700;
  font-size: 1.08rem;
  color: #ffffff;
  transition: background var(--transition-fast);
}

.accordion-header:hover {
  background: rgba(255, 255, 255, 0.03);
}

.accordion-header span {
  display: flex;
  align-items: center;
  gap: 0.85rem;
}

.accordion-header span i {
  color: var(--color-primary);
  font-size: 1.15rem;
}

.accordion-arrow {
  transition: transform var(--transition-normal);
  color: var(--text-secondary);
}

.accordion-content {
  max-height: 0;
  overflow: hidden;
  padding: 0 1.4rem;
  transition: max-height var(--transition-normal), padding var(--transition-normal), opacity var(--transition-normal);
  opacity: 0;
}

.accordion-content.active {
  max-height: 2000px;
  padding: 1.4rem;
  opacity: 1;
  border-top: 1px solid var(--border-color);
}

.accordion-section.active .accordion-arrow {
  transform: rotate(180deg);
  color: var(--color-primary);
}

/* ==========================================================================
   GLOBAL BOT STATS BANNER
   ========================================================================== */
.global-bot-banner {
  position: relative;
  background: linear-gradient(135deg, rgba(16, 23, 39, 0.5) 0%, rgba(9, 13, 22, 0.85) 100%);
  border: 1px solid var(--border-color);
  border-radius: 20px;
  padding: 1.8rem 2.4rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.6rem;
  overflow: hidden;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  margin-bottom: 0.5rem;
}

.banner-server-badge-container {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  background: rgba(255, 255, 255, 0.035);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 14px;
  padding: 0.65rem 1.1rem;
  box-shadow: var(--shadow-sm);
  z-index: 1;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

.banner-server-badge-icon {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  background: rgba(0, 0, 0, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  font-size: 1.1rem;
  color: var(--color-primary);
  flex-shrink: 0;
}

.banner-server-badge-info {
  display: flex;
  flex-direction: column;
}


.banner-glow-effect {
  position: absolute;
  top: -50%;
  left: -20%;
  width: 320px;
  height: 320px;
  background: radial-gradient(circle, var(--color-primary-glow) 0%, transparent 70%);
  z-index: 0;
  pointer-events: none;
}

.bot-info-main {
  display: flex;
  align-items: center;
  gap: 1.4rem;
  z-index: 1;
}

.bot-avatar-large {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  border: 2.5px solid var(--color-primary);
  box-shadow: var(--shadow-glow-cyan);
  background: #000;
}

.bot-details h2 {
  font-family: var(--font-display);
  font-size: 1.55rem;
  font-weight: 800;
  color: #ffffff;
  margin-bottom: 0.25rem;
  letter-spacing: -0.5px;
}

.bot-details p {
  font-size: 0.92rem;
  color: var(--text-secondary);
  font-weight: 500;
}

.bot-stats-horizontal {
  display: flex;
  gap: 2.2rem;
  z-index: 1;
}

.bot-stat-item {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.bot-stat-label {
  font-size: 0.75rem;
  text-transform: uppercase;
  color: var(--text-muted);
  font-weight: 700;
  letter-spacing: 0.8px;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.bot-stat-label i {
  color: var(--color-primary);
}

.bot-stat-value {
  font-size: 1.5rem;
  font-weight: 900;
  color: var(--color-primary);
  font-family: var(--font-display);
  margin-top: 0.15rem;
  text-shadow: 0 0 15px var(--color-primary-glow);
}

@media (max-width: 768px) {
  .global-bot-banner {
    flex-direction: column;
    align-items: flex-start;
  }
  
  .bot-stats-horizontal {
    width: 100%;
    justify-content: space-between;
    border-top: 1px solid var(--border-color);
    padding-top: 1.1rem;
    margin-top: 0.5rem;
  }
  
  .bot-stat-item {
    align-items: flex-start;
  }
}

/* ==========================================================================
   DASHBOARD HOME & MODULE CARDS STYLES
   ========================================================================== */
.welcome-box {
  background: linear-gradient(135deg, rgba(0, 217, 255, 0.04) 0%, rgba(167, 139, 250, 0.02) 100%);
  border: 1px solid rgba(0, 217, 255, 0.12);
  border-radius: 16px;
  padding: 1.8rem 2.2rem;
  margin-bottom: 2.2rem;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

.welcome-box h2 {
  font-family: var(--font-display);
  font-size: 1.7rem;
  font-weight: 800;
  color: #ffffff;
  margin-bottom: 0.6rem;
  letter-spacing: -0.5px;
}

.welcome-box p {
  color: var(--text-secondary);
  font-size: 0.96rem;
  line-height: 1.6;
  margin: 0;
}

.hub-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1.6rem;
  margin-bottom: 3rem;
}

.hub-card {
  position: relative;
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: 16px;
  padding: 1.8rem 1.6rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  cursor: pointer;
  overflow: hidden;
  transition: all 0.35s cubic-bezier(0.25, 0.8, 0.25, 1);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
}

.hub-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,0.01) 0%, rgba(255,255,255,0.03) 100%);
  pointer-events: none;
}

.hub-card:hover {
  transform: translateY(-5px);
  border-color: var(--color-primary-glow);
  background: rgba(24, 34, 57, 0.45);
  box-shadow: 0 12px 35px rgba(0, 217, 255, 0.08);
}

.hub-card-icon {
  width: 50px;
  height: 50px;
  border-radius: 12px;
  background: rgba(0, 217, 255, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.45rem;
  color: var(--color-primary);
  margin-bottom: 1.35rem;
  transition: all var(--transition-fast);
  border: 1px solid rgba(0, 217, 255, 0.1);
}

.hub-card:hover .hub-card-icon {
  background: var(--color-primary);
  color: #07090e;
  box-shadow: var(--shadow-glow-cyan);
  transform: scale(1.05) rotate(3deg);
  border-color: var(--color-primary);
}

.hub-card h3 {
  font-size: 1.2rem;
  font-weight: 700;
  margin-bottom: 0.6rem;
  color: #ffffff;
  transition: color 0.3s ease;
  font-family: var(--font-display);
}

.hub-card:hover h3 {
  color: var(--color-primary);
}

.hub-card p {
  font-size: 0.88rem;
  color: var(--text-secondary);
  line-height: 1.5;
  margin-bottom: 1.6rem;
  flex-grow: 1;
}

.hub-card-action {
  font-size: 0.88rem;
  font-weight: 700;
  color: var(--color-primary);
  display: flex;
  align-items: center;
  gap: 0.4rem;
  transition: gap 0.25s ease;
  margin-top: auto;
}

.hub-card:hover .hub-card-action {
  gap: 0.65rem;
}

/* ==========================================================================
   COMMAND TAB FILTERS STYLES
   ========================================================================== */
.tab-btn {
  background: transparent;
  border: 1px solid var(--border-color);
  color: var(--text-secondary);
  border-radius: 8px;
  padding: 0.6rem 1.2rem;
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.25s ease;
}

.tab-btn.active {
  background: rgba(0, 217, 255, 0.08) !important;
  border-color: var(--color-primary) !important;
  color: var(--color-primary) !important;
  box-shadow: 0 0 10px rgba(0, 217, 255, 0.1);
}

.tab-btn:hover:not(.active) {
  background: rgba(255, 255, 255, 0.03);
  color: var(--text-primary);
  border-color: rgba(255,255,255,0.15);
}

/* ==========================================================================
   DROPDOWN & DYNAMIC COLOR CONTRAST PREVENTER
   ========================================================================== */
select, select.channel-select, .settings-form-layout select, #item-editor-form select {
  background-color: #07090e !important;
  color: #f8fafc !important;
}

select option, select.channel-select option, .settings-form-layout select option, #item-editor-form select option {
  background-color: #07090e !important;
  color: #f8fafc !important;
}

/* ==========================================================================
   TOAST NOTIFICATION (Premium slide-in indicator)
   ========================================================================== */
.toast-notification {
  position: fixed;
  bottom: 24px;
  right: 24px;
  background: rgba(9, 13, 22, 0.96);
  border: 1px solid rgba(16, 185, 129, 0.45);
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.75), 0 0 20px rgba(16, 185, 129, 0.2);
  border-radius: 14px;
  padding: 1.1rem 1.6rem;
  display: flex;
  align-items: center;
  gap: 0.85rem;
  z-index: 99999;
  transform: translateY(150%);
  transition: transform 0.45s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
}

.toast-notification.show {
  transform: translateY(0);
}

.toast-notification i {
  color: var(--color-success);
  font-size: 1.35rem;
  animation: pulseToast 2s infinite;
}

.toast-notification span {
  color: #f8fafc;
  font-size: 0.92rem;
  font-weight: 700;
}

@keyframes pulseToast {
  0% { transform: scale(1); }
  50% { transform: scale(1.12); opacity: 0.9; }
  100% { transform: scale(1); }
}

/* ==========================================================================
   KOYA REDESIGN ADDITIONAL STYLES
   ========================================================================== */
.sidebar-category-header {
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin-top: 1.8rem;
  margin-bottom: 0.5rem;
  padding-left: 1.2rem;
}

.sunlight-welcome-card {
  background: linear-gradient(135deg, rgba(22, 28, 45, 0.6) 0%, rgba(16, 23, 39, 0.4) 100%);
  border: 1px solid var(--border-color);
  border-left: 4px solid var(--color-primary);
  border-radius: 16px;
  padding: 1.8rem 2.2rem;
  margin-bottom: 2.2rem;
  display: flex;
  align-items: flex-start;
  gap: 1.6rem;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  position: relative;
  overflow: hidden;
  box-shadow: var(--shadow-md);
}

.sunlight-welcome-card::after {
  content: '';
  position: absolute;
  top: -50%;
  right: -20%;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, var(--color-primary-glow) 0%, rgba(0,0,0,0) 70%);
  opacity: 0.35;
  pointer-events: none;
}

.sunlight-welcome-icon {
  width: 54px;
  height: 54px;
  background: rgba(0, 217, 255, 0.08);
  border: 1px solid var(--color-primary-glow);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  color: var(--color-primary);
  text-shadow: 0 0 10px var(--color-primary-glow);
  flex-shrink: 0;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  animation: welcomeFloat 3s ease-in-out infinite alternate;
}

@keyframes welcomeFloat {
  0% { transform: translateY(0) rotate(0deg); }
  100% { transform: translateY(-4px) rotate(4deg); }
}

.sunlight-welcome-text h2 {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 800;
  color: #ffffff;
  margin-bottom: 0.4rem;
}

.sunlight-welcome-text p {
  color: var(--text-secondary);
  font-size: 0.94rem;
  line-height: 1.5;
  margin-bottom: 1.25rem;
}

.quick-actions-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.85rem;
}

.quick-action-btn {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--border-color);
  color: var(--text-primary);
  border-radius: 10px;
  padding: 0.6rem 1.1rem;
  font-size: 0.86rem;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: all 0.25s ease;
  backdrop-filter: var(--glass-blur);
}

.quick-action-btn i {
  color: var(--color-primary);
  font-size: 0.95rem;
}

.quick-action-btn:hover {
  background: var(--color-primary-glow);
  border-color: var(--color-primary);
  box-shadow: 0 0 15px var(--color-primary-glow);
  transform: translateY(-2px);
}

/* ==========================================================================
   LANDING PAGE STYLES (KOYA REDESIGN)
   ========================================================================== */
#landing-view {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 2;
  width: 100%;
}

.landing-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.5rem 3.5rem;
  background: rgba(7, 9, 14, 0.4);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border-bottom: 1px solid var(--border-color);
  position: sticky;
  top: 0;
  z-index: 100;
}

.landing-header .header-logo {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  cursor: pointer;
}

.landing-brand-logo {
  width: 38px;
  height: 38px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--shadow-glow-cyan);
}

.landing-brand-logo i {
  color: #fff;
  font-size: 1.25rem;
}

.landing-brand-name {
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 800;
  letter-spacing: 0.5px;
  background: linear-gradient(to right, #ffffff, #c7d2fe, var(--color-primary));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.landing-nav {
  display: flex;
  align-items: center;
  gap: 2rem;
}

.landing-nav .nav-link {
  color: var(--text-secondary);
  text-decoration: none;
  font-size: 0.92rem;
  font-weight: 600;
  transition: var(--transition-fast);
}

.landing-nav .nav-link:hover,
.landing-nav .nav-link.active {
  color: #fff;
}

.landing-header .header-right {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}

.landing-header .premium-badge {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--color-secondary);
  background: var(--color-secondary-glow);
  border: 1px solid rgba(167, 139, 250, 0.25);
  padding: 0.35rem 0.85rem;
  border-radius: 50px;
  box-shadow: 0 0 15px rgba(167, 139, 250, 0.1);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.landing-header .premium-badge i {
  animation: shineGem 2.5s infinite ease-in-out;
}

@keyframes shineGem {
  0%, 100% { transform: scale(1); filter: brightness(1); }
  50% { transform: scale(1.15); filter: brightness(1.3); text-shadow: 0 0 8px var(--color-secondary); }
}

.landing-header .lang-selector {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  padding: 0.4rem 0.8rem;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid var(--border-color);
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--text-secondary);
  transition: var(--transition-fast);
}

.landing-header .lang-selector:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.15);
  color: #fff;
}

.landing-header .lang-selector img {
  border-radius: 2px;
}

.landing-login-btn {
  background: rgba(255, 255, 255, 0.05);
  color: #fff;
  border: 1px solid rgba(255, 255, 255, 0.12);
  padding: 0.6rem 1.3rem;
  border-radius: 10px;
  text-decoration: none;
  font-size: 0.9rem;
  font-weight: 700;
  transition: var(--transition-fast);
}

.landing-login-btn:hover {
  background: #fff;
  color: #07090e;
  border-color: #fff;
  box-shadow: 0 0 20px rgba(255, 255, 255, 0.25);
  transform: translateY(-1px);
}

/* ==========================================================================
   LANDING HERO REDESIGN (TWO COLUMNS & MOCKUP)
   ========================================================================== */
.landing-hero {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 6rem 2rem 4rem;
  z-index: 10;
  position: relative;
}

.hero-content-wrapper {
  display: grid;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 4rem;
  align-items: center;
}

.hero-text-side {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  gap: 1.5rem;
}

.hero-version-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  background: rgba(0, 217, 255, 0.06);
  border: 1px solid rgba(0, 217, 255, 0.2);
  padding: 0.45rem 1rem;
  border-radius: 50px;
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--color-primary);
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.badge-dot {
  width: 6px;
  height: 6px;
  background-color: #2ecc71;
  border-radius: 50%;
  box-shadow: 0 0 8px #2ecc71;
  display: inline-block;
  animation: pulseDot 1.8s infinite ease-in-out;
}

@keyframes pulseDot {
  0%, 100% { opacity: 0.4; transform: scale(0.85); }
  50% { opacity: 1; transform: scale(1.15); }
}

.hero-main-title {
  font-family: var(--font-display);
  font-size: 3.5rem;
  font-weight: 900;
  line-height: 1.15;
  letter-spacing: -1px;
  color: #ffffff;
}

.gradient-text {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 2px 10px rgba(0, 217, 255, 0.15));
}

.hero-main-desc {
  color: var(--text-secondary);
  font-size: 1.1rem;
  line-height: 1.6;
  font-weight: 500;
  max-width: 580px;
}

.hero-buttons-container {
  display: flex;
  gap: 1.2rem;
  flex-wrap: wrap;
  align-items: center;
  margin-top: 1.5rem;
}

.hero-cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 1rem;
  padding: 0.85rem 1.6rem 0.85rem 1.1rem;
  border-radius: 18px;
  text-decoration: none;
  position: relative;
  overflow: hidden;
  cursor: pointer;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  border: none;
}

/* Icon Box inside Buttons */
.cta-icon-box {
  width: 46px;
  height: 46px;
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.35rem;
  flex-shrink: 0;
  transition: transform 0.35s ease, background 0.35s ease, color 0.35s ease;
}

.cta-text-group {
  display: flex;
  flex-direction: column;
  text-align: left;
}

.cta-title {
  font-size: 1.02rem;
  font-weight: 800;
  line-height: 1.2;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.cta-subtitle {
  font-size: 0.76rem;
  font-weight: 600;
  opacity: 0.82;
  margin-top: 0.15rem;
}

.cta-arrow-box {
  font-size: 0.95rem;
  margin-left: 0.4rem;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  opacity: 0.9;
}

/* BUTTON 1: AÑADIR A DISCORD (PRINCIPAL - DISCORD BLUE NEON) */
.add-bot-cta {
  background: linear-gradient(135deg, #5865F2 0%, #4752C4 60%, #3b44a9 100%);
  color: #ffffff;
  box-shadow: 0 10px 30px rgba(88, 101, 242, 0.45), 0 0 0 1px rgba(255, 255, 255, 0.2) inset;
}

.add-bot-cta .discord-box {
  background: rgba(255, 255, 255, 0.18);
  color: #ffffff;
  box-shadow: inset 0 1px 1px rgba(255, 255, 255, 0.3);
}

.cta-flash-icon {
  color: #ffdf00;
  font-size: 0.85rem;
  filter: drop-shadow(0 0 6px rgba(255, 223, 0, 0.8));
  animation: flashPulse 1.8s infinite ease-in-out;
}

@keyframes flashPulse {
  0%, 100% { transform: scale(1); opacity: 0.9; }
  50% { transform: scale(1.25); opacity: 1; filter: drop-shadow(0 0 10px #ffdf00); }
}

.add-bot-cta:hover {
  transform: translateY(-4px) scale(1.02);
  background: linear-gradient(135deg, #6775f4 0%, #515ee0 60%, #434ebc 100%);
  box-shadow: 0 16px 40px rgba(88, 101, 242, 0.65), 0 0 20px rgba(88, 101, 242, 0.5);
  color: #ffffff;
}

.add-bot-cta:hover .discord-box {
  transform: scale(1.08) rotate(-6deg);
  background: rgba(255, 255, 255, 0.28);
}

.add-bot-cta:hover .cta-arrow-box {
  transform: translateX(5px);
}

/* BUTTON 2: PANEL DE CONTROL (GLASS DASHBOARD - CYAN/PURPLE NEON) */
.manage-dashboard-cta {
  background: rgba(18, 24, 40, 0.7);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  color: #f1f5f9;
  border: 1px solid rgba(56, 189, 248, 0.35);
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

.manage-dashboard-cta .dashboard-box {
  background: linear-gradient(135deg, rgba(56, 189, 248, 0.2), rgba(168, 85, 247, 0.2));
  color: #38bdf8;
  border: 1px solid rgba(56, 189, 248, 0.3);
}

.manage-dashboard-cta:hover {
  transform: translateY(-4px) scale(1.02);
  background: rgba(24, 32, 54, 0.85);
  border-color: rgba(56, 189, 248, 0.65);
  box-shadow: 0 14px 35px rgba(0, 0, 0, 0.5), 0 0 25px rgba(56, 189, 248, 0.3);
  color: #ffffff;
}

.manage-dashboard-cta:hover .dashboard-box {
  transform: scale(1.08) rotate(6deg);
  background: linear-gradient(135deg, #0284c7, #9333ea);
  color: #ffffff;
  box-shadow: 0 4px 15px rgba(56, 189, 248, 0.5);
}

.manage-dashboard-cta:hover .cta-arrow-box {
  transform: translateX(4px);
}

/* GODMODE BUTTON (CREATOR ONLY) */
.hero-cta-btn.godmode-hero-btn {
  background: linear-gradient(135deg, rgba(220, 38, 38, 0.9) 0%, rgba(245, 158, 11, 0.9) 100%);
  color: #fff;
  border: 1px solid rgba(245, 158, 11, 0.6);
  box-shadow: 0 6px 25px rgba(245, 158, 11, 0.4);
}

.godmode-box {
  background: rgba(0, 0, 0, 0.25);
  color: #fef08a;
}

.godmode-hero-btn:hover {
  transform: translateY(-4px) scale(1.02);
  box-shadow: 0 14px 35px rgba(245, 158, 11, 0.6);
}

.hero-cta-btn:active {
  transform: translateY(-1px);
}

/* Visual Side: Floating Ring & Dashboard Mockup */
.hero-visual-side {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  position: relative;
  width: 100%;
}

.hero-avatar-ring {
  position: relative;
  width: 150px;
  height: 150px;
  margin-bottom: 2rem;
  z-index: 2;
}

.avatar-glow-ring {
  position: absolute;
  inset: -12px;
  border-radius: 50%;
  background: radial-gradient(circle, var(--color-primary-glow) 30%, var(--color-secondary-glow) 70%);
  filter: blur(8px);
  z-index: 0;
  animation: avatarGlowPulse 4s infinite ease-in-out alternate;
}

@keyframes avatarGlowPulse {
  0% { transform: scale(0.96); opacity: 0.5; filter: blur(12px); }
  100% { transform: scale(1.08); opacity: 1; filter: blur(6px); box-shadow: 0 0 45px var(--color-primary-glow); }
}

.hero-bot-avatar {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 4px solid rgba(255, 255, 255, 0.08);
  box-shadow: var(--shadow-lg), 0 0 25px rgba(0, 0, 0, 0.4);
  position: relative;
  z-index: 1;
  background: #000;
  transition: transform var(--transition-normal);
}

.hero-avatar-ring:hover .hero-bot-avatar {
  transform: scale(1.04) rotate(3deg);
  border-color: var(--color-primary);
}

/* Simulated Dashboard in Hero */
.hero-mockup-dashboard {
  width: 100%;
  max-width: 440px;
  background: rgba(14, 18, 27, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;
  overflow: hidden;
  box-shadow: var(--shadow-lg), 0 15px 40px rgba(0, 0, 0, 0.5);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  z-index: 3;
  transition: all 0.5s cubic-bezier(0.25, 0.8, 0.25, 1);
  animation: floatDashboard 6s infinite ease-in-out;
  transform: perspective(1000px) rotateY(-5deg) rotateX(5deg);
}

.hero-mockup-dashboard:hover {
  transform: perspective(1000px) rotateY(0deg) rotateX(0deg) scale(1.02);
  box-shadow: 0 20px 50px rgba(0, 217, 255, 0.12), var(--shadow-lg);
  border-color: rgba(0, 217, 255, 0.2);
}

@keyframes floatDashboard {
  0%, 100% { transform: perspective(1000px) rotateY(-5deg) rotateX(5deg) translateY(0); }
  50% { transform: perspective(1000px) rotateY(-3deg) rotateX(3deg) translateY(-8px); }
}

.mockup-db-header {
  background: rgba(0, 0, 0, 0.3);
  padding: 0.6rem 1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.6rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}

.db-brand-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.db-brand-label {
  color: var(--text-primary);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.3px;
  font-family: var(--font-main);
}

.db-header-right {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.db-live-label {
  font-size: 0.62rem;
  font-weight: 600;
  color: hsl(145, 80%, 45%);
  letter-spacing: 0.5px;
}

.mockup-db-content {
  display: flex;
  height: 180px;
}

.mockup-db-sidebar {
  width: 50px;
  background: rgba(0, 0, 0, 0.15);
  border-right: 1px solid rgba(255, 255, 255, 0.03);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1rem 0;
  gap: 1rem;
}

.mockup-db-sidebar .m-item {
  color: var(--text-muted);
  font-size: 0.9rem;
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6px;
  transition: all var(--transition-fast);
}

.mockup-db-sidebar .m-item.active {
  color: var(--color-primary);
  background: rgba(0, 217, 255, 0.05);
}

.mockup-db-main {
  flex-grow: 1;
  padding: 1.1rem;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.mockup-db-card {
  background: rgba(255, 255, 255, 0.015);
  border: 1px solid rgba(255, 255, 255, 0.03);
  border-radius: 10px;
  padding: 0.75rem 0.95rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.mockup-db-card-mini {
  background: rgba(255, 255, 255, 0.015);
  border: 1px solid rgba(255, 255, 255, 0.03);
  border-radius: 10px;
  padding: 0.6rem 0.95rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.m-card-title {
  font-size: 0.58rem;
  font-weight: 700;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.m-card-val {
  font-size: 0.92rem;
  font-weight: 800;
  color: #fff;
}

.cyan-text {
  color: var(--color-primary) !important;
  font-family: var(--font-display);
}

.m-toggles {
  display: flex;
  gap: 0.4rem;
  margin-top: 0.35rem;
}

.m-badge {
  font-size: 0.6rem;
  font-weight: 800;
  padding: 0.2rem 0.5rem;
  border-radius: 50px;
  color: var(--text-muted);
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.04);
}

.m-badge.active {
  color: var(--color-primary);
  background: rgba(0, 217, 255, 0.05);
  border-color: rgba(0, 217, 255, 0.15);
}

/* ==========================================================================
   LANDING METRICS SECTION
   ========================================================================== */
.landing-metrics-section {
  width: 100%;
  max-width: 1200px;
  margin: 3rem auto 1.5rem;
  padding: 0 2rem;
  z-index: 10;
  position: relative;
}

.metrics-container {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 1.5rem;
}

.metric-card {
  background: rgba(14, 18, 27, 0.4);
  border: 1px solid var(--border-color);
  border-radius: 18px;
  padding: 1.3rem 1.6rem;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  position: relative;
  overflow: hidden;
}

.metric-card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,0.005) 0%, rgba(255,255,255,0.025) 100%);
  pointer-events: none;
}

.metric-card:hover {
  transform: translateY(-4px);
  border-color: rgba(0, 217, 255, 0.15);
  box-shadow: 0 10px 25px rgba(0, 217, 255, 0.04);
}

.metric-icon-box {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid var(--border-color);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.3rem;
  flex-shrink: 0;
  transition: all 0.3s ease;
}

.metric-card:hover .metric-icon-box {
  transform: scale(1.08);
  border-color: var(--color-primary-glow);
  background: rgba(0, 217, 255, 0.03);
}

.metric-info {
  text-align: left;
}

.metric-info h3 {
  font-family: var(--font-display);
  font-size: 1.45rem;
  font-weight: 800;
  color: #ffffff;
  margin: 0 0 0.15rem;
}

.metric-info p {
  font-size: 0.8rem;
  color: var(--text-secondary);
  margin: 0;
  font-weight: 600;
}

.color-cyan { color: var(--color-primary); }
.color-purple { color: var(--color-secondary); }
.color-yellow { color: var(--color-warning); }
.color-green { color: var(--color-success); }

/* ==========================================================================
   LANDING FAQ SECTION
   ========================================================================== */
.landing-faq-section {
  width: 100%;
  max-width: 800px;
  margin: 6rem auto 2rem;
  padding: 0 2rem;
  text-align: center;
  z-index: 10;
  position: relative;
}

.faq-section-title {
  font-family: var(--font-display);
  font-size: 2.3rem;
  font-weight: 800;
  letter-spacing: -0.5px;
  margin-bottom: 0.6rem;
  background: linear-gradient(135deg, #ffffff 40%, #c7d2fe 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.faq-section-desc {
  color: var(--text-secondary);
  font-size: 1rem;
  max-width: 550px;
  margin: 0 auto 3rem;
  line-height: 1.5;
  font-weight: 500;
}

.faq-accordion-container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  text-align: left;
}

.faq-item {
  background: rgba(14, 18, 27, 0.4);
  border: 1px solid var(--border-color);
  border-radius: 16px;
  overflow: hidden;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  transition: all 0.3s ease;
}

.faq-item:hover {
  border-color: rgba(255, 255, 255, 0.1);
  background: rgba(24, 34, 57, 0.2);
}

.faq-header {
  padding: 1.3rem 1.6rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  user-select: none;
  font-weight: 700;
  font-size: 1.02rem;
  color: #ffffff;
}

.faq-arrow {
  transition: transform var(--transition-normal);
  color: var(--text-muted);
  font-size: 0.9rem;
}

.faq-item.active {
  border-color: var(--color-primary-glow);
  box-shadow: 0 8px 25px rgba(0, 217, 255, 0.03);
}

.faq-item.active .faq-arrow {
  transform: rotate(180deg);
  color: var(--color-primary);
}

.faq-answer {
  max-height: 0;
  overflow: hidden;
  padding: 0 1.6rem;
  transition: max-height var(--transition-normal), padding var(--transition-normal), opacity var(--transition-normal);
  opacity: 0;
}

.faq-item.active .faq-answer {
  max-height: 200px;
  padding: 0 1.6rem 1.4rem;
  opacity: 1;
}

.faq-answer p {
  color: var(--text-secondary);
  font-size: 0.9rem;
  line-height: 1.55;
  margin: 0;
  font-weight: 500;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
  padding-top: 1rem;
}

/* Responsive Tweak for Hero */
@media (max-width: 900px) {
  .hero-content-wrapper {
    grid-template-columns: 1fr;
    gap: 3.5rem;
    text-align: center;
  }
  
  .hero-text-side {
    align-items: center;
    text-align: center;
  }
  
  .hero-main-title {
    font-size: 2.8rem;
  }
  
  .hero-main-desc {
    max-width: 500px;
  }
  
  .hero-buttons-container {
    justify-content: center;
  }
}

/* ==========================================================================
   SERVER SELECTOR VIEW STYLES
   ========================================================================== */
#server-selector-view {
  width: 100%;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 2;
}

.user-profile-nav {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid var(--border-color);
  padding: 0.45rem 1rem;
  border-radius: 50px;
  transition: border-color var(--transition-fast);
}

.user-profile-nav:hover {
  border-color: rgba(255, 255, 255, 0.1);
}

#selector-user-avatar {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1.5px solid var(--color-primary);
  background: #000;
}

#selector-user-name {
  font-size: 0.88rem;
  font-weight: 700;
  color: #fff;
}

.selector-logout {
  background: transparent;
  border: none;
  color: var(--text-secondary);
  font-size: 0.95rem;
  cursor: pointer;
  padding: 0.2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: color var(--transition-fast);
}

.selector-logout:hover {
  color: var(--color-danger);
}

.selector-main {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  padding: 4rem 2.5rem;
  flex-grow: 1;
}

.selector-main h1 {
  font-family: var(--font-display);
  font-size: 2.5rem;
  font-weight: 900;
  letter-spacing: -0.75px;
  margin-bottom: 0.4rem;
  background: linear-gradient(to right, #ffffff, #c7d2fe, var(--color-primary));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.selector-subtitle {
  color: var(--text-secondary);
  font-size: 1.05rem;
  margin-bottom: 2.5rem;
  font-weight: 500;
}

.selector-subtitle span {
  color: var(--color-primary);
  font-weight: 700;
}

.selector-controls {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  margin-bottom: 3.5rem;
  flex-wrap: wrap;
}

.selector-search-box {
  position: relative;
  flex-grow: 1;
  max-width: 480px;
}

.selector-search-box i {
  position: absolute;
  left: 1.1rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--text-muted);
  font-size: 0.95rem;
  transition: color var(--transition-fast);
}

.selector-search-box input {
  width: 100%;
  padding: 0.85rem 1.1rem 0.85rem 2.6rem;
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  color: #fff;
  font-family: var(--font-main);
  font-size: 0.92rem;
  font-weight: 500;
  outline: none;
  transition: all var(--transition-fast);
  backdrop-filter: var(--glass-blur);
}

.selector-search-box input:focus {
  border-color: var(--color-primary);
  box-shadow: 0 0 15px var(--color-primary-glow);
  background: rgba(0, 0, 0, 0.4);
}

.selector-search-box input:focus + i {
  color: var(--color-primary);
}

.refresh-btn {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid var(--border-color);
  color: #fff;
  border-radius: 12px;
  padding: 0.85rem 1.5rem;
  font-size: 0.92rem;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: all var(--transition-fast);
  backdrop-filter: var(--glass-blur);
}

.refresh-btn:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.15);
  transform: translateY(-1px);
}

.refresh-btn i {
  font-size: 0.88rem;
  transition: transform 0.5s ease;
}

.refresh-btn:hover i {
  transform: rotate(180deg);
}

.servers-section h2 {
  font-family: var(--font-display);
  font-size: 1.35rem;
  font-weight: 800;
  margin-bottom: 1.4rem;
  color: #ffffff;
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.servers-section h2::after {
  content: '';
  flex-grow: 1;
  height: 1px;
  background: linear-gradient(to right, rgba(255,255,255,0.08), transparent);
}

.servers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 1.4rem;
}

.server-card-item {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: 16px;
  padding: 1.15rem 1.4rem;
  display: flex;
  align-items: center;
  gap: 1.1rem;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
  position: relative;
  overflow: hidden;
}

.server-card-item::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,0.01) 0%, rgba(255,255,255,0.03) 100%);
  pointer-events: none;
}

.server-card-item:hover {
  transform: translateY(-4px);
  border-color: var(--color-primary-glow);
  box-shadow: 0 10px 25px rgba(0, 217, 255, 0.06);
}

.server-card-item.invitable:hover {
  border-color: var(--color-secondary-glow);
  box-shadow: 0 10px 25px rgba(167, 139, 250, 0.06);
}

.server-card-avatar {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  object-fit: cover;
  border: 1.5px solid var(--border-color);
  background: #0d121f;
  transition: border-color 0.25s ease;
}

.server-card-item:hover .server-card-avatar {
  border-color: var(--color-primary);
}

.server-card-item.invitable:hover .server-card-avatar {
  border-color: var(--color-secondary);
}

.server-card-avatar-placeholder {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.02);
  border: 1.5px solid var(--border-color);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--text-secondary);
  text-transform: uppercase;
}

.server-card-info {
  flex-grow: 1;
  min-width: 0;
}

.server-card-info h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 0.2rem;
}

.server-card-info span {
  font-size: 0.8rem;
  color: var(--text-secondary);
  font-weight: 500;
  display: block;
}

.server-card-btn {
  padding: 0.55rem 1.15rem;
  border-radius: 10px;
  font-family: var(--font-main);
  font-size: 0.85rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.25s ease;
  text-decoration: none;
  text-align: center;
}

.server-card-btn.active-btn {
  background: var(--color-primary-glow);
  color: var(--color-primary);
  border: 1px solid rgba(0, 217, 255, 0.2);
}

.server-card-btn.active-btn:hover {
  background: var(--color-primary);
  color: #07090e;
  border-color: var(--color-primary);
  box-shadow: var(--shadow-glow-cyan);
}

.server-card-btn.invite-btn {
  background: rgba(255, 255, 255, 0.04);
  color: #fff;
  border: 1px solid var(--border-color);
}

.server-card-btn.invite-btn:hover {
  background: var(--color-secondary);
  color: #fff;
  border-color: var(--color-secondary);
  box-shadow: var(--shadow-glow-purple);
}

.selector-empty-grid {
  grid-column: 1 / -1;
  text-align: center;
  padding: 3rem;
  color: var(--text-muted);
  border: 1.5px dashed var(--border-color);
  border-radius: 16px;
  font-size: 0.95rem;
  font-weight: 500;
}

/* ==========================================================================
   BACK SELECTOR SIDEBAR ELEMENT
   ========================================================================== */
.back-selector-btn {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--border-color);
  color: var(--text-secondary);
  border-radius: 10px;
  padding: 0.65rem 1rem;
  font-family: var(--font-main);
  font-size: 0.86rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.25s ease;
}

.back-selector-btn:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.15);
  color: #fff;
  transform: translateX(-2px);
}

.back-selector-btn i {
  font-size: 0.78rem;
  transition: transform 0.25s ease;
}

.back-selector-btn:hover i {
  transform: translateX(-2px);
}

/* View Sections setup */
.view-section {
  width: 100%;
}

/* Responsive Landing header / hero */
@media (max-width: 768px) {
  .landing-header {
    padding: 1.1rem 1.8rem;
  }
  .landing-nav {
    display: none;
  }
  .hero-bot-name {
    font-size: 2.8rem;
  }
  .hero-bot-description {
    font-size: 1.05rem;
  }
  .selector-main {
    padding: 2.5rem 1.5rem;
  }
}

/* ==========================================================================
   LANDING PAGE ADDITIONS (FEATURES & MOCKUPS)
   ========================================================================== */
.landing-servers-section {
  width: 100%;
  max-width: 1200px;
  margin: 3rem auto 5rem;
  padding: 0 2rem;
  text-align: center;
}

.servers-stats-title {
  font-family: var(--font-display);
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  color: var(--text-muted);
  margin-bottom: 2rem;
}

.landing-servers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 1.5rem;
  justify-content: center;
}

.landing-server-card {
  background: var(--bg-card);
  border: 1px solid var(--border-color);
  border-radius: 16px;
  padding: 1rem 1.5rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  transition: all 0.3s ease;
  backdrop-filter: var(--glass-blur);
  text-align: left;
}

.landing-server-card:hover {
  transform: translateY(-4px);
  border-color: var(--color-primary-glow);
  box-shadow: 0 8px 24px rgba(0, 217, 255, 0.05);
}

.landing-server-avatar-placeholder {
  flex-shrink: 0;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
  border: 2px solid var(--border-color);
  transition: border-color var(--transition-fast);
}

.landing-server-card:hover .landing-server-avatar-placeholder {
  border-color: var(--color-primary);
}

.server-card-detail h4 {
  font-size: 0.95rem;
  font-weight: 700;
  color: #fff;
  margin: 0;
}

.server-card-detail span {
  font-size: 0.8rem;
  color: var(--text-secondary);
  font-weight: 500;
}

/* Feature Items block layout */
.landing-features-section {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem 8rem;
  display: flex;
  flex-direction: column;
  gap: 7rem;
}

.landing-feature-item {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 4rem;
  align-items: center;
}

.landing-feature-item.reverse {
  grid-template-columns: 1.1fr 1fr;
}

.landing-feature-item.reverse .feature-text {
  order: 2;
}

.landing-feature-item.reverse .feature-graphic {
  order: 1;
}

.feature-text {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  text-align: left;
}

.feature-title {
  font-family: var(--font-display);
  font-size: 2.2rem;
  font-weight: 800;
  letter-spacing: -0.5px;
  background: linear-gradient(135deg, #ffffff 40%, #c7d2fe 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.feature-description {
  color: var(--text-secondary);
  font-size: 1.05rem;
  line-height: 1.6;
  font-weight: 500;
}

.feature-graphic {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 100%;
}

/* Welcome Card Mockup styling */
.welcome-card-wrapper {
  perspective: 1000px;
}

.mockup-welcome-banner {
  width: 100%;
  max-width: 500px;
  height: 230px;
  border-radius: 20px;
  border: 1px solid var(--border-color);
  position: relative;
  overflow: hidden;
  box-shadow: var(--shadow-lg), 0 0 30px rgba(0, 0, 0, 0.4);
  transition: transform 0.5s ease;
}

.mockup-welcome-banner:hover {
  transform: rotateY(-5deg) rotateX(5deg);
}

.mockup-welcome-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: blur(2px) brightness(0.65);
}

.mockup-welcome-content {
  position: relative;
  z-index: 2;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  text-align: center;
  background: rgba(10, 14, 23, 0.45);
  backdrop-filter: blur(3px);
}

.mockup-welcome-avatar-container {
  width: 76px;
  height: 76px;
  border-radius: 50%;
  border: 3px solid var(--color-primary);
  box-shadow: var(--shadow-glow-cyan);
  overflow: hidden;
  margin-bottom: 0.75rem;
}

.mockup-welcome-avatar {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mockup-welcome-title {
  font-family: var(--font-display);
  font-size: 1.45rem;
  font-weight: 800;
  letter-spacing: 0.5px;
  color: #fff;
  margin: 0;
}

.mockup-welcome-username {
  font-size: 0.95rem;
  font-weight: 600;
  color: var(--text-secondary);
  margin: 0.15rem 0 0.4rem;
}

.mockup-welcome-sub {
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--color-primary);
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* Rank Card Mockup styling */
.rank-card-wrapper {
  perspective: 1000px;
}

.mockup-rank-card {
  width: 100%;
  max-width: 500px;
  height: 150px;
  border-radius: 18px;
  border: 1px solid var(--border-color);
  position: relative;
  overflow: hidden;
  box-shadow: var(--shadow-lg), 0 0 30px rgba(0, 0, 0, 0.4);
  transition: transform 0.5s ease;
}

.mockup-rank-card:hover {
  transform: rotateY(5deg) rotateX(5deg);
}

.mockup-rank-card-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  filter: blur(1px) brightness(0.6);
}

.mockup-rank-card-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(7, 9, 14, 0.92) 0%, rgba(7, 9, 14, 0.75) 100%);
  z-index: 1;
}

.mockup-rank-header {
  position: relative;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  padding: 1.1rem 1.4rem 0.5rem;
  font-family: var(--font-display);
  font-size: 0.85rem;
  font-weight: 800;
  color: var(--text-muted);
}

.mockup-rank-header span span {
  color: #fff;
  font-size: 1.15rem;
}

.mockup-rank-header .mockup-rank-level span {
  color: var(--color-secondary);
}

.mockup-rank-body {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  padding: 0 1.4rem 1.2rem;
}

.mockup-rank-avatar {
  width: 62px;
  height: 62px;
  border-radius: 50%;
  object-fit: cover;
  border: 2.5px solid var(--color-secondary);
  box-shadow: var(--shadow-glow-purple);
}

.mockup-rank-info {
  flex-grow: 1;
}

.mockup-rank-name {
  font-size: 1.2rem;
  font-weight: 800;
  color: #fff;
  margin-bottom: 0.5rem;
}

.mockup-rank-xp-wrapper {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.mockup-rank-xp-bar {
  flex-grow: 1;
  height: 10px;
  background: rgba(255, 255, 255, 0.08);
  border-radius: 5px;
  overflow: hidden;
}

.mockup-rank-xp-fill {
  height: 100%;
  background: var(--color-secondary);
  box-shadow: 0 0 10px var(--color-secondary-glow);
  border-radius: 5px;
}

.mockup-rank-xp-text {
  font-size: 0.76rem;
  font-weight: 700;
  color: var(--text-secondary);
  white-space: nowrap;
}

/* Discord Chat logs styling */
.chat-mockup-wrapper {
  width: 100%;
}

.mockup-discord-chat {
  background: #313338; /* Discord Dark Theme v14 Chat bg */
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.03);
  box-shadow: var(--shadow-lg), 0 10px 40px rgba(0, 0, 0, 0.6);
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
  width: 100%;
  max-width: 520px;
  text-align: left;
}

.chat-row {
  display: flex;
  gap: 1rem;
}

.chat-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.chat-content {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  flex-grow: 1;
  min-width: 0;
}

.chat-user-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.chat-username {
  font-size: 0.95rem;
  font-weight: 600;
  color: #f2f3f5;
}

.bot-badge {
  background: #5865f2; /* Discord Blurple */
  color: #fff;
  font-size: 0.65rem;
  font-weight: 700;
  padding: 0.1rem 0.28rem;
  border-radius: 3px;
  line-height: 1;
}

.chat-time {
  font-size: 0.72rem;
  color: #949ba4;
}

.chat-command-run {
  font-size: 0.78rem;
  color: #949ba4;
  margin-bottom: 0.15rem;
  display: flex;
  align-items: center;
  gap: 0.35rem;
}

.cmd-badge {
  background: rgba(255, 255, 255, 0.05);
  border-radius: 3px;
  padding: 0.05rem 0.25rem;
  color: #00b0f4;
  font-family: monospace;
  font-weight: bold;
}

.chat-user-mention {
  color: #e3e5e8;
  font-weight: 600;
}

/* Discord embeds */
.chat-embed {
  display: flex;
  background: #2b2d31; /* Discord Embed bg */
  border-radius: 4px;
  overflow: hidden;
  max-width: 440px;
  margin-top: 0.2rem;
}

.embed-border-left {
  width: 4px;
  flex-shrink: 0;
}

.embed-body {
  padding: 0.75rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.embed-body h4 {
  font-size: 0.92rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 0.2rem;
}

.embed-body p {
  font-size: 0.82rem;
  color: #dbdee1;
  margin: 0;
}

/* Fun command chat style */
.chat-text-reply {
  font-size: 0.92rem;
  color: #dbdee1;
  background: rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.04);
  border-radius: 6px;
  padding: 0.75rem 1rem;
  margin-top: 0.15rem;
}

@media (max-width: 900px) {
  .landing-feature-item,
  .landing-feature-item.reverse {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }
  
  .landing-feature-item.reverse .feature-text {
    order: 1;
  }
  
  .landing-feature-item.reverse .feature-graphic {
    order: 2;
  }
  
  .landing-features-section {
    gap: 5rem;
    padding-bottom: 5rem;
  }
}

/* ==========================================================================
   LANDING PAGE ADDITIONS - INVITE CARD MOCKUP & COMMAND EXPLORER
   ========================================================================== */
.mockup-invite-card {
  width: 100%;
  max-width: 500px;
  background: linear-gradient(135deg, #050611 0%, #07091a 48%, #03182b 100%);
  border: 2px solid rgba(126, 63, 255, 0.45);
  border-radius: 18px;
  padding: 1.25rem;
  box-shadow: var(--shadow-lg), 0 0 25px rgba(126, 63, 255, 0.25);
  display: flex;
  flex-direction: column;
  gap: 0.9rem;
  transition: transform 0.4s ease;
  position: relative;
  text-align: left;
}

.mockup-invite-card:hover {
  transform: rotateY(-3deg) rotateX(3deg) translateY(-2px);
}

.invite-card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.invite-title-main {
  font-family: var(--font-display);
  font-size: 1.4rem;
  font-weight: 900;
  background: linear-gradient(135deg, #ffffff 0%, #e7f8ff 45%, #00bff5 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin: 0;
  letter-spacing: 0.5px;
}

.invite-subtitle-sub {
  font-size: 0.78rem;
  color: rgba(255, 255, 255, 0.7);
  margin-top: 0.1rem;
}

.invite-avatar-container {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: linear-gradient(135deg, #22f6ff, #126cff);
  padding: 3px;
  box-shadow: 0 0 12px rgba(34, 246, 255, 0.4);
}

.invite-member-avatar {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}

.invite-join-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.4rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.spark-icon {
  color: #22eaff;
  animation: pulse 2s infinite alternate;
}

.join-announcement {
  font-size: 0.95rem;
  color: #ffffff;
  margin: 0;
}

.invite-details-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  gap: 0.75rem;
}

.invite-subcard {
  background: rgba(0, 0, 0, 0.2);
  border-radius: 12px;
  padding: 0.75rem;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.inviter-box {
  border: 1px solid rgba(160, 72, 255, 0.6);
}

.counter-box {
  border: 1px solid rgba(34, 207, 255, 0.6);
}

.subcard-header-row {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.5px;
}

.purple-icon {
  color: #c77cff;
}

.blue-icon {
  color: #20eaff;
}

.subcard-header-row span {
  color: rgba(255, 255, 255, 0.85);
}

.inviter-user-row {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.inviter-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 2px solid #9c35ff;
}

.inviter-user-detail h4 {
  font-size: 0.85rem;
  font-weight: 700;
  color: #fff;
  margin: 0;
}

.inviter-role-badge {
  display: inline-block;
  font-size: 0.62rem;
  font-weight: 600;
  background: rgba(160, 72, 255, 0.15);
  color: #c77cff;
  border: 1px solid rgba(160, 72, 255, 0.4);
  padding: 0.05rem 0.3rem;
  border-radius: 4px;
  margin-top: 0.15rem;
}

.counter-number-row {
  display: flex;
  align-items: baseline;
  gap: 0.35rem;
}

.invite-big-number {
  font-family: var(--font-display);
  font-size: 2.2rem;
  font-weight: 900;
  color: #20eaff;
  line-height: 1;
}

.invite-label-text {
  font-size: 0.72rem;
  color: rgba(255, 255, 255, 0.75);
}

.invite-card-footer {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.4rem;
  font-size: 0.8rem;
  font-weight: 700;
  color: rgba(235, 242, 255, 0.88);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  padding-top: 0.6rem;
}

.handshake-icon {
  color: #00e5ff;
}

/* Command Explorer Badges */
.cmd-badge-type {
  font-size: 0.68rem;
  font-weight: 700;
  padding: 0.15rem 0.5rem;
  border-radius: 6px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.cmd-badge-type.slash-badge {
  background: rgba(0, 217, 255, 0.08);
  color: var(--color-primary);
  border: 1px solid rgba(0, 217, 255, 0.2);
  box-shadow: 0 0 10px rgba(0, 217, 255, 0.05);
}

.cmd-badge-type.pref-badge {
  background: rgba(167, 139, 250, 0.08);
  color: var(--color-secondary);
  border: 1px solid rgba(167, 139, 250, 0.2);
  box-shadow: 0 0 10px rgba(167, 139, 250, 0.05);
}

.landing-cmd-card {
  position: relative;
  overflow: hidden;
}

.landing-cmd-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 255, 255, 0.12);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

/* Sidebar Brand cursor pointer */
/* Sidebar Brand cursor pointer */
.sidebar-brand {
  cursor: pointer;
}

/* ==========================================================================
   USER RANK CARD & MOCKUPS & FOOTER STYLES
   ========================================================================== */

/* 1. Dashboard User Rank Card */
.dashboard-rank-card {
  width: 100%;
  background: linear-gradient(135deg, rgba(22, 28, 45, 0.75), rgba(13, 17, 28, 0.9));
  border: 1px solid rgba(0, 217, 255, 0.2);
  border-radius: 20px;
  padding: 1.5rem 2rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.4), inset 0 1px 0 rgba(255, 255, 255, 0.05), 0 0 20px rgba(0, 217, 255, 0.05);
  backdrop-filter: var(--glass-blur);
  flex-wrap: wrap;
  gap: 1.5rem;
}

.rank-card-left {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex: 1;
  min-width: 250px;
}

.rank-avatar-wrapper {
  position: relative;
  width: 85px;
  height: 85px;
  border-radius: 50%;
  padding: 3px;
  background: linear-gradient(135deg, #00f2fe, #4facfe);
  box-shadow: 0 0 15px rgba(0, 242, 254, 0.25);
  flex-shrink: 0;
}

.rank-user-avatar {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #0d111c;
}

.rank-user-info {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  flex-grow: 1;
}

.rank-user-name {
  font-size: 1.3rem;
  font-weight: 800;
  color: #fff;
  margin: 0;
  font-family: 'Outfit', sans-serif;
}

.rank-user-handle {
  font-size: 0.85rem;
  color: rgba(255, 255, 255, 0.5);
  font-weight: 500;
}

.rank-xp-container {
  margin-top: 0.6rem;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.rank-xp-text {
  font-size: 0.82rem;
  color: rgba(255, 255, 255, 0.85);
}

.rank-xp-text strong {
  color: #00f2fe;
  font-weight: 700;
}

.rank-progress-bar {
  height: 8px;
  width: 100%;
  max-width: 280px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.05);
}

.rank-progress-fill {
  height: 100%;
  background: linear-gradient(90deg, #00f2fe, #4facfe);
  border-radius: 4px;
  transition: width 1s cubic-bezier(0.4, 0, 0.2, 1);
}

.rank-global-pos {
  font-size: 0.72rem;
  font-weight: 700;
  color: rgba(255, 255, 255, 0.4);
  letter-spacing: 0.5px;
  text-transform: uppercase;
  margin-top: 0.1rem;
}

.rank-pos-val {
  color: #ff8e53;
  font-size: 0.82rem;
  font-weight: 800;
  margin-left: 0.2rem;
}

.rank-card-right {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #00f2fe, #4facfe);
  color: #0d111c;
  padding: 0.75rem 1.25rem;
  border-radius: 14px;
  clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 15% 100%);
  min-width: 90px;
  box-shadow: 0 4px 15px rgba(0, 242, 254, 0.2);
}

.rank-level-num {
  font-family: 'Outfit', sans-serif;
  font-size: 2.3rem;
  font-weight: 900;
  line-height: 1;
}

.rank-level-label {
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 1px;
  margin-top: 0.1rem;
  opacity: 0.8;
}

/* 2. Discord Chat Mockups & Logs Embeds */
.mockup-discord-chat {
  background: #313338;
  border-radius: 12px;
  padding: 1.25rem;
  border: 1px solid rgba(255,255,255,0.06);
  font-family: 'gg sans', 'Helvetica Neue', Arial, sans-serif;
  text-align: left;
  box-shadow: var(--shadow-lg);
}

.chat-row {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.25rem;
}

.chat-row:last-child {
  margin-bottom: 0;
}

.chat-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  flex-shrink: 0;
}

.chat-content {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  flex-grow: 1;
}

.chat-user-header {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  flex-wrap: wrap;
}

.chat-username {
  font-size: 0.98rem;
  font-weight: 600;
  color: #f2f3f5;
}

.chat-time {
  font-size: 0.72rem;
  color: #949ba4;
  font-weight: 500;
}

.chat-embed {
  background: #2b2d31;
  border-left: 4px solid #1e1f22;
  border-radius: 4px;
  padding: 0.6rem 0.8rem;
  margin-top: 0.25rem;
  max-width: 520px;
  display: flex;
  flex-direction: column;
}

.embed-body {
  display: flex;
  flex-direction: column;
}

.embed-section {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-top: 0.5rem;
}

.embed-section-title {
  font-size: 0.75rem;
  font-weight: 700;
  color: #949ba4;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.embed-timestamp-badge {
  font-size: 0.8rem;
  color: #dbdee1;
  background: #1e1f22;
  padding: 0.25rem 0.5rem;
  border-radius: 4px;
  display: inline-block;
  width: fit-content;
  border: 1px solid rgba(255,255,255,0.04);
}

.embed-id-block {
  background: #1e1f22;
  border-radius: 4px;
  padding: 0.5rem 0.75rem;
  font-family: monospace;
  font-size: 0.78rem;
  color: #dbdee1;
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  border: 1px solid rgba(255,255,255,0.04);
}

.embed-id-block code {
  color: #e3e5e8;
  background: rgba(255, 255, 255, 0.05);
  padding: 0.05rem 0.25rem;
  border-radius: 3px;
  font-size: 0.75rem;
}

.chat-embed-footer {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.72rem;
  color: #949ba4;
  margin-top: 0.35rem;
}

.footer-avatar {
  width: 16px;
  height: 16px;
  border-radius: 50%;
}

.discord-role-badge {
  background: rgba(34, 246, 255, 0.1);
  border: 1px solid rgba(34, 246, 255, 0.2);
  padding: 0.15rem 0.45rem;
  border-radius: 4px;
  display: inline-flex;
  align-items: center;
  font-size: 0.76rem;
  font-weight: 600;
}

/* 3. Minigames Compatibility /ship */
.ship-graphic-card {
  background: linear-gradient(145deg, #1e1e2f, #11111d);
  border-radius: 16px;
  padding: 1.25rem;
  border: 1px solid rgba(255, 77, 166, 0.2);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.3), 0 0 15px rgba(255, 77, 166, 0.05);
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
  width: 100%;
  max-width: 320px;
  margin: 0.5rem auto 0;
  position: relative;
}

.ship-card-title {
  font-family: 'Outfit', sans-serif;
  font-size: 1.15rem;
  font-weight: 800;
  color: #fff;
  letter-spacing: 0.5px;
}

.ship-avatars-row {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  margin-top: 0.25rem;
}

.ship-avatar-container {
  position: relative;
  width: 68px;
  height: 68px;
  border-radius: 50%;
  border: 3px solid;
  padding: 2px;
  flex-shrink: 0;
}

.ship-user-avatar {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  background: #2f3136;
}

.ship-avatar-heart {
  position: absolute;
  bottom: -4px;
  right: -4px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.65rem;
  color: #fff;
  border: 2px solid #11111d;
}

.ship-heart-meter {
  width: 48px;
  height: 48px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.heart-svg {
  width: 100%;
  height: 100%;
  filter: drop-shadow(0 0 6px rgba(255, 77, 166, 0.6));
  animation: beat 1.2s infinite alternate;
}

.ship-usernames-row {
  display: flex;
  justify-content: space-between;
  width: 100%;
  font-size: 0.76rem;
  color: rgba(255, 255, 255, 0.6);
  font-weight: 600;
  padding: 0 0.5rem;
}

.ship-usernames-row span {
  max-width: 100px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ship-percent-badge {
  background: linear-gradient(135deg, #ff4da6, #ff7ac3);
  color: #fff;
  padding: 0.3rem 1rem;
  border-radius: 20px;
  font-size: 1.2rem;
  font-weight: 900;
  font-family: 'Outfit', sans-serif;
  box-shadow: 0 4px 12px rgba(255, 77, 166, 0.35);
  letter-spacing: 0.5px;
}

.ship-footer-text {
  font-size: 0.8rem;
  color: #ff7ac3;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
}

@keyframes beat {
  0% { transform: scale(0.92); }
  100% { transform: scale(1.08); }
}

/* 4. Landing Footer & Creator Credits */
.landing-footer-main {
  position: relative;
  background: linear-gradient(to top, #060913 0%, #0d1222 100%);
  border-top: 1px solid var(--border-color);
  padding: 4rem 2rem 2rem;
  overflow: hidden;
  margin-top: 5rem;
}

.footer-glow-effect {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 600px;
  height: 300px;
  background: radial-gradient(circle, rgba(0, 217, 255, 0.08) 0%, rgba(0, 0, 0, 0) 70%);
  pointer-events: none;
  z-index: 1;
}

.footer-content {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  gap: 3rem;
}

.footer-left {
  flex: 1;
  min-width: 280px;
  max-width: 450px;
}

.footer-brand {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-size: 1.6rem;
  font-weight: 800;
  color: #fff;
  font-family: 'Outfit', sans-serif;
  margin-bottom: 1rem;
}

.brand-logo-icon {
  color: var(--color-primary);
  font-size: 1.8rem;
  text-shadow: 0 0 15px rgba(0, 217, 255, 0.4);
}

.footer-desc {
  color: var(--text-secondary);
  font-size: 0.92rem;
  line-height: 1.6;
  margin: 0;
}

.footer-right {
  display: flex;
  gap: 4rem;
}

.footer-credits {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.footer-credits h3 {
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 0.2rem;
}

.creator-name {
  font-size: 1.15rem;
  font-weight: 700;
  color: #fff;
  font-family: 'Outfit', sans-serif;
}

.creator-socials {
  display: flex;
  gap: 0.75rem;
  margin-top: 0.3rem;
}

.social-link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  color: #fff;
  font-size: 1.05rem;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.08);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.social-link:hover {
  transform: translateY(-3px);
  color: #fff;
}

.social-link.instagram:hover {
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%,#d6249f 60%,#285AEB 90%);
  border-color: transparent;
  box-shadow: 0 5px 15px rgba(214, 36, 159, 0.4);
}

.social-link.tiktok:hover {
  background: #000;
  border-color: #00f2fe;
  box-shadow: 0 5px 15px rgba(0, 242, 254, 0.4);
  color: #fff;
  text-shadow: 1px 1px 0px #fd5949, -1px -1px 0px #00f2fe;
}

.footer-bottom {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 3rem auto 0;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  padding-top: 1.5rem;
  text-align: center;
}

.footer-bottom p {
  color: var(--text-muted);
  font-size: 0.82rem;
  margin: 0;
}

/* ==========================================================================
   INTERACTIVE SPARKLINES, HOVER LIFTS & Sleek FORM ELEMENTS
   ========================================================================== */

/* Sparkline Signal Line */
.status-sparkline {
  width: 100%;
  height: 40px;
  margin-top: 0.8rem;
  overflow: visible;
}

.status-sparkline path {
  fill: none;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.status-sparkline.good path {
  stroke: #2ecc71;
  filter: drop-shadow(0 0 5px rgba(46, 204, 113, 0.5));
}

.status-sparkline.bad path {
  stroke: #e74c3c;
  filter: drop-shadow(0 0 5px rgba(231, 76, 60, 0.5));
}

/* Hover scales on all cards */
.dashboard-rank-card,
.mockup-discord-chat,
.ship-graphic-card {
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1), border-color 0.3s ease;
}

.dashboard-rank-card:hover,
.mockup-discord-chat:hover,
.ship-graphic-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.55), 0 0 30px rgba(0, 217, 255, 0.18) !important;
  border-color: rgba(0, 217, 255, 0.45) !important;
}

/* General Config Card Premium */
.general-config-card-premium {
  background: linear-gradient(135deg, rgba(22, 28, 45, 0.4) 0%, rgba(9, 13, 22, 0.6) 100%);
  border: 1px solid var(--border-color);
  border-radius: 16px;
  padding: 1.6rem 2.2rem;
  margin-bottom: 2.5rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.5rem;
  backdrop-filter: var(--glass-blur);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.general-config-card-premium:hover {
  border-color: rgba(0, 217, 255, 0.25);
  box-shadow: 0 8px 30px rgba(0, 217, 255, 0.05);
}

.general-config-text h3 {
  margin: 0;
  display: flex;
  align-items: center;
  gap: 0.6rem;
  color: #fff;
  font-size: 1.25rem;
  font-weight: 700;
  font-family: var(--font-display);
}

.brand-icon-glow {
  color: var(--color-primary);
  text-shadow: 0 0 10px rgba(0, 217, 255, 0.5);
}

.general-config-text p {
  margin: 0.35rem 0 0 0;
  color: var(--text-secondary);
  font-size: 0.88rem;
  font-weight: 500;
}

.form-group-horizontal {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.form-group-horizontal label {
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Beautiful Inputs inside Settings */
.settings-card input[type="text"],
.settings-card input[type="number"],
.settings-card textarea,
.settings-form-layout input[type="text"],
.settings-form-layout input[type="number"],
.settings-form-layout textarea {
  background: rgba(0, 0, 0, 0.3) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 10px !important;
  color: #ffffff !important;
  font-family: var(--font-main) !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
  padding: 0.75rem 1.1rem !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  backdrop-filter: var(--glass-blur) !important;
  outline: none !important;
}

.settings-card input[type="text"]:focus,
.settings-card input[type="number"]:focus,
.settings-card textarea:focus,
.settings-form-layout input[type="text"]:focus,
.settings-form-layout input[type="number"]:focus,
.settings-form-layout textarea:focus {
  border-color: var(--color-primary) !important;
  box-shadow: 0 0 15px var(--color-primary-glow) !important;
  background: rgba(0, 0, 0, 0.4) !important;
}

/* Settings Card Boxes grouping */
.setting-card-box {
  background: rgba(255, 255, 255, 0.015);
  border: 1px solid var(--border-color);
  border-radius: 14px;
  padding: 1.3rem 1.6rem;
  transition: all 0.3s ease;
}

.setting-card-box:hover {
  background: rgba(255, 255, 255, 0.025);
  border-color: rgba(255, 255, 255, 0.12);
}

.setting-box-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
}

/* ==========================================================================
   BREADCRUMBS STYLES
   ========================================================================== */
.breadcrumbs {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--text-secondary);
  user-select: none;
}

.breadcrumb-item {
  color: var(--text-secondary);
  transition: color 0.2s ease;
  display: flex;
  align-items: center;
  gap: 0.35rem;
}

.breadcrumb-item:not(.active) {
  cursor: pointer;
}

.breadcrumb-item:not(.active):hover {
  color: var(--color-primary);
}

.breadcrumb-item.active {
  color: var(--color-primary);
  text-shadow: 0 0 8px var(--color-primary-glow);
}

.breadcrumb-separator {
  color: var(--text-muted);
  font-size: 0.65rem;
}

/* ==========================================================================
   CIRCULAR EMOJI PICKER STYLES
   ========================================================================== */
.circular-emoji-picker {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(42px, 1fr));
  gap: 0.6rem;
  padding: 0.25rem;
}

.emoji-picker-item {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.03);
  border: 1.5px solid var(--border-color);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 1.25rem;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  user-select: none;
}

.emoji-picker-item img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}

.emoji-picker-item:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.25);
  transform: translateY(-2px) scale(1.05);
}

.emoji-picker-item.active {
  background: rgba(0, 217, 255, 0.08);
  border-color: var(--color-primary);
  box-shadow: 0 0 10px var(--color-primary-glow);
  transform: scale(1.05);
}

.emoji-picker-item.custom-trigger {
  color: var(--text-secondary);
  font-size: 1rem;
}

.emoji-picker-item.custom-trigger.active {
  color: var(--color-primary);
}

/* Scrollbar styling for emoji wrapper */
.emoji-picker-scroll-wrapper::-webkit-scrollbar {
  width: 5px;
}

.emoji-picker-scroll-wrapper::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.15);
  border-radius: 4px;
}

.emoji-picker-scroll-wrapper::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.08);
  border-radius: 4px;
}

.emoji-picker-scroll-wrapper::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.15);
}

/* ==========================================================================
   USER PROFILE ROLE BADGES STYLES
   ========================================================================== */
.profile-role-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 0.2rem 0.65rem;
  border-radius: 50px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-top: 0.4rem;
  box-shadow: var(--shadow-sm);
  width: fit-content;
}

.profile-role-badge.admin {
  background: rgba(239, 68, 68, 0.08);
  color: #ef4444;
  border: 1px solid rgba(239, 68, 68, 0.25);
  box-shadow: 0 0 10px rgba(239, 68, 68, 0.1);
}

.profile-role-badge.member {
  background: rgba(148, 163, 184, 0.08);
  color: #94a3b8;
  border: 1px solid rgba(148, 163, 184, 0.25);
}

/* ==========================================================================
   PREMIUM STYLISTIC ENHANCEMENTS
   ========================================================================== */
/* Glassmorphism Cards & Borders */
.stat-card, .shop-card, .settings-card, .general-config-card-premium, .hub-card, .modal-card, .welcome-box {
  background: rgba(13, 20, 38, 0.45) !important;
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 8px 32px 0 rgba(0, 0, 0, 0.37) !important;
  transition: transform var(--transition-normal), border-color var(--transition-normal), box-shadow var(--transition-normal) !important;
}

.stat-card:hover, .shop-card:hover, .settings-card:hover, .general-config-card-premium:hover, .hub-card:hover, .modal-card:hover {
  border-color: rgba(0, 217, 255, 0.25) !important;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.55), 0 0 15px rgba(0, 217, 255, 0.05) !important;
  transform: translateY(-2px);
}

/* Elegant smooth scrollbar */
::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.1);
  border: 2px solid var(--bg-main);
  border-radius: 20px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--color-primary);
  box-shadow: 0 0 15px var(--color-primary-glow);
}

/* Premium micro-interactions for buttons */
.submit-btn, .hero-btn, .login-btn, .back-selector-btn, .landing-login-btn, .refresh-btn {
  transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
  position: relative;
  overflow: hidden;
}

.submit-btn::before, .hero-btn::before, .login-btn::before, .refresh-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(120deg, transparent, rgba(255, 255, 255, 0.15), transparent);
  transition: all 0.6s ease;
}

.submit-btn:hover::before, .hero-btn:hover::before, .login-btn:hover::before, .refresh-btn:hover::before {
  left: 100%;
}

/* Subtle glow pulse on icons */
.brand-logo-icon, .brand-icon, .brand-icon-glow {
  animation: logoGlowPulse 4s ease-in-out infinite alternate;
}

@keyframes logoGlowPulse {
  0% { text-shadow: 0 0 5px rgba(0, 217, 255, 0.15); }
  100% { text-shadow: 0 0 15px rgba(0, 217, 255, 0.4); }
}

/* ==========================================================================
   MOBILE & RESPONSIVE LAYOUT STYLES
   ========================================================================== */

/* 1. Landing Header Hamburger Styles */
.landing-mobile-toggle {
  display: none;
  background: transparent;
  border: none;
  color: #fff;
  font-size: 1.5rem;
  cursor: pointer;
  z-index: 1000;
  padding: 0.5rem;
  transition: var(--transition-fast);
}

.landing-mobile-toggle:hover {
  color: var(--color-primary);
  transform: scale(1.05);
}

/* Mobile responsive landing navigation */
@media (max-width: 900px) {
  .landing-mobile-toggle {
    display: block;
  }

  .landing-nav {
    display: flex;
    position: fixed;
    top: 0;
    right: -100%;
    width: 280px;
    height: 100vh;
    background: rgba(7, 9, 14, 0.95);
    backdrop-filter: blur(25px);
    -webkit-backdrop-filter: blur(25px);
    border-left: 1px solid var(--border-color);
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    padding: 6rem 2rem 2rem 2rem;
    gap: 1.8rem;
    transition: right 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    z-index: 999;
    box-shadow: -10px 0 30px rgba(0,0,0,0.5);
  }

  .landing-nav.mobile-open {
    right: 0;
  }

  .landing-nav .nav-link {
    font-size: 1.1rem;
    width: 100%;
    padding: 0.5rem 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  }

  .landing-nav .nav-link:last-child {
    border-bottom: none;
  }

  .landing-header .header-right {
    margin-right: 1rem;
  }

  .landing-header .lang-selector, 
  .landing-header .premium-badge {
    display: none; /* Hide on small screens or place in menu */
  }
}

@media (max-width: 600px) {
  .landing-header {
    padding: 1rem 1.25rem;
  }

  .landing-header .header-right {
    gap: 0.75rem;
  }

  .landing-login-btn {
    padding: 0.5rem 1rem;
    font-size: 0.82rem;
  }

  .hero-bot-name {
    font-size: 2.8rem;
  }

  .hero-bot-description {
    font-size: 1.05rem;
  }

  .hero-action-buttons {
    flex-direction: column;
    width: 100%;
    max-width: 280px;
  }

  .hero-btn {
    width: 100%;
    justify-content: center;
  }
}

/* 2. Dashboard Mobile Layout Structure */
.dashboard-mobile-header {
  display: none;
  position: sticky;
  top: 0;
  width: 100%;
  height: 64px;
  background: rgba(7, 9, 14, 0.85);
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
  border-bottom: 1px solid var(--border-color);
  z-index: 99;
  justify-content: space-between;
  align-items: center;
  padding: 0 1.5rem;
}

.dashboard-menu-toggle {
  background: transparent;
  border: none;
  color: var(--text-primary);
  font-size: 1.35rem;
  cursor: pointer;
  padding: 0.4rem;
  transition: var(--transition-fast);
}

.dashboard-menu-toggle:hover {
  color: var(--color-primary);
}

.mobile-server-badge-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}

.mobile-server-avatar {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  border: 1.5px solid var(--color-primary);
  box-shadow: var(--shadow-glow-cyan);
}

.mobile-server-avatar-placeholder {
  width: 34px;
  height: 34px;
  border-radius: 8px;
  background: var(--bg-card);
  border: 1.5px solid var(--border-color);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-secondary);
}

.sidebar-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  z-index: 150;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.sidebar-overlay.active {
  opacity: 1;
  pointer-events: auto;
}

.sidebar-close-btn {
  display: none;
  position: absolute;
  top: 1.5rem;
  right: 1.5rem;
  background: transparent;
  border: none;
  color: var(--text-secondary);
  font-size: 1.4rem;
  cursor: pointer;
}

/* Media query for Drawer Sidebar on Mobile / Tablet */
@media (max-width: 1024px) {
  .dashboard-mobile-header {
    display: flex;
  }

  .sidebar-overlay {
    display: block;
  }

  .sidebar-close-btn {
    display: block;
  }

  .app-container {
    flex-direction: column;
  }

  /* Transform sidebar into a mobile slide-out drawer */
  .sidebar {
    position: fixed;
    top: 0;
    left: -320px; /* exact px so text never bleeds â€” avoids % ambiguity */
    width: 290px;
    height: 100vh;
    background: rgba(7, 9, 14, 0.98);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    z-index: 200;
    transition: left 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    border-right: 1px solid var(--border-color);
    box-shadow: 15px 0 40px rgba(0,0,0,0.6);
    padding: 1.6rem 1rem 1rem 1rem; /* tightened padding */
    overflow: hidden;      /* clip any text overflow from items */
    overflow-y: auto;      /* allow vertical scroll if content tall */
    display: flex;
    flex-direction: column;
    gap: 0.45rem;          /* closer gaps between drawer sections */
    box-sizing: border-box;
  }

  .sidebar.drawer-open {
    left: 0;
  }

  /* Reset layout settings for mobile sidebar â€” compact spacing */
  .sidebar-brand {
    margin-bottom: 0.3rem;
  }

  .auth-card {
    margin: 0.2rem 0;
  }

  .user-profile-mini {
    margin: 0.2rem 0;
    padding: 0.5rem 0.75rem; /* compact user profile */
  }

  .back-selector-wrapper {
    margin-bottom: 0.3rem !important;
  }

  .guild-selector-container {
    display: block !important;
    width: 100%;
    margin-bottom: 0.4rem;
  }

  .sidebar-menu {
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    overflow-x: hidden;        /* clip horizontal overflow */
    padding-bottom: 0.8rem;
    width: 100%;
    order: unset;
    gap: 0.18rem; /* closer navigation items */
    flex: 1;                   /* take remaining height */
    min-height: 0;             /* allow shrinking in flex container */
  }

  .sidebar-category-header {
    margin-top: 0.4rem;
    margin-bottom: 0.05rem;
    padding: 0 0.5rem;
  }

  .menu-item {
    flex-grow: unset;
    justify-content: flex-start;
    border-left: 3px solid transparent;
    border-bottom: none;
    padding: 0.5rem 0.75rem; /* closer buttons */
    width: 100%;
    box-sizing: border-box;
    white-space: normal;       /* RESET: was nowrap from tablet row mode */
    overflow: hidden;
    min-height: 38px;          /* touch target */
  }

  .menu-item.active {
    border-left-color: var(--color-primary);
    border-bottom-color: transparent;
    background: linear-gradient(90deg, rgba(0, 217, 255, 0.08) 0%, rgba(0, 217, 255, 0) 100%);
  }

  .bot-status-card {
    display: flex;
    margin-top: auto;
    padding: 0.85rem;
  }

  .god-mode-header-btn {
    padding: 0.45rem 0.9rem;
    height: 34px;
    font-size: 0.76rem;
  }

  .main-content {
    padding: 1rem 0.75rem; /* tightened content padding on mobile */
    gap: 1rem;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow-x: hidden;
  }
}

/* 3. Responsive Tables & Forms adaptation */
@media (max-width: 768px) {
  .table-container {
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .leaderboard-table {
    min-width: 600px;
  }

  .stats-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }

  .lookup-result-container {
    padding: 1.25rem;
  }

  .profile-grid-layout {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .subcard-stats {
    grid-template-columns: 1fr 1fr;
  }

  .modal-card {
    padding: 1.5rem;
    width: 95%;
  }

  .settings-card {
    padding: 1.5rem;
  }

  .setting-row {
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
  }

  .setting-controls {
    justify-content: space-between;
    width: 100%;
  }

  .setting-controls select {
    flex-grow: 1;
    min-width: unset;
  }

  .general-config-card-premium {
    flex-direction: column;
    align-items: stretch;
    padding: 1.5rem;
  }

  .general-config-inputs {
    width: 100%;
  }

  .form-group-horizontal {
    width: 100%;
  }

  .form-group-horizontal input {
    width: 100% !important;
  }
}

@media (max-width: 480px) {
  .subcard-stats {
    grid-template-columns: 1fr;
  }

  .cooldowns-grid {
    grid-template-columns: 1fr;
  }

  .bot-stats-horizontal {
    flex-direction: column;
    gap: 1rem;
  }

  .bot-stat-item {
    align-items: flex-start;
  }
}

/* ==========================================================================
   COMMAND CARD & WATERMARK REDESIGN
   ========================================================================== */
.dashboard-commands-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(290px, 1fr));
  gap: 1.5rem;
  margin-top: 1.5rem;
}

.dashboard-cmd-card, .landing-cmd-card {
  background: var(--bg-card) !important;
  border: 1px solid var(--border-color) !important;
  border-radius: 16px !important;
  padding: 1.5rem !important;
  position: relative !important;
  overflow: hidden !important;
  transition: all 0.35s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 0.8rem !important;
  box-shadow: var(--shadow-sm) !important;
}

.dashboard-cmd-card:hover, .landing-cmd-card:hover {
  transform: translateY(-5px);
  border-color: rgba(0, 217, 255, 0.3) !important;
  box-shadow: 0 10px 25px rgba(0, 217, 255, 0.08) !important;
}

.cmd-card-watermark {
  position: absolute;
  right: -5px;
  bottom: -35px;
  font-size: 8rem;
  font-weight: 900;
  font-family: var(--font-display);
  color: rgba(255, 255, 255, 0.02);
  line-height: 1;
  pointer-events: none;
  user-select: none;
  transition: color 0.35s ease;
  z-index: 1;
}

.dashboard-cmd-card:hover .cmd-card-watermark, .landing-cmd-card:hover .cmd-card-watermark {
  color: rgba(0, 217, 255, 0.05);
}

.cmd-card-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.25rem;
}

.cmd-badge-type {
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  padding: 0.25rem 0.6rem;
  border-radius: 6px;
  letter-spacing: 0.05em;
}

.slash-badge, .badge-success {
  background: rgba(0, 213, 255, 0.12) !important;
  color: var(--color-primary) !important;
  border: 1px solid rgba(0, 213, 255, 0.2) !important;
}

.pref-badge, .badge-primary {
  background: rgba(177, 159, 251, 0.12) !important;
  color: var(--color-secondary) !important;
  border: 1px solid rgba(177, 159, 251, 0.2) !important;
}

.cmd-card-title {
  font-size: 1.18rem;
  font-weight: 700;
  color: var(--text-primary);
  font-family: monospace;
  margin: 0;
  z-index: 2;
}

.cmd-prefix {
  font-weight: 800;
  margin-right: 0.1rem;
}

.prefix-text {
  color: var(--color-secondary);
}

.slash-text {
  color: var(--color-primary);
}

.cmd-card-desc {
  font-size: 0.88rem;
  color: var(--text-secondary);
  line-height: 1.5;
  margin: 0;
  flex-grow: 1;
  z-index: 2;
}

/* ==========================================================================
   PREMIUM EMOJI PICKER POP-OVER
   ========================================================================== */
.premium-emoji-input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
}

.emoji-picker-trigger {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.04);
  border: 1.5px solid var(--border-color);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.3rem;
  cursor: pointer;
  transition: all var(--transition-fast);
  flex-shrink: 0;
  box-shadow: var(--shadow-sm);
  user-select: none;
}

.emoji-picker-trigger:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: var(--color-primary);
  box-shadow: 0 0 10px rgba(0, 217, 255, 0.25);
  transform: scale(1.05);
}

.emoji-picker-popover {
  position: absolute;
  bottom: 55px; /* Open above the input */
  left: 0;
  width: 320px;
  background: var(--bg-modal);
  border: 1px solid var(--border-color);
  border-radius: 14px;
  box-shadow: var(--shadow-lg);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  padding: 1rem;
  z-index: 999;
  display: none;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.25s ease, transform 0.25s ease;
}

.emoji-picker-popover.open {
  display: block;
  opacity: 1;
  transform: translateY(0);
}

.popover-header {
  font-size: 0.8rem;
  text-transform: uppercase;
  color: var(--text-secondary);
  font-weight: 700;
  margin-bottom: 0.75rem;
  letter-spacing: 0.05em;
  border-bottom: 1px solid rgba(255,255,255,0.05);
  padding-bottom: 0.5rem;
}

.circular-emoji-picker {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0.6rem;
  padding: 0.25rem;
}

.emoji-picker-item {
  aspect-ratio: 1;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  cursor: pointer;
  transition: all var(--transition-fast);
  overflow: hidden;
}

.emoji-picker-item img {
  width: 75%;
  height: 75%;
  object-fit: contain;
}

.emoji-picker-item:hover {
  background: rgba(0, 217, 255, 0.1);
  border-color: var(--color-primary);
  transform: scale(1.12);
}

.emoji-picker-item.active {
  background: rgba(0, 217, 255, 0.15) !important;
  border-color: var(--color-primary) !important;
  box-shadow: 0 0 10px rgba(0, 217, 255, 0.35);
}

.emoji-picker-item.custom-trigger {
  color: var(--text-secondary);
  font-size: 0.95rem;
}

.emoji-picker-item.custom-trigger:hover {
  color: var(--color-primary);
}

/* ==========================================================================
   DRASCTIC PREMIUM DISCORD MOCKUPS (Landing Page)
   ========================================================================== */
.mockup-discord-chat {
  background: #2f3136 !important; /* Authentic dark Discord background */
  border-radius: 14px;
  padding: 1.5rem;
  font-family: 'gg sans', 'Whitney', 'Helvetica Neue', Helvetica, Arial, sans-serif;
  box-shadow: 0 15px 35px rgba(0,0,0,0.5), inset 0 0 1px rgba(255,255,255,0.1) !important;
  border: 1px solid rgba(255, 255, 255, 0.05);
  transition: border-color var(--transition-normal);
  text-align: left;
}

.mockup-discord-chat:hover {
  border-color: rgba(255, 77, 166, 0.4);
}

.chat-row {
  display: flex;
  gap: 1rem;
  margin-bottom: 1.2rem;
  position: relative;
}

.chat-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  flex-shrink: 0;
  transition: transform 0.25s ease;
}

.chat-avatar:hover {
  transform: scale(1.08);
}

.chat-content {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  width: 100%;
}

.chat-user-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.chat-username {
  font-weight: 600;
  color: #fff;
  font-size: 0.95rem;
  cursor: pointer;
}

.chat-username:hover {
  text-decoration: underline;
}

.bot-badge {
  background: #5865f2;
  color: #fff;
  font-size: 0.62rem;
  font-weight: 700;
  padding: 0.08rem 0.28rem;
  border-radius: 3px;
  text-transform: uppercase;
}

.chat-time {
  font-size: 0.75rem;
  color: #a3a6aa;
}

.chat-command-run {
  font-size: 0.88rem;
  color: #b9bbbe;
  margin-bottom: 0.35rem;
}

.chat-embed {
  background: #2f3136; /* Background is now dark solid */
  border-radius: 4px;
  border-left: 4px solid var(--color-primary);
  margin-top: 0.25rem;
  display: flex;
  flex-direction: column;
}

.embed-body {
  padding: 0.75rem 1rem;
}

.embed-section-title {
  font-size: 0.75rem;
  font-weight: 700;
  color: #b9bbbe;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 0.35rem;
  display: block;
}

.embed-id-block {
  background: #202225;
  border-radius: 6px;
  padding: 0.5rem 0.75rem;
  font-family: monospace;
  font-size: 0.8rem;
  color: #dcddde;
  border: 1px solid rgba(255,255,255,0.03);
}

.embed-id-block code {
  color: #00d5ff;
}

.chat-embed-footer {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  margin-top: 0.45rem;
  font-size: 0.72rem;
  color: #a3a6aa;
}

.footer-avatar {
  width: 16px;
  height: 16px;
  border-radius: 50%;
}

.discord-user-mention {
  color: #dee0fc;
  background: rgba(88, 101, 242, 0.3);
  padding: 0 0.25rem;
  border-radius: 3px;
  font-weight: 500;
  cursor: pointer;
  transition: background 0.2s;
}

.discord-user-mention:hover {
  background: rgba(88, 101, 242, 0.6);
  color: #fff;
}

.discord-role-badge {
  background: rgba(34, 246, 255, 0.08);
  border: 1px solid rgba(34, 246, 255, 0.2);
  padding: 0.15rem 0.45rem;
  border-radius: 4px;
  font-size: 0.82rem;
  font-weight: 600;
}

/* ==========================================================================
   SHIP CARD GRAPHIC REDESIGN
   ========================================================================== */
.ship-graphic-card {
  background: linear-gradient(135deg, #1e1e24 0%, #121214 100%);
  border-radius: 12px;
  border: 1px solid rgba(255, 77, 166, 0.15);
  padding: 1.25rem;
  margin-top: 0.75rem;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  box-shadow: inset 0 0 15px rgba(255, 77, 166, 0.05);
}

.ship-card-title {
  font-family: var(--font-display);
  font-weight: 800;
  font-size: 1.1rem;
  color: #fff;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  text-align: center;
}

.ship-avatars-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  position: relative;
}

.ship-avatar-container {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  border: 2px solid var(--border-color);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}

.ship-avatar-container:hover {
  transform: scale(1.1) rotate(5deg);
}

.ship-user-avatar {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}

.ship-avatar-heart {
  position: absolute;
  bottom: -4px;
  right: -4px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 0.75rem;
  border: 1.5px solid #1e1e24;
}

.ship-heart-meter {
  width: 50px;
  height: 50px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: pulseHeart 1.5s ease-in-out infinite alternate;
}

.heart-svg {
  width: 100%;
  height: 100%;
  filter: drop-shadow(0 0 8px rgba(255, 77, 166, 0.6));
}

@keyframes pulseHeart {
  0% { transform: scale(0.92); filter: drop-shadow(0 0 4px rgba(255, 77, 166, 0.4)); }
  100% { transform: scale(1.08); filter: drop-shadow(0 0 12px rgba(255, 77, 166, 0.75)); }
}

.ship-usernames-row {
  display: flex;
  justify-content: space-between;
  width: 100%;
  max-width: 250px;
  font-size: 0.8rem;
  color: var(--text-secondary);
  font-weight: 500;
  text-align: center;
}

.ship-usernames-row span {
  flex: 1;
}

.ship-percent-badge {
  background: linear-gradient(135deg, #ff4da6 0%, #ff7ac3 100%);
  color: #fff;
  font-weight: 800;
  font-family: var(--font-display);
  font-size: 1.35rem;
  padding: 0.4rem 1.1rem;
  border-radius: 20px;
  box-shadow: 0 0 15px rgba(255, 77, 166, 0.4);
  letter-spacing: 0.5px;
}

.ship-footer-text {
  font-size: 0.82rem;
  color: #ff7ac3;
  font-weight: 600;
  font-style: italic;
}

/* ==========================================================================
   UPGRADED DISCORD-LIKE PREMIUM EMOJI PICKER V2
   ========================================================================== */
.premium-emoji-input-wrapper {
  position: relative;
  display: flex;
  width: 100%;
}

.premium-emoji-input-wrapper input[type="text"] {
  width: 100% !important;
  padding-right: 48px !important;
}

.premium-emoji-input-wrapper .emoji-picker-trigger {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: transparent;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  cursor: pointer;
  transition: all var(--transition-fast);
  user-select: none;
}

.premium-emoji-input-wrapper .emoji-picker-trigger:hover {
  background: rgba(255, 255, 255, 0.08);
  transform: translateY(-50%) scale(1.15);
}

.emoji-picker-popover.premium-upgraded {
  position: absolute;
  bottom: calc(100% + 10px);
  right: 0;
  width: 320px;
  height: 380px;
  background: var(--bg-modal);
  border: 1px solid var(--border-color);
  border-radius: 12px;
  box-shadow: var(--shadow-lg);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  padding: 0 !important;
  z-index: 999;
  display: none;
  flex-direction: column;
  overflow: hidden;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.2s cubic-bezier(0.4, 0, 0.2, 1), transform 0.2s cubic-bezier(0.4, 0, 0.2, 1);
}

.emoji-picker-popover.premium-upgraded.open {
  display: flex !important;
  opacity: 1;
  transform: translateY(0);
}

.emoji-picker-search-bar {
  display: flex;
  align-items: center;
  padding: 10px 12px;
  background: rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  position: relative;
  gap: 8px;
}

.emoji-picker-search-bar i {
  position: absolute;
  left: 22px;
  color: var(--text-muted);
  font-size: 0.85rem;
  pointer-events: none;
}

.emoji-picker-search-bar .emoji-search-input {
  width: 100%;
  background: rgba(0, 0, 0, 0.3) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 6px !important;
  padding: 8px 12px 8px 30px !important;
  font-size: 0.85rem !important;
  color: #ffffff !important;
  outline: none !important;
  transition: all 0.2s ease !important;
  box-shadow: none !important;
}

.emoji-picker-search-bar .emoji-search-input:focus {
  border-color: var(--color-primary) !important;
  background: rgba(0, 0, 0, 0.4) !important;
}

.emoji-picker-body-v2 {
  display: flex;
  flex: 1;
  min-height: 0;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.05);
}

.emoji-picker-sidebar {
  width: 44px;
  background: rgba(0, 0, 0, 0.25);
  border-right: 1px solid rgba(255, 255, 255, 0.04);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 8px 0;
  gap: 8px;
  overflow-y: auto;
}

/* Hide scrollbar for Chrome, Safari and Opera */
.emoji-picker-sidebar::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
.emoji-picker-sidebar {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}

.emoji-picker-sidebar .category-btn {
  width: 30px;
  height: 30px;
  border-radius: 6px;
  border: none;
  background: transparent;
  color: var(--text-muted);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.15s ease;
}

.emoji-picker-sidebar .category-btn:hover {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.05);
}

.emoji-picker-sidebar .category-btn.active {
  color: var(--color-primary);
  background: rgba(0, 217, 255, 0.1);
  box-shadow: inset 0 0 0 1px var(--color-primary-glow);
}

.emoji-picker-scroll-wrapper-v2 {
  flex: 1;
  overflow-y: auto;
  padding: 10px 12px;
  scroll-behavior: smooth;
}

.emoji-picker-scroll-wrapper-v2::-webkit-scrollbar {
  width: 6px;
}

.emoji-picker-scroll-wrapper-v2::-webkit-scrollbar-track {
  background: transparent;
}

.emoji-picker-scroll-wrapper-v2::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.06);
  border-radius: 10px;
}

.emoji-picker-scroll-wrapper-v2::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.12);
}

.emoji-picker-section {
  margin-bottom: 12px;
}

.emoji-picker-section h4 {
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  color: var(--text-muted);
  margin: 0 0 8px 4px;
  letter-spacing: 0.5px;
}

.emoji-picker-grid-v2 {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 5px;
}

.emoji-picker-item-v2 {
  aspect-ratio: 1;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.03);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  cursor: pointer;
  transition: all 0.12s ease;
  overflow: hidden;
  user-select: none;
}

.emoji-picker-item-v2 img {
  width: 22px;
  height: 22px;
  object-fit: contain;
}

.emoji-picker-item-v2:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.15);
  transform: scale(1.12);
}

.emoji-picker-item-v2.active {
  background: rgba(0, 217, 255, 0.1) !important;
  border-color: var(--color-primary) !important;
  box-shadow: 0 0 8px rgba(0, 217, 255, 0.25);
}

.emoji-picker-footer-v2 {
  padding: 8px 12px;
  background: rgba(0, 0, 0, 0.25);
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  display: flex;
  align-items: center;
  height: 36px;
}

.emoji-picker-footer-v2 .emoji-preview-name {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--text-secondary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ==========================================================================
   MOBILE LEADERBOARD PODIUM RESPONSIVE ROW IMPROVEMENT
   ========================================================================== */
@media (max-width: 600px) {
  .leaderboard-podium {
    flex-direction: row !important;
    gap: 0.6rem !important;
    align-items: flex-end !important;
    margin-bottom: 2rem !important;
  }
  .podium-place {
    width: 32% !important;
  }
  .podium-avatar {
    width: 62px !important;
    height: 62px !important;
    border-width: 2px !important;
  }
  .podium-first .podium-avatar {
    width: 76px !important;
    height: 76px !important;
    border-width: 3px !important;
  }
  .podium-crown {
    font-size: 1.6rem !important;
    top: -20px !important;
  }
  .podium-pedestal {
    display: flex !important;
    font-size: 0.8rem !important;
    padding: 0.2rem 0.6rem !important;
    height: auto !important;
    border-radius: 8px !important;
  }
  .podium-name {
    font-size: 0.78rem !important;
    max-width: 80px;
    overflow: hidden;
    text-overflow: ellipsis;
  }
  .podium-money {
    font-size: 0.72rem !important;
  }
}


/* ==========================================================================
   GOD MODE â€” CREATOR PANEL STYLES
   Only rendered for Discord ID 1186175387382853674
   ========================================================================== */

/* CSS Variables for creator panel */
#creator-panel-view {
  --creator-gold: #f59e0b;
  --creator-gold-glow: rgba(245, 158, 11, 0.25);
  --creator-red: #ef4444;
  --creator-red-soft: rgba(239, 68, 68, 0.15);
  --creator-bg: #07090e;
  --creator-surface: rgba(255,255,255,0.04);
  --creator-border: rgba(255,255,255,0.07);
  --creator-text: #e2e8f0;
  --creator-muted: #64748b;
  --creator-radius: 14px;
  min-height: 100vh;
  background: var(--creator-bg);
  color: var(--creator-text);
  font-family: 'Outfit', 'Plus Jakarta Sans', sans-serif;
  overflow-x: hidden;
}

/* ---- Header ---- */
.creator-header {
  position: sticky;
  top: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 2rem;
  height: 64px;
  background: rgba(7, 9, 14, 0.95);
  backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(245, 158, 11, 0.2);
  box-shadow: 0 1px 20px rgba(245, 158, 11, 0.08);
}

.creator-brand {
  display: flex;
  align-items: center;
  gap: 0.9rem;
}

.creator-brand-icon {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: linear-gradient(135deg, #f59e0b, #d97706);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  color: #000;
  box-shadow: 0 4px 14px rgba(245,158,11,0.35);
  flex-shrink: 0;
}

.creator-brand-name {
  display: block;
  font-size: 1.05rem;
  font-weight: 800;
  background: linear-gradient(90deg, #f59e0b, #fbbf24);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1.2;
}

.creator-brand-sub {
  display: block;
  font-size: 0.7rem;
  color: var(--creator-muted);
  font-weight: 500;
  letter-spacing: 0.3px;
}

.creator-header-right {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.creator-live-ping {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.8rem;
  color: var(--creator-muted);
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  padding: 0.35rem 0.75rem;
  border-radius: 20px;
}

.creator-ping-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #22c55e;
  animation: creator-pulse 2s infinite;
  flex-shrink: 0;
}

@keyframes creator-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.5; transform: scale(0.85); }
}

.creator-exit-btn {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.45rem 1rem;
  border-radius: 8px;
  background: rgba(239,68,68,0.12);
  border: 1px solid rgba(239,68,68,0.25);
  color: #ef4444;
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
}

.creator-exit-btn:hover {
  background: rgba(239,68,68,0.22);
  border-color: rgba(239,68,68,0.5);
  transform: translateX(2px);
}

/* ---- Layout ---- */
.creator-layout {
  display: flex;
  min-height: calc(100vh - 64px);
}

/* ---- Sidebar ---- */
.creator-sidebar {
  width: 220px;
  flex-shrink: 0;
  background: rgba(255,255,255,0.02);
  border-right: 1px solid var(--creator-border);
  padding: 1.5rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
  position: sticky;
  top: 64px;
  height: calc(100vh - 64px);
  overflow-y: auto;
}

.creator-tab-btn {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  width: 100%;
  padding: 0.75rem 1rem;
  border-radius: 10px;
  background: transparent;
  border: 1px solid transparent;
  color: var(--creator-muted);
  font-size: 0.9rem;
  font-weight: 500;
  cursor: pointer;
  transition: all 0.2s;
  text-align: left;
}

.creator-tab-btn:hover {
  background: var(--creator-surface);
  color: var(--creator-text);
}

.creator-tab-btn.active {
  background: rgba(245, 158, 11, 0.1);
  border-color: rgba(245, 158, 11, 0.25);
  color: #f59e0b;
}

.creator-tab-btn i {
  width: 16px;
  text-align: center;
  flex-shrink: 0;
}

.creator-sidebar-divider {
  height: 1px;
  background: var(--creator-border);
  margin: 0.75rem 0;
}

.creator-sidebar-info {
  margin-top: auto;
  display: flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.75rem;
  border-radius: 10px;
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
}

.creator-bot-mini-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--creator-border);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  flex-shrink: 0;
}

.creator-bot-mini-info {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
  font-size: 0.78rem;
  font-weight: 600;
  color: var(--creator-text);
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.creator-bot-status-dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #22c55e;
  margin-right: 4px;
  vertical-align: middle;
}

/* ---- Main ---- */
.creator-main {
  flex: 1;
  padding: 2rem;
  min-width: 0;
  overflow-x: hidden;
}

/* ---- Panel ---- */
.creator-panel {
  display: none;
  animation: creator-fade-in 0.25s ease;
}

.creator-panel.active {
  display: block;
}

@keyframes creator-fade-in {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ---- Section Header ---- */
.creator-section-header {
  margin-bottom: 1.8rem;
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  flex-wrap: wrap;
}

.creator-section-header h1 {
  font-size: 1.65rem;
  font-weight: 800;
  background: linear-gradient(90deg, #f59e0b, #fbbf24 60%, #e2e8f0);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin: 0;
  flex: 1;
  min-width: 200px;
}

.creator-section-header p {
  width: 100%;
  color: var(--creator-muted);
  font-size: 0.9rem;
  margin: 0.25rem 0 0;
}

.creator-refresh-btn {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.45rem 1rem;
  border-radius: 8px;
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  color: var(--creator-text);
  font-size: 0.82rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s;
  white-space: nowrap;
}

.creator-refresh-btn:hover {
  background: rgba(245,158,11,0.1);
  border-color: rgba(245,158,11,0.3);
  color: #f59e0b;
}

/* ---- Stats Grid ---- */
.creator-stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 1rem;
  margin-bottom: 1.8rem;
}

.creator-stat-card {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.25rem 1.35rem;
  border-radius: var(--creator-radius);
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  transition: transform 0.2s, box-shadow 0.2s;
}

.creator-stat-card:hover {
  transform: translateY(-2px);
}

.creator-stat-icon {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.05rem;
  flex-shrink: 0;
}

.creator-stat-info {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
  min-width: 0;
}

.creator-stat-label {
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--creator-muted);
  text-transform: uppercase;
  letter-spacing: 0.6px;
}

.creator-stat-value {
  font-size: 1.4rem;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* Stat card color variants */
.creator-stat-gold .creator-stat-icon { background: rgba(245,158,11,0.15); color: #f59e0b; }
.creator-stat-gold .creator-stat-value { color: #f59e0b; }
.creator-stat-gold { border-color: rgba(245,158,11,0.18); }

.creator-stat-cyan .creator-stat-icon { background: rgba(0,217,255,0.12); color: #00d9ff; }
.creator-stat-cyan .creator-stat-value { color: #00d9ff; }
.creator-stat-cyan { border-color: rgba(0,217,255,0.15); }

.creator-stat-green .creator-stat-icon { background: rgba(34,197,94,0.12); color: #22c55e; }
.creator-stat-green .creator-stat-value { color: #22c55e; }
.creator-stat-green { border-color: rgba(34,197,94,0.15); }

.creator-stat-purple .creator-stat-icon { background: rgba(168,85,247,0.12); color: #a855f7; }
.creator-stat-purple .creator-stat-value { color: #a855f7; }
.creator-stat-purple { border-color: rgba(168,85,247,0.15); }

.creator-stat-red .creator-stat-icon { background: rgba(239,68,68,0.12); color: #ef4444; }
.creator-stat-red .creator-stat-value { color: #ef4444; }
.creator-stat-red { border-color: rgba(239,68,68,0.15); }

.creator-stat-orange .creator-stat-icon { background: rgba(249,115,22,0.12); color: #f97316; }
.creator-stat-orange .creator-stat-value { color: #f97316; }
.creator-stat-orange { border-color: rgba(249,115,22,0.15); }

/* ---- Bot Identity Card ---- */
.creator-bot-card {
  display: flex;
  align-items: center;
  gap: 2rem;
  padding: 1.75rem 2rem;
  border-radius: var(--creator-radius);
  background: var(--creator-surface);
  border: 1px solid rgba(245,158,11,0.2);
  box-shadow: 0 0 30px rgba(245,158,11,0.06);
  flex-wrap: wrap;
}

.creator-bot-avatar-wrapper {
  position: relative;
  width: 80px;
  height: 80px;
  flex-shrink: 0;
}

.creator-bot-avatar-wrapper img {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
  border: 3px solid rgba(245,158,11,0.4);
}

.creator-bot-online-ring {
  position: absolute;
  bottom: 4px;
  right: 4px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: #22c55e;
  border: 3px solid var(--creator-bg);
}

.creator-bot-identity {
  flex: 1;
  min-width: 200px;
}

.creator-bot-identity h2 {
  font-size: 1.45rem;
  font-weight: 800;
  color: var(--creator-text);
  margin: 0 0 0.3rem;
}

.creator-bot-identity p {
  font-size: 0.8rem;
  color: var(--creator-muted);
  margin: 0 0 0.65rem;
}

.creator-bot-badges {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.creator-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.25rem 0.7rem;
  border-radius: 20px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.3px;
}

.creator-badge-bot { background: rgba(114,137,218,0.15); border: 1px solid rgba(114,137,218,0.3); color: #7c8dda; }
.creator-badge-creator { background: rgba(245,158,11,0.12); border: 1px solid rgba(245,158,11,0.3); color: #f59e0b; }
.creator-badge-node { background: rgba(34,197,94,0.1); border: 1px solid rgba(34,197,94,0.25); color: #22c55e; }

.creator-bot-sys-info {
  display: flex;
  flex-direction: column;
  gap: 0.65rem;
  min-width: 200px;
}

.creator-sys-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}

.creator-sys-key {
  font-size: 0.8rem;
  color: var(--creator-muted);
  display: flex;
  align-items: center;
  gap: 0.45rem;
}

.creator-sys-val {
  font-size: 0.85rem;
  font-weight: 700;
  color: var(--creator-text);
}

/* ---- Buttons ---- */
.creator-action-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.6rem 1.25rem;
  border-radius: 9px;
  font-size: 0.875rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s;
  border: 1px solid transparent;
  white-space: nowrap;
}

.creator-btn-primary {
  background: linear-gradient(135deg, #0ea5e9, #00d9ff);
  color: #000;
  border-color: transparent;
  box-shadow: 0 4px 14px rgba(0,217,255,0.25);
}
.creator-btn-primary:hover { filter: brightness(1.1); transform: translateY(-1px); }

.creator-btn-danger {
  background: rgba(239,68,68,0.12);
  color: #ef4444;
  border-color: rgba(239,68,68,0.3);
}
.creator-btn-danger:hover { background: rgba(239,68,68,0.22); border-color: rgba(239,68,68,0.5); }

.creator-btn-ghost {
  background: var(--creator-surface);
  color: var(--creator-text);
  border-color: var(--creator-border);
}
.creator-btn-ghost:hover { background: rgba(255,255,255,0.08); }

.creator-btn-broadcast {
  background: linear-gradient(135deg, #f59e0b, #d97706);
  color: #000;
  border-color: transparent;
  font-size: 0.95rem;
  padding: 0.75rem 1.75rem;
  box-shadow: 0 4px 18px rgba(245,158,11,0.3);
}
.creator-btn-broadcast:hover { filter: brightness(1.1); transform: translateY(-2px); box-shadow: 0 6px 24px rgba(245,158,11,0.45); }
.creator-btn-broadcast:disabled { opacity: 0.6; cursor: not-allowed; transform: none; }

/* ---- Server List ---- */
.creator-server-search-row {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  margin-bottom: 1.4rem;
  flex-wrap: wrap;
}

.creator-search-box {
  flex: 1;
  min-width: 200px;
  display: flex;
  align-items: center;
  gap: 0.65rem;
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  border-radius: 10px;
  padding: 0 1rem;
}

.creator-search-box i { color: var(--creator-muted); }

.creator-search-box input {
  flex: 1;
  background: transparent;
  border: none;
  outline: none;
  color: var(--creator-text);
  font-size: 0.9rem;
  padding: 0.65rem 0;
  font-family: inherit;
}

.creator-server-count-badge {
  font-size: 0.8rem;
  color: var(--creator-muted);
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  padding: 0.45rem 0.9rem;
  border-radius: 20px;
  white-space: nowrap;
}

.creator-servers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 0.85rem;
}

.creator-server-card {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  padding: 1rem 1.1rem;
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  border-radius: var(--creator-radius);
  cursor: pointer;
  transition: all 0.2s;
}

.creator-server-card:hover {
  border-color: rgba(245,158,11,0.25);
  background: rgba(245,158,11,0.04);
  transform: translateY(-1px);
}

.creator-server-card-icon {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  overflow: hidden;
  flex-shrink: 0;
}

.creator-server-card-icon img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.creator-server-icon-placeholder {
  width: 44px;
  height: 44px;
  border-radius: 10px;
  background: rgba(255,255,255,0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--creator-muted);
  font-size: 1.1rem;
}

.creator-server-card-info {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}

.creator-server-card-name {
  font-size: 0.92rem;
  font-weight: 700;
  color: var(--creator-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.creator-server-card-members {
  font-size: 0.75rem;
  color: var(--creator-muted);
}

.creator-server-card-id {
  font-size: 0.68rem;
  color: rgba(100,116,139,0.6);
  font-family: monospace;
}

.creator-server-card-btn {
  padding: 0.4rem 0.85rem;
  border-radius: 7px;
  background: rgba(245,158,11,0.1);
  border: 1px solid rgba(245,158,11,0.2);
  color: #f59e0b;
  font-size: 0.75rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s;
  white-space: nowrap;
  flex-shrink: 0;
}

.creator-server-card-btn:hover {
  background: rgba(245,158,11,0.2);
  border-color: rgba(245,158,11,0.4);
}

.creator-servers-empty,
.creator-servers-loading {
  grid-column: 1/-1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  padding: 3rem;
  color: var(--creator-muted);
  font-size: 0.9rem;
}

.creator-servers-empty i, .creator-servers-loading i {
  font-size: 2rem;
  opacity: 0.4;
}

/* ---- Server Modal ---- */
.creator-server-modal {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.7);
  backdrop-filter: blur(8px);
  z-index: 300;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}

.creator-server-modal-card {
  background: #0c0f17;
  border: 1px solid rgba(245,158,11,0.2);
  border-radius: 18px;
  padding: 2rem;
  width: 100%;
  max-width: 560px;
  max-height: 90vh;
  overflow-y: auto;
  position: relative;
  box-shadow: 0 20px 60px rgba(0,0,0,0.6), 0 0 0 1px rgba(245,158,11,0.08);
}

.creator-modal-close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
  border: 1px solid var(--creator-border);
  color: var(--creator-muted);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
  font-size: 0.9rem;
}

.creator-modal-close:hover { background: rgba(239,68,68,0.15); color: #ef4444; transform: rotate(90deg); }

.creator-server-detail-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1.5rem;
}

.creator-server-detail-header h2 {
  font-size: 1.35rem;
  font-weight: 800;
  color: var(--creator-text);
  margin: 0;
  word-break: break-word;
}

.creator-muted { color: var(--creator-muted) !important; font-size: 0.78rem !important; }

.creator-server-detail-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.75rem;
  margin-bottom: 1.5rem;
}

.creator-detail-row {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  padding: 0.85rem 1rem;
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  border-radius: 10px;
}

.creator-detail-row span {
  font-size: 0.75rem;
  color: var(--creator-muted);
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.creator-detail-row strong {
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--creator-text);
  word-break: break-all;
}

/* ---- Announce Section ---- */
.creator-announce-section {
  border-top: 1px solid var(--creator-border);
  padding-top: 1.25rem;
}

.creator-announce-section h3 {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--creator-text);
  margin: 0 0 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.creator-select,
.creator-input,
.creator-textarea {
  width: 100%;
  background: rgba(255,255,255,0.04);
  border: 1px solid var(--creator-border);
  border-radius: 9px;
  color: var(--creator-text);
  font-size: 0.875rem;
  font-family: inherit;
  outline: none;
  transition: border-color 0.2s;
  box-sizing: border-box;
  margin-bottom: 0.65rem;
}

.creator-select { padding: 0.6rem 0.9rem; }
.creator-input  { padding: 0.6rem 0.9rem; }
.creator-textarea { padding: 0.7rem 0.9rem; resize: vertical; min-height: 100px; }
.creator-textarea-lg { min-height: 150px; }

.creator-select:focus,
.creator-input:focus,
.creator-textarea:focus {
  border-color: rgba(245,158,11,0.4);
  box-shadow: 0 0 0 3px rgba(245,158,11,0.08);
}

.creator-select option { background: #0c0f17; }

.creator-announce-actions {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
  margin-top: 0.5rem;
}

.creator-announce-actions input[type="color"] {
  width: 42px;
  height: 38px;
  border-radius: 8px;
  border: 1px solid var(--creator-border);
  background: transparent;
  cursor: pointer;
  padding: 3px;
}

/* ---- Broadcast ---- */
.creator-broadcast-form {
  max-width: 780px;
}

.creator-form-group {
  margin-bottom: 1.25rem;
}

.creator-form-group label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.82rem;
  font-weight: 700;
  color: var(--creator-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 0.5rem;
}

.creator-optional { font-weight: 500; text-transform: none; color: rgba(100,116,139,0.6); }

.creator-hint {
  display: block;
  font-size: 0.75rem;
  color: rgba(100,116,139,0.6);
  margin-top: 0.35rem;
}

.creator-form-row {
  display: flex;
  gap: 1rem;
  flex-wrap: wrap;
}

.creator-form-row .creator-form-group {
  flex: 1;
  min-width: 200px;
}

.creator-form-group-sm {
  flex: 0 0 120px !important;
  min-width: 80px !important;
}

.creator-color-input {
  width: 100%;
  height: 48px;
  border-radius: 9px;
  border: 1px solid var(--creator-border);
  background: transparent;
  cursor: pointer;
  padding: 4px;
}

.creator-broadcast-preview {
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  border-radius: var(--creator-radius);
  padding: 1.25rem;
  margin-bottom: 1.5rem;
}

.creator-preview-label {
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--creator-muted);
  margin-bottom: 0.85rem;
}

.creator-embed-preview {
  display: flex;
  gap: 0;
  background: #1e2030;
  border-radius: 6px;
  overflow: hidden;
  min-height: 60px;
}

.creator-embed-border {
  width: 4px;
  background: #00d9ff;
  flex-shrink: 0;
}

.creator-embed-content {
  padding: 0.85rem 1rem;
  flex: 1;
  min-width: 0;
}

.creator-embed-title {
  font-size: 0.9rem;
  font-weight: 800;
  color: #e2e8f0;
  margin-bottom: 0.35rem;
  word-break: break-word;
}

.creator-embed-desc {
  font-size: 0.82rem;
  color: #94a3b8;
  line-height: 1.5;
  word-break: break-word;
  white-space: pre-wrap;
}

.creator-broadcast-footer {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  flex-wrap: wrap;
}

.creator-broadcast-warning {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 0.82rem;
  color: var(--creator-muted);
  background: rgba(245,158,11,0.06);
  border: 1px solid rgba(245,158,11,0.15);
  padding: 0.7rem 1rem;
  border-radius: 9px;
}

.creator-broadcast-warning i { color: #f59e0b; }

.creator-broadcast-result {
  margin-top: 1rem;
  padding: 0.85rem 1rem;
  border-radius: 9px;
  font-size: 0.875rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 0.65rem;
}

.creator-result-success {
  background: rgba(34,197,94,0.1);
  border: 1px solid rgba(34,197,94,0.25);
  color: #22c55e;
}

.creator-result-error {
  background: rgba(239,68,68,0.1);
  border: 1px solid rgba(239,68,68,0.25);
  color: #ef4444;
}

/* ---- Database ---- */
.creator-db-total {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.1rem 1.3rem;
  background: rgba(245,158,11,0.06);
  border: 1px solid rgba(245,158,11,0.18);
  border-radius: var(--creator-radius);
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--creator-text);
  margin-bottom: 1rem;
  grid-column: 1/-1;
}

.creator-db-total i { color: #f59e0b; font-size: 1.1rem; }
.creator-db-total-cols { margin-left: auto; font-size: 0.75rem; color: var(--creator-muted); }

.creator-db-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 0.75rem;
}

.creator-db-card {
  padding: 1rem 1.15rem;
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  border-radius: 10px;
  transition: border-color 0.2s;
}

.creator-db-card:hover { border-color: rgba(245,158,11,0.25); }

.creator-db-name {
  font-size: 0.8rem;
  color: var(--creator-muted);
  margin-bottom: 0.4rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  word-break: break-all;
}

.creator-db-count {
  font-size: 1.5rem;
  font-weight: 800;
  color: var(--creator-text);
  margin-bottom: 0.6rem;
  line-height: 1;
}

.creator-db-bar {
  height: 4px;
  background: rgba(255,255,255,0.06);
  border-radius: 2px;
  overflow: hidden;
}

.creator-db-bar-fill {
  height: 100%;
  background: linear-gradient(90deg, #f59e0b, #fbbf24);
  border-radius: 2px;
  transition: width 0.6s ease;
}

/* ---- DB Control Section ---- */
.creator-db-actions-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 0.75rem;
  margin-top: 1rem;
}

.creator-db-action-card {
  padding: 0.9rem 1rem;
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  border-radius: 10px;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.creator-db-action-card:hover {
  border-color: rgba(239,68,68,0.3);
  box-shadow: 0 4px 20px rgba(239,68,68,0.08);
}

.creator-db-action-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}

.creator-db-action-name {
  font-size: 0.78rem;
  color: var(--creator-text);
  font-weight: 600;
  word-break: break-all;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.creator-db-action-count {
  font-size: 0.72rem;
  color: var(--creator-muted);
  white-space: nowrap;
}

/* ---- Danger Zone ---- */
.creator-db-danger-zone {
  background: rgba(239,68,68,0.04);
  border: 1px solid rgba(239,68,68,0.2);
  border-radius: 12px;
  padding: 1.5rem;
}

.creator-danger-zone-header {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  margin-bottom: 1.25rem;
}

.creator-danger-zone-header > i {
  font-size: 1.8rem;
  color: #ef4444;
  flex-shrink: 0;
  margin-top: 0.1rem;
}

.creator-danger-zone-header h3 {
  margin: 0 0 0.35rem;
  color: #ef4444;
  font-size: 1rem;
  font-weight: 700;
}

.creator-danger-zone-header p {
  margin: 0;
  font-size: 0.82rem;
  color: var(--creator-muted);
  line-height: 1.5;
}

.creator-danger-label {
  display: block;
  font-size: 0.82rem;
  font-weight: 600;
  color: var(--creator-muted);
  margin-bottom: 0.5rem;
}

.creator-danger-label code {
  background: rgba(239,68,68,0.15);
  color: #ef4444;
  padding: 0.1rem 0.4rem;
  border-radius: 4px;
  font-family: monospace;
}

.creator-danger-confirm-box {
  background: rgba(239,68,68,0.04);
  border-radius: 8px;
  padding: 1rem;
}

.creator-danger-input {
  flex: 1;
  min-width: 200px;
  border-color: rgba(239,68,68,0.3) !important;
}

.creator-danger-input:focus {
  border-color: #ef4444 !important;
  box-shadow: 0 0 0 3px rgba(239,68,68,0.12) !important;
}

.creator-btn-nuke {
  background: linear-gradient(135deg, #7f1d1d, #dc2626);
  color: white;
  border: 1px solid rgba(239,68,68,0.5);
  box-shadow: 0 4px 12px rgba(239,68,68,0.25);
  font-weight: 700;
  letter-spacing: 0.02em;
  transition: all 0.2s;
}

.creator-btn-nuke:hover {
  background: linear-gradient(135deg, #991b1b, #ef4444);
  box-shadow: 0 6px 20px rgba(239,68,68,0.4);
  transform: translateY(-1px);
}

/* ---- Creator Tab Badge ---- */
.creator-tab-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #ef4444;
  color: white;
  font-size: 0.65rem;
  font-weight: 800;
  min-width: 18px;
  height: 18px;
  border-radius: 9px;
  padding: 0 4px;
  margin-left: 4px;
  animation: creator-pulse-red 2s infinite;
}

@keyframes creator-pulse-red {
  0%, 100% { box-shadow: 0 0 0 0 rgba(239,68,68,0.6); }
  50% { box-shadow: 0 0 0 5px rgba(239,68,68,0); }
}

/* ---- Anti-Raid Tab ---- */
.antiraid-tab-btn { position: relative; }

.antiraid-tab-btn.active {
  background: rgba(239,68,68,0.12) !important;
  border-color: rgba(239,68,68,0.3) !important;
  color: #ef4444 !important;
}

/* ---- Anti-Raid Stats Grid ---- */
.antiraid-stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 1rem;
  margin-top: 1.5rem;
}

.antiraid-stat-card {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.25rem 1.5rem;
  border-radius: 12px;
  border: 1px solid;
  transition: transform 0.2s, box-shadow 0.2s;
}

.antiraid-stat-card:hover {
  transform: translateY(-2px);
}

.antiraid-stat-card.critical {
  background: rgba(239,68,68,0.08);
  border-color: rgba(239,68,68,0.25);
}

.antiraid-stat-card.today {
  background: rgba(245,158,11,0.08);
  border-color: rgba(245,158,11,0.25);
}

.antiraid-stat-card.total {
  background: rgba(99,102,241,0.08);
  border-color: rgba(99,102,241,0.25);
}

.antiraid-stat-icon {
  font-size: 1.5rem;
  display: flex;
  align-items: center;
}

.antiraid-stat-card.critical .antiraid-stat-icon { color: #ef4444; }
.antiraid-stat-card.today .antiraid-stat-icon { color: #f59e0b; }
.antiraid-stat-card.total .antiraid-stat-icon { color: #818cf8; }

.antiraid-stat-info {
  display: flex;
  flex-direction: column;
}

.antiraid-stat-value {
  font-size: 2rem;
  font-weight: 800;
  color: var(--creator-text);
  line-height: 1;
}

.antiraid-stat-label {
  font-size: 0.75rem;
  color: var(--creator-muted);
  margin-top: 0.25rem;
  font-weight: 500;
}

/* ---- Anti-Raid Log Row highlighting ---- */
.antiraid-row-critical {
  background: rgba(239,68,68,0.05) !important;
}

.antiraid-row-critical:hover {
  background: rgba(239,68,68,0.1) !important;
}

.antiraid-row-high {
  background: rgba(249,115,22,0.04) !important;
}

.antiraid-row-high:hover {
  background: rgba(249,115,22,0.08) !important;
}

/* ---- Top Guilds Grid ---- */
.antiraid-top-guilds-grid {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 0.5rem;
}

.antiraid-guild-card {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.85rem 1.15rem;
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  border-radius: 10px;
  transition: border-color 0.2s;
}

.antiraid-guild-card:hover {
  border-color: rgba(239,68,68,0.25);
}

.antiraid-guild-icon {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(239,68,68,0.1);
  border-radius: 8px;
  color: #ef4444;
  font-size: 0.9rem;
  flex-shrink: 0;
}

.antiraid-guild-info {
  display: flex;
  flex-direction: column;
  flex: 1;
  min-width: 0;
}

.antiraid-guild-name {
  font-weight: 600;
  font-size: 0.88rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.antiraid-guild-count {
  margin-left: auto;
  font-size: 0.8rem;
  font-weight: 700;
  color: #ef4444;
  background: rgba(239,68,68,0.1);
  padding: 0.2rem 0.6rem;
  border-radius: 6px;
  white-space: nowrap;
}

/* ---- Confirm dialog ---- */
.creator-confirm-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.75);
  backdrop-filter: blur(8px);
  z-index: 400;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
}

.creator-confirm-card {
  background: #0c0f17;
  border: 1px solid rgba(239,68,68,0.3);
  border-radius: 18px;
  padding: 2rem;
  width: 100%;
  max-width: 420px;
  text-align: center;
  box-shadow: 0 20px 60px rgba(0,0,0,0.6);
  animation: creator-fade-in 0.2s ease;
}

.creator-confirm-icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(239,68,68,0.12);
  border: 2px solid rgba(239,68,68,0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  color: #ef4444;
  margin: 0 auto 1.25rem;
}

.creator-confirm-card h3 {
  font-size: 1.2rem;
  font-weight: 800;
  color: var(--creator-text);
  margin: 0 0 0.5rem;
}

.creator-confirm-card p {
  font-size: 0.85rem;
  color: var(--creator-muted);
  line-height: 1.5;
  margin: 0 0 1.5rem;
}

.creator-confirm-actions {
  display: flex;
  gap: 0.75rem;
  justify-content: center;
}

/* ---- God Mode floating button (in landing/dashboard header) ---- */
.god-mode-btn {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(245,158,11,0.15), rgba(245,158,11,0.08));
  border: 1px solid rgba(245,158,11,0.35);
  color: #f59e0b;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.9rem;
  cursor: pointer;
  transition: all 0.25s;
  box-shadow: 0 2px 10px rgba(245,158,11,0.15);
  flex-shrink: 0;
}

.god-mode-btn:hover {
  background: rgba(245,158,11,0.25);
  border-color: rgba(245,158,11,0.6);
  transform: scale(1.1) rotate(-10deg);
  box-shadow: 0 4px 20px rgba(245,158,11,0.35);
}

/* ---- God Mode header button (shown only for creator next to selected server badge) ---- */
.god-mode-header-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.55rem;
  padding: 0.55rem 1.1rem;
  background: linear-gradient(135deg, rgba(220, 38, 38, 0.14), rgba(245, 158, 11, 0.08));
  border: 1px solid rgba(245, 158, 11, 0.32);
  border-radius: 50px;
  color: #f59e0b;
  font-size: 0.82rem;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  position: relative;
  overflow: hidden;
  transition: all 0.25s ease;
  letter-spacing: 0.3px;
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  box-shadow: var(--shadow-sm);
  height: 38px;
}
.god-mode-header-btn i { font-size: 0.85rem; }
.god-mode-header-btn:hover {
  background: linear-gradient(135deg, rgba(220, 38, 38, 0.24), rgba(245, 158, 11, 0.16));
  border-color: rgba(245, 158, 11, 0.55);
  box-shadow: 0 0 15px rgba(245, 158, 11, 0.2), var(--shadow-sm);
  transform: translateY(-1px);
}

/* Pulsing dot on the God Mode button */
.god-mode-pulse {
  position: absolute;
  top: 5px; right: 5px;
  width: 7px; height: 7px;
  background: #f59e0b;
  border-radius: 50%;
  box-shadow: 0 0 0 0 rgba(245,158,11,0.5);
  animation: godModePulse 2s ease-in-out infinite;
}
@keyframes godModePulse {
  0%,100% { box-shadow: 0 0 0 0 rgba(245,158,11,0.5); }
  50% { box-shadow: 0 0 0 7px rgba(245,158,11,0); }
}

/* Creator menu item in dashboard sidebar */
.creator-menu-item {
  border-left: 3px solid rgba(245,158,11,0.4) !important;
  background: rgba(245,158,11,0.06) !important;
}

.creator-menu-item:hover {
  background: rgba(245,158,11,0.12) !important;
  border-left-color: #f59e0b !important;
}

/* ---- Mobile responsive ---- */
@media (max-width: 768px) {
  .creator-header { padding: 0 1rem; }
  .creator-brand-sub { display: none; }

  .creator-layout { flex-direction: column; }

  .creator-sidebar {
    width: 100%;
    height: auto;
    position: static;
    flex-direction: row;
    overflow-x: auto;
    padding: 0.75rem;
    gap: 0.4rem;
    border-right: none;
    border-bottom: 1px solid var(--creator-border);
  }

  .creator-tab-btn {
    flex-direction: column;
    padding: 0.6rem 0.85rem;
    gap: 0.3rem;
    font-size: 0.72rem;
    white-space: nowrap;
    flex-shrink: 0;
  }

  .creator-tab-btn i { width: auto; }
  .creator-sidebar-divider, .creator-sidebar-info { display: none; }

  .creator-main { padding: 1.25rem 0.9rem; }

  .creator-stats-grid {
    grid-template-columns: 1fr 1fr;
  }

  .creator-bot-card {
    flex-direction: column;
    align-items: flex-start;
    padding: 1.25rem;
    gap: 1.25rem;
  }

  .creator-server-detail-grid { grid-template-columns: 1fr; }

  .creator-servers-grid { grid-template-columns: 1fr; }

  .creator-db-grid { grid-template-columns: 1fr 1fr; }

  .creator-broadcast-footer { flex-direction: column; align-items: stretch; }

  .creator-section-header h1 { font-size: 1.3rem; }

  .creator-server-modal-card { padding: 1.25rem; }

  .creator-confirm-actions { flex-direction: column; }
}

@media (max-width: 480px) {
  .creator-stats-grid { grid-template-columns: 1fr; }
  .creator-db-grid { grid-template-columns: 1fr; }
  .creator-form-row { flex-direction: column; }
  .creator-form-group-sm { flex: 1 !important; min-width: auto !important; }
}



/* ==========================================================================
   PREMIUM OVERHAUL V2.0 - NEW LANDING ELEMENTS
   ========================================================================== */

/* Background Grid Overlay */
.bg-grid-overlay {
  position: fixed;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,0.012) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.012) 1px, transparent 1px);
  background-size: 55px 55px;
  pointer-events: none;
  z-index: 0;
  mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black, transparent);
  -webkit-mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black, transparent);
}

.bg-glow-4 {
  position: fixed;
  top: 60%;
  right: 10%;
  width: 450px;
  height: 450px;
  background: radial-gradient(circle, hsla(265,88%,68%,0.065) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
  animation: glow4Float 10s ease-in-out infinite alternate;
}
@keyframes glow4Float {
  0% { transform: translate(0,0) scale(1); }
  100% { transform: translate(-30px,-40px) scale(1.1); }
}

.landing-header.scrolled {
  background: rgba(7,9,14,0.92) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.4);
  border-bottom-color: rgba(255,255,255,0.08) !important;
}

.landing-nav .nav-link {
  display: flex; align-items: center; gap: 0.4rem;
  padding: 0.4rem 0.75rem; border-radius: 8px; transition: all 0.2s ease;
}
.landing-nav .nav-link i { font-size: 0.85rem; opacity: 0.65; transition: opacity 0.2s ease; }
.landing-nav .nav-link:hover { background: rgba(255,255,255,0.05); color: #fff !important; }
.landing-nav .nav-link:hover i { opacity: 1; }
.landing-nav .nav-link.active { background: rgba(0,217,255,0.08); color: var(--color-primary) !important; }
.landing-nav .nav-link.active i { opacity: 1; color: var(--color-primary); }

.hero-orb { position: absolute; border-radius: 50%; pointer-events: none; filter: blur(40px); z-index: 1; }
.hero-orb-1 { width: 300px; height: 300px; background: hsla(190,100%,48%,0.07); top: -50px; left: -80px; animation: orbFloat1 8s ease-in-out infinite alternate; }
.hero-orb-2 { width: 250px; height: 250px; background: hsla(265,88%,68%,0.06); top: 100px; right: -60px; animation: orbFloat2 10s ease-in-out infinite alternate; }
.hero-orb-3 { width: 180px; height: 180px; background: hsla(38,92%,50%,0.045); bottom: 0; left: 30%; animation: orbFloat3 12s ease-in-out infinite alternate; }
@keyframes orbFloat1 { 0%{transform:translate(0,0) scale(1);opacity:0.6} 100%{transform:translate(30px,20px) scale(1.15);opacity:1} }
@keyframes orbFloat2 { 0%{transform:translate(0,0);opacity:0.5} 100%{transform:translate(-20px,30px);opacity:0.9} }
@keyframes orbFloat3 { 0%{transform:translate(0,0);opacity:0.4} 100%{transform:translate(20px,-20px);opacity:0.7} }

.hero-version-separator { opacity: 0.3; margin: 0 0.25rem; }
.hero-version-new { background: linear-gradient(135deg,var(--color-primary),var(--color-secondary)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; font-weight:800; }

.animated-gradient {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 50%, var(--color-primary) 100%);
  background-size: 200% auto; -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  animation: gradientShift 4s linear infinite;
}
@keyframes gradientShift { 0%{background-position:0% center} 100%{background-position:200% center} }

.hero-feature-chips { display:flex; gap:0.6rem; flex-wrap:wrap; margin-top:0.25rem; }
.feature-chip {
  display:inline-flex; align-items:center; gap:0.35rem;
  background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.08); border-radius:50px;
  padding:0.3rem 0.85rem; font-size:0.8rem; font-weight:600; color:var(--text-secondary); transition:all 0.25s ease;
}
.feature-chip i { font-size:0.75rem; color:var(--color-primary); }
.feature-chip:hover { background:rgba(0,217,255,0.06); border-color:rgba(0,217,255,0.15); color:#fff; }

.hero-btn .btn-arrow { margin-left:0.25rem; transition:transform 0.25s ease; }
.hero-btn:hover .btn-arrow { transform:translateX(4px); }

.hero-trust-row { display:flex; align-items:center; gap:0.85rem; margin-top:0.5rem; }
.trust-avatars { display:flex; }
.trust-avatars img { width:32px; height:32px; border-radius:50%; border:2px solid var(--bg-main); margin-left:-8px; transition:transform 0.2s ease; }
.trust-avatars img:first-child { margin-left:0; }
.trust-avatars img:hover { transform:translateY(-3px); z-index:10; }
.trust-text { font-size:0.82rem; color:var(--text-secondary); font-weight:600; }

.avatar-floating-badge {
  position:absolute; width:38px; height:38px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  font-size:1rem; border:2px solid var(--bg-main); box-shadow:var(--shadow-md); z-index:5; animation:badgeFloat 3s ease-in-out infinite alternate;
}
.badge-economy { background:linear-gradient(135deg,#f59e0b,#fbbf24); color:#0c0f17; top:-5px; right:-10px; animation-delay:0s; }
.badge-logs { background:linear-gradient(135deg,#3b82f6,#60a5fa); color:#fff; bottom:0; right:-15px; animation-delay:0.8s; }
.badge-xp { background:linear-gradient(135deg,var(--color-secondary),#c4b5fd); color:#fff; top:30px; left:-15px; animation-delay:1.5s; }
@keyframes badgeFloat { 0%{transform:translateY(0) rotate(-5deg)} 100%{transform:translateY(-8px) rotate(5deg)} }

.db-brand-row { display:flex; align-items:center; gap:0.45rem; }
.db-brand-label { font-size:0.72rem; font-weight:700; color:var(--text-primary); }
.db-status-dot { width:8px; height:8px; border-radius:50%; background:#2ecc71; box-shadow:0 0 6px rgba(46,204,113,0.7); flex-shrink:0; }
.db-live-label { font-size:0.62rem; font-weight:600; color:hsl(145,80%,45%); }
.mockup-db-header { display:flex; align-items:center; justify-content:space-between; gap:0.5rem; }

.metrics-section-label { text-align:center; font-size:0.78rem; font-weight:700; text-transform:uppercase; letter-spacing:2px; color:var(--text-muted); margin-bottom:1.75rem; }
.metric-card { position:relative; }
.metric-card-glow { position:absolute; inset:0; border-radius:18px; opacity:0; transition:opacity 0.3s ease; pointer-events:none; }
.metric-card:hover .metric-card-glow { opacity:1; }
.metric-cyan .metric-icon-box { color:var(--color-primary); background:rgba(0,217,255,0.06); border-color:rgba(0,217,255,0.12); }
.metric-cyan:hover { border-color:rgba(0,217,255,0.2) !important; }
.metric-cyan .metric-info h3 { color:var(--color-primary); }
.metric-purple .metric-icon-box { color:var(--color-secondary); background:rgba(167,139,250,0.06); border-color:rgba(167,139,250,0.12); }
.metric-purple:hover { border-color:rgba(167,139,250,0.2) !important; }
.metric-purple .metric-info h3 { color:var(--color-secondary); }
.metric-yellow .metric-icon-box { color:var(--color-warning); background:rgba(245,158,11,0.06); border-color:rgba(245,158,11,0.12); }
.metric-yellow:hover { border-color:rgba(245,158,11,0.2) !important; }
.metric-yellow .metric-info h3 { color:var(--color-warning); }
.metric-green .metric-icon-box { color:var(--color-success); background:rgba(46,204,113,0.06); border-color:rgba(46,204,113,0.12); }
.metric-green:hover { border-color:rgba(46,204,113,0.2) !important; }
.metric-green .metric-info h3 { color:var(--color-success); }

.features-section-header { text-align:center; margin-bottom:5rem; display:flex; flex-direction:column; align-items:center; gap:1rem; }
.features-section-label { display:inline-flex; align-items:center; gap:0.5rem; font-size:0.78rem; font-weight:700; text-transform:uppercase; letter-spacing:2px; color:var(--color-primary); background:rgba(0,217,255,0.06); border:1px solid rgba(0,217,255,0.15); padding:0.4rem 1.1rem; border-radius:50px; }
.features-section-title { font-family:var(--font-display); font-size:2.8rem; font-weight:900; letter-spacing:-0.75px; color:#fff; line-height:1.2; }
.features-section-desc { color:var(--text-secondary); font-size:1.05rem; line-height:1.6; max-width:560px; font-weight:500; }

.feature-category-badge { display:inline-flex; align-items:center; gap:0.4rem; font-size:0.75rem; font-weight:700; text-transform:uppercase; letter-spacing:1.5px; color:var(--color-primary); background:rgba(0,217,255,0.06); border:1px solid rgba(0,217,255,0.15); padding:0.35rem 0.9rem; border-radius:50px; width:fit-content; margin-bottom:0.5rem; }

.feature-highlights { display:flex; flex-direction:column; gap:0.7rem; margin-top:0.5rem; }
.feature-highlight-item { display:flex; align-items:center; gap:0.65rem; font-size:0.9rem; color:var(--text-secondary); font-weight:500; }
.feature-highlight-item i { color:var(--color-success); font-size:0.85rem; flex-shrink:0; }

.landing-feature-item { position:relative; }
.landing-feature-item::before { content:attr(data-feature); position:absolute; top:-2rem; left:0; font-family:var(--font-display); font-size:8rem; font-weight:900; color:rgba(255,255,255,0.012); line-height:1; pointer-events:none; user-select:none; }

.faq-section-badge { display:inline-flex; align-items:center; gap:0.5rem; font-size:0.78rem; font-weight:700; text-transform:uppercase; letter-spacing:2px; color:var(--color-secondary); background:rgba(167,139,250,0.06); border:1px solid rgba(167,139,250,0.15); padding:0.4rem 1.1rem; border-radius:50px; margin-bottom:1.2rem; }
.faq-header-left { display:flex; align-items:center; gap:0.85rem; flex:1; }
.faq-icon-box { width:34px; height:34px; border-radius:8px; background:rgba(0,217,255,0.05); border:1px solid rgba(0,217,255,0.1); display:flex; align-items:center; justify-content:center; font-size:0.9rem; color:var(--color-primary); flex-shrink:0; transition:all 0.25s ease; }
.faq-item.active .faq-icon-box { background:rgba(0,217,255,0.12); border-color:var(--color-primary); box-shadow:0 0 10px rgba(0,217,255,0.15); }
.faq-header { display:flex; justify-content:space-between; align-items:center; gap:1rem; }

.footer-cta-banner {
  position:relative; max-width:900px; margin:4rem auto 0;
  padding:2.5rem 3rem; background:linear-gradient(135deg,rgba(0,217,255,0.05),rgba(167,139,250,0.05));
  border:1px solid rgba(0,217,255,0.1); border-radius:24px;
  display:flex; justify-content:space-between; align-items:center; gap:2rem; flex-wrap:wrap;
  overflow:hidden; backdrop-filter:var(--glass-blur); -webkit-backdrop-filter:var(--glass-blur);
}
.footer-cta-banner::before { content:''; position:absolute; inset:0; background:radial-gradient(ellipse at 0% 0%, rgba(0,217,255,0.07), transparent 60%); pointer-events:none; }
.footer-cta-content { position:relative; z-index:1; }
.footer-cta-content h3 { font-family:var(--font-display); font-size:1.65rem; font-weight:800; color:#fff; letter-spacing:-0.5px; margin-bottom:0.4rem; }
.footer-cta-content p { color:var(--text-secondary); font-size:0.95rem; font-weight:500; }
.footer-cta-buttons { display:flex; gap:1rem; flex-shrink:0; position:relative; z-index:1; }
.footer-cta-secondary { display:inline-flex; align-items:center; gap:0.5rem; padding:0.85rem 1.8rem; border-radius:12px; text-decoration:none; font-size:0.92rem; font-weight:700; color:var(--text-secondary); border:1px solid var(--border-color); transition:all 0.3s ease; background:rgba(255,255,255,0.03); }
.footer-cta-secondary:hover { color:#fff; border-color:rgba(255,255,255,0.15); background:rgba(255,255,255,0.06); }

.footer-brand-logo { width:40px; height:40px; background:linear-gradient(135deg,var(--color-primary),var(--color-secondary)); border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:1.25rem; color:#fff; box-shadow:var(--shadow-glow-cyan); flex-shrink:0; }

.footer-status-badge { display:inline-flex; align-items:center; gap:0.5rem; font-size:0.8rem; font-weight:600; color:var(--color-success); margin-top:0.85rem; background:rgba(46,204,113,0.06); border:1px solid rgba(46,204,113,0.15); padding:0.3rem 0.85rem; border-radius:50px; }

.footer-links-grid { display:flex; gap:4rem; flex-wrap:wrap; }
.footer-links-col { display:flex; flex-direction:column; gap:0.7rem; min-width:120px; }
.footer-links-col h4 { font-size:0.75rem; font-weight:700; text-transform:uppercase; letter-spacing:1.5px; color:var(--text-muted); margin-bottom:0.25rem; }
.footer-links-col a { font-size:0.88rem; color:var(--text-secondary); text-decoration:none; font-weight:500; transition:all 0.2s ease; }
.footer-links-col a:hover { color:#fff; }
.creator-name-footer { font-size:1.1rem; font-weight:700; color:#fff; font-family:var(--font-display); }

.footer-bottom { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:1rem; }
.footer-bottom-links { font-size:0.82rem; color:var(--text-muted); font-weight:500; }

.social-link.discord-social:hover { background:#5865f2; border-color:#5865f2; box-shadow:0 5px 15px rgba(88,101,242,0.4); }

@media(max-width:900px){
  .features-section-title{font-size:2.2rem}
  .footer-cta-banner{flex-direction:column;align-items:flex-start;padding:2rem}
  .footer-cta-buttons{flex-direction:column;width:100%}
  .footer-cta-buttons a{width:100%;justify-content:center}
  .footer-links-grid{gap:2rem}
}
@media(max-width:768px){
  .features-section-header{margin-bottom:3.5rem}
  .features-section-title{font-size:1.85rem}
  .hero-feature-chips{justify-content:center}
  .hero-trust-row{justify-content:center}
  .footer-links-grid{width:100%;justify-content:space-between}
  .footer-bottom{flex-direction:column;align-items:center;text-align:center}
}
@media(max-width:600px){
  .footer-cta-banner{margin-top:3rem}
  .footer-cta-content h3{font-size:1.35rem}
  .footer-links-grid{flex-direction:column;gap:1.5rem}
}

/* ============================================================================
   MEGA RESPONSIVE OVERHAUL v3.0
   Full mobile-first fixes for Android + premium visual enhancements
   ============================================================================ */

:root {
  --color-accent: hsl(320, 90%, 62%);
  --color-accent-glow: hsla(320, 90%, 62%, 0.15);
  --min-touch: 44px;
}

/* --- Global touch & scroll improvements --- */
*, *::before, *::after { -webkit-tap-highlight-color: transparent; }
html { -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { -webkit-overflow-scrolling: touch; overscroll-behavior-y: contain; }
img { max-width: 100%; height: auto; }

/* Prevent horizontal overflow */
#landing-view, #server-selector-view, #dashboard-view { max-width: 100vw; overflow-x: hidden; }
.landing-hero, .landing-metrics-section, .landing-servers-section,
.landing-features-section, .landing-faq-section { box-sizing: border-box; max-width: 100%; }

/* Nav link min tap target */
.landing-nav .nav-link { min-height: var(--min-touch); display: flex; align-items: center; }

/* ==== LANDING HEADER ==== */
@media (max-width: 900px) {
  .landing-header { padding: 0.9rem 1.4rem; gap: 0.75rem; }
  .landing-header .header-right { gap: 0.65rem; margin-right: 0.5rem; }
  .landing-header .premium-badge { display: none; }
  .landing-login-btn { padding: 0.55rem 1rem; font-size: 0.85rem; }
}
@media (max-width: 600px) {
  .landing-header { padding: 0.75rem 1rem; }
  .landing-brand-name { font-size: 1.15rem; }
  .landing-login-btn { padding: 0.5rem 0.85rem; font-size: 0.8rem; border-radius: 8px; }
}

/* ==== LANDING HERO ==== */
@media (max-width: 900px) {
  .landing-hero { padding: 4rem 1.5rem 3rem; }
  .hero-main-title { font-size: 2.6rem; }
  .hero-main-desc { font-size: 1rem; }
}
@media (max-width: 680px) {
  .landing-hero { padding: 3rem 1rem 2rem; }
  .hero-content-wrapper { grid-template-columns: 1fr; gap: 2.5rem; }
  .hero-text-side { align-items: center; text-align: center; gap: 1.25rem; }
  .hero-main-title { font-size: 2.15rem; letter-spacing: -0.5px; line-height: 1.2; }
  .hero-main-desc { font-size: 0.95rem; max-width: 100%; }
  .hero-buttons-container { justify-content: center; flex-direction: column; width: 100%; max-width: 360px; margin: 0 auto; }
  .hero-btn, .hero-cta-btn { width: 100%; justify-content: space-between; padding: 0.85rem 1.2rem; }
  .hero-trust-row { justify-content: center; }
  /* Hide complex 3D mockup on small phones â€” prevents overflow */
  .hero-visual-side { display: none; }
}
@media (max-width: 380px) {
  .hero-main-title { font-size: 1.85rem; }
  .hero-version-badge { font-size: 0.72rem; padding: 0.35rem 0.75rem; }
}

/* ==== METRICS ==== */
@media (max-width: 900px) { .landing-metrics-section { padding: 0 1.5rem; margin: 2rem auto 1rem; } }
@media (max-width: 600px) {
  .metrics-container { grid-template-columns: 1fr 1fr; gap: 1rem; }
  .metric-card { padding: 1rem 1.1rem; gap: 0.85rem; border-radius: 14px; }
  .metric-icon-box { width: 40px; height: 40px; font-size: 1.1rem; flex-shrink: 0; }
  .metric-info h3 { font-size: 1.25rem; }
  .metric-info p { font-size: 0.72rem; }
}
@media (max-width: 400px) { .metrics-container { grid-template-columns: 1fr; } }

/* ==== SERVERS / FEATURES ==== */
@media (max-width: 900px) {
  .landing-servers-section { padding: 0 1.5rem; margin: 2rem auto 3rem; }
  .landing-features-section { padding: 0 1.5rem 4rem; gap: 4rem; }
  .feature-title { font-size: 1.85rem; }
  .feature-description { font-size: 0.95rem; }
}
@media (max-width: 680px) {
  .landing-servers-section { padding: 0 1rem; }
  .landing-servers-grid { grid-template-columns: 1fr; }
  .landing-features-section { padding: 0 1rem 3rem; gap: 3rem; }
  .feature-title { font-size: 1.65rem; }
  .feature-graphic { overflow: hidden; width: 100%; }
  .mockup-discord-chat { max-width: 100%; padding: 1rem; font-size: 0.88rem; }
  .mockup-invite-card { max-width: 100%; padding: 1rem; }
  .invite-details-grid { grid-template-columns: 1fr; gap: 0.6rem; }
  .chat-embed { max-width: 100%; }
  .embed-id-block { font-size: 0.72rem; word-break: break-all; }
  .chat-avatar { width: 32px; height: 32px; }
  .ship-graphic-card, .dashboard-rank-card { max-width: 100%; }
}
@media (max-width: 480px) {
  .landing-features-section { gap: 2.5rem; }
  .feature-title { font-size: 1.45rem; }
  .feature-highlights { gap: 0.5rem; }
  .feature-highlight-item { font-size: 0.85rem; }
}

/* ==== FEATURES HEADER ==== */
@media (max-width: 768px) {
  .features-section-header { margin-bottom: 3rem; padding: 0 0.5rem; }
  .features-section-title { font-size: 1.95rem; }
  .features-section-desc { font-size: 0.92rem; }
}
@media (max-width: 480px) { .features-section-title { font-size: 1.65rem; } }

/* ==== FAQ ==== */
@media (max-width: 768px) {
  .landing-faq-section { padding: 0 1.25rem; margin: 4rem auto 2rem; }
  .faq-section-title { font-size: 1.85rem; }
  .faq-header { padding: 1.1rem 1.2rem; font-size: 0.95rem; }
  .faq-answer p { font-size: 0.85rem; }
}
@media (max-width: 480px) {
  .faq-section-title { font-size: 1.55rem; }
  .faq-header-left { gap: 0.6rem; }
  .faq-icon-box { width: 28px; height: 28px; font-size: 0.78rem; flex-shrink: 0; }
}

/* ==== FOOTER ==== */
@media (max-width: 768px) {
  .landing-footer-main { padding: 3rem 1.5rem 1.5rem; }
  .footer-content { flex-direction: column; gap: 2rem; }
  .footer-left { min-width: unset; max-width: 100%; }
  .footer-links-grid { gap: 1.5rem; flex-wrap: wrap; width: 100%; justify-content: space-between; }
}
@media (max-width: 480px) {
  .landing-footer-main { padding: 2.5rem 1rem 1rem; }
  .footer-links-grid { flex-direction: column; gap: 1.25rem; }
  .footer-bottom { flex-direction: column; text-align: center; gap: 0.75rem; padding-top: 1.25rem; }
}

/* ==== SERVER SELECTOR ==== */
@media (max-width: 768px) {
  .selector-main { padding: 2.5rem 1.25rem; }
  .selector-main h1 { font-size: 2rem; }
  .selector-controls { flex-direction: column; align-items: stretch; gap: 1rem; margin-bottom: 2rem; }
  .selector-search-box { max-width: 100%; }
  .refresh-btn { width: 100%; justify-content: center; }
  .servers-grid { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .selector-main h1 { font-size: 1.65rem; }
  .selector-subtitle { font-size: 0.92rem; }
}

/* ==== DASHBOARD MAIN CONTENT ==== */
@media (max-width: 768px) {
  .main-content { padding: 1.25rem 1rem; gap: 1.5rem; }
  .header-title h1 { font-size: 1.85rem; }
  .header-title p { font-size: 0.88rem; }
}
@media (max-width: 480px) {
  .main-content { padding: 1rem 0.75rem; gap: 1.25rem; }
  .header-title h1 { font-size: 1.6rem; }
}

/* ==== GLOBAL BOT BANNER ==== */
@media (max-width: 480px) {
  .global-bot-banner { padding: 1.25rem; border-radius: 14px; }
  .bot-details h2 { font-size: 1.2rem; }
  .bot-details p { font-size: 0.82rem; }
  .bot-avatar-large { width: 54px; height: 54px; }
  .bot-stat-value { font-size: 1.25rem; }
}

/* ==== HUB GRID ==== */
@media (max-width: 768px) { .hub-grid { grid-template-columns: 1fr; gap: 1.25rem; } }
@media (max-width: 480px) { .hub-card { padding: 1.4rem 1.2rem; } }

/* ==== LEADERBOARD ==== */
@media (max-width: 900px) {
  .table-container { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .leaderboard-table { min-width: 580px; }
}
@media (max-width: 480px) {
  .leaderboard-table th, .leaderboard-table td { padding: 0.85rem 1rem; font-size: 0.85rem; }
}

/* ==== STATS GRID ==== */
@media (max-width: 900px) { .stats-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 480px) { .stats-grid { grid-template-columns: 1fr; } }

/* ==== SETTINGS & FORMS ==== */
@media (max-width: 768px) {
  .settings-card { padding: 1.5rem 1.25rem; }
  .settings-card h2 { font-size: 1.35rem; }
  .setting-row { flex-direction: column; align-items: stretch; gap: 1rem; padding: 1rem 1.1rem; }
  .setting-controls { flex-direction: column; width: 100%; gap: 0.75rem; }
  .setting-controls select, select.channel-select, .settings-form-layout select {
    width: 100% !important; min-width: unset !important; max-width: 100%;
  }
  .form-actions { flex-direction: column; align-items: stretch; }
  .submit-btn { width: 100%; justify-content: center; padding: 0.85rem 1.5rem; }
}
@media (max-width: 480px) {
  .settings-card { padding: 1.1rem 1rem; }
  .accordion-header { padding: 0.9rem 1rem; font-size: 0.95rem; }
  .accordion-content.active { padding: 1rem; }
}

/* ==== MODAL ==== */
@media (max-width: 600px) {
  .modal-card { padding: 1.5rem 1.25rem; max-width: 98vw; border-radius: 16px; max-height: 95vh; }
  .modal-close-btn { top: 1rem; right: 1rem; }
  .user-profile-header { flex-direction: column; align-items: center; text-align: center; gap: 1rem; }
  .profile-title-info h2 { font-size: 1.5rem; }
}

/* ==== CONTENT PANEL ==== */
@media (max-width: 768px) { .content-panel { padding: 1.5rem; border-radius: 16px; min-height: unset; } }
@media (max-width: 480px) { .content-panel { padding: 1.1rem; border-radius: 12px; } }

/* ==== SHOP ==== */
@media (max-width: 768px) { .shop-grid { grid-template-columns: 1fr; } }
@media (max-width: 480px) { .shop-card { padding: 1.25rem; min-height: unset; } }

/* ==== SEARCH BAR / LOOKUP ==== */
@media (max-width: 600px) {
  .search-box-container { max-width: 100%; margin-bottom: 2rem; }
  .search-bar { flex-direction: column; align-items: stretch; gap: 0.5rem; padding: 0.75rem; }
  .search-bar input { padding: 0.65rem 0.5rem; }
  .search-bar button { width: 100%; justify-content: center; padding: 0.75rem 1rem; }
}

/* ==== BREADCRUMBS ==== */
@media (max-width: 480px) {
  .breadcrumbs { font-size: 0.7rem; gap: 0.3rem; flex-wrap: wrap; }
  .breadcrumb-separator { font-size: 0.58rem; }
}

/* ==== SERVER BADGE ==== */
@media (max-width: 600px) {
  .server-badge { padding: 0.4rem 0.8rem; gap: 0.5rem; }
  #server-badge-name { font-size: 0.78rem; max-width: 100px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}

/* ==== COMMANDS EXPLORER ==== */
@media (max-width: 768px) {
  .commands-search-row { flex-direction: column !important; gap: 1rem !important; padding: 1rem !important; }
  .commands-search-row > div:first-child { min-width: unset !important; width: 100% !important; }
  .landing-cmd-tabs { flex-wrap: wrap; gap: 0.4rem !important; }
  .landing-cmd-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 480px) { .tab-btn { padding: 0.5rem 0.75rem; font-size: 0.82rem; } }

/* ==== TOAST ==== */
@media (max-width: 600px) {
  .toast-notification { bottom: 16px; right: 12px; left: 12px; border-radius: 12px; padding: 0.9rem 1.2rem; }
}

/* ==== WELCOME CARD ==== */
@media (max-width: 600px) {
  .sunlight-welcome-card { flex-direction: column; padding: 1.5rem 1.25rem; gap: 1rem; }
  .sunlight-welcome-text h2 { font-size: 1.25rem; }
  .sunlight-welcome-text p { font-size: 0.88rem; }
  .quick-actions-row { flex-direction: column; }
  .quick-action-btn { width: 100%; justify-content: center; }
}

/* ==== DASHBOARD MOBILE HEADER ==== */
@media (max-width: 480px) {
  .dashboard-mobile-header { padding: 0 1rem; height: 56px; }
  .landing-brand-logo { width: 30px; height: 30px; }
}

/* ==== SERVER CARDS ==== */
@media (max-width: 600px) {
  .server-card-item { padding: 0.9rem 1rem; gap: 0.85rem; border-radius: 14px; }
  .server-card-avatar, .server-card-avatar-placeholder { width: 44px; height: 44px; }
  .server-card-btn { padding: 0.5rem 0.85rem; font-size: 0.8rem; min-height: var(--min-touch); }
}

/* Disable 3D transforms on mobile (Android glitch prevention) */
@media (max-width: 768px) {
  .mockup-invite-card:hover, .mockup-welcome-banner:hover,
  .mockup-rank-card:hover, .hero-mockup-dashboard:hover { transform: none; }
  .hero-mockup-dashboard { animation: none; transform: none; }
}

/* iOS: prevent auto-zoom on input focus */
@media (max-width: 768px) {
  input[type="text"], input[type="number"], input[type="search"], select, textarea {
    min-height: var(--min-touch);
    font-size: 16px !important;
  }
  .switch { width: 56px; height: 30px; flex-shrink: 0; }
  .slider:before { height: 20px; width: 20px; }
  input:checked + .slider:before { transform: translateX(26px); }
}

/* Wide screen: even bigger type */
@media (min-width: 1100px) {
  .hero-main-title { font-size: 4rem; letter-spacing: -1.5px; }
  .features-section-title { font-size: 3.2rem; }
  .faq-section-title { font-size: 2.6rem; }
}

/* ============================================================================
   PREMIUM VISUAL ENHANCEMENTS v3.0
   ============================================================================ */

/* Hero title: richer 3-color shimmer */
.hero-main-title .gradient-text.animated-gradient {
  background: linear-gradient(135deg,
    var(--color-primary) 0%,
    var(--color-secondary) 35%,
    var(--color-accent) 65%,
    var(--color-primary) 100%);
  background-size: 300% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: gradientShift 5s linear infinite;
}

/* Metric cards: stronger hover glow per color */
.metric-cyan:hover  { box-shadow: 0 8px 28px rgba(0,217,255,0.14) !important; }
.metric-purple:hover { box-shadow: 0 8px 28px rgba(167,139,250,0.14) !important; }
.metric-yellow:hover { box-shadow: 0 8px 28px rgba(245,158,11,0.14) !important; }
.metric-green:hover  { box-shadow: 0 8px 28px rgba(46,204,113,0.14) !important; }
.metric-cyan:hover  .metric-icon-box { background: rgba(0,217,255,0.14); box-shadow: 0 0 20px rgba(0,217,255,0.3); }
.metric-purple:hover .metric-icon-box { background: rgba(167,139,250,0.14); box-shadow: 0 0 20px rgba(167,139,250,0.3); }
.metric-yellow:hover .metric-icon-box { background: rgba(245,158,11,0.14); box-shadow: 0 0 20px rgba(245,158,11,0.3); }
.metric-green:hover  .metric-icon-box { background: rgba(46,204,113,0.14); box-shadow: 0 0 20px rgba(46,204,113,0.3); }

/* Metric numbers: bigger */
.metric-info h3 { font-size: 1.65rem; letter-spacing: -0.5px; }

/* Feature items: subtle hover glow bg */
.landing-feature-item { border-radius: 20px; padding: 2rem; transition: background 0.4s ease; }
.landing-feature-item:hover { background: rgba(0,217,255,0.018); }

/* Manage button sweep shine loop */
@keyframes sweepShine { 0% { left: -120%; } 100% { left: 120%; } }
.hero-btn.manage-btn::after {
  content: '';
  position: absolute; top: 0; left: -120%;
  width: 60%; height: 100%;
  background: linear-gradient(120deg, transparent, rgba(255,255,255,0.18), transparent);
  animation: sweepShine 3.5s ease-in-out 2s infinite;
}

/* FAQ: vivid title gradient */
.faq-section-title {
  background: linear-gradient(135deg, #ffffff 30%, var(--color-secondary) 100%);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
}

/* Stat value: gradient text */
.stat-value {
  background: linear-gradient(135deg, #ffffff 30%, #c7d2fe 100%);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
}

/* Bot stat glow always */
.bot-stat-value { text-shadow: 0 0 20px rgba(0,217,255,0.3); }

/* Settings card gradient top bar */
.settings-card { position: relative; }
.settings-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, var(--color-primary), var(--color-secondary));
  border-radius: 20px 20px 0 0; opacity: 0.7;
}

/* Submit button: animated gradient */
.submit-btn {
  background: linear-gradient(135deg,
    var(--color-primary) 0%, var(--color-secondary) 50%, var(--color-accent) 100%);
  background-size: 200% auto;
  animation: gradientShift 4s linear infinite;
}

/* Feature highlight checkmark glow */
.feature-highlight-item i { filter: drop-shadow(0 0 4px rgba(46,204,113,0.45)); }

/* Footer glow more dramatic */
.footer-glow-effect {
  width: 800px; height: 400px;
  background: radial-gradient(circle,
    rgba(0,217,255,0.1) 0%, rgba(167,139,250,0.05) 40%, transparent 70%);
}

/* Stronger bg glows */
.bg-glow { opacity: 0.28; }

/* Invite card: darker + more vivid */
.mockup-invite-card { background: linear-gradient(135deg, #06081a 0%, #0c0f2a 50%, #060f1e 100%); }
.invite-title-main {
  background: linear-gradient(135deg, #ffffff 0%, #c7f4ff 40%, #22f6ff 100%);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
}

/* Discord chat: authentic contrast */
.mockup-discord-chat { background: #2b2d31 !important; }
.chat-embed { background: #232428 !important; border-left-width: 4px; }

/* Back-to-top floating button */
.back-to-top-btn {
  position: fixed; bottom: 28px; right: 28px;
  width: 44px; height: 44px;
  background: linear-gradient(135deg, var(--color-primary), var(--color-secondary));
  border: none; border-radius: 50%; color: #fff; font-size: 1.1rem;
  display: flex; align-items: center; justify-content: center;
  cursor: pointer; box-shadow: 0 4px 16px rgba(0,217,255,0.35);
  z-index: 9999; opacity: 0; pointer-events: none;
  transform: translateY(10px); transition: all 0.3s cubic-bezier(0.4,0,0.2,1);
}
.back-to-top-btn.visible { opacity: 1; pointer-events: auto; transform: translateY(0); }
.back-to-top-btn:hover { transform: translateY(-3px); box-shadow: 0 6px 22px rgba(0,217,255,0.5); }
@media (max-width: 768px) { .back-to-top-btn { bottom: 18px; right: 18px; width: 40px; height: 40px; } }

/* ============================================================================
   DASHBOARD PANEL MOBILE CRITICAL FIXES
   Resolves: text bleed, sidebar overflow, card text overflow on Android
   ============================================================================ */

/* --- 1. App container: always clip horizontal overflow in mobile --- */
@media (max-width: 1024px) {
  .app-container {
    overflow-x: hidden;
    max-width: 100vw;
    width: 100%;
    box-sizing: border-box;
  }

  /* Ensure dashboard view doesn't create overflow context for fixed sidebar */
  #dashboard-view {
    overflow-x: hidden;
  }
}

/* --- 2. Sidebar menu item labels â€” always clip text inside drawer --- */
@media (max-width: 1024px) {
  /* The menu label text (text node / span inside .menu-item) */
  .menu-item {
    white-space: normal !important;  /* override the nowrap from tablet row mode */
    overflow: hidden;
    max-width: 100%;
  }

  /* If there's a dedicated label element */
  .menu-label,
  .menu-item span:not(.sidebar-category-header) {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: calc(290px - 80px); /* sidebar - icon - padding */
    display: block;
  }

  /* Sidebar category headers */
  .sidebar-category-header {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    box-sizing: border-box;
  }
}

/* --- 3. Dashboard main content â€” no overflow anywhere --- */
@media (max-width: 1024px) {
  .main-content,
  .main-content > * {
    max-width: 100%;
    box-sizing: border-box;
  }

  /* All cards must not overflow */
  .settings-card,
  .general-config-card-premium,
  .sunlight-welcome-card,
  .global-bot-banner,
  .hub-card,
  .welcome-box {
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    word-break: break-word;
    overflow-wrap: break-word;
  }
}

/* --- 4. Bot banner â€” fix text overflow inside banner on small screens --- */
@media (max-width: 768px) {
  .global-bot-banner {
    padding: 1.25rem 1rem;
    gap: 1rem;
  }

  .banner-server-badge-container {
    width: 100%;
    justify-content: flex-start;
    padding: 0.55rem 0.85rem;
  }

  .bot-info-main {
    gap: 1rem;
    min-width: 0;
    overflow: hidden;
  }

  .bot-details {
    min-width: 0;
    overflow: hidden;
  }

  .bot-details h2 {
    font-size: 1.15rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
  }

  .bot-details p {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    font-size: 0.8rem;
  }

  .bot-stats-horizontal {
    flex-wrap: wrap;
    gap: 1rem 1.5rem;
  }
}

/* --- 5. Welcome / header cards â€” prevent long text from breaking layout --- */
@media (max-width: 768px) {
  .sunlight-welcome-card {
    word-break: break-word;
    overflow-wrap: break-word;
  }

  .sunlight-welcome-text {
    min-width: 0;
    overflow: hidden;
  }

  .sunlight-welcome-text h2 {
    font-size: 1.2rem;
    word-break: break-word;
  }

  .sunlight-welcome-text p {
    font-size: 0.88rem;
    line-height: 1.5;
  }

  .welcome-box h2 {
    font-size: 1.35rem;
    word-break: break-word;
  }

  .welcome-box p {
    font-size: 0.88rem;
  }
}

/* --- 6. Main header section (page title + breadcrumbs row) --- */
@media (max-width: 768px) {
  .main-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.85rem;
    overflow: hidden;
    max-width: 100%;
  }

  .header-title {
    max-width: 100%;
    overflow: hidden;
  }

  .header-title h1 {
    font-size: 1.55rem;
    word-break: break-word;
    overflow-wrap: break-word;
    letter-spacing: -0.3px;
  }

  .header-title p {
    font-size: 0.85rem;
    line-height: 1.5;
    word-break: break-word;
  }

  .main-header-right {
    width: 100%;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.6rem;
  }
}

/* --- 7. Hub cards grid â€” full width single column on mobile --- */
@media (max-width: 600px) {
  .hub-grid {
    grid-template-columns: 1fr !important;
  }

  .hub-card {
    padding: 1.3rem 1.1rem;
    overflow: hidden;
    word-break: break-word;
  }

  .hub-card h3 {
    font-size: 1.05rem;
  }

  .hub-card p {
    font-size: 0.84rem;
    line-height: 1.5;
  }
}

/* --- 8. Settings card and accordion â€” prevent overflow --- */
@media (max-width: 600px) {
  .settings-card {
    overflow: hidden;
    word-break: break-word;
  }

  .settings-card h2 {
    font-size: 1.25rem;
    overflow-wrap: break-word;
  }

  .settings-desc {
    font-size: 0.85rem;
  }

  .setting-info h4 {
    font-size: 0.92rem;
    word-break: break-word;
  }

  .setting-info p {
    font-size: 0.78rem;
  }

  .accordion-header {
    overflow: hidden;
    word-break: break-word;
  }

  .accordion-header span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

/* --- 9. General config card premium --- */
@media (max-width: 600px) {
  .general-config-card-premium {
    flex-direction: column;
    align-items: stretch;
    padding: 1.1rem;
    gap: 1rem;
    overflow: hidden;
  }

  .general-config-text h3 {
    font-size: 1.05rem;
    overflow-wrap: break-word;
  }

  .general-config-text p {
    font-size: 0.8rem;
  }

  .general-config-inputs {
    width: 100%;
    overflow: hidden;
  }
}

/* --- 10. Lookup result / profile card --- */
@media (max-width: 600px) {
  .lookup-result-container {
    padding: 1rem;
    overflow: hidden;
  }

  .user-profile-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }

  .profile-title-info h2 {
    font-size: 1.35rem;
    word-break: break-word;
  }
}

/* --- 11. Server badge in dashboard mobile header --- */
@media (max-width: 600px) {
  .mobile-server-badge-wrapper {
    max-width: 140px;
    overflow: hidden;
  }
}

/* --- 12. Menu-item: ensure icon + text layout is correct in drawer --- */
@media (max-width: 1024px) {
  .menu-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-width: 0;  /* critical: allows flex children to shrink */
  }

  .menu-item i {
    flex-shrink: 0;  /* icon never shrinks */
    width: 18px;
    text-align: center;
  }

  /* If menu items use a text span */
  .menu-item > span,
  .menu-item > .menu-label {
    flex: 1;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

/* --- 13. Sidebar brand area in drawer --- */
@media (max-width: 1024px) {
  .sidebar-brand {
    max-width: 100%;
    overflow: hidden;
    box-sizing: border-box;
  }

  .sidebar-brand .brand-name,
  .sidebar-brand h2,
  .sidebar-brand h3 {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  /* Guild selector inside drawer */
  .guild-selector-container {
    max-width: 100%;
    box-sizing: border-box;
  }

  .guild-selector,
  #guild-selector {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box;
  }
}

/* --- 14. stat-card items in dashboard home --- */
@media (max-width: 600px) {
  .stat-card {
    padding: 1.1rem;
    overflow: hidden;
    word-break: break-word;
  }

  .stat-card h3 {
    font-size: 0.82rem;
    word-break: break-word;
  }

  .stat-value {
    font-size: 1.65rem !important;
  }
}

/* --- 15. Prevent the overlay from being cut behind nav ---  */
@media (max-width: 1024px) {
  .sidebar-overlay {
    z-index: 150;
    position: fixed;
    inset: 0;
    /* Make sure it's really full screen */
    width: 100vw;
    height: 100vh;
  }

  .sidebar-close-btn {
    position: absolute;
    top: 1.2rem;
    right: 1.2rem;
    z-index: 10;
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.1);
    border-radius: 50%;
    width: 36px;
    height: 36px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    cursor: pointer;
    color: var(--text-secondary);
    transition: all var(--transition-fast);
  }

  .sidebar-close-btn:hover {
    background: rgba(255,255,255,0.12);
    color: #fff;
    transform: rotate(90deg);
  }
}

/* Precise Database Manager Styles */
.creator-db-manager-layout {
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 1.5rem;
  margin-top: 1.25rem;
}

@media (max-width: 950px) {
  .creator-db-manager-layout {
    grid-template-columns: 1fr;
  }
}

.creator-db-search-sidebar {
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  border-radius: 12px;
  padding: 1rem;
  display: flex;
  flex-direction: column;
}

.creator-db-users-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: 0.75rem;
  max-height: 520px;
  overflow-y: auto;
}

/* Custom Scrollbar for users list */
.creator-db-users-list::-webkit-scrollbar {
  width: 6px;
}
.creator-db-users-list::-webkit-scrollbar-track {
  background: rgba(0, 0, 0, 0.05);
}
.creator-db-users-list::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 3px;
}
.creator-db-users-list::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.2);
}

.creator-db-user-item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.65rem 0.85rem;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.04);
  border-radius: 8px;
  cursor: pointer;
  transition: all 0.2s;
  text-align: left;
  width: 100%;
  box-sizing: border-box;
}

.creator-db-user-item:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(245, 158, 11, 0.3);
}

.creator-db-user-item.active {
  background: rgba(245, 158, 11, 0.1);
  border-color: #f59e0b;
}

.creator-db-user-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  background: #2d3748;
}

.creator-db-user-info {
  flex: 1;
  min-width: 0;
}

.creator-db-user-name {
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--creator-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.creator-db-user-id {
  font-size: 0.7rem;
  color: var(--creator-muted);
}

.creator-db-user-badges {
  display: flex;
  gap: 0.25rem;
  margin-top: 0.15rem;
}

.creator-db-badge {
  font-size: 0.6rem;
  padding: 0.05rem 0.3rem;
  border-radius: 4px;
  font-weight: bold;
}

.creator-db-badge.eco {
  background: rgba(16, 185, 129, 0.15);
  color: #10b981;
}

.creator-db-badge.lvl {
  background: rgba(59, 130, 246, 0.15);
  color: #3b82f6;
}

.creator-db-details-container {
  background: var(--creator-surface);
  border: 1px solid var(--creator-border);
  border-radius: 12px;
  padding: 1.5rem;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  min-height: 400px;
}

.creator-db-detail-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  border-bottom: 1px solid var(--creator-border);
  padding-bottom: 1rem;
  flex-wrap: wrap;
}

.creator-db-detail-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  background: #2d3748;
}

.creator-db-detail-title {
  flex: 1;
  min-width: 200px;
}

.creator-db-detail-title h3 {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--creator-text);
  margin: 0;
}

.creator-db-detail-title p {
  font-size: 0.85rem;
  color: var(--creator-muted);
  margin: 0.2rem 0 0 0;
}

.creator-db-cards-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 1rem;
}

.creator-db-edit-card {
  background: rgba(255, 255, 255, 0.01);
  border: 1px solid var(--creator-border);
  border-radius: 10px;
  padding: 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.creator-db-edit-card h4 {
  font-size: 0.95rem;
  font-weight: 700;
  color: var(--creator-text);
  margin: 0;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  padding-bottom: 0.5rem;
}

.creator-db-edit-card h4.eco i { color: #10b981; }
.creator-db-edit-card h4.lvl i { color: #3b82f6; }
.creator-db-edit-card h4.strike i { color: #ef4444; }
.creator-db-edit-card h4.invite i { color: #a855f7; }

.creator-db-field-group {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.creator-db-field-group label {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--creator-muted);
}

.creator-db-textarea {
  font-family: monospace;
  font-size: 0.75rem;
  background: rgba(0, 0, 0, 0.2);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #a0aec0;
  border-radius: 6px;
  padding: 0.5rem;
  resize: vertical;
  min-height: 100px;
}

.creator-db-textarea:focus {
  border-color: #f59e0b;
  outline: none;
}

.creator-db-card-actions {
  display: flex;
  gap: 0.5rem;
  margin-top: 0.5rem;
}

/* AutoMod Settings Styles */
.roles-checklist-scrollable {
  max-height: 140px;
  overflow-y: auto;
  background: rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 10px;
  padding: 0.6rem 0.8rem;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
  transition: border-color var(--transition-fast);
}

.roles-checklist-scrollable:focus-within {
  border-color: rgba(0, 217, 255, 0.3);
}

.roles-checklist-scrollable::-webkit-scrollbar {
  width: 4px;
}
.roles-checklist-scrollable::-webkit-scrollbar-track {
  background: transparent;
}
.roles-checklist-scrollable::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.12);
  border-radius: 4px;
}

.roles-checklist-scrollable label {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-size: 0.825rem;
  color: var(--text-color);
  cursor: pointer;
  user-select: none;
  margin: 0;
  padding: 0.4rem 0.6rem;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.01);
  border: 1px solid rgba(255, 255, 255, 0.01);
  transition: all 0.2s ease-in-out;
}

.roles-checklist-scrollable label:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.08);
  color: #ffffff;
  transform: translateX(3px);
}

.roles-checklist-scrollable input[type="checkbox"] {
  cursor: pointer;
  width: 16px;
  height: 16px;
  border-radius: 4px;
  border: 1px solid rgba(255, 255, 255, 0.25);
  appearance: none;
  outline: none;
  background-color: rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
  flex-shrink: 0;
}

.roles-checklist-scrollable input[type="checkbox"]:checked {
  background-color: var(--color-primary);
  border-color: var(--color-primary);
  box-shadow: 0 0 10px rgba(0, 217, 255, 0.4);
}

.roles-checklist-scrollable input[type="checkbox"]:checked::after {
  content: "";
  display: block;
  width: 4px;
  height: 8px;
  border: solid #000;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg) translate(-0.5px, -1px);
}

/* Ensure focus states on text inputs inside automod use the theme color primary instead of orange */
.automod-content .creator-input:focus {
  border-color: rgba(0, 217, 255, 0.4) !important;
  box-shadow: 0 0 0 3px rgba(0, 217, 255, 0.08) !important;
}

/* ==========================================================================
   AUTOMOD CUSTOM TABS & PREMIUM UI
   ========================================================================== */
.automod-layout {
  display: flex;
  gap: 1.5rem;
  align-items: flex-start;
  width: 100%;
}

.automod-sidebar {
  width: 250px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.automod-tab-btn {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.8rem 1rem;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid var(--border-color);
  border-radius: 10px;
  color: var(--text-secondary);
  text-align: left;
  cursor: pointer;
  transition: all var(--transition-fast);
  width: 100%;
}

.automod-tab-btn:hover {
  background: var(--bg-card-hover);
  border-color: rgba(255, 255, 255, 0.12);
  color: var(--text-primary);
}

.automod-tab-btn.active {
  background: rgba(0, 217, 255, 0.05);
  border-color: var(--color-primary);
  color: var(--text-primary);
  box-shadow: var(--shadow-sm);
}

.automod-tab-btn .tab-btn-icon {
  font-size: 1rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.03);
  flex-shrink: 0;
}

.automod-tab-btn.active .tab-btn-icon {
  background: rgba(0, 217, 255, 0.12);
  color: var(--color-primary);
}

.automod-tab-btn .tab-btn-info {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  flex: 1;
}

.automod-tab-btn .tab-btn-title {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 0.85rem;
}

.automod-tab-btn .tab-btn-status {
  font-size: 0.7rem;
  font-weight: 500;
  transition: color var(--transition-fast);
}

.automod-tab-btn .tab-btn-status.status-active {
  color: var(--color-success) !important;
}

.automod-tab-btn .tab-btn-status.status-inactive {
  color: var(--text-muted) !important;
}

.automod-content {
  flex: 1;
  width: 100%;
}

.automod-content .setting-card-box {
  display: none;
  margin-top: 0 !important;
  border: 1px solid var(--border-color);
  background: rgba(255, 255, 255, 0.015);
  border-radius: 12px;
  padding: 1.5rem;
}

.automod-content .setting-card-box.active {
  display: block;
}

/* Lists Grid & Columns styling */
.automod-lists-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
}

.automod-list-column {
  background: rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.03);
  border-radius: 10px;
  padding: 1.25rem;
}

.automod-list-title {
  font-family: var(--font-display);
  font-weight: 600;
  letter-spacing: 0.5px;
}

/* Save Status Badge styling */
.automod-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.4rem 0.9rem;
  border-radius: 20px;
  font-family: var(--font-display);
  font-size: 0.8rem;
  font-weight: 600;
  border: 1px solid transparent;
  transition: all var(--transition-fast);
  user-select: none;
}

.automod-status-badge.synced {
  background: var(--color-success-glow);
  color: var(--color-success);
  border-color: rgba(46, 204, 113, 0.15);
}

.automod-status-badge.saving {
  background: var(--color-primary-glow);
  color: var(--color-primary);
  border-color: rgba(0, 217, 255, 0.15);
}

.automod-status-badge.saving i {
  animation: fa-spin 1s linear infinite;
}

.automod-status-badge.error {
  background: rgba(231, 76, 60, 0.1);
  color: var(--color-danger);
  border-color: rgba(231, 76, 60, 0.15);
}

@media (max-width: 992px) {
  .automod-layout {
    flex-direction: column;
  }
  
  .automod-sidebar {
    width: 100%;
    flex-direction: row;
    overflow-x: auto;
    padding-bottom: 0.5rem;
  }
  
  .automod-tab-btn {
    width: auto;
    white-space: nowrap;
    flex-shrink: 0;
  }
}

@media (max-width: 768px) {
  .automod-lists-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
  }
}

/* AutoMod God Mode Logs styles */
.automod-logs-table tbody tr {
  border-bottom: 1px solid rgba(255, 255, 255, 0.03);
  transition: background var(--transition-fast) ease;
}

.automod-logs-table tbody tr:hover {
  background: rgba(255, 255, 255, 0.02);
}

.automod-logs-table td {
  padding: 0.75rem;
  vertical-align: middle;
  color: var(--text-secondary);
}

.automod-logs-table th {
  font-family: var(--font-display);
  font-weight: 600;
  font-size: 0.8rem;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.automod-log-user-badge {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.automod-log-user-badge img {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(0, 0, 0, 0.3);
}

.automod-log-user-badge .user-name {
  font-weight: 600;
  color: #fff;
}

.automod-log-user-badge .user-id {
  font-size: 0.75rem;
  color: var(--text-muted);
  font-family: monospace;
}

/* Action Badges with glow effects */
.automod-action-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.25rem 0.6rem;
  border-radius: 8px;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border: 1px solid transparent;
}

.automod-action-badge.action-delete {
  background: rgba(255, 255, 255, 0.05);
  color: var(--text-muted);
  border-color: rgba(255, 255, 255, 0.08);
}

.automod-action-badge.action-warn {
  background: rgba(241, 196, 15, 0.1);
  color: #f1c40f;
  border-color: rgba(241, 196, 15, 0.2);
  box-shadow: 0 0 8px rgba(241, 196, 15, 0.08);
}

.automod-action-badge.action-timeout {
  background: rgba(230, 126, 34, 0.1);
  color: #e67e22;
  border-color: rgba(230, 126, 34, 0.2);
  box-shadow: 0 0 8px rgba(230, 126, 34, 0.08);
}

.automod-action-badge.action-kick {
  background: rgba(231, 76, 60, 0.12);
  color: #e74c3c;
  border-color: rgba(231, 76, 60, 0.2);
  box-shadow: 0 0 8px rgba(231, 76, 60, 0.1);
}

.automod-action-badge.action-ban {
  background: rgba(192, 57, 43, 0.15);
  color: #c0392b;
  border-color: rgba(192, 57, 43, 0.25);
  box-shadow: 0 0 10px rgba(192, 57, 43, 0.15);
}
/* ---- Creator AutoMod Logs & AutoRoles Table Styles ---- */
.creator-logs-table tbody tr {
  border-bottom: 1px solid var(--creator-border);
}
.creator-logs-table tbody tr:hover {
  background: rgba(255, 255, 255, 0.02) !important;
}
.creator-logs-table code {
  background: rgba(0, 0, 0, 0.3) !important;
  padding: 0.2rem 0.4rem;
  border-radius: 4px;
  border: 1px solid rgba(255, 255, 255, 0.05);
  font-family: monospace;
  color: #a7f3d0;
}

/* ==========================================================================
   PREMIUM MASCULINE VISUAL OVERRIDES â€” ELECTRIC BLUE + AMBER GOLD
   Professional, technical, authoritative â€” zero pink, zero purple
   ========================================================================== */

/* ---- Body: Deep Space Background ---- */
body {
  background: #05070d;
  background-image:
    radial-gradient(ellipse 90% 60% at 15% -5%, hsla(213, 90%, 62%, 0.07) 0%, transparent 55%),
    radial-gradient(ellipse 70% 50% at 85% 100%, hsla(225, 85%, 50%, 0.05) 0%, transparent 50%),
    radial-gradient(ellipse 50% 40% at 50% 50%, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 100%);
}

/* ---- Background glows: blue tones only ---- */
.bg-glow-1 {
  background: radial-gradient(circle, hsla(213, 90%, 62%, 0.9) 0%, transparent 70%);
  opacity: 0.1;
  width: 700px;
  height: 700px;
}
.bg-glow-2 {
  background: radial-gradient(circle, hsla(225, 85%, 50%, 0.9) 0%, transparent 70%);
  opacity: 0.08;
  width: 500px;
  height: 500px;
}
.bg-glow-3 {
  background: radial-gradient(circle, hsla(40, 92%, 54%, 0.8) 0%, transparent 70%);
  opacity: 0.04;
  width: 280px;
  height: 280px;
}

/* ---- Sidebar Premium ---- */
.sidebar {
  background: linear-gradient(180deg,
    rgba(7, 9, 18, 0.99) 0%,
    rgba(5, 7, 14, 1) 100%
  );
  border-right: 1px solid rgba(59, 158, 245, 0.07);
  box-shadow: 2px 0 30px rgba(0,0,0,0.5), inset -1px 0 0 rgba(255,255,255,0.02);
}

.sidebar-menu {
  gap: 0.2rem;
}

.menu-item {
  border-radius: 9px;
  padding: 0.72rem 1rem;
  border-left: 2px solid transparent;
  transition: all 0.18s ease;
  letter-spacing: 0.15px;
  font-size: 0.93rem;
}

.menu-item:hover {
  color: #e8edf5 !important;
  background: rgba(59, 158, 245, 0.06) !important;
  border-left-color: rgba(59, 158, 245, 0.3) !important;
  padding-left: 1.3rem !important;
}

.menu-item:hover i {
  color: var(--color-primary) !important;
  transform: scale(1.1) translateX(1px) !important;
}

.menu-item.active {
  color: #e8edf5 !important;
  background: linear-gradient(90deg, rgba(59, 158, 245, 0.12) 0%, rgba(59, 158, 245, 0.02) 100%) !important;
  border-left-color: var(--color-primary) !important;
  font-weight: 600 !important;
  padding-left: 1.3rem !important;
}

.menu-item.active i {
  color: var(--color-primary) !important;
  filter: drop-shadow(0 0 5px hsla(213, 90%, 62%, 0.8)) !important;
}

.sidebar-category-header {
  font-size: 0.67rem;
  letter-spacing: 2px;
  color: rgba(255,255,255,0.18);
  margin-top: 1.5rem;
  margin-bottom: 0.3rem;
  padding-left: 1rem;
  font-weight: 700;
}

/* ---- Brand Logo: Blue + Gold ---- */
.brand-logo {
  background: linear-gradient(135deg, var(--color-primary-dark), var(--color-primary)) !important;
  box-shadow: 0 0 18px hsla(213, 90%, 62%, 0.45), 0 4px 12px rgba(0,0,0,0.4) !important;
}

.brand-info h2 {
  background: linear-gradient(to right, #ffffff 10%, #b8d4f8 60%, var(--color-primary) 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

/* ---- Main Content ---- */
.main-content {
  background: transparent;
}

.header-title h1 {
  background: linear-gradient(135deg, #ffffff 0%, #b8d4f8 60%, var(--color-primary) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 2rem;
  font-weight: 800;
  letter-spacing: -0.5px;
}

/* ---- Content Panel Container ---- */
.content-panel {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-height: 0 !important;
}

.content-panel::after {
  display: none !important;
}

/* ---- Premium Stat Cards ---- */
.stat-card {
  background: linear-gradient(140deg, rgba(10, 13, 24, 0.9) 0%, rgba(7, 9, 18, 0.95) 100%);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 16px;
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  transition: all 0.22s ease;
}

.stat-card:hover {
  transform: translateY(-4px);
  border-color: rgba(59, 158, 245, 0.2);
  box-shadow: 0 16px 40px rgba(0,0,0,0.4), 0 0 0 1px rgba(59, 158, 245, 0.08);
}

.stat-icon.circulation {
  background: linear-gradient(135deg, rgba(62, 190, 140, 0.1), rgba(62, 190, 140, 0.04));
  color: var(--color-success);
  border: 1px solid rgba(62, 190, 140, 0.18);
  box-shadow: 0 0 14px rgba(62, 190, 140, 0.1);
}

.stat-icon.average {
  background: linear-gradient(135deg, rgba(59, 158, 245, 0.12), rgba(59, 158, 245, 0.04));
  color: var(--color-primary);
  border: 1px solid rgba(59, 158, 245, 0.18);
  box-shadow: 0 0 14px rgba(59, 158, 245, 0.1);
}

.stat-icon.accounts {
  background: linear-gradient(135deg, rgba(240, 168, 18, 0.12), rgba(240, 168, 18, 0.04));
  color: var(--color-accent);
  border: 1px solid rgba(240, 168, 18, 0.2);
  box-shadow: 0 0 14px rgba(240, 168, 18, 0.1);
}

.stat-icon.items {
  background: linear-gradient(135deg, rgba(51, 100, 232, 0.12), rgba(51, 100, 232, 0.04));
  color: var(--color-secondary);
  border: 1px solid rgba(51, 100, 232, 0.2);
  box-shadow: 0 0 14px rgba(51, 100, 232, 0.1);
}

.stat-value {
  font-size: 1.75rem;
  font-weight: 900;
  color: #ffffff;
  -webkit-text-fill-color: #ffffff;
  background: none;
  letter-spacing: -0.5px;
}

.stat-info h3 {
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  color: rgba(136, 153, 180, 0.7);
  letter-spacing: 1px;
}

/* ---- Premium Settings Card ---- */
.settings-card {
  background: linear-gradient(160deg, rgba(9, 12, 24, 0.65) 0%, rgba(6, 8, 16, 0.7) 100%);
  border: 1px solid rgba(255, 255, 255, 0.065);
  border-radius: 18px;
  padding: 2rem;
  position: relative;
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.03);
}

.settings-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent 0%, var(--color-primary) 50%, transparent 100%);
  opacity: 0.55;
}

.settings-card h2 {
  color: #e8edf5 !important;
  -webkit-text-fill-color: #e8edf5 !important;
  background: none !important;
  margin-bottom: 0.45rem;
}

.settings-desc {
  color: rgba(136, 153, 180, 0.75);
  font-size: 0.88rem;
  margin-bottom: 1.8rem;
}

/* ---- Setting Box Cards: Technical Glass ---- */
.setting-card-box {
  background: rgba(255, 255, 255, 0.016);
  border: 1px solid rgba(255, 255, 255, 0.065);
  border-radius: 14px;
  padding: 1.6rem;
  transition: border-color 0.18s ease, background 0.18s ease;
}

.setting-card-box:hover {
  background: rgba(59, 158, 245, 0.03);
  border-color: rgba(59, 158, 245, 0.18);
}

.setting-box-header h3 {
  font-size: 1rem;
  color: #e8edf5;
  -webkit-text-fill-color: #e8edf5;
  background: none;
  font-weight: 700;
}

/* ---- Setting Rows ---- */
.setting-row {
  background: rgba(255, 255, 255, 0.015);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 12px;
  padding: 1.1rem 1.4rem;
  transition: all 0.18s ease;
}

.setting-row:hover {
  background: rgba(59, 158, 245, 0.04);
  border-color: rgba(59, 158, 245, 0.14);
}

.setting-info h4 {
  color: #e8edf5;
  font-size: 0.96rem;
  font-weight: 600;
}

.setting-info p {
  color: rgba(136, 153, 180, 0.7);
  font-size: 0.82rem;
}

/* ---- Universal Form Inputs â€” Electric Blue Focus ---- */
input[type="text"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="password"],
textarea,
select {
  background: rgba(0, 0, 0, 0.38) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  border-radius: 10px !important;
  color: #e8edf5 !important;
  font-family: var(--font-main) !important;
  font-size: 0.88rem !important;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, background 0.18s ease !important;
}

input[type="text"]::placeholder,
input[type="number"]::placeholder,
input[type="email"]::placeholder,
input[type="url"]::placeholder,
input[type="search"]::placeholder,
textarea::placeholder {
  color: rgba(136, 153, 180, 0.45) !important;
}

input[type="text"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="password"]:focus,
textarea:focus {
  outline: none !important;
  border-color: rgba(59, 158, 245, 0.5) !important;
  box-shadow: 0 0 0 3px rgba(59, 158, 245, 0.08), 0 0 12px rgba(59, 158, 245, 0.06) !important;
  background: rgba(0, 0, 0, 0.48) !important;
}

select:focus {
  outline: none !important;
  border-color: rgba(59, 158, 245, 0.5) !important;
  box-shadow: 0 0 0 3px rgba(59, 158, 245, 0.08) !important;
}

.form-group label {
  font-size: 0.84rem;
  font-weight: 600;
  color: rgba(220, 228, 240, 0.8);
  letter-spacing: 0.15px;
}

.form-group label i {
  color: var(--color-primary);
  font-size: 0.78rem;
  opacity: 0.8;
}

.group-hint {
  font-size: 0.75rem;
  color: rgba(74, 90, 114, 0.85);
  font-style: normal;
}

/* ---- Toggle Switches: Electric Blue ---- */
input:checked + .slider {
  background: linear-gradient(135deg, var(--color-primary-dark), var(--color-primary)) !important;
  border-color: rgba(59, 158, 245, 0.6) !important;
  box-shadow: 0 0 10px rgba(59, 158, 245, 0.25) !important;
}

input:checked + .slider:before {
  background-color: #ffffff !important;
  box-shadow: 0 2px 6px rgba(0,0,0,0.2) !important;
}

/* ---- Submit Button: Electric Blue Gradient + Shimmer ---- */
.submit-btn {
  background: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 100%) !important;
  box-shadow: 0 4px 18px rgba(59, 158, 245, 0.35), 0 1px 0 rgba(255,255,255,0.08) inset !important;
  border-radius: 11px !important;
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.3px !important;
  padding: 0.78rem 1.9rem !important;
}

.submit-btn:hover {
  box-shadow: 0 8px 26px rgba(59, 158, 245, 0.5), 0 1px 0 rgba(255,255,255,0.1) inset !important;
  filter: brightness(1.07) !important;
}

/* ---- Hub Cards: Premium Dark Glass ---- */
.hub-card {
  background: linear-gradient(155deg, rgba(10, 13, 22, 0.75) 0%, rgba(7, 9, 17, 0.8) 100%);
  border: 1px solid rgba(255, 255, 255, 0.065);
  border-radius: 16px;
  transition: all 0.24s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.hub-card::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(59, 158, 245, 0.2), transparent);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.hub-card:hover {
  transform: translateY(-5px);
  border-color: rgba(59, 158, 245, 0.2);
  background: linear-gradient(155deg, rgba(12, 16, 28, 0.85) 0%, rgba(9, 12, 22, 0.9) 100%);
  box-shadow: 0 18px 44px rgba(0,0,0,0.45), 0 0 0 1px rgba(59, 158, 245, 0.08);
}

.hub-card:hover::after {
  opacity: 1;
}

.hub-card-icon {
  background: linear-gradient(135deg, rgba(59, 158, 245, 0.1), rgba(59, 158, 245, 0.03));
  border: 1px solid rgba(59, 158, 245, 0.14);
  color: var(--color-primary);
  border-radius: 13px;
  width: 46px;
  height: 46px;
}

.hub-card:hover .hub-card-icon {
  background: linear-gradient(135deg, var(--color-primary-dark), var(--color-primary));
  color: #ffffff;
  border-color: transparent;
  box-shadow: 0 0 18px rgba(59, 158, 245, 0.45);
}

.hub-card h3 {
  color: #e8edf5;
  font-size: 1.1rem;
}

.hub-card p {
  color: rgba(136, 153, 180, 0.75);
  font-size: 0.86rem;
}

.hub-card-action {
  color: var(--color-primary);
  font-size: 0.84rem;
  font-weight: 600;
  opacity: 0.65;
}

.hub-card:hover .hub-card-action {
  opacity: 1;
}

/* ---- Table Design ---- */
.table-container {
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.06);
  background: rgba(5, 7, 14, 0.6);
  overflow: hidden;
}

.leaderboard-table th,
table thead tr th {
  background: rgba(255, 255, 255, 0.016);
  color: rgba(136, 153, 180, 0.65);
  font-size: 0.7rem;
  letter-spacing: 1.3px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.leaderboard-table tbody tr:hover,
table tbody tr:hover {
  background: rgba(59, 158, 245, 0.035) !important;
}

/* ---- Rank Badge ---- */
.rank-badge {
  background: rgba(59, 158, 245, 0.06);
  border: 1px solid rgba(59, 158, 245, 0.12);
  color: rgba(136, 153, 180, 0.7);
}

/* ---- Premium Badges ---- */
.badge-success {
  background: rgba(62, 190, 140, 0.08);
  color: var(--color-success);
  border: 1px solid rgba(62, 190, 140, 0.18);
}

.badge-danger {
  background: rgba(230, 80, 80, 0.08);
  color: var(--color-danger);
  border: 1px solid rgba(230, 80, 80, 0.18);
}

/* ---- Shop Item Badges ---- */
.shop-item-badge.default {
  background: rgba(240, 168, 18, 0.08);
  color: var(--color-accent);
  border: 1px solid rgba(240, 168, 18, 0.2);
}

.shop-item-badge.custom {
  background: rgba(59, 158, 245, 0.08);
  color: var(--color-primary);
  border: 1px solid rgba(59, 158, 245, 0.2);
}

/* ---- Modal ---- */
.modal-card {
  background: linear-gradient(160deg, rgba(8, 11, 22, 0.99) 0%, rgba(5, 7, 14, 0.99) 100%);
  border: 1px solid rgba(59, 158, 245, 0.1);
  box-shadow: 0 32px 80px rgba(0,0,0,0.75), 0 0 0 1px rgba(255,255,255,0.025), 0 0 36px rgba(59, 158, 245, 0.05);
}

.modal-close-btn:hover {
  background: rgba(59, 158, 245, 0.08);
  border-color: rgba(59, 158, 245, 0.25);
  color: var(--color-primary);
  transform: rotate(90deg) scale(1.05);
}

/* ---- Tab Buttons ---- */
.tab-btn {
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(255, 255, 255, 0.065);
  color: rgba(136, 153, 180, 0.8);
  border-radius: 8px;
  padding: 0.5rem 1.1rem;
  font-size: 0.85rem;
  font-weight: 600;
  transition: all 0.18s ease;
  letter-spacing: 0.15px;
}

.tab-btn.active {
  background: rgba(59, 158, 245, 0.1) !important;
  border-color: rgba(59, 158, 245, 0.3) !important;
  color: var(--color-primary) !important;
  box-shadow: 0 0 10px rgba(59, 158, 245, 0.1) !important;
}

.tab-btn:hover:not(.active) {
  background: rgba(255, 255, 255, 0.04);
  color: rgba(232, 237, 245, 0.9);
  border-color: rgba(255, 255, 255, 0.1);
}

/* ---- Landing Header ---- */
.landing-header {
  background: rgba(5, 7, 13, 0.82);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(28px);
  -webkit-backdrop-filter: blur(28px);
}

.landing-brand-logo {
  background: linear-gradient(135deg, var(--color-primary-dark), var(--color-primary)) !important;
  box-shadow: 0 0 14px rgba(59, 158, 245, 0.4) !important;
}

.landing-brand-name {
  background: linear-gradient(to right, #ffffff 15%, #b8d4f8 65%, var(--color-primary) 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
}

.hero-version-badge {
  background: rgba(59, 158, 245, 0.06) !important;
  border: 1px solid rgba(59, 158, 245, 0.22) !important;
  color: var(--color-primary) !important;
}

/* Gradient text: electric blue to cobalt */
.gradient-text,
.animated-gradient {
  background: linear-gradient(135deg, var(--color-primary) 0%, var(--color-secondary) 100%) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  filter: drop-shadow(0 2px 8px rgba(59, 158, 245, 0.2)) !important;
}

/* Premium badge: gold */
.landing-header .premium-badge {
  background: rgba(240, 168, 18, 0.08) !important;
  border: 1px solid rgba(240, 168, 18, 0.22) !important;
  color: var(--color-accent) !important;
  box-shadow: 0 0 10px rgba(240, 168, 18, 0.06) !important;
}

/* Hero CTA primary button */
.hero-btn.primary-btn,
.hero-btn.add-btn {
  background: linear-gradient(135deg, var(--color-primary-dark) 0%, var(--color-primary) 100%) !important;
  box-shadow: 0 6px 22px rgba(59, 158, 245, 0.4) !important;
}

.hero-btn.primary-btn:hover,
.hero-btn.add-btn:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 30px rgba(59, 158, 245, 0.52) !important;
  filter: brightness(1.06) !important;
}

/* ---- Global Bot Banner ---- */
.global-bot-banner {
  background: linear-gradient(135deg, rgba(9, 12, 22, 0.75) 0%, rgba(6, 8, 16, 0.8) 100%);
  border: 1px solid rgba(255, 255, 255, 0.06);
  position: relative;
  overflow: hidden;
}

.global-bot-banner::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, var(--color-primary), var(--color-secondary), transparent);
  opacity: 0.5;
}

.banner-glow-effect {
  background: radial-gradient(circle, rgba(59, 158, 245, 0.07) 0%, transparent 70%);
}

.bot-avatar-large {
  border: 2px solid rgba(59, 158, 245, 0.45);
  box-shadow: 0 0 18px rgba(59, 158, 245, 0.2);
}

.bot-stat-value {
  color: var(--color-primary);
  text-shadow: 0 0 10px rgba(59, 158, 245, 0.35);
}

/* ---- Welcome Card ---- */
.sunlight-welcome-card {
  background: linear-gradient(135deg, rgba(10, 13, 24, 0.72) 0%, rgba(7, 9, 18, 0.68) 100%);
  border: 1px solid rgba(59, 158, 245, 0.12);
  border-left: 3px solid var(--color-primary);
}

.sunlight-welcome-icon {
  background: rgba(59, 158, 245, 0.1);
  border: 1px solid rgba(59, 158, 245, 0.18);
  color: var(--color-primary);
  box-shadow: 0 4px 14px rgba(59, 158, 245, 0.12);
}

.sunlight-welcome-card::after {
  background: radial-gradient(circle, rgba(59, 158, 245, 0.07) 0%, transparent 70%);
}

/* ---- Quick Action Buttons ---- */
.quick-action-btn {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.065);
  transition: all 0.18s ease;
  color: rgba(232, 237, 245, 0.85);
}

.quick-action-btn:hover {
  background: rgba(59, 158, 245, 0.07);
  border-color: rgba(59, 158, 245, 0.28);
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(59, 158, 245, 0.1);
  color: #e8edf5;
}

.quick-action-btn i {
  color: var(--color-primary);
  opacity: 0.85;
}

/* ---- Toast Notification ---- */
.toast-notification {
  background: rgba(8, 11, 22, 0.97);
  border: 1px solid rgba(62, 190, 140, 0.28);
  box-shadow: 0 12px 40px rgba(0,0,0,0.65), 0 0 20px rgba(62, 190, 140, 0.08);
  border-radius: 13px;
}

/* ---- Accordion Sections ---- */
.accordion-section {
  background: rgba(255, 255, 255, 0.012);
  border: 1px solid rgba(255, 255, 255, 0.065);
  border-radius: 13px;
}

.accordion-section:hover {
  border-color: rgba(59, 158, 245, 0.14);
}

.accordion-section.active .accordion-arrow {
  color: var(--color-primary);
}

.accordion-header span i {
  color: var(--color-primary);
  filter: drop-shadow(0 0 4px rgba(59, 158, 245, 0.55));
}

/* ---- Spinner ---- */
.spinner {
  border-top-color: var(--color-primary);
  box-shadow: 0 0 10px rgba(59, 158, 245, 0.25);
}

/* ---- Search Bar ---- */
.search-bar {
  background: rgba(0, 0, 0, 0.32);
  border: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 13px;
}

.search-bar:focus-within {
  border-color: rgba(59, 158, 245, 0.45);
  box-shadow: 0 0 0 3px rgba(59, 158, 245, 0.07);
}

.search-bar:focus-within .search-bar-icon {
  color: var(--color-primary);
}

.search-bar button {
  background: linear-gradient(135deg, var(--color-primary-dark), var(--color-primary));
  border-radius: 9px;
  box-shadow: 0 2px 8px rgba(59, 158, 245, 0.3);
}

.search-bar button:hover {
  filter: brightness(1.08);
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(59, 158, 245, 0.42);
}

/* ---- Server Badge ---- */
.server-badge {
  background: rgba(0, 0, 0, 0.28);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 50px;
  transition: all 0.18s ease;
}

.server-badge:hover {
  border-color: rgba(59, 158, 245, 0.28);
  background: rgba(59, 158, 245, 0.05);
  transform: translateY(-1px);
}

/* ---- Action Buttons (table) ---- */
.action-btn {
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid rgba(255, 255, 255, 0.065);
  border-radius: 8px;
  transition: all 0.18s ease;
}

.action-btn:hover {
  background: rgba(59, 158, 245, 0.09);
  color: var(--color-primary);
  border-color: rgba(59, 158, 245, 0.28);
  box-shadow: 0 0 8px rgba(59, 158, 245, 0.12);
}

/* ---- Login Button (Discord) ---- */
.login-btn {
  background: linear-gradient(135deg, #4c56e8 0%, #5865f2 100%);
  box-shadow: 0 4px 14px rgba(88, 101, 242, 0.38);
  border-radius: 11px;
}

.login-btn:hover {
  background: linear-gradient(135deg, #3d47d4 0%, #4c56e8 100%);
  transform: translateY(-2px);
  box-shadow: 0 8px 22px rgba(88, 101, 242, 0.5);
}

/* ---- Gold items (Leaderboard, Economy) ---- */
.podium-first .podium-avatar {
  border-color: var(--color-accent);
  box-shadow: 0 0 22px rgba(240, 168, 18, 0.35);
}

.podium-first .podium-name {
  background: linear-gradient(to right, #ffffff, #fde68a);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.money-cell.total {
  color: var(--color-accent);
  text-shadow: 0 0 8px rgba(240, 168, 18, 0.2);
}

.balance-val.total-val {
  color: var(--color-accent);
  text-shadow: 0 0 8px rgba(240, 168, 18, 0.18);
}

.item-price {
  color: var(--color-success);
  text-shadow: 0 0 8px rgba(62, 190, 140, 0.1);
}

.inv-item-qty {
  background: rgba(59, 158, 245, 0.1);
  border: 1px solid rgba(59, 158, 245, 0.25);
  color: var(--color-primary);
  box-shadow: none;
}

/* ---- Cooldown Badges ---- */
.cooldown-badge.ready {
  border-color: rgba(62, 190, 140, 0.18);
  background: rgba(62, 190, 140, 0.04);
}

.cooldown-badge.waiting {
  border-color: rgba(240, 168, 18, 0.18);
  background: rgba(240, 168, 18, 0.04);
}

/* ---- Dropdown / Select ---- */
select,
select.channel-select,
.settings-form-layout select,
#item-editor-form select {
  background-color: rgba(0, 0, 0, 0.42) !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  color: #e8edf5 !important;
  border-radius: 10px !important;
}

select option,
select.channel-select option,
.settings-form-layout select option,
#item-editor-form select option {
  background-color: #090b16 !important;
  color: #e8edf5 !important;
}

#guild-select {
  background: rgba(0, 0, 0, 0.38) !important;
  border: 1px solid rgba(255, 255, 255, 0.075) !important;
}

#guild-select:hover {
  background: rgba(0, 0, 0, 0.48) !important;
  border-color: rgba(59, 158, 245, 0.22) !important;
}

#guild-select:focus {
  border-color: rgba(59, 158, 245, 0.5) !important;
  box-shadow: 0 0 0 3px rgba(59, 158, 245, 0.08) !important;
}

/* ---- Profile / Lookup Cards ---- */
.profile-subcard {
  background: rgba(0, 0, 0, 0.28);
  border: 1px solid rgba(255, 255, 255, 0.065);
  border-radius: 14px;
}

.stat-minibox {
  background: rgba(255, 255, 255, 0.015);
  border: 1px solid rgba(255, 255, 255, 0.065);
  border-radius: 11px;
}

.stat-minibox:hover {
  border-color: rgba(59, 158, 245, 0.18);
  background: rgba(59, 158, 245, 0.035);
}

/* ---- Shop Cards ---- */
.shop-card {
  background: linear-gradient(155deg, rgba(10, 13, 22, 0.8) 0%, rgba(7, 9, 18, 0.85) 100%);
  border: 1px solid rgba(255, 255, 255, 0.065);
}

.shop-card:hover {
  border-color: rgba(59, 158, 245, 0.2);
  box-shadow: 0 16px 40px rgba(0,0,0,0.4), 0 0 0 1px rgba(59, 158, 245, 0.06);
}

/* ---- User mini profile ---- */
.user-profile-mini {
  background: rgba(255, 255, 255, 0.015);
  border: 1px solid rgba(255, 255, 255, 0.065);
}

#user-avatar-mini {
  border: 2px solid rgba(59, 158, 245, 0.45);
  box-shadow: 0 0 8px rgba(59, 158, 245, 0.18);
}

.user-info-mini span {
  color: var(--color-primary);
}

/* ---- Logout ---- */
#logout-btn {
  background: rgba(220, 75, 75, 0.07);
  border: 1px solid rgba(220, 75, 75, 0.14);
  color: var(--color-danger);
}

#logout-btn:hover {
  background: var(--color-danger);
  color: white;
  box-shadow: 0 0 12px rgba(220, 75, 75, 0.28);
}

/* ---- Bot Status Card ---- */
.bot-status-card {
  background: rgba(255, 255, 255, 0.012);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 13px;
}

.status-indicator.online {
  background-color: var(--color-success);
  box-shadow: 0 0 7px var(--color-success);
}

/* ---- Loading Overlay ---- */
.loading-overlay {
  background: rgba(5, 7, 13, 0.82);
  backdrop-filter: blur(18px);
}

/* ---- AutoMod Action Badges ---- */
.automod-action-badge.action-mute {
  background: rgba(240, 168, 18, 0.07);
  color: var(--color-accent);
  border-color: rgba(240, 168, 18, 0.18);
}

/* ---- Metric Cards (Landing) ---- */
.metric-card.metric-cyan,
.metric-card.metric-purple {
  border-color: rgba(59, 158, 245, 0.15);
}

.metric-card.metric-yellow {
  border-color: rgba(240, 168, 18, 0.18);
}

/* ---- Responsive â€” Mobile ---- */
@media (max-width: 1024px) {
  .sidebar {
    background: linear-gradient(180deg, rgba(7, 9, 18, 0.99) 0%, rgba(5, 7, 14, 1) 100%);
    border-bottom: 1px solid rgba(59, 158, 245, 0.07);
    border-right: none;
  }

  .menu-item.active {
    border-left-color: transparent !important;
    border-bottom-color: var(--color-primary) !important;
    background: linear-gradient(180deg, rgba(59, 158, 245, 0.1) 0%, rgba(59, 158, 245, 0.02) 100%) !important;
  }

  .main-content {
    padding: 1.4rem 1.1rem;
    gap: 1.4rem;
  }
}

@media (max-width: 600px) {
  .stat-card {
    padding: 0.95rem 1.1rem;
    gap: 0.9rem;
    border-radius: 14px;
  }

  .stat-icon {
    width: 40px;
    height: 40px;
    font-size: 1.1rem;
  }

  .stat-value {
    font-size: 1.45rem;
  }

  .content-panel {
    padding: 1.2rem 1rem;
    border-radius: 14px;
  }

  .settings-card {
    padding: 1.3rem;
    border-radius: 14px;
  }

  .submit-btn {
    width: 100% !important;
  }

  .form-actions {
    justify-content: stretch;
    flex-direction: column;
  }

  .leaderboard-podium {
    gap: 0.5rem;
  }
}

/* ==========================================================================
   NEKOTINA REDESIGN — MASCULINE TECH STYLES & THEMING
   ========================================================================== */

/* --- Navigation Dropdowns --- */
.nav-dropdown, .header-dropdown {
  position: relative;
  display: inline-block;
}

.dropdown-btn {
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.dropdown-arrow, .mini-arrow {
  font-size: 0.75rem;
  transition: transform 0.25s ease;
  color: var(--text-muted);
}

.nav-dropdown:hover .dropdown-arrow,
.header-dropdown:hover .mini-arrow {
  transform: rotate(180deg);
  color: var(--color-primary);
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 0.6rem;
  background: rgba(13, 18, 30, 0.96);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(59, 158, 245, 0.25);
  border-radius: 14px;
  padding: 0.6rem;
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.6), 0 0 20px rgba(59, 158, 245, 0.15);
  min-width: 200px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  z-index: 100;
}

.modules-dropdown-menu {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.25rem;
  min-width: 320px;
}

.mini-menu {
  right: 0;
  left: auto;
  min-width: 160px;
}

.nav-dropdown:hover .dropdown-menu,
.header-dropdown:hover .dropdown-menu,
.dropdown-menu.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.dropdown-item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.6rem 0.9rem;
  color: var(--text-primary);
  text-decoration: none;
  font-size: 0.88rem;
  font-weight: 500;
  border-radius: 8px;
  border: none;
  background: transparent;
  width: 100%;
  text-align: left;
  cursor: pointer;
  transition: all 0.2s ease;
}

.dropdown-item i {
  color: var(--color-primary);
  font-size: 1rem;
  transition: transform 0.2s ease;
}

.dropdown-item:hover {
  background: rgba(59, 158, 245, 0.12);
  color: #fff;
  transform: translateX(3px);
}

.dropdown-item:hover i {
  transform: scale(1.15);
}

.dropdown-item.active {
  background: rgba(59, 158, 245, 0.2);
  color: var(--color-primary-light);
  font-weight: 600;
}

/* --- Header Controls & Theme Switcher --- */
.header-icon-btn {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--border-color);
  color: var(--text-primary);
  padding: 0.5rem 0.8rem;
  border-radius: 10px;
  cursor: pointer;
  font-family: var(--font-main);
  font-size: 0.88rem;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  transition: all 0.25s ease;
}

.header-icon-btn:hover {
  background: rgba(59, 158, 245, 0.15);
  border-color: rgba(59, 158, 245, 0.4);
  color: #fff;
  box-shadow: 0 0 12px rgba(59, 158, 245, 0.2);
}

.premium-badge-neko {
  background: linear-gradient(135deg, rgba(139, 92, 246, 0.2) 0%, rgba(59, 130, 246, 0.2) 100%);
  border: 1px solid rgba(139, 92, 246, 0.4);
  color: #c084fc;
  padding: 0.5rem 0.9rem;
  border-radius: 10px;
  font-weight: 700;
  font-size: 0.85rem;
  display: flex;
  align-items: center;
  gap: 0.45rem;
  box-shadow: 0 0 15px rgba(139, 92, 246, 0.25);
  cursor: pointer;
  transition: all 0.25s ease;
}

.premium-badge-neko:hover {
  transform: translateY(-2px);
  box-shadow: 0 0 25px rgba(139, 92, 246, 0.45);
}

/* --- Nekotina Style Hero & Orbital Avatar --- */
.hero-neko-style {
  padding: 4rem 2rem 5rem;
  position: relative;
}

.hero-pill-tag {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  background: rgba(59, 158, 245, 0.1);
  border: 1px solid rgba(59, 158, 245, 0.3);
  color: var(--color-primary-light);
  padding: 0.4rem 1.1rem;
  border-radius: 50px;
  font-size: 0.88rem;
  font-weight: 600;
  margin-bottom: 1.5rem;
  box-shadow: 0 0 20px rgba(59, 158, 245, 0.15);
}

.hero-circular-frame {
  position: relative;
  width: 320px;
  height: 320px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.circular-glow-ring {
  position: absolute;
  inset: -15px;
  border-radius: 50%;
  background: conic-gradient(from 0deg, #3b82f6, #06b6d4, #8b5cf6, #3b82f6);
  filter: blur(25px);
  opacity: 0.4;
  animation: rotateGlow 12s linear infinite;
}

@keyframes rotateGlow {
  100% { transform: rotate(360deg); }
}

.circular-avatar-wrapper {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  padding: 8px;
  background: rgba(15, 23, 42, 0.8);
  border: 2px solid rgba(59, 158, 245, 0.5);
  box-shadow: inset 0 0 30px rgba(59, 158, 245, 0.3), 0 0 40px rgba(0, 0, 0, 0.8);
  overflow: hidden;
  position: relative;
  z-index: 2;
}

.hero-circular-avatar {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
  transition: transform 0.4s ease;
}

.circular-avatar-wrapper:hover .hero-circular-avatar {
  transform: scale(1.06);
}

/* Floating orbital icons around circle */
.float-orbit {
  position: absolute;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: rgba(15, 23, 42, 0.9);
  border: 1px solid rgba(59, 158, 245, 0.4);
  color: var(--color-primary-light);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.5), 0 0 15px rgba(59, 158, 245, 0.3);
  z-index: 3;
  animation: floatOrbit 4s ease-in-out infinite alternate;
}

.float-star-1 { top: 0%; left: 5%; animation-delay: 0s; color: #f59e0b; border-color: rgba(245, 158, 11, 0.4); }
.float-star-2 { bottom: 10%; right: 0%; animation-delay: 0.8s; color: #f59e0b; border-color: rgba(245, 158, 11, 0.4); }
.float-music  { top: 20%; right: -8%; animation-delay: 1.2s; color: #ec4899; border-color: rgba(236, 72, 153, 0.4); }
.float-code   { bottom: -5%; left: 25%; animation-delay: 1.6s; color: #06b6d4; border-color: rgba(6, 182, 212, 0.4); font-family: monospace; font-weight: bold; }
.float-shield { top: 50%; left: -12%; animation-delay: 2s; color: #3b82f6; border-color: rgba(59, 130, 246, 0.4); }
.float-heart  { top: 75%; right: 15%; animation-delay: 2.4s; color: #8b5cf6; border-color: rgba(139, 92, 246, 0.4); }

@keyframes floatOrbit {
  0% { transform: translateY(0px) scale(1); }
  100% { transform: translateY(-12px) scale(1.08); }
}

/* --- Modules Grid Section ("Un bot todo en uno") --- */
.modules-grid-section {
  padding: 5rem 2rem;
  position: relative;
  background: rgba(11, 15, 25, 0.6);
  border-top: 1px solid rgba(255, 255, 255, 0.04);
  border-bottom: 1px solid rgba(255, 255, 255, 0.04);
}

.watermark-bg-silhouette {
  position: absolute;
  left: 2%;
  top: 50%;
  transform: translateY(-50%);
  width: 280px;
  height: 280px;
  background: radial-gradient(circle, rgba(59, 158, 245, 0.08) 0%, transparent 70%);
  border-radius: 50%;
  pointer-events: none;
  filter: blur(40px);
}

.modules-section-header {
  text-align: center;
  margin-bottom: 3rem;
}

.modules-main-title {
  font-family: var(--font-display);
  font-size: 2.5rem;
  font-weight: 800;
  color: #fff;
  margin-bottom: 0.4rem;
}

.modules-main-subtitle {
  color: var(--text-secondary);
  font-size: 1.1rem;
}

.modules-pills-grid {
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 1.25rem;
  position: relative;
  z-index: 2;
}

.module-pill-card {
  background: rgba(18, 24, 38, 0.7);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.07);
  padding: 1.1rem 1.4rem;
  border-radius: 18px;
  display: flex;
  align-items: center;
  gap: 1rem;
  color: var(--text-primary);
  font-weight: 600;
  font-size: 0.98rem;
  cursor: pointer;
  transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}

.module-pill-card i {
  font-size: 1.3rem;
  color: var(--color-primary);
  transition: transform 0.25s ease, color 0.25s ease;
}

.module-pill-card:hover {
  background: rgba(26, 35, 56, 0.9);
  border-color: rgba(59, 158, 245, 0.4);
  transform: translateY(-4px);
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.4), 0 0 20px rgba(59, 158, 245, 0.2);
  color: #fff;
}

.module-pill-card:hover i {
  transform: scale(1.2);
  color: var(--color-primary-light);
}

.module-more {
  background: rgba(59, 158, 245, 0.08);
  border-color: rgba(59, 158, 245, 0.2);
  color: var(--color-primary-light);
}

/* --- Trusted Servers Section ("Gracias por confiar en Sunlight") --- */
.trusted-servers-section {
  padding: 5rem 2rem;
  text-align: center;
}

.trusted-section-header {
  margin-bottom: 3.5rem;
}

.trusted-main-title {
  font-family: var(--font-display);
  font-size: 2.5rem;
  font-weight: 800;
  color: #fff;
  margin-bottom: 0.5rem;
}

.trusted-main-subtitle {
  color: var(--text-secondary);
  font-size: 1.15rem;
}

.trusted-grid-neko {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1.5rem;
  max-width: 1150px;
  margin: 0 auto;
}

.trusted-server-card {
  background: rgba(18, 24, 38, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 16px;
  padding: 1.1rem 1.3rem;
  display: flex;
  align-items: center;
  gap: 1.1rem;
  text-align: left;
  transition: all 0.28s ease;
}

.trusted-server-card:hover {
  border-color: rgba(59, 158, 245, 0.35);
  background: rgba(24, 32, 50, 0.85);
  transform: translateY(-3px);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.4);
}

.trusted-server-icon {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  object-fit: cover;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.trusted-server-info h4 {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 0.45rem;
}

.verified-check {
  color: #10b981;
  font-size: 0.9rem;
}

.trusted-server-info p {
  font-size: 0.84rem;
  color: var(--text-secondary);
  margin-top: 0.2rem;
}

/* --- Light Theme Overrides (when data-theme="light") --- */
body.light-theme {
  --bg-main: #f8fafc;
  --bg-sidebar: #ffffff;
  --bg-card: rgba(255, 255, 255, 0.9);
  --bg-card-hover: #ffffff;
  --border-color: rgba(0, 0, 0, 0.08);
  --text-primary: #0f172a;
  --text-secondary: #475569;
  --text-muted: #64748b;
  background: #f1f5f9 !important;
  color: #0f172a !important;
}

body.light-theme .landing-header,
body.light-theme .dropdown-menu {
  background: rgba(255, 255, 255, 0.95) !important;
  border-color: rgba(0, 0, 0, 0.1) !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08) !important;
}

body.light-theme .hero-main-title,
body.light-theme .modules-main-title,
body.light-theme .trusted-main-title {
  color: #0f172a !important;
}

body.light-theme .module-pill-card,
body.light-theme .trusted-server-card {
  background: #ffffff !important;
  border-color: rgba(0, 0, 0, 0.08) !important;
  color: #0f172a !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05) !important;
}

body.light-theme .dropdown-item {
  color: #0f172a !important;
}

/* --- Rich Dropdown Menus (Image 1 & 2 Style) --- */
.rich-dropdown-menu {
  padding: 0.8rem !important;
  border-radius: 16px !important;
}

.modules-rich-menu {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 0.5rem !important;
  min-width: 580px !important;
}

.resources-rich-menu {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 0.5rem !important;
  min-width: 520px !important;
}

.rich-dropdown-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 0.9rem !important;
  padding: 0.8rem 1rem !important;
  border-radius: 12px !important;
  text-decoration: none !important;
  transition: all 0.22s ease !important;
}

.rich-dropdown-item:hover {
  background: rgba(59, 158, 245, 0.12) !important;
  transform: translateY(-2px) !important;
}

.rich-item-icon {
  font-size: 1.25rem !important;
  color: var(--color-primary) !important;
  margin-top: 0.1rem !important;
}

.rich-item-content h4 {
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  color: #fff !important;
  margin-bottom: 0.2rem !important;
}

.rich-item-content p {
  font-size: 0.8rem !important;
  color: var(--text-secondary) !important;
  line-height: 1.3 !important;
}

/* --- Sidebar Search & Categories --- */
.sidebar-search-container {
  padding: 0.75rem 1.2rem;
}

.sidebar-search-box {
  position: relative;
  display: flex;
  align-items: center;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid var(--border-color);
  border-radius: 10px;
  padding: 0.5rem 0.8rem;
}

.sidebar-search-box input {
  width: 100%;
  background: transparent;
  border: none;
  color: #fff;
  font-size: 0.85rem;
  outline: none;
  padding-left: 0.5rem;
}

.sidebar-search-box .search-icon {
  color: var(--text-muted);
  font-size: 0.85rem;
}

.search-kbd-shortcut {
  font-size: 0.7rem;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid var(--border-color);
  color: var(--text-muted);
  padding: 0.1rem 0.4rem;
  border-radius: 4px;
  font-family: monospace;
}

.crown-icon-mini {
  color: #c084fc;
  font-size: 0.75rem;
  margin-left: auto;
}

.category-chevron {
  font-size: 0.7rem;
  float: right;
  margin-top: 0.2rem;
  opacity: 0.6;
}

/* --- Neko Dashboard Overview Layout (Image 3) --- */
.neko-overview-hero-wrapper {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 1.5rem;
  margin-bottom: 2.5rem;
}

@media (max-width: 1100px) {
  .neko-overview-hero-wrapper {
    grid-template-columns: 1fr;
  }
}

.neko-welcome-card {
  background: rgba(18, 24, 38, 0.85);
  backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 24px;
  padding: 2.2rem;
  position: relative;
  overflow: hidden;
  box-shadow: 0 10px 32px rgba(0, 0, 0, 0.4);
}

.welcome-badge-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  background: rgba(236, 72, 153, 0.12);
  border: 1px solid rgba(236, 72, 153, 0.3);
  color: #f472b6;
  font-size: 0.8rem;
  font-weight: 700;
  padding: 0.3rem 0.8rem;
  border-radius: 50px;
  margin-bottom: 1.2rem;
}

.welcome-card-header {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
}

.welcome-server-avatar {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid rgba(255, 255, 255, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.6rem;
  color: var(--color-primary-light);
}

.welcome-title {
  font-size: 1.9rem;
  font-weight: 800;
  color: #fff;
}

.welcome-desc {
  color: var(--text-secondary);
  font-size: 0.96rem;
  line-height: 1.6;
  margin-bottom: 1.8rem;
  max-width: 680px;
}

.welcome-action-pills {
  display: flex;
  gap: 0.8rem;
  flex-wrap: wrap;
}

.action-pill-btn {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid var(--border-color);
  color: #fff;
  padding: 0.6rem 1.2rem;
  border-radius: 12px;
  font-size: 0.9rem;
  font-weight: 600;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: all 0.22s ease;
}

.action-pill-btn:hover {
  background: rgba(59, 158, 245, 0.18);
  border-color: rgba(59, 158, 245, 0.4);
  transform: translateY(-2px);
}

/* Right Stats Column */
.neko-stats-column {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.neko-stat-box {
  background: rgba(18, 24, 38, 0.85);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 20px;
  padding: 1.4rem 1.6rem;
  display: flex;
  align-items: center;
  gap: 1.4rem;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
  transition: transform 0.22s ease;
}

.neko-stat-box:hover {
  transform: translateX(4px);
  border-color: rgba(59, 158, 245, 0.3);
}

.stat-box-icon {
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: rgba(59, 158, 245, 0.1);
  color: var(--color-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.3rem;
}

.stat-box-details h2 {
  font-size: 1.7rem;
  font-weight: 800;
  color: #fff;
}

.stat-box-details p {
  font-size: 0.85rem;
  color: var(--text-secondary);
  font-weight: 500;
}

.hub-section-subtitle {
  font-size: 1.3rem;
  color: #fff;
  margin-bottom: 1.2rem;
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

/* --- Form Adjustments & Multi-Select Role Pills (Image 4) --- */
.neko-form-group {
  margin-bottom: 1.6rem;
}

.neko-form-group label {
  display: block;
  font-size: 0.8rem;
  font-weight: 700;
  color: var(--text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 0.6rem;
}

.neko-select-box {
  background: rgba(15, 21, 33, 0.8);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 12px;
  padding: 0.8rem 1.1rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--text-muted);
  font-size: 0.92rem;
  cursor: pointer;
  transition: border-color 0.2s ease;
}

.neko-select-box:hover {
  border-color: rgba(59, 158, 245, 0.35);
}

.tagged-select-box {
  padding: 0.6rem 0.9rem !important;
}

.roles-tags-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  flex: 1;
}

.role-tag-pill {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  padding: 0.35rem 0.75rem;
  border-radius: 8px;
  font-size: 0.82rem;
  font-weight: 600;
  color: #fff;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
}

.dot-badge {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  display: inline-block;
}

.tag-cyan .dot-badge { background: #00d5ff; }
.tag-yellow .dot-badge { background: #eab308; }
.tag-green .dot-badge { background: #2ecc71; }
.tag-blue .dot-badge { background: #3b82f6; }
.tag-orange .dot-badge { background: #f97316; }
.tag-pink .dot-badge { background: #ec4899; }
.tag-teal .dot-badge { background: #14b8a6; }

.select-box-controls {
  display: flex;
  align-items: center;
  gap: 0.8rem;
  color: var(--text-muted);
}

.clear-all-icon:hover {
  color: #ef4444;
}

/* --- AutoModeración Grid Cards (Image 5 Style) --- */
.automod-header-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid var(--border-color);
  padding-bottom: 1.2rem;
  margin-bottom: 2rem;
}

.switch-large {
  width: 60px !important;
  height: 32px !important;
}

.switch-large .slider:before {
  height: 24px !important;
  width: 24px !important;
}

.automod-rules-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.4rem;
}

@media (max-width: 1024px) {
  .automod-rules-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 650px) {
  .automod-rules-grid {
    grid-template-columns: 1fr;
  }
}

.automod-rule-card {
  background: rgba(18, 24, 38, 0.75);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 16px;
  padding: 1.2rem;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1.2rem;
  transition: border-color 0.25s ease;
}

.automod-rule-card:hover {
  border-color: rgba(59, 158, 245, 0.3);
}

.rule-card-header {
  display: flex;
  align-items: flex-start;
  gap: 0.9rem;
}

.rule-icon-box {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  background: rgba(255, 255, 255, 0.04);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-muted);
  font-size: 1.1rem;
}

.rule-title-group {
  flex: 1;
}

.rule-title-group h4 {
  font-size: 0.88rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.3;
}

.rule-title-group p {
  font-size: 0.78rem;
  color: var(--text-muted);
  margin-top: 0.25rem;
}

.premium-tier-badge {
  display: inline-block;
  background: rgba(245, 158, 11, 0.15);
  border: 1px solid rgba(245, 158, 11, 0.3);
  color: #f59e0b;
  font-size: 0.68rem;
  font-weight: 800;
  padding: 0.15rem 0.4rem;
  border-radius: 4px;
  margin-top: 0.3rem;
}

.rule-config-btn {
  width: 100%;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid var(--border-color);
  color: #fff;
  padding: 0.55rem;
  border-radius: 10px;
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}

.rule-config-btn:hover {
  background: rgba(59, 158, 245, 0.15);
  border-color: rgba(59, 158, 245, 0.4);
}

/* ============================================
   NEKO MODULE SECTIONS (panel-inicio scroll)
   ============================================ */
.neko-section-block {
  margin-bottom: 2.8rem;
}

.neko-section-header {
  margin-bottom: 1.4rem;
}

.neko-section-header h2 {
  font-size: 1.6rem;
  font-weight: 800;
  color: #fff;
  line-height: 1.2;
  margin-bottom: 0.35rem;
}

.neko-section-header p {
  font-size: 0.9rem;
  color: var(--text-secondary);
}

.neko-module-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.2rem;
}

@media (max-width: 1100px) {
  .neko-module-row { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 600px) {
  .neko-module-row { grid-template-columns: 1fr; }
}

.neko-module-card {
  background: rgba(15, 21, 33, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 18px;
  padding: 1.3rem;
  cursor: pointer;
  transition: all 0.24s ease;
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
  position: relative;
  overflow: hidden;
}

.neko-module-card:hover {
  background: rgba(30, 40, 60, 0.85);
  border-color: rgba(255, 255, 255, 0.14);
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35);
}

.neko-module-card-top {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 0.4rem;
}

.neko-module-icon-box {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: rgba(255, 255, 255, 0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  color: var(--text-secondary);
}

.neko-module-arrow {
  color: var(--text-muted);
  font-size: 0.85rem;
  opacity: 0.5;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.neko-module-card:hover .neko-module-arrow {
  opacity: 1;
  transform: translateX(3px);
}

.neko-module-card h3 {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.3;
}

.neko-module-card p {
  font-size: 0.82rem;
  color: var(--text-muted);
  line-height: 1.5;
}

/* Premium badge on module cards */
.neko-premium-badge {
  display: inline-block;
  background: linear-gradient(135deg, #ec4899, #a855f7);
  color: #fff;
  font-size: 0.72rem;
  font-weight: 800;
  padding: 0.18rem 0.55rem;
  border-radius: 6px;
  letter-spacing: 0.3px;
  align-self: flex-start;
}

/* ============================================
   PANEL AJUSTES: SUBTABS BAR + BODY
   ============================================ */
.ajustes-subtabs-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  padding-bottom: 0;
  margin-bottom: 2rem;
  gap: 1rem;
  flex-wrap: wrap;
}

.ajustes-subtabs-nav {
  display: flex;
  gap: 0.2rem;
}

.ajustes-subtab {
  background: transparent;
  border: none;
  color: var(--text-secondary);
  font-size: 0.9rem;
  font-weight: 600;
  padding: 0.7rem 1.2rem;
  border-radius: 10px 10px 0 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  border-bottom: 2px solid transparent;
  transition: all 0.2s ease;
  margin-bottom: -1px;
}

.ajustes-subtab:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.04);
}

.ajustes-subtab.active {
  color: #fff;
  border-bottom-color: var(--color-primary);
  background: rgba(59, 130, 246, 0.08);
}

.guardar-cambios-btn {
  background: linear-gradient(135deg, #f472b6, #a855f7);
  color: #fff;
  border: none;
  padding: 0.6rem 1.4rem;
  border-radius: 10px;
  font-size: 0.9rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.2s ease;
  white-space: nowrap;
}

.guardar-cambios-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(236, 72, 153, 0.35);
}

.ajustes-subpanel { }

/* ============================================
   ACORDEÓN NEKO STYLE
   ============================================ */
.neko-accordion {
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 16px;
  background: rgba(10, 14, 24, 0.6);
  margin-bottom: 1.2rem;
  overflow: hidden;
}

.neko-accordion-header {
  width: 100%;
  background: transparent;
  border: none;
  color: #fff;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 1.4rem 1.6rem;
  cursor: pointer;
  text-align: left;
  transition: background 0.2s ease;
}

.neko-accordion-header:hover {
  background: rgba(255, 255, 255, 0.03);
}

.neko-accordion-header h3 {
  font-size: 1.1rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 0.2rem;
}

.neko-accordion-header p {
  font-size: 0.85rem;
  color: var(--text-secondary);
}

.neko-accordion-chevron {
  color: var(--text-muted);
  font-size: 0.85rem;
  margin-top: 0.4rem;
  transition: transform 0.25s ease;
  flex-shrink: 0;
}

.neko-accordion-body {
  padding: 0 1.6rem 1.6rem 1.6rem;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  animation: fadeSlideDown 0.22s ease;
}

@keyframes fadeSlideDown {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ============================================
   NEKO WARNING BOX (amarillo)
   ============================================ */
.neko-warning-box {
  background: rgba(234, 179, 8, 0.08);
  border: 1px solid rgba(234, 179, 8, 0.3);
  border-radius: 12px;
  padding: 1.1rem 1.3rem;
  margin: 1rem 0 1.5rem 0;
  font-size: 0.87rem;
  color: #fde68a;
  line-height: 1.6;
}

.neko-warning-box strong {
  color: #f59e0b;
}

/* ============================================
   ROLE SELECTOR GROUPS & SELECTED PILLS
   ============================================ */
.neko-role-selector-group {
  margin-bottom: 1.5rem;
}

.neko-role-label-row {
  margin-bottom: 0.4rem;
}

.neko-role-label {
  font-size: 0.78rem;
  font-weight: 800;
  color: var(--text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.6px;
}

.neko-role-desc {
  font-size: 0.85rem;
  color: var(--text-muted);
  margin-bottom: 0.75rem;
  line-height: 1.5;
}

.neko-select-placeholder {
  color: var(--text-muted);
  font-size: 0.92rem;
}

.neko-selected-roles-row {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  flex-wrap: wrap;
  margin-top: 0.75rem;
}

.role-pill-remove {
  background: transparent;
  border: none;
  color: var(--text-muted);
  cursor: pointer;
  font-size: 0.9rem;
  padding: 0;
  margin-left: 0.2rem;
  line-height: 1;
  transition: color 0.15s ease;
}

.role-pill-remove:hover {
  color: #ef4444;
}

.neko-limpiar-btn {
  background: transparent;
  border: none;
  color: var(--text-secondary);
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  transition: color 0.15s ease;
  padding: 0;
}

.neko-limpiar-btn:hover {
  color: #ef4444;
}

/* ============================================
   FORM INPUTS (ajustes)
   ============================================ */
.neko-text-input {
  width: 100%;
  background: rgba(10, 14, 24, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 10px;
  color: #fff;
  font-size: 0.92rem;
  padding: 0.75rem 1rem;
  outline: none;
  transition: border-color 0.2s ease;
  box-sizing: border-box;
}

.neko-text-input:focus {
  border-color: rgba(59, 130, 246, 0.5);
}

.neko-textarea {
  width: 100%;
  background: rgba(10, 14, 24, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 10px;
  color: #fff;
  font-size: 0.88rem;
  line-height: 1.6;
  padding: 0.8rem 1rem;
  outline: none;
  resize: vertical;
  transition: border-color 0.2s ease;
  box-sizing: border-box;
  font-family: inherit;
}

.neko-textarea:focus {
  border-color: rgba(59, 130, 246, 0.5);
}

/* ============================================
   AUTOMOD DISCORD-STYLE MODAL STYLES (Exact 1:1 Replica)
   ============================================ */
.automod-modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background: rgba(4, 6, 14, 0.75);
  backdrop-filter: blur(12px);
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  box-sizing: border-box;
  animation: modalFadeIn 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.automod-modal-container {
  background: linear-gradient(135deg, rgba(20, 24, 38, 0.97) 0%, rgba(10, 12, 22, 0.99) 100%);
  width: 100%;
  max-width: 520px;
  max-height: 85vh;
  border-radius: 16px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.7), 0 0 30px rgba(255, 107, 189, 0.04);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  color: #f8fafc;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
  border: 1px solid rgba(255, 255, 255, 0.08);
  animation: modalScaleUp 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.automod-modal-header {
  padding: 1.5rem 1.5rem 1rem 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.automod-modal-header h3 {
  margin: 0;
  font-size: 1.15rem;
  font-weight: 800;
  background: linear-gradient(90deg, #ff6bbd, #00d5ff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.automod-modal-close {
  background: rgba(255, 255, 255, 0.05);
  border: none;
  color: #94a3b8;
  font-size: 1.2rem;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  line-height: 1;
  transition: all 0.2s ease;
}

.automod-modal-close:hover {
  color: #ffffff;
  background: rgba(239, 68, 68, 0.2);
  transform: rotate(90deg);
}

.automod-modal-body {
  padding: 1.5rem;
  overflow-y: auto;
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

@keyframes modalFadeIn {
  from { opacity: 0; }
  to { opacity: 1; }
}

@keyframes modalScaleUp {
  from { transform: scale(0.95); opacity: 0; }
  to { transform: scale(1); opacity: 1; }
}

/* Custom Discord scrollbar */
.automod-modal-body::-webkit-scrollbar {
  width: 8px;
}
.automod-modal-body::-webkit-scrollbar-track {
  background: #2b2d31;
}
.automod-modal-body::-webkit-scrollbar-thumb {
  background: #1a1b1e;
  border-radius: 4px;
}

.modal-section-group {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.modal-section-label {
  font-size: 0.72rem;
  font-weight: 700;
  color: #949ba4;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* Response options cards grid */
.response-options-grid {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.response-option-card {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 12px;
  padding: 1rem 1.25rem;
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  cursor: pointer;
  position: relative;
  transition: all 0.25s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.response-option-card:hover {
  background: rgba(255, 255, 255, 0.05);
  border-color: rgba(255, 255, 255, 0.15);
  transform: translateY(-2px);
}

.response-option-card.active {
  border-color: var(--primary-color, #ff6bbd);
  background: rgba(255, 107, 189, 0.06);
  box-shadow: 0 0 16px rgba(255, 107, 189, 0.15);
}

.resp-card-icon {
  font-size: 1.3rem;
  color: #94a3b8;
  margin-top: 0.15rem;
  transition: color 0.25s ease;
}

.response-option-card.active .resp-card-icon {
  color: var(--primary-color, #ff6bbd);
}

.resp-card-details {
  flex: 1;
}

.resp-card-details h4 {
  margin: 0;
  font-size: 0.92rem;
  font-weight: 700;
  color: #ffffff;
}

.resp-card-details p {
  margin: 0.2rem 0 0 0;
  font-size: 0.8rem;
  color: #949ba4;
  line-height: 1.35;
}

/* Discord Top-Right Checkmark Badge (Image 1, 2, 3, 4) */
.resp-card-check {
  position: absolute;
  top: -7px;
  right: -7px;
  width: 20px;
  height: 20px;
  background: #5865f2;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 0.7rem;
  opacity: 0;
  transform: scale(0.6);
  transition: all 0.15s ease;
  box-shadow: 0 2px 5px rgba(0,0,0,0.3);
}

.response-option-card.active .resp-card-check {
  opacity: 1;
  transform: scale(1);
}

/* Timeout duration inputs */
.timeout-duration-controls {
  display: flex;
  gap: 0.5rem;
  align-items: center;
}

.modal-num-input {
  width: 70px;
  background: #1e1f22;
  border: 1px solid #383a40;
  border-radius: 4px;
  color: #fff;
  padding: 0.45rem 0.6rem;
  font-size: 0.88rem;
  outline: none;
}

.modal-unit-select {
  background: #1e1f22;
  border: 1px solid #383a40;
  border-radius: 4px;
  color: #fff;
  padding: 0.45rem 0.75rem;
  font-size: 0.88rem;
  outline: none;
  cursor: pointer;
}

/* Custom Select Dropdowns & Text Inputs matching Discord (Image 1,2,3,4) */
.modal-custom-select, .neko-text-input {
  background: #1e1f22;
  border: 1px solid #383a40;
  border-radius: 4px;
  color: #dbdee1;
  padding: 0.65rem 0.85rem;
  font-size: 0.88rem;
  outline: none;
  width: 100%;
  box-sizing: border-box;
  font-family: inherit;
  transition: border-color 0.15s ease;
}

.modal-custom-select:focus, .modal-custom-select:hover,
.neko-text-input:focus, .neko-text-input:hover {
  border-color: #4e5058;
}

.modal-notice-hint {
  font-size: 0.73rem;
  color: #949ba4;
  margin: 0.25rem 0 0 0;
  line-height: 1.3;
}

/* Modal Footer */
.automod-modal-footer {
  background: rgba(0, 0, 0, 0.2);
  padding: 1.25rem 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.footer-powered {
  font-size: 0.75rem;
  color: #94a3b8;
  max-width: 220px;
  line-height: 1.35;
}

.footer-powered strong {
  color: #e2e8f0;
}

.footer-actions {
  display: flex;
  gap: 0.75rem;
}

.modal-btn {
  padding: 0.7rem 1.4rem;
  border-radius: 8px;
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
  border: none;
  transition: all 0.2s ease;
}

.modal-btn.btn-cancel {
  background: rgba(255, 255, 255, 0.08);
  color: #f8fafc;
  border: 1px solid rgba(255, 255, 255, 0.05);
}

.modal-btn.btn-cancel:hover {
  background: rgba(255, 255, 255, 0.15);
  transform: translateY(-1px);
}

.modal-btn.btn-save {
  background: linear-gradient(135deg, var(--primary-color, #ff6bbd) 0%, #d83b8d 100%);
  color: #ffffff;
  box-shadow: 0 4px 12px rgba(255, 107, 189, 0.3);
}

.modal-btn.btn-save:hover {
  filter: brightness(1.1);
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(255, 107, 189, 0.4);
}

/* Discord Native Style Combobox Tag Component (Image 1, 2, 3, 4, 5) */
.discord-combobox-wrapper {
  position: relative;
  width: 100%;
}

.discord-combobox-input-box {
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  padding: 0.5rem 0.8rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
  min-height: 42px;
  cursor: text;
  transition: all 0.2s ease;
  box-sizing: border-box;
}

.discord-combobox-input-box:focus-within,
.discord-combobox-input-box.focused {
  border-color: var(--primary-color, #ff6bbd);
  box-shadow: 0 0 8px rgba(255, 107, 189, 0.3);
}

.discord-combobox-pill {
  background: rgba(255, 107, 189, 0.12);
  border: 1px solid rgba(255, 107, 189, 0.25);
  border-radius: 6px;
  color: var(--text-color, #f8fafc);
  padding: 0.25rem 0.6rem;
  font-size: 0.8rem;
  font-weight: 500;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  transition: all 0.2s ease;
}

.discord-combobox-pill:hover {
  background: rgba(255, 107, 189, 0.2);
  border-color: rgba(255, 107, 189, 0.4);
}

.discord-combobox-pill .pill-remove-btn {
  color: rgba(255, 255, 255, 0.6);
  cursor: pointer;
  font-size: 0.75rem;
  transition: all 0.15s ease;
}

.discord-combobox-pill .pill-remove-btn:hover {
  color: #ff4757;
  transform: scale(1.15);
}

.discord-combobox-inline-input {
  background: transparent;
  border: none;
  color: #ffffff;
  outline: none;
  font-size: 0.88rem;
  flex: 1;
  min-width: 80px;
  padding: 0.1rem 0.2rem;
  font-family: inherit;
}

.discord-combobox-actions {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-left: auto;
  color: #94a3b8;
}

.discord-combobox-actions i {
  cursor: pointer;
  font-size: 0.85rem;
  transition: color 0.15s ease;
}

.discord-combobox-actions i:hover {
  color: #ffffff;
}

.discord-combobox-actions i.clear-all-btn:hover {
  color: #ff4757;
}

.discord-combobox-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  width: 100%;
  background: #11131c;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
  z-index: 10050;
  max-height: 180px;
  overflow-y: auto;
  display: none;
  padding: 0.3rem 0;
  box-sizing: border-box;
  animation: dropdownFadeIn 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.discord-combobox-item {
  padding: 0.6rem 0.9rem;
  color: #cbd5e1;
  font-size: 0.88rem;
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: all 0.15s ease;
}

.discord-combobox-item:hover,
.discord-combobox-item.active {
  background: rgba(255, 107, 189, 0.08);
  color: var(--primary-color, #ff6bbd);
}

/* ==========================================================================
   CUSTOM SEARCHABLE DROPDOWNS STYLE (Chic Glassmorphic Design)
   ========================================================================== */
.custom-dropdown-container {
  position: relative;
  width: 100%;
  font-family: inherit;
  z-index: 100;
  margin-top: 0.25rem;
}

.custom-dropdown-trigger {
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  color: var(--text-color, #f8fafc);
  padding: 0.6rem 1rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  user-select: none;
  transition: border-color 0.2s, box-shadow 0.2s;
  box-sizing: border-box;
}

.custom-dropdown-trigger:hover {
  border-color: rgba(255, 255, 255, 0.15);
}

.custom-dropdown-trigger.open {
  border-color: var(--primary-color, #ff6bbd);
  box-shadow: 0 0 8px rgba(255, 107, 189, 0.3);
}

.custom-dropdown-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  width: 100%;
  background: #11131c;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
  display: none;
  flex-direction: column;
  z-index: 99999;
  overflow: hidden;
  box-sizing: border-box;
  animation: dropdownFadeIn 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes dropdownFadeIn {
  from { opacity: 0; transform: translateY(-4px); }
  to { opacity: 1; transform: translateY(0); }
}

.custom-dropdown-search-wrapper {
  padding: 8px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  position: relative;
  display: flex;
  align-items: center;
  box-sizing: border-box;
}

.custom-dropdown-search-input {
  width: 100%;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 6px;
  color: #fff;
  padding: 6px 30px 6px 10px;
  font-size: 0.85rem;
  outline: none;
  box-sizing: border-box;
}

.custom-dropdown-search-input:focus {
  border-color: var(--primary-color, #ff6bbd);
}

.custom-dropdown-search-wrapper i {
  position: absolute;
  right: 18px;
  color: var(--text-muted, #94a3b8);
  font-size: 0.8rem;
}

.custom-dropdown-options-list {
  max-height: 200px;
  overflow-y: auto;
  padding: 4px;
}

/* Custom Scrollbar for Dropdown List */
.custom-dropdown-options-list::-webkit-scrollbar {
  width: 6px;
}
.custom-dropdown-options-list::-webkit-scrollbar-track {
  background: transparent;
}
.custom-dropdown-options-list::-webkit-scrollbar-thumb {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 3px;
}
.custom-dropdown-options-list::-webkit-scrollbar-thumb:hover {
  background: rgba(255, 255, 255, 0.2);
}

.custom-dropdown-option {
  padding: 8px 12px;
  border-radius: 6px;
  cursor: pointer;
  font-size: 0.9rem;
  color: var(--text-color, #f8fafc);
  transition: background 0.15s, color 0.15s;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.custom-dropdown-option:hover {
  background: rgba(255, 255, 255, 0.05);
}

.custom-dropdown-option.selected {
  background: rgba(255, 107, 189, 0.15);
  color: var(--primary-color, #ff6bbd);
  font-weight: 500;
}

.custom-dropdown-option.hidden {
  display: none;
}

/* Stacking context & z-index prevention for open custom dropdowns */
.has-open-dropdown,
.setting-card-box:focus-within,
.form-group:focus-within,
#panel-logs .setting-row:focus-within {
  position: relative !important;
  z-index: 100000 !important;
}

.custom-dropdown-container:focus-within {
  z-index: 100100 !important;
}

/* Evitar recortes (clipping) de los dropdowns en las tarjetas */
.settings-card,
.setting-card-box {
  overflow: visible !important;
}

/* Smart Dropdown: Posicionamiento hacia arriba */
.custom-dropdown-container.drop-up .custom-dropdown-menu {
  top: auto;
  bottom: calc(100% + 8px);
  box-shadow: 0 -10px 25px rgba(0, 0, 0, 0.5);
  animation: dropdownFadeUp 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

@keyframes dropdownFadeUp {
  from { opacity: 0; transform: translateY(4px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Estilos de elementos personalizados de la lista (canales, roles, etc.) */
.dropdown-option-left {
  display: flex;
  align-items: center;
  gap: 0.55rem;
}

.role-color-dot {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  display: inline-block;
  flex-shrink: 0;
}

.role-prefix, .channel-prefix {
  color: var(--text-muted, #94a3b8);
  font-weight: 600;
  font-family: monospace;
  font-size: 1rem;
}

.dropdown-badge {
  font-size: 0.7rem;
  padding: 2px 6px;
  border-radius: 4px;
  font-weight: 600;
}

.badge-hierarchy {
  background: rgba(239, 68, 68, 0.12);
  color: #f87171;
  border: 1px solid rgba(239, 68, 68, 0.2);
}

.badge-managed {
  background: rgba(148, 163, 184, 0.12);
  color: #cbd5e1;
  border: 1px solid rgba(148, 163, 184, 0.2);
}

.badge-permissions {
  background: rgba(245, 158, 11, 0.12);
  color: #fbbf24;
  border: 1px solid rgba(245, 158, 11, 0.2);
}

.dropdown-type-badge {
  font-size: 0.65rem;
  color: var(--text-muted, #94a3b8);
  font-weight: 700;
  letter-spacing: 0.5px;
}

/* Opciones no legibles (jerarquía, sin permisos) se verán gris claro y legible */
.custom-dropdown-option.disabled-option,
.discord-combobox-item.disabled-option,
.custom-dropdown-option.disabled-option *,
.discord-combobox-item.disabled-option * {
  color: #94a3b8 !important;
  opacity: 0.75;
  cursor: not-allowed !important;
}

.custom-dropdown-option.disabled-option:hover,
.discord-combobox-item.disabled-option:hover {
  background: transparent !important;
}

/* Contenedor del buscador: posicionamiento relativo para iconos absolutos */
.custom-dropdown-search-wrapper {
  position: relative;
  padding: 8px;
  display: block;
  box-sizing: border-box;
}

.custom-dropdown-search-input {
  width: 100%;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 6px;
  color: #fff;
  padding: 6px 52px 6px 10px; /* Suficiente espacio para X y Lupa */
  font-size: 0.85rem;
  outline: none;
  box-sizing: border-box;
}

.custom-dropdown-search-wrapper i.fa-magnifying-glass {
  position: absolute;
  right: 18px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--text-muted, #94a3b8);
  font-size: 0.8rem;
  pointer-events: none;
}

/* Botón de limpiar selección (X) dentro del buscador posicionado absolutamente */
.custom-dropdown-clear-btn {
  position: absolute;
  right: 36px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  color: var(--text-muted, #94a3b8);
  cursor: pointer;
  padding: 4px;
  display: none; /* Controlado dinámicamente por JS */
  align-items: center;
  justify-content: center;
  font-size: 0.95rem;
  transition: color 0.15s;
}

.custom-dropdown-clear-btn:hover {
  color: #ef4444;
}

/* Botón de limpiar selección (X) en el disparador */
.custom-dropdown-trigger-clear {
  color: var(--text-muted, #94a3b8);
}

.custom-dropdown-trigger-clear:hover {
  color: #ef4444 !important;
}

/* Ocultar botones de guardar configuración en paneles del Dashboard */
.settings-save-btn,
button.save-btn,
#btn-save-logs,
#btn-save-suggestions,
#btn-save-levels,
#btn-save-invites,
#btn-save-verification,
#birthday-settings-form button[type="submit"],
#tickets-settings-form button[type="submit"] {
  display: none !important;
}

/* Custom card grid for the audit logs panel */
#panel-logs .settings-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 1.5rem;
}

#panel-logs .setting-row {
  flex-direction: column;
  align-items: stretch;
  justify-content: space-between;
  gap: 1.25rem;
  background: rgba(255, 255, 255, 0.01);
  border: 1px solid var(--border-color, rgba(255, 255, 255, 0.08));
  border-radius: 16px;
  padding: 1.5rem;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  height: 100%;
  box-sizing: border-box;
}

#panel-logs .setting-row:hover {
  border-color: rgba(255, 107, 189, 0.2);
  background: rgba(255, 107, 189, 0.02);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);
  transform: translateY(-2px);
}

#panel-logs .setting-controls {
  width: 100%;
}

#panel-logs .setting-controls .custom-dropdown-container {
  width: 100% !important;
  min-width: 100% !important;
}

.global-channel-row .setting-controls .custom-dropdown-container {
  min-width: 280px;
}

/* Responsiveness adjustments for setting-controls */
@media (max-width: 768px) {
  #panel-logs .settings-grid {
    grid-template-columns: 1fr;
  }
  .global-channel-row .setting-controls .custom-dropdown-container {
    min-width: unset;
    width: 100% !important;
  }
}

/* ==========================================================================
   MODALES GENERALES Y OVERLAYS (GLASSMORPHISM)
   ========================================================================== */
.modal-overlay, .automod-modal-overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(9, 9, 11, 0.85);
  backdrop-filter: blur(10px);
  z-index: 9999;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
}

.modal-card {
  background: var(--bg-panel);
  border: 1px solid var(--border-color);
  border-radius: 20px;
  width: 100%;
  max-width: 550px;
  position: relative;
  box-shadow: var(--shadow-lg), 0 25px 50px rgba(0, 0, 0, 0.5);
  animation: modalEnter 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  overflow: hidden;
}

.modal-close-btn {
  position: absolute;
  top: 1.25rem;
  right: 1.25rem;
  background: transparent;
  border: none;
  color: var(--text-muted);
  font-size: 1.3rem;
  cursor: pointer;
  transition: color var(--transition-fast);
  z-index: 10;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
}

.modal-close-btn:hover {
  color: white;
  background: rgba(255, 255, 255, 0.05);
}

.modal-content {
  padding: 2rem;
}

@keyframes modalEnter {
  from {
    opacity: 0;
    transform: scale(0.96) translateY(12px);
  }
  to {
    opacity: 1;
    transform: scale(1) translateY(0);
  }
}

/* ==========================================================================
   CREATOR PANEL (GOD MODE TABS VISIBILITY)
   ========================================================================== */
.creator-panel {
  display: none !important;
}

.creator-panel.active {
  display: block !important;
}

/* ==========================================================================
   STATUS PAGE SPECIFIC STYLES (UPTIME SEGMENTS)
   ========================================================================== */
.uptime-bar-segments div:hover {
  transform: scaleY(1.2) scaleX(1.1);
  filter: brightness(1.2);
  box-shadow: 0 0 8px currentColor;
}

.status-badge {
  letter-spacing: 0.5px;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
  transition: all 0.25s ease;
}

.status-badge:hover {
  filter: brightness(1.15);
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
}

.status-back-link:hover {
  color: white !important;
}

.status-back-link:hover i {
  transform: translateX(-3px);
}

.status-back-link i {
  transition: transform 0.25s ease;
}

/* ==========================================================================
   STATUS PAGE — OMERTÀ STYLE (COMPLETO)
   ========================================================================== */

/* Fondo de la pagina de estado con fondo negro puro */
#landing-panel-status {
  background: #0a0a0a;
  min-height: 80vh;
}

#landing-panel-status .landing-servers-section {
  max-width: 900px;
  margin: 0 auto;
  padding: 2.5rem 1.5rem 4rem;
  text-align: left;
}

/* Top bar: Sunlight + Updated */
.status-top-bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.5rem;
}

.status-brand {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  font-family: var(--font-display);
  font-size: 1.15rem;
  font-weight: 800;
  color: #ffffff;
  text-decoration: none;
  cursor: pointer;
  transition: opacity 0.2s ease;
}

.status-brand:hover {
  opacity: 0.75;
}

.status-updated-label {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 0.8rem;
  color: #6b7280;
}

.status-updated-label i {
  font-size: 0.75rem;
}

/* Back button */
.status-back-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.72rem;
  font-weight: 700;
  color: #6b7280;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  transition: color 0.2s ease;
}

.status-back-btn:hover {
  color: #d1d5db;
}

.status-back-btn i {
  font-size: 0.65rem;
}

/* Hero title */
.status-hero-title {
  font-family: var(--font-display);
  font-size: 2.6rem;
  font-weight: 900;
  color: #ffffff;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0 0 0.6rem;
  line-height: 1.1;
}

.status-hero-dot {
  width: 18px;
  height: 18px;
  min-width: 18px;
  background-color: #ef4444 !important;
  border-radius: 50%;
  display: inline-block;
  box-shadow: 0 0 10px #ef4444 !important;
  transition: background-color 0.3s ease, box-shadow 0.3s ease;
}

.status-hero-subtitle {
  font-size: 0.9rem;
  color: #6b7280;
  margin: 0;
  line-height: 1.5;
}

/* Service Health section header */
.status-section-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #6b7280;
  margin-bottom: 0.6rem;
}

/* Progress bar track */
.status-progress-track {
  width: 100%;
  height: 5px;
  background: rgba(255, 255, 255, 0.06);
  border-radius: 100px;
  overflow: hidden;
}

.status-progress-bar {
  height: 100%;
  width: 100%;
  background: linear-gradient(to right, #7c3aed, #06b6d4);
  border-radius: 100px;
  transition: width 0.5s ease;
}

/* System Status Cards grid — 3 horizontales */
.status-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  margin-bottom: 3rem;
}

.status-card {
  background: #0d0e14;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  padding: 1.5rem 1.75rem;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1rem;
  opacity: 1 !important;
  visibility: visible !important;
  transition: transform 0.3s ease, box-shadow 0.35s ease, border-color 0.35s ease;
  cursor: default;
}

.status-card:hover {
  border-color: rgba(88, 101, 242, 0.35);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5), 0 0 15px rgba(88, 101, 242, 0.08);
  transform: translateY(-2px);
}

.status-card-title {
  font-size: 0.95rem;
  font-weight: 700;
  color: #f9fafb;
  margin: 0 0 0.2rem;
  white-space: nowrap;
}

.status-card-desc {
  font-size: 0.8rem;
  color: #6b7280;
  margin: 0;
  white-space: nowrap;
}

/* Online badge */
.status-badge-online {
  display: inline-flex;
  align-items: center;
  padding: 0.3rem 0.75rem;
  background: rgba(16, 185, 129, 0.12);
  color: #10b981;
  border: 1px solid rgba(16, 185, 129, 0.25);
  border-radius: 6px;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  white-space: nowrap;
  flex-shrink: 0;
}

/* Uptime Box */
.status-uptime-box {
  margin-bottom: 3rem;
}

.status-uptime-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 0.6rem;
}

.status-uptime-title {
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #6b7280;
}

.status-uptime-percent {
  font-size: 0.78rem;
  font-weight: 700;
  color: #d1d5db;
  letter-spacing: 0.04em;
}

/* Segments row */
.status-uptime-segments {
  display: flex;
  gap: 2px;
  height: 28px;
  align-items: stretch;
  width: 100%;
  margin-bottom: 0.6rem;
}

.status-segment {
  flex: 1;
  border-radius: 2px;
  cursor: pointer;
  transition: opacity 0.15s ease, transform 0.15s ease;
}

.status-segment:hover {
  opacity: 1 !important;
  transform: scaleY(1.15);
}

/* "Today" double bar (red + green) */
.status-segment-today {
  display: flex;
  flex-direction: column;
  gap: 2px;
  flex: 1;
  min-width: 8px;
  max-width: 12px;
  cursor: pointer;
}

.status-segment-today-red {
  flex: 1;
  background: #ef4444;
  border-radius: 2px;
}

.status-segment-today-green {
  flex: 1;
  background: #10b981;
  border-radius: 2px;
}

/* Labels under the uptime bar */
.status-uptime-labels {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.72rem;
  color: #6b7280;
  margin-bottom: 2rem;
}

.status-legend-inline {
  display: flex;
  gap: 1rem;
  align-items: center;
}

.status-legend-inline span {
  display: flex;
  align-items: center;
  gap: 0.3rem;
}

.status-legend-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  display: inline-block;
  flex-shrink: 0;
}

/* Group Card */
.status-group-card {
  background: #0d0e14;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 14px;
  padding: 1.25rem 1.5rem;
  transition: transform 0.3s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.status-group-card:hover {
  border-color: rgba(88, 101, 242, 0.35);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5), 0 0 15px rgba(88, 101, 242, 0.08);
  transform: translateY(-2px);
}

.status-group-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 1.25rem;
}

.status-group-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.95rem;
  font-weight: 700;
  color: #f9fafb;
}

.status-group-indicator {
  width: 10px;
  height: 10px;
  min-width: 10px;
  background: #10b981;
  border-radius: 50%;
  box-shadow: 0 0 8px #10b981;
}

.status-group-badge {
  font-size: 0.68rem;
  font-weight: 800;
  color: #10b981;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.status-group-right {
  font-size: 0.8rem;
  color: #6b7280;
}

/* Shard row */
.status-group-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-left: 1rem;
  border-left: 2px solid #10b981;
}

.status-group-row-left {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.status-group-shard-num {
  font-size: 0.85rem;
  font-weight: 600;
  color: #d1d5db;
}

.status-group-shard-ready {
  font-size: 0.68rem;
  font-weight: 800;
  color: #10b981;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}

.status-group-row-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.1rem;
}

.status-group-ping {
  font-size: 0.9rem;
  font-weight: 700;
  color: #f9fafb;
}

.status-group-srv {
  font-size: 0.72rem;
  color: #6b7280;
}

/* Footer legend */
.status-footer {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  flex-wrap: wrap;
  gap: 1rem;
}

.status-legend-bottom {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  font-size: 0.75rem;
  color: #6b7280;
  flex-wrap: wrap;
}

.status-legend-bottom > span:first-child {
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

/* Responsive */
@media (max-width: 700px) {
  .status-grid {
    grid-template-columns: 1fr;
  }

  .status-hero-title {
    font-size: 1.8rem;
  }

  .status-uptime-labels {
    flex-direction: column;
    gap: 0.5rem;
    align-items: flex-start;
  }

  .status-legend-bottom {
    gap: 0.75rem;
  }

  .status-group-header {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.4rem;
  }
}

/* ==========================================================================
   STATUS PAGE — ANIMACIONES DE ENTRADA + HOVER CON BORDE DE COLORES
   ========================================================================== */

/* --- Keyframes de entrada --- */
@keyframes statusFadeUp {
  from {
    opacity: 0;
    transform: translateY(22px);
    filter: blur(4px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
    filter: blur(0);
  }
}

@keyframes statusScaleIn {
  from {
    opacity: 0;
    transform: scale(0.94);
  }
  to {
    opacity: 1;
    transform: scale(1);
  }
}

/* Progress bar: transición simple (no keyframe) */
.status-progress-bar {
  transition: width 1.3s cubic-bezier(0.22, 1, 0.36, 1);
}

/* Hero dot: respiración verde (online) o roja (offline) */
.status-hero-dot.online {
  background-color: #10b981 !important;
  box-shadow: 0 0 10px #10b981 !important;
  animation: statusDotPulseGreen 2.4s ease-in-out infinite;
}

.status-hero-dot.offline {
  background-color: #ef4444 !important;
  box-shadow: 0 0 10px #ef4444 !important;
  animation: statusDotPulseRed 2.4s ease-in-out infinite;
}

@keyframes statusDotPulseGreen {
  0%, 100% { box-shadow: 0 0 8px #10b981; transform: scale(1); }
  50% { box-shadow: 0 0 18px #10b981; transform: scale(1.15); }
}

@keyframes statusDotPulseRed {
  0%, 100% { box-shadow: 0 0 8px #ef4444; transform: scale(1); }
  50% { box-shadow: 0 0 18px #ef4444; transform: scale(1.15); }
}

/* Segment wave reveal */
@keyframes segmentReveal {
  from { transform: scaleY(0); opacity: 0; }
  to   { transform: scaleY(1); opacity: 1; }
}

/* --- Animación de entrada: items con stagger via --anim-order --- */
.status-anim-item {
  will-change: transform, opacity, filter;
}

#status.status-page-active .status-anim-item {
  animation: statusFadeUp 0.55s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  animation-delay: calc(var(--anim-order, 0) * 80ms);
}

/* Segmentos de uptime: reveal en ola */
#status.status-page-active .status-segment {
  animation: segmentReveal 0.25s cubic-bezier(0.22, 1, 0.36, 1) forwards;
  transform-origin: bottom;
}

/* --- Sección Hero block --- */
.status-hero-block {
  text-align: left;
  margin-bottom: 3.5rem;
}

.status-health-section {
  margin-bottom: 3.5rem;
  text-align: left;
}

/* ==========================================================================
   HOVER CARDS — borde externo con box-shadow limpio (Sin rotación de colores)
   ========================================================================== */

.status-card:hover, .status-group-card:hover {
  transform: translateY(-4px);
  border-color: rgba(99, 102, 241, 0.4) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.6), 0 0 20px rgba(99, 102, 241, 0.15) !important;
  background: #11131c;
}

.status-card.card-offline:hover, .status-group-card.card-offline:hover {
  border-color: rgba(239, 68, 68, 0.4) !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.6), 0 0 20px rgba(239, 68, 68, 0.15) !important;
}

/* Badges siempre visibles al hover */
.status-card:hover .status-badge-online,
.status-card:hover .status-badge-offline {
  opacity: 1 !important;
  visibility: visible !important;
}

/* Badge limpio sin brillos estridentes */
.status-badge-online {
  display: inline-flex;
  align-items: center;
  padding: 0.35rem 0.8rem;
  background: rgba(16, 185, 129, 0.12) !important;
  color: #34d399 !important;
  border: 1px solid rgba(16, 185, 129, 0.25) !important;
  border-radius: 6px;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  white-space: nowrap;
  flex-shrink: 0;
  box-shadow: none !important;
  opacity: 1 !important;
}

.status-badge-offline {
  display: inline-flex;
  align-items: center;
  padding: 0.35rem 0.8rem;
  background: rgba(239, 68, 68, 0.12) !important;
  color: #f87171 !important;
  border: 1px solid rgba(239, 68, 68, 0.25) !important;
  border-radius: 6px;
  font-size: 0.7rem;
  font-weight: 800;
  letter-spacing: 0.05em;
  white-space: nowrap;
  flex-shrink: 0;
  box-shadow: none !important;
  opacity: 1 !important;
}

/* --- Segmentos de uptime hover --- */
.status-segment {
  transform-origin: bottom;
  border-radius: 3px;
  transition:
    opacity 0.15s ease,
    transform 0.2s cubic-bezier(0.22, 1, 0.36, 1),
    filter 0.15s ease;
}

.status-segment:hover {
  transform: scaleY(1.4) !important;
  filter: brightness(1.5) drop-shadow(0 0 3px currentColor);
  opacity: 1 !important;
  z-index: 5;
}

/* ==========================================================================
   STATUS MODE: ocultar navbar y footer cuando estamos en /estado
   ========================================================================== */

/* Clase que el JS agrega al <body> cuando el tab activo es "status" */
body.status-mode .landing-header,
body.status-mode #landing-nav-menu,
body.status-mode .landing-footer-main {
  display: none !important;
}

/* El contenido de estado ocupa el ancho completo sin el padding del header */
body.status-mode #landing-panel-status {
  padding-top: 2.5rem;
}

/* ==========================================================================
   REFRESH ICON — animación de giro durante la recarga
   ========================================================================== */

@keyframes statusSpinRefresh {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

#status-refresh-icon {
  font-size: 0.8rem;
  color: #6b7280;
  transition: color 0.2s ease, opacity 0.2s ease, transform 0.3s ease;
  vertical-align: middle;
}

#status-refresh-icon:hover {
  color: #d1d5db;
  opacity: 1 !important;
}

#status-refresh-icon.spinning {
  animation: statusSpinRefresh 0.9s linear infinite;
  color: var(--color-secondary, #06b6d4);
  opacity: 1 !important;
}



/* Contador del timer visible en el label de actualización */
#status-countdown {
  display: inline-block;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: conic-gradient(
    rgba(6, 182, 212, 0.7) var(--pct, 0%),
    rgba(255,255,255,0.08) 0%
  );
  vertical-align: middle;
  margin-left: 0.35rem;
  transition: background 0.5s linear;
}










/* ==========================================================================
   AT A GLANCE CARD � Hero right column (Omerta-inspired)
   ========================================================================== */
.glance-card {
  position: relative;
  background: radial-gradient(120% 120% at 50% 10%, rgba(18,22,38,0.8) 0%, rgba(9,11,20,0.9) 100%);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  padding: 1.8rem;
  width: 100%;
  max-width: 420px;
  margin: 0 auto;
  box-shadow: 0 20px 50px rgba(0,0,0,0.5), 0 0 0 1px rgba(255,255,255,0.04) inset;
  transition: transform 0.5s cubic-bezier(0.16,1,0.3,1), box-shadow 0.5s cubic-bezier(0.16,1,0.3,1), border-color 0.5s ease;
}
.glance-card:hover {
  transform: translateY(-6px);
  border-color: rgba(99,102,241,0.3);
  box-shadow: 0 30px 70px rgba(0,0,0,0.7), 0 0 60px rgba(99,102,241,0.1);
}
.glance-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1.6rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.glance-label {
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.45);
}
.glance-live-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #10b981;
  background: rgba(16,185,129,0.1);
  border: 1px solid rgba(16,185,129,0.25);
  border-radius: 50px;
  padding: 0.25rem 0.7rem;
}
.glance-live-dot {
  width: 7px;
  height: 7px;
  background: #10b981;
  border-radius: 50%;
  box-shadow: 0 0 8px #10b981;
  animation: glanceDotPulse 1.6s ease-in-out infinite;
}
@keyframes glanceDotPulse {
  0%,100% { opacity:0.5; transform:scale(0.85); }
  50%      { opacity:1;   transform:scale(1.2);  }
}
.glance-stats-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1px;
  background: rgba(255,255,255,0.06);
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,0.06);
}
.glance-stat-item {
  background: rgba(10,13,22,0.4);
  padding: 1.1rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
  transition: background 0.3s ease;
}
.glance-stat-item:hover {
  background: rgba(255,255,255,0.03);
}
.glance-stat-label {
  font-size: 0.66rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.32);
}
.glance-stat-value {
  font-family: var(--font-display,'Inter',sans-serif);
  font-size: 1.9rem;
  font-weight: 800;
  color: #ffffff;
  line-height: 1;
  letter-spacing: -0.5px;
}
.glance-stat-value.glance-free {
  color: #10b981;
}
.glance-card-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 1.4rem;
  padding-top: 0.9rem;
  border-top: 1px solid rgba(255,255,255,0.06);
}
.glance-footer-left, .glance-footer-right {
  font-size: 0.74rem;
  color: rgba(255,255,255,0.28);
  font-weight: 500;
}

/* ==========================================================================
   LANDING STATS STRIP � 4 counters, scroll-triggered
   ========================================================================== */
.landing-stats-strip {
  width: 100%;
  background: transparent;
  border-top: 1px solid rgba(255,255,255,0.06);
  padding: 0;
  position: relative;
  z-index: 10;
  overflow: hidden;
}
.stats-strip-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  align-items: stretch;
  padding: 0 2.5rem;
}
.stats-strip-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  padding: 2.4rem 2.8rem 2.2rem;
  position: relative;
}
.stats-strip-divider {
  width: 1px;
  background: rgba(255,255,255,0.07);
  align-self: stretch;
  margin: 1.6rem 0;
  flex-shrink: 0;
}
.stats-strip-number {
  font-family: var(--font-display,'Inter',sans-serif);
  font-size: clamp(1.9rem,3.2vw,3rem);
  font-weight: 700;
  color: rgba(220,215,240,0.82);
  line-height: 1;
  letter-spacing: -1px;
  display: block;
  transition: color 0.4s ease;
}
.stats-strip-label {
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.28);
  display: block;
}
/* Wave glow when animating */
.stats-strip-number.counting {
  color: rgba(255,255,255,0.95);
  text-shadow: 0 0 20px rgba(var(--color-primary-rgb,99,102,241),0.5);
}

/* Responsive strip */
@media (max-width: 900px) {
  .stats-strip-inner { flex-wrap: wrap; padding: 0 1.5rem; }
  .stats-strip-item  { flex: 0 0 50%; padding: 1.8rem 1.5rem; }
  .stats-strip-divider { display: none; }
}
@media (max-width: 480px) {
  .stats-strip-item   { flex: 0 0 100%; padding: 1.3rem 1rem; border-bottom: 1px solid rgba(255,255,255,0.05); }
  .stats-strip-number { font-size: 2rem; }
}

/* ==========================================================================
   STATS STRIP — Digit-level shimmer wave (character by character, right to left)
   ========================================================================== */

/* Each individual digit/character wrapped by JS */
.stat-digit {
  display: inline-block;
  position: relative;
  color: rgba(220, 215, 240, 0.82);
  background: linear-gradient(130deg, rgba(220, 215, 240, 0.82) 30%, #ffffff 50%, rgba(220, 215, 240, 0.82) 70%);
  background-size: 260% 100%;
  background-position: 100% 0;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  transition: none;
}

@keyframes digitShimmer {
  0% {
    background-position: 130% 0;
    filter: drop-shadow(0 0 0px rgba(255,255,255,0));
  }
  50% {
    filter: drop-shadow(0 0 5px rgba(255,255,255,0.7));
  }
  100% {
    background-position: -130% 0;
    filter: drop-shadow(0 0 0px rgba(255,255,255,0));
  }
}

.stat-digit.wave-flash {
  animation: digitShimmer 1.1s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

/* ==========================================================================
   CYBERPUNK GLASSMORPHIC FEATURE SHOWCASE CARDS (NEW FUTURISTIC DESIGNS)
   ========================================================================== */

.cyber-feature-card {
  background: rgba(14, 18, 30, 0.85);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 24px;
  padding: 1.8rem;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.6), inset 0 1px 0 rgba(255, 255, 255, 0.15);
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 520px;
  margin: 0 auto;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.cyber-feature-card:hover {
  transform: translateY(-8px) scale(1.02);
  box-shadow: 0 30px 70px rgba(0, 0, 0, 0.7), 0 0 35px rgba(88, 101, 242, 0.35);
  border-color: rgba(99, 102, 241, 0.45);
}

.cyber-ambient-aura {
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: radial-gradient(circle at 50% 50%, var(--aura-color, rgba(88, 101, 242, 0.15)) 0%, transparent 60%);
  pointer-events: none;
  z-index: 0;
  transition: opacity 0.5s ease;
}

.cyber-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 2;
  margin-bottom: 1.2rem;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}

.cyber-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.3rem 0.75rem;
  border-radius: 50px;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.8px;
  text-transform: uppercase;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #fff;
}

.cyber-badge.pulse-blue {
  background: rgba(59, 130, 246, 0.15);
  border-color: rgba(59, 130, 246, 0.35);
  color: #60a5fa;
}

.cyber-badge.pulse-purple {
  background: rgba(139, 92, 246, 0.15);
  border-color: rgba(139, 92, 246, 0.35);
  color: #c084fc;
}

.cyber-badge.pulse-emerald {
  background: rgba(16, 185, 129, 0.15);
  border-color: rgba(16, 185, 129, 0.35);
  color: #34d399;
}

.cyber-badge.pulse-pink {
  background: rgba(236, 72, 153, 0.15);
  border-color: rgba(236, 72, 153, 0.35);
  color: #f472b6;
}

.cyber-chip {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.75rem;
  font-weight: 700;
  color: #38bdf8;
  background: rgba(56, 189, 248, 0.1);
  border: 1px solid rgba(56, 189, 248, 0.25);
  padding: 0.25rem 0.65rem;
  border-radius: 8px;
}

.cyber-card-body {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
}

/* Feature 1: Welcome Holographic */
.hologram-avatar-zone {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  background: rgba(0, 0, 0, 0.25);
  padding: 1rem;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.05);
}

.avatar-halo-wrapper {
  position: relative;
  width: 60px;
  height: 60px;
  flex-shrink: 0;
}

.avatar-halo-img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #3b82f6;
  position: relative;
  z-index: 2;
}

.halo-orbit-ring {
  position: absolute;
  top: -4px;
  left: -4px;
  right: -4px;
  bottom: -4px;
  border-radius: 50%;
  border: 2px dashed #60a5fa;
  animation: haloSpin 10s linear infinite;
  z-index: 1;
}

@keyframes haloSpin {
  100% { transform: rotate(360deg); }
}

.holo-user-text h4 {
  font-size: 1.05rem;
  font-weight: 800;
  color: #fff;
  margin: 0 0 0.2rem 0;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.holo-user-text p {
  font-size: 0.82rem;
  color: #94a3b8;
  margin: 0;
}

.cyber-stat-tiles {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.75rem;
}

.stat-tile {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.06);
  border-radius: 12px;
  padding: 0.75rem 0.5rem;
  text-align: center;
}

.stat-tile-lbl {
  display: block;
  font-size: 0.65rem;
  font-weight: 700;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 0.2rem;
}

.stat-tile-val {
  font-size: 0.92rem;
  font-weight: 800;
  color: #38bdf8;
}

/* Feature 2: Rank HUD */
.rank-hud-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(0, 0, 0, 0.3);
  padding: 0.85rem 1.2rem;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.05);
}

.rank-hud-user {
  display: flex;
  align-items: center;
  gap: 0.8rem;
}

.rank-hud-avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  border: 2px solid #a855f7;
  box-shadow: 0 0 12px rgba(168, 85, 247, 0.4);
}

.rank-hud-name h4 {
  font-size: 1rem;
  font-weight: 800;
  color: #fff;
  margin: 0;
}

.rank-hud-name span {
  font-size: 0.75rem;
  color: #a855f7;
  font-weight: 600;
}

.rank-level-badge-big {
  background: linear-gradient(135deg, #a855f7, #6366f1);
  padding: 0.4rem 0.9rem;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 4px 15px rgba(168, 85, 247, 0.4);
}

.rank-level-badge-big .num {
  font-size: 1.3rem;
  font-weight: 900;
  color: #fff;
  display: block;
  line-height: 1;
}

.rank-level-badge-big .lbl {
  font-size: 0.58rem;
  font-weight: 800;
  color: rgba(255, 255, 255, 0.8);
  letter-spacing: 1px;
}

.cyber-xp-progress-zone {
  display: flex;
  flex-direction: column;
  gap: 0.4rem;
}

.xp-bar-meta {
  display: flex;
  justify-content: space-between;
  font-size: 0.78rem;
  font-weight: 700;
  color: #cbd5e1;
}

.xp-progress-track {
  width: 100%;
  height: 10px;
  background: rgba(255, 255, 255, 0.08);
  border-radius: 50px;
  overflow: hidden;
  position: relative;
}

.xp-progress-fill-neon {
  height: 100%;
  width: 92%;
  background: linear-gradient(90deg, #00f2fe, #4facfe, #a855f7);
  border-radius: 50px;
  box-shadow: 0 0 10px #00f2fe;
  position: relative;
}

.xp-progress-fill-neon::after {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
  animation: shimmerSweep 2.5s infinite;
}

@keyframes shimmerSweep {
  0% { transform: translateX(-100%); }
  100% { transform: translateX(100%); }
}

/* Feature 3: Cyber Sentinel Audit */
.terminal-window-controls {
  display: flex;
  gap: 0.4rem;
}

.term-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
}

.term-dot.red { background: #ef4444; }
.term-dot.yellow { background: #f59e0b; }
.term-dot.green { background: #10b981; }

.terminal-logs-feed {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  font-family: 'Courier New', Courier, monospace;
}

.term-log-card {
  background: rgba(0, 0, 0, 0.35);
  border-left: 3px solid #3b82f6;
  border-radius: 8px;
  padding: 0.75rem 0.9rem;
  font-size: 0.8rem;
  color: #e2e8f0;
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.term-log-card.success { border-left-color: #10b981; }
.term-log-card.warning { border-left-color: #f59e0b; }

.term-log-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-weight: bold;
}

.term-log-tag {
  font-size: 0.7rem;
  padding: 0.1rem 0.4rem;
  border-radius: 4px;
  text-transform: uppercase;
}

.term-log-tag.blue { background: rgba(59, 130, 246, 0.2); color: #60a5fa; }
.term-log-tag.green { background: rgba(16, 185, 129, 0.2); color: #34d399; }

.term-log-time {
  font-size: 0.68rem;
  color: #64748b;
}

/* Feature 4: Holographic Ship Radar */
.ship-radar-core {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: rgba(0, 0, 0, 0.3);
  padding: 1.2rem;
  border-radius: 20px;
  border: 1px solid rgba(236, 72, 153, 0.15);
  position: relative;
}

.ship-user-node {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.4rem;
}

.ship-user-avatar-glow {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 2px solid #ec4899;
  box-shadow: 0 0 15px rgba(236, 72, 153, 0.5);
  object-fit: cover;
}

.ship-user-node span {
  font-size: 0.78rem;
  font-weight: 700;
  color: #fff;
}

.ship-heart-reactor {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.heart-reactor-icon {
  font-size: 2.2rem;
  color: #ec4899;
  filter: drop-shadow(0 0 12px #ec4899);
  animation: heartPulse 1.3s infinite ease-in-out;
}

@keyframes heartPulse {
  0%, 100% { transform: scale(1); filter: drop-shadow(0 0 10px #ec4899); }
  50% { transform: scale(1.18); filter: drop-shadow(0 0 22px #ff4da6); }
}

.ship-score-text {
  font-size: 1.2rem;
  font-weight: 900;
  color: #fff;
  margin-top: 0.2rem;
}

.ship-match-pill {
  display: inline-block;
  text-align: center;
  background: linear-gradient(135deg, rgba(236, 72, 153, 0.2), rgba(168, 85, 247, 0.2));
  border: 1px solid rgba(236, 72, 153, 0.4);
  padding: 0.35rem 0.85rem;
  border-radius: 50px;
  font-size: 0.78rem;
  font-weight: 800;
  color: #f472b6;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

/* ==========================================================================
   NEW CYBER HERO SHOWCASE CONSOLE (REPLACING OLD AT A GLANCE CARD)
   ========================================================================== */

.cyber-hero-console {
  background: rgba(13, 17, 28, 0.85);
  backdrop-filter: blur(24px);
  -webkit-backdrop-filter: blur(24px);
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 26px;
  padding: 1.6rem;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.65), inset 0 1px 0 rgba(255, 255, 255, 0.2);
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 520px;
  margin: 0 auto;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}

.cyber-hero-console:hover {
  transform: translateY(-6px) scale(1.01);
  box-shadow: 0 35px 80px rgba(0, 0, 0, 0.75), 0 0 45px rgba(88, 101, 242, 0.35);
  border-color: rgba(99, 102, 241, 0.45);
}

.hero-console-aura {
  position: absolute;
  top: -40%;
  right: -40%;
  width: 180%;
  height: 180%;
  background: radial-gradient(circle at 70% 30%, rgba(88, 101, 242, 0.2) 0%, rgba(56, 189, 248, 0.1) 40%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}

/* Header */
.console-top-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 2;
  margin-bottom: 1.2rem;
  padding-bottom: 0.9rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.console-bot-identity {
  display: flex;
  align-items: center;
  gap: 0.85rem;
}

.console-avatar-wrapper {
  position: relative;
  width: 46px;
  height: 46px;
}

.console-bot-avatar {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid #5865F2;
  box-shadow: 0 0 12px rgba(88, 101, 242, 0.5);
}

.console-online-dot {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 13px;
  height: 13px;
  background: #10b981;
  border: 2px solid #0e121e;
  border-radius: 50%;
  box-shadow: 0 0 8px #10b981;
}

.console-bot-titles h4 {
  font-size: 1.05rem;
  font-weight: 800;
  color: #ffffff;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.console-verified-badge {
  color: #38bdf8;
  font-size: 0.88rem;
}

.console-bot-tag {
  font-size: 0.76rem;
  color: #94a3b8;
  font-weight: 600;
}

.console-status-badge {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.3rem 0.75rem;
  background: rgba(16, 185, 129, 0.12);
  border: 1px solid rgba(16, 185, 129, 0.3);
  border-radius: 50px;
  font-size: 0.7rem;
  font-weight: 800;
  color: #34d399;
  letter-spacing: 0.5px;
}

.status-pulse-ring {
  width: 8px;
  height: 8px;
  background: #10b981;
  border-radius: 50%;
  box-shadow: 0 0 8px #10b981;
  animation: pulseDot 1.8s infinite ease-in-out;
}

@keyframes pulseDot {
  0%, 100% { transform: scale(1); opacity: 1; }
  50% { transform: scale(1.3); opacity: 0.6; }
}

/* Body & Terminal Command line */
.console-body-display {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 1.1rem;
}

.console-cmd-line {
  background: rgba(0, 0, 0, 0.35);
  border: 1px solid rgba(255, 255, 255, 0.06);
  padding: 0.65rem 0.9rem;
  border-radius: 12px;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.85rem;
}

.cmd-prompt {
  color: #38bdf8;
  font-weight: 900;
  font-family: monospace;
}

.cmd-name {
  color: #f1f5f9;
  font-weight: 700;
  font-family: monospace;
}

.cmd-badge-app {
  margin-left: auto;
  font-size: 0.62rem;
  font-weight: 800;
  background: rgba(88, 101, 242, 0.2);
  color: #818cf8;
  border: 1px solid rgba(88, 101, 242, 0.4);
  padding: 0.15rem 0.45rem;
  border-radius: 4px;
}

/* Real Time Live Metrics Grid */
.console-metrics-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.85rem;
}

.console-metric-card {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.07);
  border-radius: 16px;
  padding: 0.95rem 1rem;
  display: flex;
  align-items: center;
  gap: 0.85rem;
  transition: all 0.3s ease;
}

.console-metric-card:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: rgba(255, 255, 255, 0.18);
  transform: translateY(-2px);
}

.metric-card-icon {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.15rem;
  flex-shrink: 0;
}

.metric-card-icon.blue { background: rgba(59, 130, 246, 0.15); color: #60a5fa; border: 1px solid rgba(59, 130, 246, 0.25); }
.metric-card-icon.purple { background: rgba(168, 85, 247, 0.15); color: #c084fc; border: 1px solid rgba(168, 85, 247, 0.25); }
.metric-card-icon.cyan { background: rgba(56, 189, 248, 0.15); color: #38bdf8; border: 1px solid rgba(56, 189, 248, 0.25); }
.metric-card-icon.emerald { background: rgba(16, 185, 129, 0.15); color: #34d399; border: 1px solid rgba(16, 185, 129, 0.25); }

.metric-card-info {
  display: flex;
  flex-direction: column;
  text-align: left;
}

.metric-lbl {
  font-size: 0.65rem;
  font-weight: 700;
  color: #64748b;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}

.metric-val {
  font-size: 1.25rem;
  font-weight: 900;
  color: #ffffff;
  font-family: var(--font-display, 'Inter', sans-serif);
  line-height: 1.25;
  margin-top: 0.1rem;
}

/* Feature Chips Bar */
.console-feature-chips {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  flex-wrap: wrap;
}

.chip-item {
  font-size: 0.74rem;
  font-weight: 700;
  color: #94a3b8;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  padding: 0.35rem 0.75rem;
  border-radius: 50px;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  transition: all 0.25s ease;
}

.chip-item:hover {
  background: rgba(88, 101, 242, 0.15);
  border-color: rgba(88, 101, 242, 0.35);
  color: #818cf8;
}

/* Security Footer Bar */
.console-footer-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 2;
  margin-top: 1.1rem;
  padding-top: 0.85rem;
  border-top: 1px solid rgba(255, 255, 255, 0.06);
  font-size: 0.74rem;
  color: #64748b;
  font-weight: 600;
}

.foot-security {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  color: #94a3b8;
}

/* ==========================================================================
   DISCORD LIVE ANIMATED CHAT MOCKUP (HERO VISUAL SIDE)
   ========================================================================== */

.discord-live-mockup {
  position: relative;
  background: #1e2124;
  border-radius: 18px;
  overflow: hidden;
  width: 100%;
  max-width: 520px;
  margin: 0 auto;
  box-shadow:
    0 30px 80px rgba(0, 0, 0, 0.7),
    0 0 0 1px rgba(255,255,255,0.06),
    0 0 60px rgba(88, 101, 242, 0.2);
  transform: perspective(1200px) rotateY(-4deg) rotateX(2deg);
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.6s ease;
}

.discord-live-mockup:hover {
  transform: perspective(1200px) rotateY(-1deg) rotateX(0.5deg) translateY(-8px);
  box-shadow:
    0 45px 100px rgba(0, 0, 0, 0.75),
    0 0 0 1px rgba(255,255,255,0.1),
    0 0 80px rgba(88, 101, 242, 0.35);
}

/* Titlebar (macOS-style) */
.dlm-titlebar {
  background: #111214;
  padding: 0.75rem 1rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

.dlm-dots {
  display: flex;
  gap: 6px;
}

.dlm-dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
}

.dlm-dot.red    { background: #ff5f57; box-shadow: 0 0 6px rgba(255,95,87,0.5); }
.dlm-dot.yellow { background: #febc2e; box-shadow: 0 0 6px rgba(254,188,46,0.5); }
.dlm-dot.green  { background: #28c840; box-shadow: 0 0 6px rgba(40,200,64,0.5); }

.dlm-channel-name {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.85rem;
  font-weight: 700;
  color: #f2f3f5;
  margin: 0 auto;
}

.dlm-online-count {
  font-size: 0.72rem;
  color: #949ba4;
  font-weight: 500;
  margin-left: 0.35rem;
  display: flex;
  align-items: center;
  gap: 0.3rem;
}

.dlm-titlebar-icons {
  display: flex;
  gap: 0.75rem;
  color: #949ba4;
  font-size: 0.9rem;
}

/* Chat Body */
.dlm-chat-body {
  background: #313338;
  padding: 1.1rem 1rem;
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  min-height: 340px;
}

/* Individual Message Row */
.dlm-msg {
  display: flex;
  gap: 0.75rem;
  align-items: flex-start;
  padding: 0.35rem 0.5rem;
  border-radius: 6px;
  transition: background 0.2s ease;
  opacity: 0;
  transform: translateY(14px);
}

.dlm-msg:hover {
  background: rgba(0,0,0,0.1);
}

/* Staggered entry animations */
.dlm-anim-1 { animation: dlmSlideIn 0.55s cubic-bezier(0.16,1,0.3,1) 0.3s forwards; }
.dlm-anim-2 { animation: dlmSlideIn 0.55s cubic-bezier(0.16,1,0.3,1) 0.85s forwards; }
.dlm-anim-3 { animation: dlmSlideIn 0.55s cubic-bezier(0.16,1,0.3,1) 1.5s forwards; }
.dlm-anim-4 { animation: dlmSlideIn 0.55s cubic-bezier(0.16,1,0.3,1) 2.1s forwards; }
.dlm-anim-5 { animation: dlmSlideIn 0.55s cubic-bezier(0.16,1,0.3,1) 2.9s forwards; }

@keyframes dlmSlideIn {
  to { opacity: 1; transform: translateY(0); }
}

/* Avatar */
.dlm-avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  margin-top: 2px;
}

.dlm-bot-glow {
  box-shadow: 0 0 10px rgba(88,101,242,0.6);
  border: 2px solid rgba(88,101,242,0.5);
}

/* Message Content */
.dlm-msg-content {
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
  flex: 1;
}

.dlm-msg-header {
  display: flex;
  align-items: center;
  gap: 0.45rem;
}

.dlm-username {
  font-size: 0.9rem;
  font-weight: 700;
  color: #f2f3f5;
}

.dlm-bot-name { color: #5865f2; }

.dlm-bot-badge {
  font-size: 0.6rem;
  font-weight: 800;
  background: #5865f2;
  color: #fff;
  padding: 0.1rem 0.3rem;
  border-radius: 3px;
}

.dlm-timestamp {
  font-size: 0.72rem;
  color: #949ba4;
  font-weight: 400;
}

/* System join line */
.dlm-system-line {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.82rem;
  color: #949ba4;
  padding-left: 3.25rem;
}

.dlm-system-icon {
  font-size: 0.85rem;
}

/* Discord embed */
.dlm-embed {
  display: flex;
  background: #2b2d31;
  border-radius: 6px;
  overflow: hidden;
  max-width: 400px;
}

.dlm-embed-bar {
  width: 4px;
  flex-shrink: 0;
}

.dlm-embed-body {
  padding: 0.7rem 0.85rem;
  display: flex;
  flex-direction: column;
  gap: 0.3rem;
}

.dlm-embed-title {
  font-size: 0.88rem;
  font-weight: 700;
  color: #ffffff;
  margin: 0;
}

.dlm-embed-desc {
  font-size: 0.82rem;
  color: #dbdee1;
  margin: 0;
  line-height: 1.4;
}

.dlm-mention {
  color: #5865f2;
  background: rgba(88,101,242,0.15);
  border-radius: 3px;
  padding: 0 2px;
  font-weight: 600;
}

.dlm-channel-ref {
  color: #5865f2;
  font-weight: 600;
}

/* Slash command line */
.dlm-slash-cmd {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-size: 0.83rem;
  color: #949ba4;
}

.dlm-cmd-pill {
  font-size: 0.78rem;
  font-weight: 700;
  background: rgba(88,101,242,0.2);
  color: #818cf8;
  border: 1px solid rgba(88,101,242,0.35);
  padding: 0.1rem 0.45rem;
  border-radius: 5px;
  font-family: monospace;
}

/* Rank card embed */
.dlm-rank-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background: linear-gradient(135deg, #0a0c1a 0%, #0e1228 100%);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 12px;
  padding: 0.85rem 1rem;
  max-width: 380px;
  gap: 0.75rem;
}

.dlm-rank-left {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.dlm-rank-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 2px solid #a855f7;
  box-shadow: 0 0 10px rgba(168,85,247,0.5);
}

.dlm-rank-info {
  display: flex;
  flex-direction: column;
  gap: 0.15rem;
}

.dlm-rank-name {
  font-size: 0.88rem;
  font-weight: 800;
  color: #ffffff;
}

.dlm-rank-handle {
  font-size: 0.72rem;
  color: #64748b;
}

.dlm-xp-bar-wrap {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  margin-top: 0.2rem;
}

.dlm-xp-bar {
  width: 140px;
  height: 6px;
  background: rgba(255,255,255,0.1);
  border-radius: 50px;
  overflow: hidden;
}

.dlm-xp-fill {
  height: 100%;
  width: 0%;
  background: linear-gradient(90deg, #6366f1, #a855f7, #38bdf8);
  border-radius: 50px;
  animation: xpGrow 2s cubic-bezier(0.16,1,0.3,1) 2.4s forwards;
  box-shadow: 0 0 8px rgba(99,102,241,0.6);
}

@keyframes xpGrow {
  to { width: 92%; }
}

.dlm-xp-text {
  font-size: 0.68rem;
  color: #94a3b8;
  font-weight: 600;
}

.dlm-rank-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  background: linear-gradient(135deg, #6366f1, #a855f7);
  padding: 0.5rem 0.8rem;
  border-radius: 12px;
  box-shadow: 0 4px 15px rgba(99,102,241,0.5);
}

.dlm-rank-num {
  font-size: 1.6rem;
  font-weight: 900;
  color: #ffffff;
  line-height: 1;
}

.dlm-rank-lbl {
  font-size: 0.55rem;
  font-weight: 800;
  color: rgba(255,255,255,0.7);
  letter-spacing: 1px;
  text-transform: uppercase;
}

/* Typing indicator */
.dlm-typing-bar {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  padding-left: 3.25rem;
  font-size: 0.8rem;
  color: #949ba4;
  padding-top: 0.2rem;
}

.dlm-typing-dots {
  display: flex;
  align-items: center;
  gap: 3px;
}

.dlm-typing-dots span {
  width: 7px;
  height: 7px;
  background: #949ba4;
  border-radius: 50%;
  animation: typingBounce 1.4s infinite ease-in-out;
}

.dlm-typing-dots span:nth-child(1) { animation-delay: 0s; }
.dlm-typing-dots span:nth-child(2) { animation-delay: 0.18s; }
.dlm-typing-dots span:nth-child(3) { animation-delay: 0.36s; }

@keyframes typingBounce {
  0%, 60%, 100% { transform: translateY(0); opacity: 0.4; }
  30% { transform: translateY(-5px); opacity: 1; }
}

.dlm-typing-text {
  font-size: 0.78rem;
  color: #949ba4;
}

/* LIVE floating badge */
.dlm-live-badge {
  position: absolute;
  top: 12px;
  right: 12px;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.25rem 0.65rem;
  background: rgba(220, 38, 38, 0.9);
  border-radius: 50px;
  font-size: 0.65rem;
  font-weight: 800;
  color: #ffffff;
  letter-spacing: 1px;
  box-shadow: 0 2px 12px rgba(220,38,38,0.6);
  backdrop-filter: blur(10px);
  z-index: 10;
}

.dlm-live-dot {
  width: 7px;
  height: 7px;
  background: #ffffff;
  border-radius: 50%;
  animation: pulseDot 1.2s infinite ease-in-out;
}

/* ==========================================================================
   HOLOGRAPHIC BOT CORE — FUTURISTIC ENERGY REACTOR (HERO VISUAL)
   ========================================================================== */

.bot-core-scene {
  position: relative;
  width: 100%;
  max-width: 480px;
  height: 480px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Outer ambient background glow */
.core-outer-glow {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(88,101,242,0.18) 0%, rgba(168,85,247,0.12) 40%, transparent 70%);
  animation: coreBreath 4s ease-in-out infinite;
  pointer-events: none;
}

@keyframes coreBreath {
  0%, 100% { transform: scale(1); opacity: 0.8; }
  50% { transform: scale(1.12); opacity: 1; }
}

/* ---- Orbital rings ---- */
.core-orbit {
  position: absolute;
  border-radius: 50%;
  border: 1.5px solid transparent;
  pointer-events: none;
}

.core-orbit-1 {
  width: 270px; height: 270px;
  border-color: rgba(88,101,242,0.45);
  animation: orbitSpin 7s linear infinite;
  box-shadow: 0 0 10px rgba(88,101,242,0.2), inset 0 0 10px rgba(88,101,242,0.1);
}

.core-orbit-2 {
  width: 360px; height: 360px;
  border-color: rgba(168,85,247,0.35);
  animation: orbitSpin 12s linear infinite reverse;
  transform: rotateX(60deg);
  box-shadow: 0 0 12px rgba(168,85,247,0.2);
}

.core-orbit-3 {
  width: 440px; height: 440px;
  border-color: rgba(56,189,248,0.25);
  animation: orbitSpin 18s linear infinite;
  transform: rotateX(75deg) rotateY(15deg);
}

@keyframes orbitSpin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

/* orbit-2 and orbit-3 need their tilt preserved */
.core-orbit-2 { animation: orbitSpin2 12s linear infinite reverse; }
.core-orbit-3 { animation: orbitSpin3 18s linear infinite; }

@keyframes orbitSpin2 {
  from { transform: rotateX(60deg) rotateZ(0deg); }
  to   { transform: rotateX(60deg) rotateZ(360deg); }
}

@keyframes orbitSpin3 {
  from { transform: rotateX(75deg) rotateZ(0deg); }
  to   { transform: rotateX(75deg) rotateZ(360deg); }
}

/* Glowing dots riding the orbit rings */
.orbit-dot {
  position: absolute;
  border-radius: 50%;
}

.orbit-dot-a {
  width: 10px; height: 10px;
  background: #5865f2;
  top: -5px; left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 0 12px 4px rgba(88,101,242,0.9);
}

.orbit-dot-b {
  width: 8px; height: 8px;
  background: #c084fc;
  top: -4px; left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 0 12px 4px rgba(192,132,252,0.9);
}

.orbit-dot-c {
  width: 7px; height: 7px;
  background: #38bdf8;
  top: -3.5px; left: 50%;
  transform: translateX(-50%);
  box-shadow: 0 0 12px 4px rgba(56,189,248,0.9);
}

/* ---- Central Orb ---- */
.core-center-orb {
  position: relative;
  z-index: 10;
  width: 130px;
  height: 130px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: radial-gradient(circle, #1e2235 60%, #0d0f1a 100%);
  border: 2px solid rgba(88,101,242,0.7);
  box-shadow:
    0 0 0 8px rgba(88,101,242,0.1),
    0 0 0 20px rgba(88,101,242,0.06),
    0 0 40px rgba(88,101,242,0.5),
    0 0 80px rgba(168,85,247,0.3),
    inset 0 0 30px rgba(88,101,242,0.2);
  animation: orbPulse 3s ease-in-out infinite;
}

@keyframes orbPulse {
  0%, 100% {
    box-shadow:
      0 0 0 8px rgba(88,101,242,0.1),
      0 0 0 20px rgba(88,101,242,0.06),
      0 0 40px rgba(88,101,242,0.5),
      0 0 80px rgba(168,85,247,0.3),
      inset 0 0 30px rgba(88,101,242,0.2);
  }
  50% {
    box-shadow:
      0 0 0 12px rgba(88,101,242,0.15),
      0 0 0 30px rgba(88,101,242,0.08),
      0 0 60px rgba(88,101,242,0.7),
      0 0 120px rgba(168,85,247,0.5),
      inset 0 0 40px rgba(88,101,242,0.3);
  }
}

.orb-avatar {
  width: 82px;
  height: 82px;
  border-radius: 50%;
  object-fit: cover;
  position: relative;
  z-index: 2;
  filter: brightness(1.05);
}

.orb-inner-glow {
  position: absolute;
  inset: -10px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(88,101,242,0.4) 0%, transparent 70%);
  animation: coreBreath 3s ease-in-out infinite;
  pointer-events: none;
  z-index: 1;
}

/* Scanning line sweeping across the orb */
.orb-scan-line {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(88,101,242,0.8), rgba(56,189,248,0.8), transparent);
  animation: scanSweep 2.5s ease-in-out infinite;
  z-index: 3;
  pointer-events: none;
}

@keyframes scanSweep {
  0% { top: 0%; opacity: 0; }
  10% { opacity: 1; }
  90% { opacity: 1; }
  100% { top: 100%; opacity: 0; }
}

/* ---- Floating Feature Cards ---- */
.core-feature-card {
  position: absolute;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.55rem 0.9rem;
  background: rgba(13, 17, 28, 0.85);
  backdrop-filter: blur(12px);
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 12px;
  font-size: 0.78rem;
  font-weight: 700;
  color: #e2e8f0;
  white-space: nowrap;
  box-shadow: 0 8px 24px rgba(0,0,0,0.5);
  z-index: 20;
  animation: cardFloat 5s ease-in-out infinite;
}

.core-feature-card i {
  font-size: 0.9rem;
}

.card-top-left {
  top: 55px; left: 0px;
  border-color: rgba(88,101,242,0.4);
  animation-delay: 0s;
}
.card-top-left i { color: #818cf8; }

.card-top-right {
  top: 55px; right: 0px;
  border-color: rgba(234,179,8,0.4);
  animation-delay: 1.2s;
}
.card-top-right i { color: #eab308; }

.card-bottom-left {
  bottom: 55px; left: 0px;
  border-color: rgba(16,185,129,0.4);
  animation-delay: 0.6s;
}
.card-bottom-left i { color: #34d399; }

.card-bottom-right {
  bottom: 55px; right: 0px;
  border-color: rgba(168,85,247,0.4);
  animation-delay: 1.8s;
}
.card-bottom-right i { color: #c084fc; }

@keyframes cardFloat {
  0%, 100% { transform: translateY(0px); }
  50% { transform: translateY(-8px); }
}

/* ---- Particles ---- */
.core-particle {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  animation: particleDrift linear infinite;
}

.p1 { width: 4px; height: 4px; background: #5865f2; top: 20%; left: 30%; animation-duration: 6s; animation-delay: 0s; }
.p2 { width: 3px; height: 3px; background: #c084fc; top: 70%; left: 65%; animation-duration: 8s; animation-delay: 1s; }
.p3 { width: 5px; height: 5px; background: #38bdf8; top: 35%; left: 75%; animation-duration: 7s; animation-delay: 2s; }
.p4 { width: 3px; height: 3px; background: #a855f7; top: 60%; left: 20%; animation-duration: 9s; animation-delay: 0.5s; }
.p5 { width: 4px; height: 4px; background: #6366f1; top: 15%; left: 60%; animation-duration: 5s; animation-delay: 1.5s; }
.p6 { width: 3px; height: 3px; background: #f472b6; top: 80%; left: 40%; animation-duration: 7s; animation-delay: 3s; }

@keyframes particleDrift {
  0%   { transform: translate(0, 0) scale(1); opacity: 0; }
  20%  { opacity: 1; }
  80%  { opacity: 0.6; }
  100% { transform: translate(-30px, -60px) scale(0.3); opacity: 0; }
}

/* ---- Hex Background (pure CSS) ---- */
.core-hex-bg {
  position: absolute;
  inset: 0;
  background-image:
    repeating-linear-gradient(60deg, rgba(88,101,242,0.04) 0px, rgba(88,101,242,0.04) 1px, transparent 1px, transparent 30px),
    repeating-linear-gradient(-60deg, rgba(88,101,242,0.04) 0px, rgba(88,101,242,0.04) 1px, transparent 1px, transparent 30px),
    repeating-linear-gradient(0deg, rgba(88,101,242,0.03) 0px, rgba(88,101,242,0.03) 1px, transparent 1px, transparent 30px);
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
}

/* ---- Status Bar ---- */
.core-status-bar {
  position: absolute;
  bottom: 12px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  gap: 0.5rem;
  background: rgba(13,17,28,0.85);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(88,101,242,0.3);
  padding: 0.3rem 0.9rem;
  border-radius: 50px;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 1px;
  color: #94a3b8;
  white-space: nowrap;
  z-index: 20;
}

.core-status-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #10b981;
  box-shadow: 0 0 8px #10b981;
  animation: pulseDot 1.6s infinite ease-in-out;
}

.core-status-text { color: #38bdf8; }
.core-version { color: rgba(255,255,255,0.3); margin-left: 0.25rem; }

/* ==========================================================================
   DASHBOARD HOME — PREMIUM REDESIGN
   ========================================================================== */

/* ---- HERO BANNER ---- */
.dash-hero-banner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 24px;
  padding: 2.2rem 2.5rem;
  margin-bottom: 1.5rem;
  overflow: hidden;
  min-height: 200px;
}

.dash-hero-aura {
  position: absolute;
  top: -60%;
  left: -20%;
  width: 60%;
  height: 200%;
  background: radial-gradient(ellipse, rgba(88,101,242,0.2) 0%, transparent 65%);
  pointer-events: none;
}

.dash-hero-grid-lines {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255,255,255,0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,0.03) 1px, transparent 1px);
  background-size: 40px 40px;
  pointer-events: none;
  mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 40%, transparent 100%);
}

.dash-hero-left {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  max-width: 600px;
}

.dash-hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.3rem 0.8rem;
  background: rgba(88,101,242,0.15);
  border: 1px solid rgba(88,101,242,0.35);
  border-radius: 50px;
  font-size: 0.72rem;
  font-weight: 800;
  color: #818cf8;
  letter-spacing: 0.5px;
  width: fit-content;
  text-transform: uppercase;
}

.dash-hero-badge-dot {
  width: 7px;
  height: 7px;
  background: #10b981;
  border-radius: 50%;
  box-shadow: 0 0 8px #10b981;
  animation: pulseDot 1.8s infinite;
}

.dash-hero-title {
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  font-weight: 900;
  color: #ffffff;
  margin: 0;
  line-height: 1.2;
  letter-spacing: -0.5px;
}

.dash-hero-servname {
  background: linear-gradient(135deg, #818cf8, #c084fc);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.dash-hero-wave {
  -webkit-text-fill-color: initial;
  background: none;
  display: inline-block;
  animation: waveWiggle 2.5s ease-in-out infinite;
  transform-origin: 70% 70%;
}

@keyframes waveWiggle {
  0%, 60%, 100% { transform: rotate(0deg); }
  10%, 30% { transform: rotate(20deg); }
  20% { transform: rotate(-10deg); }
  40% { transform: rotate(10deg); }
  50% { transform: rotate(-5deg); }
}

.dash-hero-desc {
  font-size: 0.92rem;
  color: #94a3b8;
  margin: 0;
  line-height: 1.5;
}

.dash-hero-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 0.4rem;
}

.dash-pill-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.5rem 1rem;
  border-radius: 10px;
  font-size: 0.82rem;
  font-weight: 700;
  border: 1px solid rgba(255,255,255,0.1);
  background: rgba(255,255,255,0.05);
  color: #cbd5e1;
  cursor: pointer;
  transition: all 0.25s ease;
}

.dash-pill-btn:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.2);
  color: #ffffff;
  transform: translateY(-2px);
}

.dash-pill-btn.dash-pill-primary {
  background: linear-gradient(135deg, #5865f2, #7c3aed);
  border-color: transparent;
  color: #ffffff;
  box-shadow: 0 4px 16px rgba(88,101,242,0.45);
}

.dash-pill-btn.dash-pill-primary:hover {
  box-shadow: 0 6px 24px rgba(88,101,242,0.6);
  transform: translateY(-2px) scale(1.02);
}

/* Hero Right: Server Orb */
.dash-hero-right {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.dash-server-orb {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(88,101,242,0.4), rgba(168,85,247,0.4));
  border: 2px solid rgba(88,101,242,0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  color: #a5b4fc;
  box-shadow: 0 0 30px rgba(88,101,242,0.4), 0 0 60px rgba(88,101,242,0.2);
  animation: orbPulse 3s ease-in-out infinite;
  overflow: hidden;
  position: relative;
  z-index: 2;
}

.dash-server-orb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 50%;
}

.dash-server-orb-ring {
  position: absolute;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  border: 1.5px solid rgba(88,101,242,0.35);
  animation: orbitSpin 8s linear infinite;
}

/* ---- QUICK STATS ROW ---- */
.dash-quick-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
  margin-bottom: 2rem;
}

.dash-stat-chip {
  display: flex;
  align-items: center;
  gap: 0.9rem;
  padding: 1rem 1.2rem;
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.07);
  border-radius: 16px;
  transition: all 0.25s ease;
}

.dash-stat-chip:hover {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.14);
  transform: translateY(-2px);
}

.dash-stat-chip-icon {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  flex-shrink: 0;
}

.dash-stat-chip-icon.blue   { background: rgba(59,130,246,0.15); color: #60a5fa; border: 1px solid rgba(59,130,246,0.25); }
.dash-stat-chip-icon.purple { background: rgba(168,85,247,0.15); color: #c084fc; border: 1px solid rgba(168,85,247,0.25); }
.dash-stat-chip-icon.emerald{ background: rgba(16,185,129,0.15); color: #34d399; border: 1px solid rgba(16,185,129,0.25); }
.dash-stat-chip-icon.amber  { background: rgba(245,158,11,0.15); color: #fbbf24; border: 1px solid rgba(245,158,11,0.25); }

.dash-stat-chip-info {
  display: flex;
  flex-direction: column;
}

.dash-stat-chip-val {
  font-size: 1.3rem;
  font-weight: 900;
  color: #ffffff;
  line-height: 1.1;
  font-family: var(--font-display, 'Inter', sans-serif);
}

.dash-stat-chip-lbl {
  font-size: 0.7rem;
  font-weight: 600;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-top: 0.1rem;
}

/* ---- MODULES SECTION ---- */
.dash-modules-section {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.dash-section-label {
  font-size: 0.75rem;
  font-weight: 800;
  color: #64748b;
  text-transform: uppercase;
  letter-spacing: 1px;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.dash-modules-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}

/* Module Card */
.dash-mod-card {
  position: relative;
  padding: 1.4rem;
  border-radius: 20px;
  background: rgba(255,255,255,0.025);
  border: 1px solid rgba(255,255,255,0.07);
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
}

.dash-mod-card:hover {
  transform: translateY(-5px) scale(1.02);
  border-color: rgba(255,255,255,0.15);
}

.dash-mod-card:hover .dash-mod-glow {
  opacity: 1;
}

.dash-mod-card:hover .dash-mod-arrow {
  transform: translateX(4px);
  opacity: 1;
}

.dash-mod-glow {
  position: absolute;
  top: -30px;
  left: -30px;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  filter: blur(30px);
  opacity: 0.35;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

.dash-mod-icon {
  width: 44px;
  height: 44px;
  border-radius: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
  flex-shrink: 0;
  margin-bottom: 0.3rem;
}

.dash-mod-card h3 {
  font-size: 0.97rem;
  font-weight: 800;
  color: #f1f5f9;
  margin: 0;
}

.dash-mod-card p {
  font-size: 0.8rem;
  color: #64748b;
  margin: 0;
  line-height: 1.45;
  flex: 1;
}

.dash-mod-arrow {
  margin-top: auto;
  font-size: 0.8rem;
  color: #475569;
  opacity: 0.5;
  transition: transform 0.25s ease, opacity 0.25s ease;
}

/* Color Variants */
.dash-mod-blue   .dash-mod-icon { background: rgba(59,130,246,0.15); color: #60a5fa; border: 1px solid rgba(59,130,246,0.25); }
.dash-mod-blue   .dash-mod-glow { background: #3b82f6; }
.dash-mod-blue:hover { border-color: rgba(59,130,246,0.4); box-shadow: 0 12px 30px rgba(59,130,246,0.15); }

.dash-mod-emerald .dash-mod-icon { background: rgba(16,185,129,0.15); color: #34d399; border: 1px solid rgba(16,185,129,0.25); }
.dash-mod-emerald .dash-mod-glow { background: #10b981; }
.dash-mod-emerald:hover { border-color: rgba(16,185,129,0.4); box-shadow: 0 12px 30px rgba(16,185,129,0.15); }

.dash-mod-sky   .dash-mod-icon { background: rgba(56,189,248,0.15); color: #38bdf8; border: 1px solid rgba(56,189,248,0.25); }
.dash-mod-sky   .dash-mod-glow { background: #0ea5e9; }
.dash-mod-sky:hover { border-color: rgba(56,189,248,0.4); box-shadow: 0 12px 30px rgba(56,189,248,0.15); }

.dash-mod-violet .dash-mod-icon { background: rgba(139,92,246,0.15); color: #a78bfa; border: 1px solid rgba(139,92,246,0.25); }
.dash-mod-violet .dash-mod-glow { background: #8b5cf6; }
.dash-mod-violet:hover { border-color: rgba(139,92,246,0.4); box-shadow: 0 12px 30px rgba(139,92,246,0.15); }

.dash-mod-pink   .dash-mod-icon { background: rgba(236,72,153,0.15); color: #f472b6; border: 1px solid rgba(236,72,153,0.25); }
.dash-mod-pink   .dash-mod-glow { background: #ec4899; }
.dash-mod-pink:hover { border-color: rgba(236,72,153,0.4); box-shadow: 0 12px 30px rgba(236,72,153,0.15); }

.dash-mod-amber  .dash-mod-icon { background: rgba(245,158,11,0.15); color: #fbbf24; border: 1px solid rgba(245,158,11,0.25); }
.dash-mod-amber  .dash-mod-glow { background: #f59e0b; }
.dash-mod-amber:hover { border-color: rgba(245,158,11,0.4); box-shadow: 0 12px 30px rgba(245,158,11,0.15); }

.dash-mod-gold   .dash-mod-icon { background: rgba(234,179,8,0.15); color: #eab308; border: 1px solid rgba(234,179,8,0.25); }
.dash-mod-gold   .dash-mod-glow { background: #ca8a04; }
.dash-mod-gold:hover { border-color: rgba(234,179,8,0.4); box-shadow: 0 12px 30px rgba(234,179,8,0.15); }

.dash-mod-red    .dash-mod-icon { background: rgba(239,68,68,0.15); color: #f87171; border: 1px solid rgba(239,68,68,0.25); }
.dash-mod-red    .dash-mod-glow { background: #ef4444; }
.dash-mod-red:hover { border-color: rgba(239,68,68,0.4); box-shadow: 0 12px 30px rgba(239,68,68,0.15); }

.dash-mod-rose   .dash-mod-icon { background: rgba(244,63,94,0.15); color: #fb7185; border: 1px solid rgba(244,63,94,0.25); }
.dash-mod-rose   .dash-mod-glow { background: #f43f5e; }
.dash-mod-rose:hover { border-color: rgba(244,63,94,0.4); box-shadow: 0 12px 30px rgba(244,63,94,0.15); }

/* Responsive adjustments */
@media (max-width: 1024px) {
  .dash-modules-grid { grid-template-columns: repeat(2, 1fr); }
  .dash-quick-stats { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 640px) {
  .dash-hero-banner { flex-direction: column; padding: 1.5rem; }
  .dash-hero-right { display: none; }
  .dash-modules-grid { grid-template-columns: 1fr; }
  .dash-quick-stats { grid-template-columns: repeat(2, 1fr); }
}

/* Custom Brand Logo Image Styling */
.brand-img-logo {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  display: inline-block;
  vertical-align: middle;
  box-shadow: 0 0 10px rgba(59, 130, 246, 0.3);
}
.landing-brand-logo, .brand-logo, .footer-brand-logo {
  background: transparent !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

