/* roulang page: index */
:root {
      --color-bg: #07090D;
      --color-surface-1: #0D1117;
      --color-surface-2: #161B26;
      --color-surface-3: #1F2636;
      --color-primary: #00D492;
      --color-primary-glow: rgba(0, 212, 146, 0.25);
      --color-amber: #F59E0B;
      --color-text: #E6EDF3;
      --color-text-muted: #8B949E;
      --color-border: rgba(255, 255, 255, 0.08);
      --color-border-hover: rgba(0, 212, 146, 0.4);
      --font-mono: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    }

    * {
      box-sizing: border-box;
      margin: 0;
      padding: 0;
    }

    body {
      background-color: var(--color-bg);
      color: var(--color-text);
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
      line-height: 1.6;
      overflow-x: hidden;
      scroll-behavior: smooth;
    }

    .font-mono-code {
      font-family: var(--font-mono);
    }

    .glass-nav {
      background: rgba(13, 17, 23, 0.85);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
    }

    .border-subtle {
      border: 1px solid var(--color-border);
    }

    .card-hover-fx {
      transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    }
    .card-hover-fx:hover {
      transform: translateY(-4px);
      border-color: var(--color-border-hover);
      box-shadow: 0 12px 30px -10px rgba(0, 212, 146, 0.15);
    }

    .glow-btn-primary {
      background: var(--color-primary);
      color: #07090D;
      font-weight: 600;
      transition: all 0.25s ease;
      box-shadow: 0 0 20px var(--color-primary-glow);
    }
    .glow-btn-primary:hover {
      background: #00ea9f;
      box-shadow: 0 0 28px rgba(0, 212, 146, 0.45);
      transform: translateY(-1px);
    }

    .accordion-content {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease-out, opacity 0.3s ease;
      opacity: 0;
    }
    .accordion-content.open {
      max-height: 260px;
      opacity: 1;
    }
    .accordion-icon {
      transition: transform 0.3s ease;
    }
    .accordion-icon.open {
      transform: rotate(180deg);
    }

    /* Terminal Window Custom Style */
    .terminal-window {
      background: #0b0f17;
      border: 1px solid rgba(0, 212, 146, 0.2);
      box-shadow: 0 20px 50px rgba(0, 0, 0, 0.7);
    }
