    :root {
      --bg-primary: #040612;
      --bg-secondary: #080c20;
      --bg-card: rgba(8, 12, 32, 0.45);
      --bg-glass: rgba(4, 6, 18, 0.75);

      --text-primary: #ffffff;
      --text-secondary: #afbed8;
      --text-muted: #53648a;

      /* Elegant Cyber Green Accents */
      --accent: #00ff66;
      --accent-glow: rgba(0, 255, 102, 0.25);
      --border: rgba(0, 255, 102, 0.15);

      --danger: #ff0055;
      --success: #00ff9d;
      --multiplayer: #ff0055;
      --multiplayer-glow: rgba(255, 0, 85, 0.25);
      --gold: #ffb300;
      --radius-lg: 12px;
    }

    *,
    *::before,
    *::after {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    html {
      scroll-behavior: smooth;
    }

    body {
      font-family: 'Inter', sans-serif;
      background: transparent;
      color: var(--text-primary);
      min-height: 100vh;
      overflow-x: hidden;
      -webkit-font-smoothing: antialiased;
      position: relative;
    }

    /* ── COSMIC GREEN GLOWING BACKGROUND AURORA ANIMATION ── */
    body::before {
      content: '';
      position: fixed;
      inset: 0;
      z-index: -2;
      background: 
        radial-gradient(circle at 15% 15%, rgba(0, 255, 102, 0.045) 0%, transparent 45%),
        radial-gradient(circle at 85% 85%, rgba(0, 255, 102, 0.06) 0%, transparent 50%);
      animation: auroraShift 18s ease-in-out infinite alternate;
      pointer-events: none;
      transition: background 1.2s ease;
    }

    body.night-mode::before {
      background: 
        radial-gradient(circle at 15% 15%, rgba(255, 179, 0, 0.045) 0%, transparent 45%),
        radial-gradient(circle at 85% 85%, rgba(255, 179, 0, 0.06) 0%, transparent 50%);
    }

    @keyframes auroraShift {
      0% { transform: translate(0, 0) scale(1); }
      100% { transform: translate(30px, -30px) scale(1.06); }
    }

    /* ── VIEWPORT MAIN SCROLLBAR ── */
    ::-webkit-scrollbar {
      width: 10px;
    }
    ::-webkit-scrollbar-track {
      background: #040612;
    }
    ::-webkit-scrollbar-thumb {
      background: rgba(0, 255, 102, 0.2);
      border: 2px solid #040612;
      border-radius: 6px;
    }
    ::-webkit-scrollbar-thumb:hover {
      background: rgba(0, 255, 102, 0.45);
    }
    
    body.night-mode ::-webkit-scrollbar-thumb {
      background: rgba(255, 179, 0, 0.2);
    }
    body.night-mode ::-webkit-scrollbar-thumb:hover {
      background: rgba(255, 179, 0, 0.45);
    }

    /* ── STARFIELD ── */
    #starfield {
      position: fixed;
      inset: 0;
      z-index: -5;
      pointer-events: none;
      width: 100%;
      height: 100%;
      opacity: 0.6;
    }

    /* ── UNIVERSE BACKGROUND VIDEO ── */
    .bg-video {
      position: fixed;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover;
      z-index: -8;
      pointer-events: none;
      transform-origin: center;
      transition: opacity 1.2s cubic-bezier(0.25, 1, 0.2, 1);
    }

    .bg-video.day-video {
      opacity: 0.75;
      filter: saturate(1.0) contrast(1.05) brightness(0.95);
    }

    .bg-video.night-video {
      opacity: 0;
      z-index: -7;
      filter: saturate(1.1) contrast(1.15) brightness(0.85);
    }

    body.night-mode .bg-video.day-video {
      opacity: 0;
    }

    body.night-mode .bg-video.night-video {
      opacity: 0.85;
    }

    body.disable-bg-videos .bg-video {
      opacity: 0 !important;
    }

    /* ── COSMIC DAY/NIGHT TOGGLE BUTTON ── */
    .theme-toggle-btn {
      --bg: rgba(8, 12, 32, 0.45);
      outline: none;
      cursor: pointer;
      border: 1px solid var(--border);
      border-radius: 100px;
      background-color: var(--bg);
      transition: all 0.25s ease;
      box-shadow: 0 0 10px rgba(0, 255, 102, 0.03);
      margin-right: 12px;
      display: inline-block;
    }

    .theme-toggle-btn .wrap {
      font-family: 'Space Grotesk', sans-serif;
      font-size: calc(11px * var(--font-scale, 1)) ;
      font-weight: 700;
      letter-spacing: 0.08em;
      color: var(--text-secondary);
      padding: 8px 16px;
      display: flex;
      align-items: center;
      gap: 6px;
      user-select: none;
    }

    .theme-toggle-btn:hover {
      border-color: var(--accent);
      color: #ffffff;
      box-shadow: 0 0 15px var(--accent-glow);
      transform: translateY(-1px);
    }

    .theme-toggle-btn:active {
      transform: translateY(1px);
    }

    body.night-mode .theme-toggle-btn {
      --bg: rgba(255, 179, 0, 0.05);
      box-shadow: 0 0 15px rgba(255, 179, 0, 0.08);
      border-color: rgba(255, 179, 0, 0.3);
    }

    body.night-mode .theme-toggle-btn .wrap {
      color: #ffb300;
    }

    body.night-mode .theme-toggle-btn:hover {
      border-color: #ffb300;
      box-shadow: 0 0 20px rgba(255, 179, 0, 0.25);
    }

    /* ── HEADER ── */
    header {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      z-index: 110;
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 24px clamp(20px, 5vw, 6%);
      background: linear-gradient(to bottom, rgba(4,6,18,0.9) 0%, transparent 100%);
      backdrop-filter: blur(12px);
      border-bottom: 1px solid rgba(255, 255, 255, 0.03);
      transition: transform 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
    }

    .logo {
      display: flex;
      align-items: center;
      gap: 8px;
      font-size: calc(24px * var(--font-scale, 1)) ;
      font-weight: 800;
      text-decoration: none;
      color: var(--text-primary);
      font-family: 'Space Grotesk', sans-serif;
    }

    .logo-fixed {
      position: fixed;
      top: 26px;
      left: clamp(20px, 5vw, 6%);
      z-index: 120;
    }

    .logo span {
      background: linear-gradient(135deg, var(--text-primary) 30%, var(--accent) 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    .header-nav {
      display: flex;
      gap: 20px;
    }

    /* ── CYBER BUTTON NAV LINE WRAPPER ── */
    .btn-wrapper {
      position: relative;
      display: inline-block;
      overflow: visible;
    }

    .btn-wrapper .line {
      position: absolute;
      background: rgba(255, 255, 255, 0.04);
      transition: all 0.5s ease;
    }

    .btn-wrapper .line.horizontal {
      height: 1px;
      width: 100%;
      left: 0;
    }

    .btn-wrapper .line.vertical {
      width: 1px;
      height: 100%;
      top: 0;
    }

    .btn-wrapper .line.top { top: 0; }
    .btn-wrapper .line.bottom { bottom: 0; }
    .btn-wrapper .line.left { left: 0; }
    .btn-wrapper .line.right { right: 0; }

    .btn-wrapper:hover .line.top { background: var(--accent); box-shadow: 0 0 8px var(--accent-glow); }
    .btn-wrapper:hover .line.bottom { background: var(--accent); box-shadow: 0 0 8px var(--accent-glow); transition-delay: 0.2s; }
    .btn-wrapper:hover .line.right { background: var(--accent); box-shadow: 0 0 8px var(--accent-glow); transition-delay: 0.1s; }
    .btn-wrapper:hover .line.left { background: var(--accent); box-shadow: 0 0 8px var(--accent-glow); transition-delay: 0.3s; }

    .btn-wrapper .dot {
      position: absolute;
      width: 3px;
      height: 3px;
      background: var(--accent);
      border-radius: 50%;
      opacity: 0;
      transition: all 0.4s cubic-bezier(0.2, 0.8, 0.2, 1);
      box-shadow: 0 0 6px var(--accent);
    }

    .btn-wrapper .dot.top.left { top: 50%; left: 50%; transform: translate(-50%, -50%); }
    .btn-wrapper .dot.top.right { top: 50%; right: 50%; transform: translate(50%, -50%); }
    .btn-wrapper .dot.bottom.left { bottom: 50%; left: 50%; transform: translate(-50%, 50%); }
    .btn-wrapper .dot.bottom.right { bottom: 50%; right: 50%; transform: translate(50%, 50%); }

    .btn-wrapper:hover .dot { opacity: 1; }
    .btn-wrapper:hover .dot.top.left { top: 0; left: 0; }
    .btn-wrapper:hover .dot.top.right { top: 0; right: 0; }
    .btn-wrapper:hover .dot.bottom.left { bottom: 0; left: 0; }
    .btn-wrapper:hover .dot.bottom.right { bottom: 0; right: 0; }

    .nav-link {
      font-family: 'Space Grotesk', sans-serif;
      text-decoration: none;
      color: var(--text-secondary);
      font-size: calc(13px * var(--font-scale, 1)) ;
      font-weight: 700;
      letter-spacing: 0.1em;
      padding: 10px 20px;
      display: inline-block;
      text-transform: uppercase;
      transition: all 0.25s cubic-bezier(0.2, 0.8, 0.2, 1);
    }

    .nav-link:hover,
    .nav-link.active {
      color: var(--bg-primary);
      background-color: var(--accent);
      box-shadow: 0 0 15px var(--accent-glow);
    }

    /* ── PEARL BUTTON DESIGN ── */
    #loginBtn {
      --white: #ffe7ff;
      --bg: #080808;
      --radius: 100px;
      outline: none;
      cursor: pointer;
      border: 0;
      position: relative;
      border-radius: var(--radius);
      background-color: var(--bg);
      transition: all 0.2s ease;
      box-shadow:
        inset 0 0.3rem 0.9rem rgba(255, 255, 255, 0.15),
        inset 0 -0.1rem 0.3rem rgba(0, 0, 0, 0.7),
        inset 0 -0.4rem 0.9rem rgba(255, 255, 255, 0.2),
        0 1rem 1.5rem rgba(0, 0, 0, 0.4);
      margin-left: 10px;
    }

    #loginBtn .wrap {
      font-family: 'Space Grotesk', sans-serif;
      font-size: calc(11px * var(--font-scale, 1)) ;
      font-weight: 700;
      letter-spacing: 0.08em;
      color: rgba(255, 255, 255, 0.85);
      padding: 8px 20px;
      border-radius: inherit;
      position: relative;
      overflow: hidden;
    }

    #loginBtn .wrap p span:nth-child(2) { display: none; }
    #loginBtn:hover .wrap p span:nth-child(1) { display: none; }
    #loginBtn:hover .wrap p span:nth-child(2) { display: inline-block; color: var(--accent); }
    #loginBtn:hover { transform: translateY(-1px); box-shadow: 0 0 15px var(--accent-glow); }
    #loginBtn:active { transform: translateY(1px); }

    /* ── MAIN CONTENT CONTAINER ── */
    .main-container {
      max-width: 1400px;
      margin: 0 auto;
      padding: 140px clamp(20px, 5vw, 6%) 80px;
      min-height: calc(100vh - 120px);
      position: relative;
      z-index: 2;
    }

    /* ── GRID SITE FOOTER ── */
    .site-footer {
      border-top: 1px solid rgba(255, 255, 255, 0.03);
      background: rgba(4, 6, 18, 0.4);
      padding: 80px clamp(20px, 5vw, 6%) 40px;
      position: relative;
      z-index: 5;
      margin-top: 80px;
    }

    .footer-grid {
      max-width: 1200px;
      margin: 0 auto 50px;
      display: grid;
      grid-template-columns: minmax(0, 1.5fr) repeat(3, minmax(140px, 1fr));
      gap: 40px;
    }

    .footer-col {
      display: flex;
      flex-direction: column;
      gap: 20px;
    }

    .brand-col {
      padding-right: 40px;
    }

    .footer-logo {
      font-size: 1.5rem;
      margin-bottom: 5px;
    }

    .footer-brand-text {
      color: var(--text-muted);
      font-size: 13px;
      line-height: 1.6;
      font-family: 'Space Grotesk', sans-serif;
    }

    .footer-col-title {
      font-family: 'Orbitron', sans-serif;
      font-size: 13px;
      font-weight: 700;
      color: var(--text-primary);
      text-transform: uppercase;
      letter-spacing: 0.1em;
      margin: 0;
      padding-bottom: 5px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    }

    .footer-links-list {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-direction: column;
      gap: 12px;
    }

    .footer-links-list a {
      color: var(--text-secondary);
      text-decoration: none;
      font-family: 'Space Grotesk', sans-serif;
      font-size: 13px;
      font-weight: 500;
      transition: all 0.2s ease;
    }

    .footer-links-list a:hover {
      color: var(--accent);
      padding-left: 4px;
    }

    .footer-link-icon {
      margin-right: 8px;
      font-size: 13px;
      display: inline-block;
      transition: transform 0.22s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    }

    .footer-links-list a:hover .footer-link-icon {
      transform: scale(1.2) rotate(8deg);
    }

    .footer-bottom-bar {
      max-width: 1200px;
      margin: 0 auto;
      padding-top: 30px;
      border-top: 1px solid rgba(255, 255, 255, 0.04);
      display: flex;
      justify-content: center;
      align-items: center;
      color: var(--text-muted);
      font-size: 12px;
      text-align: center;
    }

    @media (max-width: 900px) {
      .footer-grid {
        grid-template-columns: 1fr;
        gap: 30px;
      }
      .brand-col {
        padding-right: 0;
        align-items: center;
        text-align: center;
      }
      .footer-col {
        align-items: center;
        text-align: center;
      }
      .footer-links-list {
        align-items: center;
      }
      .footer-col-title {
        width: 100%;
        max-width: 200px;
      }
      .footer-bottom-bar {
        flex-direction: column;
        gap: 12px;
        text-align: center;
      }
    }


    /* ── GAMES CATALOG SECTION ── */
    .games-section {
      margin-top: 2rem;
      animation: fadeIn 0.8s ease-out;
    }

    .section-header {
      display: flex;
      align-items: center;
      justify-content: space-between;
      margin-bottom: 2.5rem;
      border-bottom: 1px solid var(--border);
      padding-bottom: 12px;
    }

    .section-header-left {
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .section-accent {
      width: 4px;
      height: 20px;
      background: var(--accent);
      box-shadow: 0 0 8px var(--accent-glow);
      border-radius: 2px;
    }

    .section-title {
      font-family: 'Space Grotesk', sans-serif;
      font-size: clamp(1.25rem, 3vw, 1.75rem);
      font-weight: 700;
      color: var(--text-primary);
      text-transform: uppercase;
      letter-spacing: 0.05em;
    }

    .section-badge {
      padding: 4px 12px;
      background: var(--accent);
      color: var(--bg-primary);
      font-size: calc(10px * var(--font-scale, 1)) ;
      font-weight: 800;
      border-radius: 4px;
      letter-spacing: 0.05em;
      text-transform: uppercase;
    }

    .games-grid {
      display: grid;
      grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
      gap: 24px;
      justify-content: center;
    }
