:root, [data-theme="forgejo-dark"], [data-theme="forgejo-auto"], [data-theme="forgejo-light"], [data-theme="gitea-light"], [data-theme="gitea-auto"] {
  /* ================== BLACKNODE CORE THEME VARIABLES ================== */
  --color-primary: #0077ff; 
  --color-primary-hover: #00c3ff;
  --color-primary-active: #005ce6;
  --color-body: #010204;
  --color-box-body: rgba(2, 6, 13, 0.7);
  --color-box-header: rgba(1, 2, 4, 0.9);
  --color-nav-bg: rgba(1, 2, 4, 0.6);
  --border-radius: 8px;
  
  /* CRITICAL: Force light text for our dark theme */
  --color-text: #e2e8f0 !important;
  --color-text-dark: #94a3b8 !important;
  --color-text-light: #ffffff !important;
  --color-text-light-1: #e2e8f0 !important;
  --color-text-light-2: #cbd5e1 !important;
  --color-text-light-3: #94a3b8 !important;
  --color-input-text: #ffffff !important;
  --color-input-background: rgba(0, 0, 0, 0.4) !important;
  --color-input-border: rgba(0, 195, 255, 0.2) !important;
  --color-input-border-hover: #00c3ff !important;
}

body {
  color: var(--color-text) !important;
}

/* ========================================================
   CYBER-NEXUS: LOGIN PAGE HARMONY
   ======================================================== */
.page-content.user.signin {
  background: transparent !important; /* Let the global 3D wave show through */
  min-height: calc(100vh - 80px);
  display: flex; align-items: center; justify-content: center;
  padding: 40px 20px;
}
.page-content.user.signin .ui.form {
  background: #000000 !important;
  border: 2px solid #005ce6 !important;
  border-radius: 0px !important;
  box-shadow: 12px 12px 0px rgba(0, 0, 0, 0.8), 
              0 0 30px rgba(0, 195, 255, 0.2) !important;
  padding: 40px !important;
  max-width: 450px; width: 100%;
}
.page-content.user.signin .ui.form .field label {
  font-family: 'Share Tech Mono', monospace !important;
  color: #94a3b8 !important;
  font-size: 0.9rem !important;
  letter-spacing: 1px;
}
.page-content.user.signin .ui.form input[type="text"],
.page-content.user.signin .ui.form input[type="password"],
.page-content.user.signin .ui.form input[type="email"] {
  background: #000000 !important;
  border: 1px solid #005ce6 !important;
  color: #00c3ff !important;
  font-family: 'Share Tech Mono', monospace !important;
  border-radius: 0px !important;
  transition: all 0.3s ease !important;
}
.page-content.user.signin .ui.form input:focus {
  border-color: #00c3ff !important;
  box-shadow: 0 0 15px rgba(0, 195, 255, 0.2) !important;
}
.page-content.user.signin .ui.button.primary {
  background: #00c3ff !important;
  color: #010204 !important;
  font-family: 'Press Start 2P', monospace !important;
  font-size: 0.9rem !important;
  border-radius: 0px !important;
  height: 50px;
  box-shadow: 4px 4px 0px #000, 0 0 10px rgba(0, 195, 255, 0.2) !important;
  transition: all 0.3s ease !important;
}
.page-content.user.signin .ui.button.primary:hover {
  background: #ffffff !important;
  box-shadow: 0 15px 25px rgba(0, 195, 255, 0.4) !important;
  transform: translateY(-2px);
}
.page-content.user.signin .ui.message {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: #94a3b8 !important;
  text-align: center;
}
.page-content.user.signin .ui.message a {
  color: #00c3ff !important;
}

.page-content.user.signin h2 { 
  color: #00c3ff !important; font-size: 1.5rem !important; text-align: left; text-transform: uppercase; 
  border-bottom: 2px solid #005ce6; padding-bottom: 10px; margin-bottom: 2rem; 
  font-family: 'Press Start 2P', monospace !important; text-shadow: 2px 2px 0px #000;
}

/* ================== GLOBAL TYPOGRAPHY & BASE ================== */
/* Fuentes auto-hospedadas (antes: fonts.googleapis.com). Ver css/fonts.css */
@import url('fonts.css');

body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3, h4, h5, .ui.header {
  font-family: 'Space Grotesk', sans-serif !important;
  letter-spacing: -0.5px;
  /* Subtle global phosphor glow on all headings */
  text-shadow: 0 0 10px rgba(0, 102, 255, 0.3);
}

/* ================== GLOBAL AMBIENT BACKGROUND ================== */
body::before {
  content: "";
  position: fixed;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 150vw; height: 150vh;
  background: radial-gradient(ellipse at center, rgba(0, 119, 255, 0.05) 0%, rgba(0, 195, 255, 0.02) 40%, transparent 70%);
  z-index: -2;
  pointer-events: none;
}
body::after {
  content: "";
  position: fixed;
  top: 0; left: 0; width: 100vw; height: 100vh;
  background-image: radial-gradient(rgba(0, 195, 255, 0.2) 1px, transparent 1px);
  background-size: 80px 80px;
  z-index: -1;
  pointer-events: none;
  opacity: 0.15;
}

/* ================== INPUTS ================== */

input, textarea, .ui.selection.dropdown {
  background: rgba(0, 0, 0, 0.4);
  color: #ffffff;
  border: 1px solid rgba(0, 195, 255, 0.2);
  font-family: 'Inter', sans-serif;
  transition: all 0.2s ease; color-scheme: dark;
}

input:focus, textarea:focus, .ui.selection.dropdown.active {
  border-color: #00c3ff;
  box-shadow: 0 0 10px rgba(0, 195, 255, 0.2);
  background: rgba(0, 0, 0, 0.6);
  outline: none;
}

/* ================== NAVIGATION BAR ONLY (NEON BOOM) ================== */
.ui.menu.navbar {
  background-color: var(--color-nav-bg) !important;
  border-bottom: 2px solid #0066ff !important;
  box-shadow: 0 0 25px rgba(0, 102, 255, 0.4) !important;
  min-height: 80px !important;
}

.ui.menu.navbar .item {
  color: #94a3b8 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  font-size: 1rem !important;
  transition: all 0.3s ease;
}

.ui.menu.navbar .item:hover {
  color: #00c3ff !important;
  background: transparent !important;
  text-shadow: 0 0 10px rgba(0, 195, 255, 0.6);
}

/* Fix dropdowns in navbar so they don't inherit the navbar background */
.ui.menu.navbar .ui.dropdown .menu {
  background-color: #0d1117 !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: 8px !important;
  backdrop-filter: none !important;
}

/* LOGO & BRANDING */
#navbar-logo { display: flex !important; align-items: center !important; gap: 12px !important; padding: 0 20px !important; }

.nav-logo-img {
  width: 55px !important; height: 55px !important; object-fit: contain;
  filter: drop-shadow(0 0 10px rgba(0, 195, 255, 0.5));
  transition: all 0.4s ease;
}

.nav-logo-text {
  font-family: 'Press Start 2P', monospace !important;
  font-weight: normal !important; 
  font-size: 1.5rem !important; /* Smaller because the font is wide */
  color: #ffffff !important;
  letter-spacing: 0px !important;
  text-transform: uppercase !important;
  transition: all 0.3s ease;
}

#navbar-logo:hover .nav-logo-img { filter: drop-shadow(0 0 15px rgba(0, 195, 255, 0.8)); transform: scale(1.05); }
#navbar-logo:hover .nav-logo-text { color: #00c3ff !important; }

img.logo, .ui.menu .logo img { width: 55px !important; height: 55px !important; filter: drop-shadow(0 0 10px rgba(0, 195, 255, 0.5)); }

/* ================== SPECIFIC FIXES ================== */
input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0px 1000px #010204 inset !important;
  -webkit-text-fill-color: #ffffff !important;
  transition: background-color 5000s ease-in-out 0s !important;
}

/* Old Login styles removed, replaced by CYBER-NEXUS at top */

/* ========================================================
   INTERNAL DASHBOARD & UI CYBERPUNK STYLING
   ======================================================== */

/* Containers, Panels, and Feeds */
.ui.segment, .box, .flex-list, .ui.attached.header {
    background: #010204 !important;
    border: 1px solid #005ce6 !important;
    box-shadow: 0 0 10px rgba(0, 102, 255, 0.05) !important;
    border-radius: 0 !important;
}
.ui.attached.header {
    background: rgba(0, 102, 255, 0.1) !important;
    color: #00c3ff !important;
    font-family: 'Share Tech Mono', monospace !important;
    text-transform: uppercase;
    letter-spacing: 1px;
}

/* Repository List Items */
.flex-list .flex-item {
    border-bottom: 1px solid rgba(0, 102, 255, 0.2) !important;
    transition: all 0.2s ease;
    padding: 15px !important;
}
.flex-list .flex-item:hover {
    background: rgba(0, 102, 255, 0.05) !important;
    border-left: 4px solid #00c3ff !important;
}

/* Repository Titles & Links */
.flex-item-title a, .repo-title a, a.name {
    font-family: 'Share Tech Mono', monospace !important;
    color: #00c3ff !important;
    font-size: 1.1rem !important;
    text-shadow: 0 0 5px rgba(0, 195, 255, 0.3);
    text-decoration: none !important;
}
.flex-item-title a:hover, .repo-title a:hover, a.name:hover {
    text-shadow: 0 0 10px #00c3ff, 0 0 20px #0066ff;
}

/* Secondary Menus & Tabs (e.g., Repositories | Organizations) */
.ui.secondary.menu .item {
    color: #9ca3af !important;
    font-family: 'Share Tech Mono', monospace !important;
}
.ui.secondary.menu .item.active {
    border-bottom: 2px solid #00c3ff !important;
    color: #00c3ff !important;
    background: transparent !important;
    text-shadow: 0 0 8px rgba(0, 195, 255, 0.5);
}

/* General Buttons */
.ui.button {
    border-radius: 0 !important;
    font-family: 'Share Tech Mono', monospace !important;
    border: 1px solid #005ce6 !important;
    background: #050a15 !important;
    color: #9ca3af !important;
    text-transform: uppercase;
}
.ui.button:hover {
    background: #005ce6 !important;
    color: #fff !important;
    box-shadow: 0 0 10px rgba(0, 102, 255, 0.5) !important;
}
/* Primary/Action Buttons */
.ui.primary.button, .ui.green.button, .ui.basic.green.button {
    background: #0066ff !important;
    color: #fff !important;
    border: 1px solid #00c3ff !important;
    box-shadow: 2px 2px 0px #002266 !important;
}
.ui.primary.button:hover, .ui.green.button:hover, .ui.basic.green.button:hover {
    background: #00c3ff !important;
    color: #000 !important;
    box-shadow: 0 0 15px rgba(0, 195, 255, 0.6) !important;
    transform: translate(-2px, -2px);
}

/* Tags / Labels */
.ui.label {
    background: rgba(0, 102, 255, 0.1) !important;
    border: 1px solid #005ce6 !important;
    color: #00c3ff !important;
    border-radius: 0 !important;
    font-family: 'Share Tech Mono', monospace !important;
}

/* Dashboard Sidebar (Left panel on dashboard) */
.dashboard-repos, .dashboard-orgs {
    border: 1px solid #005ce6 !important;
    background: #010204 !important;
}

/* Footer override */
footer {
    border-top: 1px solid #005ce6 !important;
    background: #010204 !important;
}
footer .container, footer .container a {
    color: #005ce6 !important;
    font-family: 'Share Tech Mono', monospace !important;
}
