/* roulang page: index */
:root {
      --bg-abyss: #070b14;
      --bg-titanium: #0d1527;
      --photon-blue: #00f0ff;
      --aurora-cyan: #0284c7;
      --text-high: #f8fafc;
      --text-mid: #94a3b8;
      --text-low: #64748b;
      --border-glow: rgba(0, 240, 255, 0.16);
      --glass-bg: rgba(13, 21, 39, 0.72);
    }
    body {
      background-color: var(--bg-abyss);
      color: var(--text-high);
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
      overflow-x: hidden;
    }
    .glass-panel {
      background: var(--glass-bg);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      border: 1px solid var(--border-glow);
    }
    .glass-panel-hover {
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .glass-panel-hover:hover {
      border-color: rgba(0, 240, 255, 0.45);
      box-shadow: 0 10px 30px -10px rgba(0, 240, 255, 0.2);
      transform: translateY(-2px);
    }
    .btn-photon {
      background: linear-gradient(135deg, #00f0ff 0%, #0284c7 100%);
      color: #070b14;
      font-weight: 600;
      box-shadow: 0 0 20px rgba(0, 240, 255, 0.38);
      transition: all 0.25s ease;
    }
    .btn-photon:hover {
      box-shadow: 0 0 30px rgba(0, 240, 255, 0.65);
      transform: scale(1.02);
    }
    .btn-outline-photon {
      background: rgba(0, 240, 255, 0.05);
      border: 1px solid rgba(0, 240, 255, 0.35);
      color: #00f0ff;
      transition: all 0.25s ease;
    }
    .btn-outline-photon:hover {
      background: rgba(0, 240, 255, 0.15);
      border-color: #00f0ff;
      box-shadow: 0 0 15px rgba(0, 240, 255, 0.3);
    }
    .tech-grid-pattern {
      background-image: radial-gradient(rgba(0, 240, 255, 0.1) 1px, transparent 0);
      background-size: 32px 32px;
    }
    .scan-line {
      position: absolute;
      top: 0; left: 0; right: 0; height: 2px;
      background: linear-gradient(90deg, transparent, #00f0ff, transparent);
      animation: scan 4s linear infinite;
    }
    @keyframes scan {
      0% { top: 0%; opacity: 0; }
      50% { opacity: 1; }
      100% { top: 100%; opacity: 0; }
    }
    details summary::-webkit-details-marker {
      display: none;
    }
