/* roulang page: index */
:root {
      --bg-main: #08090E;
      --card-main: #11131F;
      --border-glow: rgba(255, 255, 255, 0.08);
      --gradient-brand: linear-gradient(135deg, #7C3AED 0%, #EC4899 50%, #F43F5E 100%);
    }
    body {
      background-color: var(--bg-main);
      color: #F1F5F9;
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, PingFang SC, "Microsoft YaHei", sans-serif;
      overflow-x: hidden;
    }
    .brand-gradient-bg {
      background: linear-gradient(135deg, #7C3AED 0%, #EC4899 50%, #F43F5E 100%);
    }
    .brand-gradient-text {
      background: linear-gradient(135deg, #C084FC 0%, #F472B6 50%, #FB7185 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .card-border-glow {
      border: 1px solid rgba(255, 255, 255, 0.08);
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .card-border-glow:hover {
      border-color: rgba(236, 72, 153, 0.45);
      box-shadow: 0 20px 40px -15px rgba(124, 58, 237, 0.3);
      transform: translateY(-2px);
    }
    .badge-pulse {
      animation: pulse-dot 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    }
    @keyframes pulse-dot {
      0%, 100% { opacity: 1; }
      50% { opacity: 0.35; }
    }
    .hero-skew-band {
      clip-path: polygon(0 0, 100% 0, 100% 93%, 0 100%);
    }
    .section-clip-alt {
      clip-path: polygon(0 4%, 100% 0, 100% 96%, 0 100%);
    }
    /* Drawer overlay */
    #global-drawer {
      transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease;
    }
    #drawer-backdrop {
      transition: opacity 0.3s ease;
    }

/* roulang page: category1 */
:root {
      --bg-main: #08090E;
      --card-main: #11131F;
      --border-glow: rgba(255, 255, 255, 0.08);
      --gradient-brand: linear-gradient(135deg, #7C3AED 0%, #EC4899 50%, #F43F5E 100%);
    }
    body {
      background-color: var(--bg-main);
      color: #F1F5F9;
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, PingFang SC, "Microsoft YaHei", sans-serif;
      overflow-x: hidden;
    }
    .brand-gradient-bg {
      background: linear-gradient(135deg, #7C3AED 0%, #EC4899 50%, #F43F5E 100%);
    }
    .brand-gradient-text {
      background: linear-gradient(135deg, #C084FC 0%, #F472B6 50%, #FB7185 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .card-border-glow {
      border: 1px solid rgba(255, 255, 255, 0.08);
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .card-border-glow:hover {
      border-color: rgba(236, 72, 153, 0.45);
      box-shadow: 0 20px 40px -15px rgba(124, 58, 237, 0.3);
      transform: translateY(-2px);
    }
    .badge-pulse {
      animation: pulse-dot 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    }
    @keyframes pulse-dot {
      0%, 100% { opacity: 1; transform: scale(1); }
      50% { opacity: 0.4; transform: scale(0.85); }
    }
    #global-drawer {
      transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease;
    }
    #drawer-backdrop {
      transition: opacity 0.3s ease;
    }

/* roulang page: category2 */
:root {
      --bg-main: #08090E;
      --card-main: #11131F;
      --border-glow: rgba(255, 255, 255, 0.08);
      --gradient-brand: linear-gradient(135deg, #7C3AED 0%, #EC4899 50%, #F43F5E 100%);
    }
    body {
      background-color: var(--bg-main);
      color: #F1F5F9;
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, PingFang SC, "Microsoft YaHei", sans-serif;
      overflow-x: hidden;
    }
    .brand-gradient-bg {
      background: linear-gradient(135deg, #7C3AED 0%, #EC4899 50%, #F43F5E 100%);
    }
    .brand-gradient-text {
      background: linear-gradient(135deg, #C084FC 0%, #F472B6 50%, #FB7185 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }
    .card-border-glow {
      border: 1px solid rgba(255, 255, 255, 0.08);
      transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .card-border-glow:hover {
      border-color: rgba(236, 72, 153, 0.45);
      box-shadow: 0 20px 40px -15px rgba(124, 58, 237, 0.3);
      transform: translateY(-2px);
    }
    .badge-pulse {
      animation: pulse-dot 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
    }
    @keyframes pulse-dot {
      0%, 100% { opacity: 1; transform: scale(1); }
      50% { opacity: 0.4; transform: scale(0.92); }
    }
    #global-drawer {
      transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s ease;
    }
    #drawer-backdrop {
      transition: opacity 0.3s ease;
    }
    .slider-track {
      background: linear-gradient(90deg, #7C3AED, #EC4899);
    }
