/* roulang page: index */
:root {
            --brand-primary: #0F2A3F;
            --brand-accent: #00D285;
            --brand-bg: #FFFFFF;
            --brand-card-bg: #F8FAFC;
            --text-heading: #0F172A;
            --text-body: #475569;
            --text-muted: #94A3B8;
            --border-light: #E2E8F0;
        }
        body {
            font-family: var(--font-sans, system-ui, -apple-system, sans-serif);
            color: var(--text-body);
            background-color: var(--brand-bg);
            -webkit-font-smoothing: antialiased;
        }
        .text-balanced {
            max-width: 44rem;
        }
        .code-pill {
            font-family: var(--font-mono, monospace);
        }
        .transition-standard {
            transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
        }
        .glow-border:hover {
            border-color: rgba(0, 210, 133, 0.6);
            box-shadow: 0 4px 20px -2px rgba(0, 210, 133, 0.15);
            transform: translateY(-2px);
        }
        details summary::-webkit-details-marker {
            display: none;
        }

/* roulang page: category1 */
:root {
      --brand-primary: #0F2A3F;
      --brand-accent: #00D285;
      --brand-bg: #FFFFFF;
      --brand-card-bg: #F8FAFC;
      --text-heading: #0F172A;
      --text-body: #475569;
      --text-muted: #94A3B8;
      --border-light: #E2E8F0;
    }
    body {
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
      color: var(--text-body);
      background-color: var(--brand-bg);
      -webkit-font-smoothing: antialiased;
    }
    .text-balanced {
      max-width: 44rem;
    }
    .code-pill {
      font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
    }
    .glow-border {
      transition: all 0.30s ease-out;
    }
    .glow-border:hover {
      border-color: rgba(0, 210, 133, 0.6);
      box-shadow: 0 4px 20px -2px rgba(0, 210, 133, 0.15);
      transform: translateY(-2px);
    }
    details summary::-webkit-details-marker {
      display: none;
    }

/* roulang page: category2 */
:root {
      --brand-primary: #0F2A3F;
      --brand-accent: #00D285;
      --brand-bg: #FFFFFF;
      --brand-card-bg: #F8FAFC;
      --text-heading: #0F172A;
      --text-body: #475569;
      --text-muted: #94A3B8;
      --border-light: #E2E8F0;
    }
    body {
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
      color: var(--text-body);
      background-color: var(--brand-bg);
      -webkit-font-smoothing: antialiased;
    }
    .text-balanced {
      max-width: 44rem;
    }
    .code-pill {
      font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
    }
    .glow-border:hover {
      border-color: rgba(0, 210, 133, 0.6);
      box-shadow: 0 4px 20px -2px rgba(0, 210, 133, 0.15);
      transform: translateY(-2px);
    }
    .transition-standard {
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    details summary::-webkit-details-marker {
      display: none;
    }

/* roulang page: category4 */
:root {
      --brand-primary: #0F2A3F;
      --brand-accent: #00D285;
      --brand-bg: #FFFFFF;
      --brand-card-bg: #F8FAFC;
      --text-heading: #0F172A;
      --text-body: #475569;
      --text-muted: #94A3B8;
      --border-light: #E2E8F0;
    }
    body {
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
      color: var(--text-body);
      background-color: var(--brand-bg);
      -webkit-font-smoothing: antialiased;
    }
    .font-mono-tech {
      font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
    }
    .text-balanced {
      max-width: 44rem;
    }
    .glow-border:hover {
      border-color: rgba(0, 210, 133, 0.6);
      box-shadow: 0 4px 20px -2px rgba(0, 210, 133, 0.15);
      transform: translateY(-2px);
    }
    .transition-standard {
      transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    }
    details summary::-webkit-details-marker {
      display: none;
    }

/* roulang page: category3 */
:root {
      --brand-primary: #0F2A3F;
      --brand-accent: #00D285;
      --brand-bg: #FFFFFF;
      --brand-card-bg: #F8FAFC;
      --text-heading: #0F172A;
      --text-body: #475569;
      --text-muted: #94A3B8;
      --border-light: #E2E8F0;
    }
    body {
      font-family: system-ui, -apple-system, "PingFang SC", "Microsoft YaHei", "Noto Sans SC", sans-serif;
      color: var(--text-body);
      background-color: var(--brand-bg);
      -webkit-font-smoothing: antialiased;
    }
    .text-balanced {
      max-width: 44rem;
    }
    .code-pill {
      font-family: ui-monospace, "SF Mono", Menlo, Consolas, monospace;
    }
    .glow-border {
      transition: all 0.3s ease-out;
    }
    .glow-border:hover {
      border-color: rgba(0, 210, 133, 0.6);
      box-shadow: 0 10px 25px -5px rgba(0, 210, 133, 0.15);
      transform: translateY(-2px);
    }
    .coupon-ticket {
      position: relative;
      background: radial-gradient(circle at left, transparent 10px, #0F2A3F 11px) left,
                  radial-gradient(circle at right, transparent 10px, #0F2A3F 11px) right;
      background-size: 51% 100%;
      background-repeat: no-repeat;
    }
    .coupon-dash {
      border-left: 2px dashed rgba(255, 255, 255, 0.25);
    }
    details summary::-webkit-details-marker {
      display: none;
    }
    details summary {
      list-style: none;
    }
