/* roulang page: index */
:root {
      --bg-dark: #060B16;
      --accent-cyan: #00F0FF;
      --accent-green: #00FF88;
    }
    body {
      background-color: var(--bg-dark);
      color: #F8FAFC;
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
      overflow-x: hidden;
    }
    /* 玻璃拟态基础边框与反光 */
    .glass-box {
      background: rgba(15, 23, 42, 0.75);
      backdrop-filter: blur(16px);
      -webkit-backdrop-filter: blur(16px);
      border: 1px solid rgba(255, 255, 255, 0.08);
      border-top: 1px solid rgba(0, 240, 255, 0.25);
    }
    .glass-box-hover {
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .glass-box-hover:hover {
      border-color: rgba(0, 240, 255, 0.45);
      transform: translateY(-3px);
      box-shadow: 0 12px 35px rgba(0, 240, 255, 0.15);
    }
    /* 脉冲光效 */
    @keyframes pulseDot {
      0%, 100% { transform: scale(1); opacity: 1; }
      50% { transform: scale(1.4); opacity: 0.6; }
    }
    .dot-pulse {
      animation: pulseDot 2s infinite ease-in-out;
    }
    /* 隐藏滚动条 */
    .no-scrollbar::-webkit-scrollbar {
      display: none;
    }
    .no-scrollbar {
      -ms-overflow-style: none;
      scrollbar-width: none;
    }
