/* roulang page: index */
:root {
      --primary: #0F2942;
      --primary-dark: #081726;
      --accent: #D97706;
      --accent-hover: #B45309;
      --bg-surface: #F8FAFC;
      --text-main: #1E293B;
      --text-muted: #64748B;
      --border-color: rgba(226, 232, 240, 0.85);
    }
    body {
      color: var(--text-main);
      background-color: #FFFFFF;
      font-family: system-ui, -apple-system, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
      text-rendering: optimizeLegibility;
      -webkit-font-smoothing: antialiased;
    }
    .hero-overlay {
      background: linear-gradient(135deg, rgba(8, 23, 38, 0.92) 0%, rgba(15, 41, 66, 0.82) 65%, rgba(15, 41, 66, 0.72) 100%);
    }
    .custom-card {
      transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
    }
    .custom-card:hover {
      transform: translateY(-4px);
      box-shadow: 0 16px 32px -8px rgba(15, 41, 66, 0.08);
      border-color: rgba(217, 119, 6, 0.35);
    }
    .glass-banner {
      background: rgba(255, 255, 255, 0.95);
      backdrop-filter: blur(12px);
    }
    details summary::-webkit-details-marker {
      display: none;
    }
    .table-check-mark {
      color: #059669;
      font-weight: 700;
    }
    .table-cross-mark {
      color: #94A3B8;
    }
