/* roulang page: index */
:root {
      --brand-dark: #1E232A;
      --brand-carbon: #0F1216;
      --brand-cyan: #0EA5E9;
      --brand-amber: #F59E0B;
      --bg-gray: #F8F9FA;
      --text-main: #1F2937;
      --text-muted: #64748B;
      --border-color: #E2E8F0;
    }
    html {
      scroll-behavior: smooth;
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;
    }
    body {
      color: var(--text-main);
      background-color: #FFFFFF;
      overflow-x: hidden;
      line-height: 1.65;
    }
    .custom-container {
      width: 100%;
      max-width: 1280px;
      margin-left: auto;
      margin-right: auto;
      padding-left: 1.25rem;
      padding-right: 1.25rem;
    }
    .status-pulse {
      animation: pulseDot 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    }
    @keyframes pulseDot {
      0%, 100% { opacity: 1; transform: scale(1); }
      50% { opacity: 0.4; transform: scale(0.85); }
    }
    details summary::-webkit-details-marker {
      display: none;
    }
    .card-hover {
      transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
    }
    .card-hover:hover {
      transform: translateY(-4px);
      box-shadow: 0 12px 24px -10px rgba(15, 23, 42, 0.12);
    }
