/* roulang page: index */
:root {
      --primary-gradient: linear-gradient(135deg, #9333ea 0%, #db2777 100%);
      --card-bg-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.95) 0%, rgba(250, 245, 255, 0.9) 100%);
    }
    body {
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
      color: #1e1b2e;
      background-color: #faf7fc;
      overflow-x: hidden;
    }
    .hero-banner {
      background-image: linear-gradient(rgba(18, 11, 30, 0.78), rgba(88, 28, 135, 0.88)), url('/assets/images/17f56926f76cfd93.jpg');
      background-size: cover;
      background-position: center;
    }
    .drawer-nav {
      transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .card-shadow {
      box-shadow: 0 10px 30px -5px rgba(126, 34, 206, 0.12), 0 4px 10px -2px rgba(0, 0, 0, 0.05);
    }
    .badge-pill {
      background: linear-gradient(90deg, rgba(147, 51, 234, 0.15) 0%, rgba(219, 39, 119, 0.15) 100%);
      border: 1px solid rgba(192, 38, 211, 0.3);
    }

/* roulang page: article */
:root {
      --primary-gradient: linear-gradient(135deg, #9333ea 0%, #db2777 100%);
      --card-bg-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.95) 0%, rgba(250, 245, 255, 0.9) 100%);
    }
    body {
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
      color: #1e1b2e;
      background-color: #faf7fc;
      overflow-x: hidden;
    }
    .hero-article-bg {
      background-image: linear-gradient(rgba(18, 11, 30, 0.82), rgba(88, 28, 135, 0.9)), url('/assets/images/ed3bebf88ffec111.jpg');
      background-size: cover;
      background-position: center;
    }
    .drawer-nav {
      transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .card-shadow {
      box-shadow: 0 10px 30px -5px rgba(126, 34, 206, 0.12), 0 4px 10px -2px rgba(0, 0, 0, 0.05);
    }
    .card-shadow-hover {
      transition: all 0.3s ease;
    }
    .card-shadow-hover:hover {
      transform: translateY(-4px);
      box-shadow: 0 18px 35px -5px rgba(126, 34, 206, 0.2), 0 8px 16px -3px rgba(0, 0, 0, 0.08);
    }
    .badge-pill {
      background: linear-gradient(90deg, rgba(147, 51, 234, 0.15) 0%, rgba(219, 39, 119, 0.15) 100%);
      border: 1px solid rgba(192, 38, 211, 0.3);
    }
    .article-body-content {
      font-size: 1.125rem;
      line-height: 1.95;
      color: #374151;
    }
    .article-body-content p {
      margin-bottom: 1.75rem;
      text-align: justify;
    }
    .article-body-content h2 {
      font-size: 1.75rem;
      font-weight: 800;
      color: #111827;
      margin-top: 2.75rem;
      margin-bottom: 1.25rem;
      padding-bottom: 0.5rem;
      border-bottom: 2px solid #f3e8ff;
      display: flex;
      align-items: center;
      gap: 0.75rem;
    }
    .article-body-content h2::before {
      content: "";
      display: inline-block;
      width: 6px;
      height: 1.5rem;
      border-radius: 9999px;
      background: linear-gradient(135deg, #9333ea, #db2777);
    }
    .article-body-content h3 {
      font-size: 1.35rem;
      font-weight: 700;
      color: #1f2937;
      margin-top: 2rem;
      margin-bottom: 1rem;
    }
    .article-body-content ul, .article-body-content ol {
      margin-bottom: 1.75rem;
      padding-left: 1.75rem;
    }
    .article-body-content ul {
      list-style-type: disc;
    }
    .article-body-content ol {
      list-style-type: decimal;
    }
    .article-body-content li {
      margin-bottom: 0.65rem;
    }
    .article-body-content img {
      border-radius: 1rem;
      box-shadow: 0 10px 25px -5px rgba(0,0,0,0.1);
      margin: 2rem auto;
      max-width: 100%;
      height: auto;
    }
    .article-body-content blockquote {
      border-left: 4px solid #c084fc;
      background-color: #faf5ff;
      padding: 1.25rem 1.75rem;
      border-radius: 0 1rem 1rem 0;
      margin: 2rem 0;
      font-style: italic;
      color: #4b5563;
    }

/* roulang page: category1 */
:root {
      --primary-gradient: linear-gradient(135deg, #9333ea 0%, #db2777 100%);
      --card-bg-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.95) 0%, rgba(250, 245, 255, 0.9) 100%);
    }
    body {
      font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
      color: #1e1b2e;
      background-color: #faf7fc;
      overflow-x: hidden;
    }
    .hero-banner {
      background-image: linear-gradient(rgba(18, 11, 30, 0.82), rgba(88, 28, 135, 0.9)), url('/assets/images/17f56926f76cfd93.jpg');
      background-size: cover;
      background-position: center;
    }
    .drawer-nav {
      transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    }
    .card-shadow {
      box-shadow: 0 10px 30px -5px rgba(126, 34, 206, 0.12), 0 4px 10px -2px rgba(0, 0, 0, 0.05);
    }
    .badge-pill {
      background: linear-gradient(90deg, rgba(147, 51, 234, 0.15) 0%, rgba(219, 39, 119, 0.15) 100%);
      border: 1px solid rgba(192, 38, 211, 0.3);
    }
    .timeline-line::before {
      content: '';
      position: absolute;
      top: 1rem;
      bottom: 1rem;
      left: 1.25rem;
      width: 2px;
      background: linear-gradient(to bottom, #9333ea, #db2777, #e9d5ff);
    }
