/* roulang page: index */
:root {
      --primary: #3B28CC;
      --primary-light: #6366F1;
      --accent: #F97316;
      --accent-hover: #EA580C;
      --text-dark: #0F172A;
      --text-body: #334155;
      --text-muted: #64748B;
      --border: #E2E8F0;
      --bg-light: #F8FAFC;
    }
    body {
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
      color: var(--text-body);
      background-color: #FFFFFF;
      overflow-x: hidden;
    }
    .brand-gradient {
      background: linear-gradient(135deg, #3B28CC 0%, #6366F1 100%);
    }
    .brand-gradient-text {
      background: linear-gradient(135deg, #3B28CC 0%, #6366F1 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .card-shadow {
      box-shadow: 0 10px 25px -5px rgba(59, 40, 204, 0.06), 0 8px 10px -6px rgba(0, 0, 0, 0.04);
      transition: all 0.3s ease;
    }
    .card-shadow:hover {
      box-shadow: 0 20px 35px -8px rgba(59, 40, 204, 0.12), 0 12px 16px -6px rgba(0, 0, 0, 0.06);
      transform: translateY(-4px);
    }
    .floating-bar {
      transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.35s ease;
    }
    .floating-bar.hidden-bar {
      transform: translateY(120%);
      opacity: 0;
      pointer-events: none;
    }
    .floating-bar.visible-bar {
      transform: translateY(0);
      opacity: 1;
      pointer-events: auto;
    }
    details summary::-webkit-details-marker {
      display: none;
    }
