/* roulang page: index */
:root{
      --bg:#100d12;
      --bg-soft:#18121a;
      --panel:#211724;
      --panel-2:#2a1b2d;
      --panel-3:#322037;
      --text:#fff6ef;
      --muted:#b8a7ad;
      --muted-2:#8f7d84;
      --accent:#ff6b8a;
      --accent-2:#ff8a3d;
      --accent-3:#ffc15a;
      --violet:#d946ef;
      --rose:#fb7185;
      --line:rgba(255,138,61,.18);
      --line-strong:rgba(255,107,138,.42);
      --shadow:0 24px 80px rgba(255,107,138,.13),0 8px 28px rgba(0,0,0,.35);
      --shadow-soft:0 18px 54px rgba(0,0,0,.28);
      --radius:28px;
      --radius-sm:18px;
      --container:1220px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      min-height:100vh;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 15% 10%, rgba(255,107,138,.16), transparent 34%),
        radial-gradient(circle at 82% 18%, rgba(217,70,239,.13), transparent 30%),
        radial-gradient(circle at 55% 88%, rgba(255,138,61,.13), transparent 36%),
        linear-gradient(180deg,#100d12 0%,#161019 45%,#0f0c11 100%);
      line-height:1.7;
      padding-bottom:92px;
      overflow-x:hidden;
    }
    body::before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      opacity:.08;
      z-index:-2;
      background-image:
        linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);
      background-size:44px 44px;
      mask-image:linear-gradient(to bottom, black, transparent 78%);
    }
    body::after{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      z-index:-1;
      opacity:.12;
      background:
        repeating-radial-gradient(circle at 30% 20%, rgba(255,255,255,.35) 0 1px, transparent 1px 7px);
      mix-blend-mode:screen;
    }
    a{color:inherit;text-decoration:none}
    button,input,select,textarea{font:inherit}
    button{border:0;cursor:pointer}
    img,svg{display:block;max-width:100%}
    .site-container{width:min(100% - 40px,var(--container));margin-inline:auto}
    .neon-line{
      position:absolute;
      left:0;right:0;bottom:0;height:1px;
      background:linear-gradient(90deg,transparent,var(--accent),var(--accent-2),var(--accent-3),transparent);
      box-shadow:0 0 24px rgba(255,107,138,.35);
    }
    .topbar{
      position:sticky;top:0;z-index:50;
      background:rgba(16,13,18,.86);
      backdrop-filter:blur(18px);
      border-bottom:1px solid rgba(255,255,255,.05);
    }
    .nav-wrap{height:74px;display:flex;align-items:center;justify-content:space-between;gap:18px;position:relative}
    .brand{display:flex;align-items:center;gap:12px;min-width:max-content}
    .brand-mark{
      width:42px;height:42px;border-radius:999px;
      background:radial-gradient(circle at 35% 30%, #fff2c8 0 10%, var(--accent-3) 11% 22%, var(--accent-2) 23% 42%, var(--accent) 43% 63%, rgba(217,70,239,.45) 64% 100%);
      box-shadow:0 0 28px rgba(255,107,138,.38);
      position:relative;
      overflow:hidden;
    }
    .brand-mark::before,.brand-mark::after{
      content:"";position:absolute;inset:10px;border-radius:999px;border:1px solid rgba(16,13,18,.55);
    }
    .brand-mark::after{inset:17px;background:rgba(16,13,18,.72);border:0}
    .brand-text{font-weight:900;letter-spacing:-.02em;font-size:18px;color:#fff7ee;white-space:nowrap}
    .desktop-nav{display:flex;align-items:center;gap:8px}
    .nav-link{
      position:relative;
      padding:10px 14px;
      border-radius:999px;
      color:var(--muted);
      font-size:15px;
      transition:transform .25s ease,color .25s ease,background .25s ease,text-shadow .25s ease;
    }
    .nav-link:hover{color:#fff4e8;background:rgba(255,255,255,.045);transform:translateY(-1px)}
    .nav-link.active{color:var(--accent-3);text-shadow:0 0 18px rgba(255,193,90,.36)}
    .nav-link.active::after{
      content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:3px;width:24px;height:2px;border-radius:999px;
      background:linear-gradient(90deg,var(--accent),var(--accent-3));
      box-shadow:0 0 14px rgba(255,107,138,.65);
    }
    .nav-cta,.btn-primary{
      display:inline-flex;align-items:center;justify-content:center;gap:8px;
      min-height:48px;padding:0 20px;border-radius:999px;
      color:#170d10;font-weight:850;
      background:linear-gradient(135deg,var(--accent),var(--accent-2) 52%,var(--accent-3));
      box-shadow:0 14px 34px rgba(255,107,138,.25), inset 0 1px 0 rgba(255,255,255,.34);
      transition:transform .25s ease,filter .25s ease,box-shadow .25s ease;
    }
    .nav-cta:hover,.btn-primary:hover{transform:translateY(-2px);filter:brightness(1.07);box-shadow:0 20px 48px rgba(255,107,138,.34)}
    .btn-secondary{
      display:inline-flex;align-items:center;justify-content:center;gap:8px;
      min-height:48px;padding:0 20px;border-radius:999px;
      color:#fff0e8;font-weight:800;
      background:rgba(255,255,255,.035);
      border:1px solid rgba(255,138,61,.32);
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.025),0 0 24px rgba(255,107,138,.08);
      transition:transform .25s ease,background .25s ease,border-color .25s ease,box-shadow .25s ease;
    }
    .btn-secondary:hover{transform:translateY(-2px);background:rgba(255,107,138,.08);border-color:rgba(255,193,90,.52);box-shadow:0 18px 42px rgba(255,107,138,.16)}
    .btn-primary:focus,.btn-secondary:focus,.nav-link:focus,.mobile-toggle:focus,input:focus,summary:focus{outline:3px solid rgba(255,193,90,.45);outline-offset:3px}
    .mobile-toggle{
      display:none;width:46px;height:46px;border-radius:16px;
      background:rgba(255,255,255,.05);border:1px solid rgba(255,138,61,.2);
      color:#fff1e8;align-items:center;justify-content:center;
    }
    .mobile-menu{
      display:none;padding:12px 0 18px;border-top:1px solid rgba(255,138,61,.14);
      background:rgba(16,13,18,.96);
    }
    .mobile-menu.open{display:block}
    .mobile-menu .nav-link{display:flex;margin:8px 0;padding:12px 14px}
    .section{padding:96px 0;position:relative}
    .section-tight{padding:72px 0}
    .section-head{display:flex;align-items:end;justify-content:space-between;gap:28px;margin-bottom:30px}
    .eyebrow{
      display:inline-flex;align-items:center;gap:8px;
      padding:6px 12px;border-radius:999px;
      color:var(--accent-3);font-weight:850;font-size:13px;
      background:rgba(255,193,90,.08);border:1px solid rgba(255,193,90,.2);
    }
    .eyebrow::before{content:"";width:7px;height:7px;border-radius:99px;background:var(--accent);box-shadow:0 0 14px var(--accent)}
    h1,h2,h3{margin:0;line-height:1.12;letter-spacing:-.04em}
    h1{font-size:clamp(36px,6vw,66px);font-weight:950}
    h2{font-size:clamp(28px,4vw,42px);font-weight:900}
    h3{font-size:22px;font-weight:850}
    p{margin:0;color:var(--muted)}
    .hero{
      padding:72px 0 86px;
      position:relative;
      overflow:hidden;
    }
    .hero::before{
      content:"";position:absolute;inset:0;z-index:-1;
      background:
        radial-gradient(circle at 24% 24%, rgba(255,107,138,.28), transparent 28%),
        radial-gradient(circle at 70% 18%, rgba(255,193,90,.12), transparent 22%),
        linear-gradient(135deg,rgba(33,23,36,.76),rgba(16,13,18,.2));
    }
    .hero-stage{
      border:1px solid rgba(255,138,61,.2);
      border-radius:36px;
      background:linear-gradient(135deg,rgba(33,23,36,.88),rgba(24,18,26,.7));
      box-shadow:var(--shadow);
      overflow:hidden;
      position:relative;
      padding:34px;
    }
    .hero-stage::after{
      content:"";position:absolute;right:-120px;top:-140px;width:420px;height:420px;border-radius:999px;
      background:radial-gradient(circle,rgba(255,107,138,.26),transparent 62%);
      filter:blur(8px);
    }
    .invite-hero{
      display:grid;
      grid-template-columns:1.12fr .88fr;
      gap:28px;
      align-items:stretch;
      position:relative;
      z-index:1;
    }
    .hero-copy{
      min-height:520px;
      display:flex;
      flex-direction:column;
      justify-content:center;
      padding:22px 8px;
    }
    .hero-copy .lead{
      margin-top:20px;
      max-width:760px;
      color:#d6c4c8;
      font-size:18px;
      line-height:1.85;
    }
    .cta-row{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
    .data-points{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
    .data-pill{
      display:flex;align-items:center;gap:8px;
      padding:10px 13px;border-radius:999px;
      color:#fff0e8;font-weight:750;font-size:14px;
      background:rgba(255,255,255,.045);
      border:1px solid rgba(255,138,61,.16);
    }
    .age-note{
      margin-top:24px;
      display:flex;align-items:flex-start;gap:10px;
      padding:13px 15px;border-radius:20px;
      color:#ffe0b1;background:rgba(255,193,90,.08);
      border:1px solid rgba(255,193,90,.22);
      max-width:690px;font-size:14px;
    }
    .invite-panel{
      display:flex;flex-direction:column;justify-content:space-between;
      border-radius:30px;
      background:
        linear-gradient(180deg,rgba(42,27,45,.92),rgba(28,20,31,.86)),
        radial-gradient(circle at 50% 0,rgba(255,107,138,.16),transparent 52%);
      border:1px solid rgba(255,138,61,.24);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 20px 70px rgba(0,0,0,.28);
      padding:24px;
      position:relative;
      overflow:hidden;
    }
    .invite-panel::before{
      content:"";position:absolute;inset:18px;opacity:.22;pointer-events:none;
      background:
        linear-gradient(90deg,transparent 0 8%,rgba(255,107,138,.5) 8% 9%,transparent 9% 17%,rgba(255,193,90,.45) 17% 18%,transparent 18% 100%);
      background-size:80px 120px;
      mask-image:linear-gradient(to bottom,transparent,black 22%,transparent 86%);
    }
    .panel-top,.panel-bottom{position:relative;z-index:1}
    .reward-card{
      padding:18px;border-radius:24px;
      background:rgba(255,255,255,.05);
      border:1px solid rgba(255,255,255,.08);
    }
    .progress-track{
      height:13px;border-radius:999px;
      background:rgba(255,255,255,.08);
      overflow:hidden;margin:16px 0 10px;
      border:1px solid rgba(255,255,255,.06);
    }
    .progress-bar{
      height:100%;width:68%;
      border-radius:999px;
      background:linear-gradient(90deg,var(--accent),var(--accent-2),var(--accent-3));
      box-shadow:0 0 22px rgba(255,107,138,.55);
    }
    .entry-grid{
      display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px;
    }
    .entry-tile{
      padding:14px;border-radius:20px;
      background:rgba(16,13,18,.48);
      border:1px solid rgba(255,138,61,.18);
      transition:transform .25s ease,border-color .25s ease,background .25s ease;
    }
    .entry-tile:hover{transform:translateY(-3px);border-color:rgba(255,193,90,.42);background:rgba(255,107,138,.075)}
    .wave-mini{
      display:flex;align-items:end;gap:3px;height:28px;margin-top:10px;
    }
    .wave-mini span{
      width:4px;border-radius:999px;background:linear-gradient(var(--accent-3),var(--accent));
      opacity:.8;
    }
    .feature-band{
      display:grid;grid-template-columns:1fr 1.05fr;gap:26px;align-items:center;
    }
    .feature-copy{padding-right:16px}
    .feature-copy p{margin-top:16px;font-size:17px;max-width:650px}
    .steps{
      display:grid;gap:14px;
    }
    .step-card,.glow-card,.bubble,.info-card,.faq-item{
      border:1px solid var(--line);
      background:linear-gradient(180deg,rgba(33,23,36,.88),rgba(24,18,26,.76));
      box-shadow:var(--shadow-soft);
      transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease;
    }
    .step-card{
      display:grid;grid-template-columns:auto 1fr auto;gap:15px;align-items:center;
      padding:18px;border-radius:24px;
    }
    .step-card:hover,.glow-card:hover,.info-card:hover{transform:translateY(-3px);border-color:rgba(255,193,90,.42);box-shadow:var(--shadow)}
    .step-no{
      width:42px;height:42px;border-radius:16px;display:grid;place-items:center;
      font-weight:950;color:#1a0d10;
      background:linear-gradient(135deg,var(--accent),var(--accent-3));
      box-shadow:0 0 24px rgba(255,107,138,.22);
    }
    .tag-row{display:flex;flex-wrap:wrap;gap:10px}
    .tag{
      display:inline-flex;align-items:center;gap:6px;
      min-height:32px;padding:5px 11px;border-radius:999px;
      color:#ffe8dc;font-size:13px;font-weight:760;
      background:rgba(255,107,138,.08);
      border:1px solid rgba(255,138,61,.18);
    }
    .tag.alt{background:rgba(255,193,90,.08);border-color:rgba(255,193,90,.18);color:#ffe4ad}
    .benefit-wrap{
      display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:start;
    }
    .benefit-card{
      min-height:220px;border-radius:28px;padding:24px;position:relative;overflow:hidden;
    }
    .benefit-card:nth-child(2){margin-top:28px}
    .benefit-card:nth-child(3){margin-top:56px}
    .benefit-card::before{
      content:"";position:absolute;left:22px;right:22px;top:0;height:3px;border-radius:999px;
      background:linear-gradient(90deg,var(--accent),var(--accent-3),transparent);
      box-shadow:0 0 18px rgba(255,107,138,.5);
    }
    .benefit-card p{margin-top:12px}
    .icon-dot{
      width:48px;height:48px;border-radius:18px;margin-bottom:18px;
      display:grid;place-items:center;color:#211014;font-weight:950;
      background:linear-gradient(135deg,var(--accent),var(--accent-3));
      box-shadow:0 0 24px rgba(255,107,138,.25);
    }
    .timeline{
      position:relative;
      display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;
    }
    .timeline::before{
      content:"";position:absolute;left:8%;right:8%;top:46px;height:1px;
      background:linear-gradient(90deg,transparent,var(--accent),var(--accent-3),transparent);
      opacity:.6;
    }
    .time-node{
      position:relative;z-index:1;
      padding:20px;border-radius:26px;
      background:rgba(33,23,36,.78);
      border:1px solid rgba(255,138,61,.17);
    }
    .time-point{
      width:52px;height:52px;border-radius:999px;
      display:grid;place-items:center;margin-bottom:14px;
      background:rgba(255,107,138,.1);
      border:1px solid rgba(255,107,138,.28);
      box-shadow:0 0 22px rgba(255,107,138,.18);
      font-weight:900;color:var(--accent-3);
    }
    .proof-grid{
      display:grid;grid-template-columns:.88fr 1.12fr;gap:24px;align-items:start;
    }
    .summary-card{
      border-radius:32px;padding:28px;
      background:
        radial-gradient(circle at 20% 10%,rgba(255,107,138,.18),transparent 42%),
        linear-gradient(180deg,rgba(42,27,45,.9),rgba(24,18,26,.78));
      border:1px solid rgba(255,138,61,.22);
      box-shadow:var(--shadow);
    }
    .avatar-stack{display:flex;align-items:center;margin-top:22px}
    .avatar{
      width:46px;height:46px;border-radius:999px;margin-left:-10px;
      border:2px solid rgba(16,13,18,.9);
      display:grid;place-items:center;font-weight:900;color:#fff7ee;
      box-shadow:0 8px 22px rgba(0,0,0,.22);
      background:linear-gradient(135deg,var(--accent),var(--violet));
    }
    .avatar:first-child{margin-left:0}
    .avatar:nth-child(2){background:linear-gradient(135deg,var(--accent-2),var(--accent-3))}
    .avatar:nth-child(3){background:linear-gradient(135deg,#fb7185,#f472b6)}
    .avatar:nth-child(4){background:linear-gradient(135deg,#c084fc,#ff8a3d)}
    .avatar:nth-child(5){background:linear-gradient(135deg,#ffc15a,#ff6b8a)}
    .bubble-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
    .bubble{
      position:relative;border-radius:26px;padding:20px;
      background:rgba(33,23,36,.82);
    }
    .bubble::after{
      content:"";position:absolute;left:24px;bottom:-8px;width:16px;height:16px;
      background:inherit;border-right:1px solid var(--line);border-bottom:1px solid var(--line);
      transform:rotate(45deg);
    }
    .bubble strong{display:block;margin-bottom:8px;color:#fff6ef}
    .news-layout{
      display:grid;grid-template-columns:1.25fr .75fr;gap:24px;
    }
    .news-list{display:grid;gap:12px}
    .news-link{
      display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;
      padding:16px 18px;border-radius:22px;
      background:rgba(33,23,36,.7);
      border:1px solid rgba(255,138,61,.14);
      transition:transform .25s ease,border-color .25s ease,background .25s ease;
    }
    .news-link:hover{transform:translateX(4px);border-color:rgba(255,193,90,.36);background:rgba(255,107,138,.07)}
    .news-date{color:var(--accent-3);font-weight:850;font-size:13px;white-space:nowrap}
    .recommend-box{border-radius:30px;padding:24px;background:linear-gradient(180deg,rgba(42,27,45,.86),rgba(24,18,26,.78));border:1px solid rgba(255,138,61,.18)}
    .guide-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:24px}
    .screenshot-stage{
      min-height:420px;border-radius:34px;padding:24px;
      background:
        radial-gradient(circle at 75% 20%,rgba(255,193,90,.13),transparent 36%),
        linear-gradient(135deg,rgba(42,27,45,.9),rgba(20,14,22,.84));
      border:1px solid rgba(255,138,61,.2);
      box-shadow:var(--shadow);
      position:relative;overflow:hidden;
    }
    .screen-card{
      position:absolute;border-radius:26px;padding:18px;
      background:rgba(16,13,18,.62);
      border:1px solid rgba(255,255,255,.08);
      box-shadow:0 18px 50px rgba(0,0,0,.28);
    }
    .screen-card.one{left:28px;top:34px;width:62%}
    .screen-card.two{right:26px;bottom:34px;width:58%}
    .screen-card.three{right:42px;top:44px;width:34%}
    .form-zone{
      display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;align-items:center;
      border-radius:36px;padding:32px;
      background:
        radial-gradient(circle at 12% 16%,rgba(255,107,138,.18),transparent 34%),
        linear-gradient(135deg,rgba(42,27,45,.9),rgba(24,18,26,.78));
      border:1px solid rgba(255,138,61,.22);
      box-shadow:var(--shadow);
    }
    .lead-form{display:grid;gap:14px}
    .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    .input{
      width:100%;min-height:52px;border-radius:18px;
      border:1px solid rgba(255,138,61,.18);
      background:rgba(16,13,18,.58);
      color:#fff6ef;padding:0 16px;
      transition:border-color .25s ease,box-shadow .25s ease,background .25s ease;
    }
    .input::placeholder{color:#8f7d84}
    .input:focus{border-color:rgba(255,193,90,.6);box-shadow:0 0 0 4px rgba(255,193,90,.11);background:rgba(16,13,18,.76)}
    .faq-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px}
    .faq-list{display:grid;gap:12px}
    .faq-item{border-radius:22px;overflow:hidden}
    .faq-item summary{
      list-style:none;cursor:pointer;padding:18px 20px;
      font-weight:850;color:#fff5ee;
      display:flex;align-items:center;justify-content:space-between;gap:18px;
      transition:background .25s ease,color .25s ease;
    }
    .faq-item summary::-webkit-details-marker{display:none}
    .faq-item summary::after{content:"＋";color:var(--accent-3);font-weight:900}
    .faq-item[open] summary{background:rgba(255,107,138,.07);color:var(--accent-3)}
    .faq-item[open] summary::after{content:"－"}
    .faq-item p{padding:0 20px 20px 22px;border-left:2px solid rgba(255,107,138,.65);margin-left:20px;margin-bottom:18px}
    .trial-cta{
      border-radius:38px;padding:34px;
      background:
        radial-gradient(circle at 80% 20%,rgba(255,193,90,.18),transparent 34%),
        linear-gradient(135deg,rgba(255,107,138,.15),rgba(42,27,45,.72) 42%,rgba(16,13,18,.9));
      border:1px solid rgba(255,138,61,.26);
      box-shadow:var(--shadow);
      display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;
    }
    .fixed-cta{
      position:fixed;left:0;right:0;bottom:0;z-index:60;
      background:rgba(16,13,18,.9);
      backdrop-filter:blur(18px);
      border-top:1px solid rgba(255,138,61,.22);
      box-shadow:0 -18px 60px rgba(0,0,0,.4);
    }
    .fixed-cta::before{
      content:"";position:absolute;left:0;right:0;top:0;height:1px;
      background:linear-gradient(90deg,transparent,var(--accent),var(--accent-2),var(--accent-3),transparent);
      box-shadow:0 0 20px rgba(255,107,138,.42);
    }
    .fixed-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px}
    .footer{
      padding:54px 0 38px;
      background:linear-gradient(180deg,rgba(16,13,18,.18),rgba(10,8,11,.8));
      border-top:1px solid rgba(255,138,61,.12);
    }
    .footer-grid{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:start}
    .footer-links{display:flex;flex-wrap:wrap;gap:14px}
    .footer-links a{color:var(--muted);transition:color .25s ease}
    .footer-links a:hover{color:var(--accent-3)}
    .footer-wave{height:22px;display:flex;align-items:center;gap:4px;margin-top:22px;opacity:.7}
    .footer-wave span{width:5px;border-radius:999px;background:linear-gradient(var(--accent),var(--accent-3))}
    @media (max-width:1024px){
      .desktop-nav,.nav-cta{display:none}
      .mobile-toggle{display:flex}
      .invite-hero,.feature-band,.proof-grid,.news-layout,.guide-grid,.form-zone,.faq-grid,.trial-cta{grid-template-columns:1fr}
      .hero-copy{min-height:auto}
      .benefit-wrap{grid-template-columns:1fr}
      .benefit-card:nth-child(2),.benefit-card:nth-child(3){margin-top:0}
      .timeline{grid-template-columns:1fr 1fr}
      .timeline::before{display:none}
      .section-head{align-items:flex-start;flex-direction:column}
    }
    @media (max-width:768px){
      body{padding-bottom:112px}
      .site-container{width:min(100% - 32px,var(--container))}
      .nav-wrap{height:64px}
      .brand-text{font-size:16px;max-width:220px;overflow:hidden;text-overflow:ellipsis}
      .hero{padding:38px 0 62px}
      .hero-stage{padding:20px;border-radius:28px}
      .hero-copy .lead{font-size:16px}
      .entry-grid,.bubble-grid,.timeline,.form-row{grid-template-columns:1fr}
      .section{padding:66px 0}
      .section-tight{padding:56px 0}
      .step-card{grid-template-columns:auto 1fr}
      .step-card .tag{grid-column:1 / -1;width:max-content}
      .screen-card{position:relative!important;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:100%!important;margin-bottom:14px}
      .screenshot-stage{min-height:auto}
      .news-link{grid-template-columns:1fr}
      .fixed-inner{min-height:96px;align-items:stretch;flex-direction:column;justify-content:center;padding:10px 0}
      .fixed-inner .btn-primary{width:100%;min-height:46px}
      .footer-grid{grid-template-columns:1fr}
    }
    @media (max-width:520px){
      .cta-row .btn-primary,.cta-row .btn-secondary{width:100%}
      .data-points{display:grid;grid-template-columns:1fr}
      .trial-cta,.form-zone{padding:22px;border-radius:28px}
      .invite-panel{padding:18px}
    }

/* roulang page: category2 */
:root{
      --bg:#100d12;
      --bg-soft:#18121a;
      --panel:#211724;
      --panel-2:#2a1b2d;
      --panel-3:#321f31;
      --text:#fff6ef;
      --muted:#b8a7ad;
      --muted-2:#8f7f86;
      --accent:#ff6b8a;
      --accent-2:#ff8a3d;
      --accent-3:#ffc15a;
      --violet:#d946ef;
      --line:rgba(255,138,61,.18);
      --line-strong:rgba(255,107,138,.42);
      --shadow:0 24px 80px rgba(255,91,112,.12),0 18px 48px rgba(0,0,0,.42);
      --radius:28px;
      --radius-sm:18px;
      --container:1200px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      min-height:100vh;
      padding-bottom:82px;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 12% 10%,rgba(255,107,138,.18),transparent 28%),
        radial-gradient(circle at 88% 18%,rgba(217,70,239,.12),transparent 30%),
        radial-gradient(circle at 50% 85%,rgba(255,138,61,.10),transparent 34%),
        linear-gradient(180deg,#100d12 0%,#181019 48%,#0f0b10 100%);
      line-height:1.7;
      overflow-x:hidden;
    }
    body:before{
      content:"";
      position:fixed;
      inset:0;
      z-index:-2;
      pointer-events:none;
      opacity:.12;
      background-image:
        linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);
      background-size:44px 44px;
      mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),rgba(0,0,0,.25));
    }
    body:after{
      content:"";
      position:fixed;
      inset:0;
      z-index:-1;
      pointer-events:none;
      opacity:.18;
      background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='140' height='140' viewBox='0 0 140 140'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='140' height='140' filter='url(/%23n)' opacity='.35'/%3E%3C/svg%3E");
    }
    a{color:inherit;text-decoration:none}
    button,input{font:inherit}
    button{cursor:pointer}
    img,svg{display:block;max-width:100%}
    ::selection{background:rgba(255,107,138,.35);color:#fff}
    :focus-visible{outline:3px solid rgba(255,193,90,.72);outline-offset:4px;border-radius:14px}
    .site-container{
      width:min(100% - 40px,var(--container));
      margin-inline:auto;
    }
    .topbar{
      position:sticky;
      top:0;
      z-index:50;
      background:rgba(16,13,18,.88);
      backdrop-filter:blur(18px);
      border-bottom:1px solid rgba(255,255,255,.06);
      box-shadow:0 14px 40px rgba(0,0,0,.28);
    }
    .nav-wrap{
      position:relative;
      min-height:72px;
      display:flex;
      align-items:center;
      gap:24px;
    }
    .neon-line{
      position:absolute;
      left:0;
      right:0;
      bottom:-1px;
      height:1px;
      background:linear-gradient(90deg,transparent,var(--accent),var(--accent-2),var(--accent-3),transparent);
      box-shadow:0 0 18px rgba(255,107,138,.5);
      opacity:.9;
    }
    .brand{
      display:inline-flex;
      align-items:center;
      gap:12px;
      min-width:0;
      font-weight:850;
      letter-spacing:-.02em;
    }
    .brand-mark{
      width:42px;
      height:42px;
      flex:0 0 auto;
      border-radius:999px;
      background:
        radial-gradient(circle at 50% 50%,rgba(255,246,239,.96) 0 4px,transparent 5px),
        repeating-radial-gradient(circle at 50% 50%,rgba(255,107,138,.9) 0 2px,transparent 3px 8px),
        linear-gradient(135deg,var(--accent),var(--accent-2));
      box-shadow:0 0 28px rgba(255,107,138,.45),inset 0 0 18px rgba(255,255,255,.18);
    }
    .brand-text{
      font-size:18px;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
    }
    .desktop-nav{
      margin-left:auto;
      display:flex;
      align-items:center;
      gap:6px;
    }
    .nav-link{
      position:relative;
      display:inline-flex;
      align-items:center;
      min-height:42px;
      padding:0 14px;
      border-radius:999px;
      color:var(--muted);
      font-size:15px;
      font-weight:650;
      transition:transform .22s ease,color .22s ease,background .22s ease,text-shadow .22s ease;
    }
    .nav-link:hover{
      color:var(--text);
      background:rgba(255,255,255,.045);
      transform:translateY(-1px);
      text-shadow:0 0 18px rgba(255,107,138,.42);
    }
    .nav-link.active{
      color:#ffd6c4;
      background:rgba(255,107,138,.09);
      text-shadow:0 0 18px rgba(255,107,138,.5);
    }
    .nav-link.active:after{
      content:"";
      position:absolute;
      left:50%;
      transform:translateX(-50%);
      bottom:3px;
      width:26px;
      height:2px;
      border-radius:999px;
      background:linear-gradient(90deg,var(--accent),var(--accent-3));
      box-shadow:0 0 14px rgba(255,107,138,.72);
    }
    .nav-cta,.btn-primary{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:48px;
      padding:0 20px;
      border:0;
      border-radius:999px;
      color:#241018;
      font-weight:850;
      background:linear-gradient(135deg,var(--accent-3),var(--accent-2) 46%,var(--accent));
      box-shadow:0 14px 34px rgba(255,107,138,.22),inset 0 1px 0 rgba(255,255,255,.38);
      transition:transform .22s ease,filter .22s ease,box-shadow .22s ease;
      white-space:nowrap;
    }
    .nav-cta:hover,.btn-primary:hover{
      transform:translateY(-2px);
      filter:brightness(1.06);
      box-shadow:0 18px 46px rgba(255,107,138,.32),0 0 0 1px rgba(255,255,255,.12) inset;
    }
    .btn-secondary{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:48px;
      padding:0 20px;
      border-radius:999px;
      color:#ffe2d5;
      font-weight:800;
      border:1px solid rgba(255,138,61,.36);
      background:rgba(255,255,255,.035);
      box-shadow:0 0 0 1px rgba(255,107,138,.08) inset;
      transition:transform .22s ease,background .22s ease,border-color .22s ease,box-shadow .22s ease;
    }
    .btn-secondary:hover{
      transform:translateY(-2px);
      background:rgba(255,107,138,.08);
      border-color:rgba(255,193,90,.55);
      box-shadow:0 18px 42px rgba(255,107,138,.14);
    }
    .mobile-toggle{
      display:none;
      margin-left:auto;
      width:44px;
      height:44px;
      align-items:center;
      justify-content:center;
      border:1px solid rgba(255,138,61,.22);
      border-radius:16px;
      color:var(--text);
      background:rgba(255,255,255,.04);
      transition:background .2s ease,border-color .2s ease;
    }
    .mobile-toggle:hover{background:rgba(255,107,138,.09);border-color:rgba(255,107,138,.45)}
    .mobile-menu{
      display:none;
      border-top:1px solid rgba(255,138,61,.18);
      background:rgba(16,13,18,.96);
      box-shadow:0 18px 42px rgba(0,0,0,.3);
    }
    .mobile-menu .site-container{
      padding:14px 0 18px;
      display:grid;
      gap:8px;
    }
    .section{padding:88px 0}
    .section-tight{padding:58px 0}
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:9px;
      width:max-content;
      max-width:100%;
      padding:8px 13px;
      border:1px solid rgba(255,138,61,.24);
      border-radius:999px;
      color:#ffd7bf;
      background:rgba(255,138,61,.07);
      font-size:14px;
      font-weight:750;
    }
    .eyebrow:before{
      content:"";
      width:8px;
      height:8px;
      border-radius:999px;
      background:var(--accent-3);
      box-shadow:0 0 16px rgba(255,193,90,.8);
    }
    .category-shell{
      padding:54px 0 28px;
      position:relative;
      overflow:hidden;
    }
    .category-shell:before{
      content:"";
      position:absolute;
      left:-140px;
      top:38px;
      width:440px;
      height:440px;
      border-radius:999px;
      background:radial-gradient(circle,rgba(255,107,138,.16),transparent 65%);
      pointer-events:none;
    }
    .category-head{
      position:relative;
      display:grid;
      grid-template-columns:minmax(0,1fr) 320px;
      gap:30px;
      align-items:end;
      padding:34px;
      border:1px solid var(--line);
      border-radius:34px;
      background:
        linear-gradient(135deg,rgba(33,23,36,.92),rgba(24,18,26,.86)),
        radial-gradient(circle at 80% 12%,rgba(255,107,138,.18),transparent 34%);
      box-shadow:var(--shadow);
      overflow:hidden;
    }
    .category-head:after{
      content:"";
      position:absolute;
      inset:auto 0 0 0;
      height:74px;
      opacity:.16;
      background:
        linear-gradient(90deg,transparent,rgba(255,193,90,.5),transparent),
        repeating-linear-gradient(90deg,transparent 0 18px,rgba(255,107,138,.5) 19px 21px,transparent 22px 42px);
      mask-image:linear-gradient(to top,black,transparent);
      pointer-events:none;
    }
    h1{
      margin:18px 0 14px;
      max-width:870px;
      font-size:clamp(34px,5vw,62px);
      line-height:1.08;
      letter-spacing:-.05em;
      font-weight:900;
    }
    .lead{
      max-width:780px;
      color:#d8c4c9;
      font-size:18px;
      line-height:1.8;
    }
    .quick-panel{
      position:relative;
      z-index:1;
      border:1px solid rgba(255,138,61,.2);
      border-radius:26px;
      padding:18px;
      background:rgba(16,13,18,.5);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
    }
    .mini-wave{
      display:flex;
      align-items:end;
      gap:5px;
      height:36px;
      margin:12px 0 16px;
    }
    .mini-wave span{
      width:7px;
      border-radius:999px;
      background:linear-gradient(to top,var(--accent-2),var(--accent));
      box-shadow:0 0 12px rgba(255,107,138,.34);
    }
    .pill-row,.tab-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
    }
    .pill,.tab-pill{
      display:inline-flex;
      align-items:center;
      gap:7px;
      min-height:38px;
      padding:0 13px;
      border-radius:999px;
      border:1px solid rgba(255,138,61,.2);
      color:#ead0d3;
      background:rgba(255,255,255,.04);
      font-size:14px;
      font-weight:700;
      transition:transform .2s ease,border-color .2s ease,background .2s ease,color .2s ease;
    }
    .pill:hover,.tab-pill:hover{
      transform:translateY(-1px);
      border-color:rgba(255,193,90,.45);
      background:rgba(255,107,138,.08);
      color:#fff;
    }
    .pill.hot,.tab-pill.active{
      color:#2a1118;
      border-color:transparent;
      background:linear-gradient(135deg,var(--accent-3),var(--accent-2));
    }
    .layout{
      display:grid;
      grid-template-columns:280px minmax(0,1fr);
      gap:28px;
      align-items:start;
    }
    .side-tabs{
      position:sticky;
      top:94px;
      border:1px solid var(--line);
      border-radius:30px;
      padding:16px;
      background:linear-gradient(180deg,rgba(42,27,45,.82),rgba(24,18,26,.74));
      box-shadow:0 18px 56px rgba(0,0,0,.25);
    }
    .side-tabs h2{
      margin:8px 8px 14px;
      font-size:18px;
      font-weight:850;
      letter-spacing:-.02em;
    }
    .side-tab{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:12px;
      width:100%;
      padding:14px 15px;
      margin-top:8px;
      border-radius:20px;
      border:1px solid transparent;
      color:#d7c2c8;
      background:rgba(255,255,255,.03);
      transition:transform .22s ease,background .22s ease,border-color .22s ease,color .22s ease;
    }
    .side-tab:hover{
      color:#fff;
      transform:translateX(3px);
      border-color:rgba(255,138,61,.22);
      background:rgba(255,107,138,.075);
    }
    .side-tab.active{
      color:#fff3e7;
      border-color:rgba(255,193,90,.42);
      background:linear-gradient(135deg,rgba(255,107,138,.18),rgba(255,138,61,.09));
      box-shadow:0 12px 34px rgba(255,107,138,.1);
    }
    .side-tab .count{
      min-width:30px;
      height:24px;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      border-radius:999px;
      color:#251017;
      font-size:12px;
      font-weight:900;
      background:linear-gradient(135deg,var(--accent-3),var(--accent-2));
    }
    .alert-card,.review-card,.cta-box,.faq-card,.entry-card{
      border:1px solid var(--line);
      border-radius:var(--radius);
      background:linear-gradient(145deg,rgba(33,23,36,.88),rgba(24,18,26,.78));
      box-shadow:0 18px 60px rgba(0,0,0,.24);
    }
    .alert-card{
      margin-top:18px;
      padding:18px;
    }
    .alert-card strong{
      display:block;
      margin-bottom:6px;
      color:#ffe1c7;
      font-size:15px;
    }
    .alert-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.75}
    .content-flow{
      display:grid;
      gap:18px;
    }
    .entry-card{
      position:relative;
      overflow:hidden;
      padding:24px;
      transition:transform .25s ease,border-color .25s ease,background .25s ease,box-shadow .25s ease;
    }
    .entry-card:hover{
      transform:translateY(-3px);
      border-color:rgba(255,193,90,.42);
      background:linear-gradient(145deg,rgba(47,30,49,.94),rgba(28,20,30,.84));
      box-shadow:0 24px 70px rgba(255,107,138,.12),0 18px 56px rgba(0,0,0,.28);
    }
    .entry-card.featured{
      min-height:260px;
      padding:28px;
      display:grid;
      grid-template-columns:minmax(0,1fr) 240px;
      gap:24px;
      align-items:center;
      border-color:rgba(255,107,138,.32);
      background:
        radial-gradient(circle at 88% 20%,rgba(255,107,138,.22),transparent 32%),
        linear-gradient(145deg,rgba(42,27,45,.94),rgba(24,18,26,.8));
    }
    .entry-card h2,.entry-card h3{
      margin:10px 0 8px;
      color:#fff8f1;
      letter-spacing:-.025em;
      font-weight:850;
    }
    .entry-card h2{font-size:30px;line-height:1.18}
    .entry-card h3{font-size:22px;line-height:1.28}
    .entry-card p{margin:0;color:#cdb8bf}
    .badge{
      display:inline-flex;
      align-items:center;
      gap:7px;
      min-height:30px;
      padding:0 10px;
      border-radius:999px;
      color:#ffd9c7;
      border:1px solid rgba(255,138,61,.25);
      background:rgba(255,138,61,.075);
      font-size:13px;
      font-weight:800;
    }
    .badge:before{
      content:"";
      width:6px;
      height:6px;
      border-radius:999px;
      background:var(--accent);
      box-shadow:0 0 12px rgba(255,107,138,.9);
    }
    .entry-meta{
      margin-top:18px;
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      align-items:center;
      color:var(--muted-2);
      font-size:14px;
    }
    .small-link{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:38px;
      padding:0 13px;
      border-radius:999px;
      color:#ffe0cf;
      background:rgba(255,107,138,.1);
      border:1px solid rgba(255,107,138,.26);
      font-weight:800;
      transition:background .2s ease,transform .2s ease,border-color .2s ease;
    }
    .small-link:hover{
      transform:translateY(-1px);
      background:rgba(255,138,61,.14);
      border-color:rgba(255,193,90,.46);
    }
    .safe-preview{
      border:1px solid rgba(255,255,255,.08);
      border-radius:26px;
      padding:18px;
      background:rgba(16,13,18,.42);
    }
    .meter{
      height:10px;
      border-radius:999px;
      background:rgba(255,255,255,.07);
      overflow:hidden;
    }
    .meter span{
      display:block;
      height:100%;
      width:78%;
      border-radius:999px;
      background:linear-gradient(90deg,var(--accent),var(--accent-2),var(--accent-3));
      box-shadow:0 0 18px rgba(255,107,138,.42);
    }
    .qa-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:18px;
      margin-top:18px;
    }
    .qa-card{
      padding:22px;
      border:1px solid rgba(255,138,61,.16);
      border-radius:24px;
      background:rgba(255,255,255,.035);
      transition:transform .22s ease,border-color .22s ease,background .22s ease;
    }
    .qa-card:hover{
      transform:translateY(-2px);
      border-color:rgba(255,193,90,.38);
      background:rgba(255,107,138,.065);
    }
    .qa-card h3{
      margin:0 0 8px;
      font-size:18px;
      font-weight:850;
      color:#fff2e8;
    }
    .qa-card p{
      margin:0;
      color:var(--muted);
      font-size:15px;
    }
    .review-zone{
      display:grid;
      grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
      gap:24px;
      align-items:stretch;
    }
    .review-card{
      padding:26px;
      position:relative;
      overflow:hidden;
    }
    .review-card:before{
      content:"";
      position:absolute;
      right:-80px;
      top:-70px;
      width:210px;
      height:210px;
      border-radius:999px;
      background:radial-gradient(circle,rgba(255,107,138,.16),transparent 68%);
    }
    .review-card h2{
      margin:12px 0 10px;
      font-size:32px;
      line-height:1.18;
      font-weight:900;
      letter-spacing:-.04em;
    }
    .review-card p{color:#d3bec4;margin:0}
    .avatar-stack{
      display:flex;
      align-items:center;
      margin-top:22px;
    }
    .avatar{
      width:44px;
      height:44px;
      margin-right:-10px;
      border-radius:999px;
      border:2px solid var(--panel);
      display:grid;
      place-items:center;
      color:#fff;
      font-weight:900;
      box-shadow:0 10px 24px rgba(0,0,0,.25);
    }
    .avatar:nth-child(1){background:linear-gradient(135deg,#ff6b8a,#7c2d12)}
    .avatar:nth-child(2){background:linear-gradient(135deg,#ffc15a,#d946ef)}
    .avatar:nth-child(3){background:linear-gradient(135deg,#ff8a3d,#9f1239)}
    .avatar:nth-child(4){background:linear-gradient(135deg,#fb7185,#581c87)}
    .avatar:nth-child(5){background:linear-gradient(135deg,#fbbf24,#be123c)}
    .bubble-list{
      display:grid;
      gap:14px;
    }
    .bubble{
      position:relative;
      padding:17px 18px;
      border:1px solid rgba(255,138,61,.18);
      border-radius:22px 22px 22px 8px;
      background:rgba(255,255,255,.045);
      box-shadow:0 14px 40px rgba(0,0,0,.18);
    }
    .bubble:nth-child(even){
      margin-left:28px;
      border-radius:22px 22px 8px 22px;
      background:rgba(255,107,138,.06);
    }
    .bubble p{margin:0;color:#dcc9cd;font-size:15px}
    .bubble strong{color:#fff0e6}
    .faq-wrap{
      display:grid;
      grid-template-columns:360px minmax(0,1fr);
      gap:28px;
      align-items:start;
    }
    .faq-intro h2,.cta-box h2{
      margin:12px 0 10px;
      font-size:clamp(28px,3.4vw,42px);
      line-height:1.18;
      font-weight:900;
      letter-spacing:-.04em;
    }
    .faq-intro p{color:var(--muted);margin:0}
    .faq-card{overflow:hidden}
    details{
      border-bottom:1px solid rgba(255,138,61,.14);
      background:rgba(255,255,255,.012);
    }
    details:last-child{border-bottom:0}
    summary{
      list-style:none;
      cursor:pointer;
      padding:20px 22px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      color:#fff0e8;
      font-weight:850;
      transition:background .2s ease,color .2s ease;
    }
    summary::-webkit-details-marker{display:none}
    summary:after{
      content:"+";
      flex:0 0 auto;
      width:28px;
      height:28px;
      display:grid;
      place-items:center;
      border-radius:999px;
      color:#271018;
      background:linear-gradient(135deg,var(--accent-3),var(--accent-2));
      font-weight:900;
    }
    details[open] summary{
      color:#ffd8c4;
      background:rgba(255,107,138,.075);
    }
    details[open] summary:after{content:"–"}
    .faq-body{
      padding:0 22px 20px 22px;
      color:#cdb8bf;
      border-left:2px solid rgba(255,138,61,.55);
      margin-left:22px;
      margin-bottom:4px;
    }
    .cta-box{
      position:relative;
      overflow:hidden;
      padding:34px;
      display:grid;
      grid-template-columns:minmax(0,1fr) auto;
      gap:24px;
      align-items:center;
      background:
        radial-gradient(circle at 92% 10%,rgba(255,193,90,.16),transparent 34%),
        linear-gradient(135deg,rgba(42,27,45,.95),rgba(24,18,26,.88));
    }
    .cta-box:before{
      content:"";
      position:absolute;
      left:0;
      right:0;
      top:0;
      height:1px;
      background:linear-gradient(90deg,transparent,var(--accent),var(--accent-3),transparent);
      box-shadow:0 0 18px rgba(255,107,138,.7);
    }
    .cta-box p{margin:0;color:#d4bec5;max-width:720px}
    .fixed-cta{
      position:fixed;
      left:0;
      right:0;
      bottom:0;
      z-index:60;
      border-top:1px solid rgba(255,138,61,.45);
      background:rgba(16,13,18,.86);
      backdrop-filter:blur(18px);
      box-shadow:0 -18px 50px rgba(0,0,0,.32),0 0 24px rgba(255,107,138,.12);
    }
    .fixed-cta-inner{
      min-height:72px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
    }
    .fixed-cta p{
      margin:0;
      color:#ead1d3;
      font-size:15px;
    }
    .fixed-cta strong{color:#ffd8c4}
    .footer{
      padding:58px 0 42px;
      border-top:1px solid rgba(255,138,61,.15);
      background:rgba(11,8,12,.74);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:minmax(0,1fr) auto;
      gap:30px;
      align-items:start;
    }
    .footer p{color:var(--muted);margin-bottom:0}
    .footer-links{
      display:grid;
      gap:10px;
      min-width:180px;
    }
    .footer-links a{
      color:#d6c0c5;
      padding:8px 0;
      transition:color .2s ease,transform .2s ease;
    }
    .footer-links a:hover{color:#ffd7c5;transform:translateX(3px)}
    .footer-wave{
      margin-top:18px;
      height:30px;
      display:flex;
      align-items:end;
      gap:6px;
      opacity:.8;
    }
    .footer-wave span{
      width:6px;
      border-radius:999px;
      background:linear-gradient(to top,var(--accent-2),var(--accent));
    }
    @media (max-width:1024px){
      .desktop-nav,.nav-cta{display:none}
      .mobile-toggle{display:flex}
      .mobile-menu.open{display:block}
      .category-head,.layout,.entry-card.featured,.review-zone,.faq-wrap,.cta-box{
        grid-template-columns:1fr;
      }
      .side-tabs{
        position:relative;
        top:auto;
        display:flex;
        overflow-x:auto;
        gap:10px;
        padding:14px;
        scrollbar-width:none;
      }
      .side-tabs::-webkit-scrollbar{display:none}
      .side-tabs h2,.side-tabs .alert-card{display:none}
      .side-tab{
        flex:0 0 auto;
        min-width:max-content;
        margin-top:0;
      }
      .side-tab:hover{transform:translateY(-1px)}
      .qa-grid{grid-template-columns:1fr}
    }
    @media (max-width:768px){
      body{padding-bottom:86px}
      .site-container{width:min(100% - 32px,var(--container))}
      .nav-wrap{min-height:64px}
      .brand-mark{width:36px;height:36px}
      .brand-text{font-size:16px;max-width:210px}
      .section{padding:64px 0}
      .section-tight{padding:42px 0}
      .category-shell{padding:34px 0 18px}
      .category-head{padding:24px;border-radius:28px}
      .lead{font-size:16px}
      .entry-card,.entry-card.featured,.review-card,.cta-box{padding:22px;border-radius:24px}
      .entry-card h2{font-size:25px}
      .pill-row,.tab-row{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}
      .pill-row::-webkit-scrollbar,.tab-row::-webkit-scrollbar{display:none}
      .pill,.tab-pill{flex:0 0 auto}
      .fixed-cta-inner{
        min-height:78px;
        align-items:stretch;
        padding:10px 0;
      }
      .fixed-cta p{font-size:13px;line-height:1.45}
      .fixed-cta .btn-primary{min-height:46px;padding:0 14px;font-size:14px}
      .footer-grid{grid-template-columns:1fr}
    }
    @media (max-width:520px){
      .site-container{width:min(100% - 28px,var(--container))}
      h1{font-size:34px}
      .quick-panel{padding:16px;border-radius:22px}
      .fixed-cta-inner{gap:10px}
      .fixed-cta p{max-width:52%}
      .btn-primary,.btn-secondary{min-height:46px;padding:0 15px}
      .footer{padding-bottom:34px}
    }

/* roulang page: category1 */
:root{
      --bg:#100d12;
      --bg-soft:#18121a;
      --panel:#211724;
      --panel-2:#2a1b2d;
      --panel-3:#321f32;
      --text:#fff6ef;
      --muted:#b8a7ad;
      --muted-2:#8e7d84;
      --accent:#ff6b8a;
      --accent-2:#ff8a3d;
      --accent-3:#ffc15a;
      --violet:#d946ef;
      --line:rgba(255,138,61,.18);
      --line-strong:rgba(255,107,138,.45);
      --shadow:0 24px 80px rgba(0,0,0,.44);
      --shadow-warm:0 18px 56px rgba(255,107,138,.13);
      --radius:28px;
      --radius-lg:36px;
      --container:1220px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      min-height:100vh;
      font-family:system-ui,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei","Noto Sans SC",sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 16% 4%, rgba(255,107,138,.18), transparent 30%),
        radial-gradient(circle at 86% 18%, rgba(255,138,61,.14), transparent 34%),
        linear-gradient(180deg,#100d12 0%,#151018 38%,#0e0b10 100%);
      line-height:1.7;
      padding-bottom:92px;
      overflow-x:hidden;
    }
    body:before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      opacity:.15;
      background-image:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
      background-size:38px 38px;
      mask-image:linear-gradient(to bottom, rgba(0,0,0,.9), rgba(0,0,0,.2));
      z-index:-2;
    }
    body:after{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      background-image:radial-gradient(rgba(255,255,255,.07) .6px, transparent .6px);
      background-size:4px 4px;
      opacity:.18;
      z-index:-1;
    }
    a{color:inherit;text-decoration:none}
    button,input{font:inherit}
    button{cursor:pointer}
    img,svg{max-width:100%}
    ::selection{background:rgba(255,107,138,.35);color:#fff}
    :focus-visible{outline:3px solid rgba(255,193,90,.75);outline-offset:3px;border-radius:14px}
    .site-container{
      width:min(var(--container), calc(100% - 40px));
      margin-inline:auto;
    }
    .topbar{
      position:sticky;
      top:0;
      z-index:50;
      background:rgba(16,13,18,.88);
      backdrop-filter:blur(18px);
      border-bottom:1px solid rgba(255,255,255,.06);
      box-shadow:0 18px 40px rgba(0,0,0,.28);
    }
    .nav-wrap{
      height:72px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:24px;
      position:relative;
    }
    .neon-line{
      position:absolute;
      left:0;
      right:0;
      bottom:-1px;
      height:1px;
      background:linear-gradient(90deg, transparent, var(--accent), var(--accent-2), var(--accent-3), transparent);
      box-shadow:0 0 18px rgba(255,107,138,.6);
      opacity:.85;
    }
    .brand{
      display:inline-flex;
      align-items:center;
      gap:12px;
      min-width:0;
      font-weight:900;
      letter-spacing:-.02em;
    }
    .brand-mark{
      width:38px;
      height:38px;
      border-radius:999px;
      flex:0 0 auto;
      background:
        radial-gradient(circle at 50% 50%, #fff6ef 0 10%, transparent 12%),
        repeating-radial-gradient(circle, rgba(255,193,90,.85) 0 2px, transparent 3px 7px),
        linear-gradient(135deg,var(--accent),var(--accent-2));
      box-shadow:0 0 26px rgba(255,107,138,.42), inset 0 0 16px rgba(255,255,255,.18);
      position:relative;
    }
    .brand-mark:after{
      content:"";
      position:absolute;
      inset:8px;
      border-radius:999px;
      border:1px solid rgba(16,13,18,.5);
    }
    .brand-text{
      font-size:18px;
      color:var(--text);
      white-space:nowrap;
      text-shadow:0 0 20px rgba(255,107,138,.18);
    }
    .desktop-nav{
      display:flex;
      align-items:center;
      gap:6px;
      padding:6px;
      border:1px solid rgba(255,255,255,.06);
      background:rgba(255,255,255,.025);
      border-radius:999px;
    }
    .nav-link{
      position:relative;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:38px;
      padding:8px 14px;
      color:var(--muted);
      font-size:14px;
      font-weight:700;
      border-radius:999px;
      transition:transform .22s ease, color .22s ease, background .22s ease, box-shadow .22s ease;
    }
    .nav-link:hover{
      color:var(--text);
      background:rgba(255,107,138,.08);
      transform:translateY(-1px);
    }
    .nav-link.active{
      color:#ffe0c6;
      background:linear-gradient(180deg, rgba(255,107,138,.16), rgba(255,138,61,.08));
      box-shadow:inset 0 0 0 1px rgba(255,138,61,.22), 0 0 22px rgba(255,107,138,.18);
    }
    .nav-link.active:after{
      content:"";
      position:absolute;
      left:50%;
      bottom:3px;
      width:22px;
      height:2px;
      transform:translateX(-50%);
      border-radius:999px;
      background:linear-gradient(90deg,var(--accent),var(--accent-3));
      box-shadow:0 0 12px rgba(255,107,138,.85);
    }
    .nav-cta,.btn-primary{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:48px;
      padding:0 22px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.08);
      color:#fff;
      font-weight:900;
      background:linear-gradient(135deg,var(--accent),var(--accent-2) 55%,var(--accent-3));
      box-shadow:0 14px 34px rgba(255,107,138,.26), inset 0 1px 0 rgba(255,255,255,.24);
      transition:transform .22s ease, filter .22s ease, box-shadow .22s ease;
      white-space:nowrap;
    }
    .nav-cta:hover,.btn-primary:hover{
      transform:translateY(-2px);
      filter:brightness(1.08);
      box-shadow:0 20px 46px rgba(255,107,138,.34), 0 0 24px rgba(255,138,61,.22);
    }
    .btn-secondary{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:48px;
      padding:0 20px;
      border-radius:999px;
      border:1px solid rgba(255,138,61,.32);
      color:#ffe1cb;
      font-weight:850;
      background:rgba(33,23,36,.72);
      box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);
      transition:transform .22s ease, background .22s ease, box-shadow .22s ease;
    }
    .btn-secondary:hover{
      transform:translateY(-2px);
      background:rgba(255,107,138,.11);
      box-shadow:0 0 28px rgba(255,107,138,.16);
    }
    .mobile-toggle{
      display:none;
      width:44px;
      height:44px;
      border:1px solid rgba(255,138,61,.22);
      border-radius:16px;
      color:var(--text);
      background:rgba(255,255,255,.045);
    }
    .mobile-menu{
      display:none;
      border-top:1px solid rgba(255,107,138,.16);
      background:rgba(16,13,18,.96);
      box-shadow:0 22px 50px rgba(0,0,0,.34);
    }
    .mobile-menu .site-container{
      padding:14px 0 18px;
      display:grid;
      gap:8px;
    }
    .section{
      padding:82px 0;
      position:relative;
    }
    .compact-head{
      padding:58px 0 30px;
      position:relative;
      overflow:hidden;
      border-bottom:1px solid rgba(255,255,255,.055);
    }
    .compact-head:before{
      content:"";
      position:absolute;
      width:560px;
      height:560px;
      border-radius:999px;
      right:-220px;
      top:-260px;
      background:radial-gradient(circle, rgba(255,107,138,.22), rgba(255,138,61,.08) 42%, transparent 68%);
      filter:blur(3px);
      pointer-events:none;
    }
    .compact-head:after{
      content:"";
      position:absolute;
      left:0;
      right:0;
      bottom:0;
      height:150px;
      background:
        repeating-linear-gradient(90deg, transparent 0 18px, rgba(255,193,90,.08) 19px 21px, transparent 22px 42px);
      opacity:.18;
      mask-image:linear-gradient(to right, transparent, #000 18%, #000 82%, transparent);
      pointer-events:none;
    }
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 12px;
      border-radius:999px;
      color:#ffd7aa;
      font-weight:850;
      font-size:13px;
      background:rgba(255,138,61,.1);
      border:1px solid rgba(255,138,61,.22);
      box-shadow:0 0 24px rgba(255,107,138,.1);
    }
    .eyebrow:before{
      content:"";
      width:8px;
      height:8px;
      border-radius:999px;
      background:var(--accent-3);
      box-shadow:0 0 16px rgba(255,193,90,.85);
    }
    h1{
      margin:18px 0 0;
      max-width:850px;
      font-size:clamp(34px,5vw,58px);
      line-height:1.08;
      letter-spacing:-.055em;
      font-weight:950;
    }
    .lead{
      margin-top:18px;
      max-width:760px;
      color:var(--muted);
      font-size:17px;
      line-height:1.9;
    }
    .filter-panel{
      border:1px solid rgba(255,138,61,.18);
      background:linear-gradient(145deg, rgba(42,27,45,.74), rgba(24,18,26,.76));
      border-radius:var(--radius);
      box-shadow:var(--shadow-warm);
      padding:18px;
      position:relative;
      overflow:hidden;
    }
    .filter-panel:before{
      content:"";
      position:absolute;
      inset:auto -30px -40px auto;
      width:180px;
      height:180px;
      border-radius:999px;
      background:radial-gradient(circle, rgba(255,107,138,.28), transparent 66%);
      pointer-events:none;
    }
    .count-ring{
      width:116px;
      height:116px;
      border-radius:999px;
      display:grid;
      place-items:center;
      margin-inline:auto;
      background:
        conic-gradient(from 40deg, var(--accent) 0 28%, var(--accent-2) 28% 67%, rgba(255,255,255,.08) 67% 100%);
      box-shadow:0 0 34px rgba(255,107,138,.22);
      position:relative;
    }
    .count-ring:after{
      content:"";
      position:absolute;
      inset:10px;
      border-radius:999px;
      background:var(--panel);
      border:1px solid rgba(255,255,255,.06);
    }
    .count-ring span{
      position:relative;
      z-index:1;
      text-align:center;
      font-weight:950;
      line-height:1.15;
    }
    .count-ring small{
      display:block;
      font-size:12px;
      color:var(--muted);
      font-weight:750;
      margin-top:3px;
    }
    .pill-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
    }
    .pill{
      display:inline-flex;
      align-items:center;
      gap:7px;
      min-height:36px;
      padding:7px 12px;
      border-radius:999px;
      border:1px solid rgba(255,138,61,.18);
      color:#f5d8c9;
      background:rgba(255,255,255,.045);
      font-size:13px;
      font-weight:800;
      transition:transform .2s ease, border-color .2s ease, background .2s ease;
      white-space:nowrap;
    }
    .pill:hover,.pill.active{
      transform:translateY(-1px);
      border-color:rgba(255,107,138,.5);
      background:rgba(255,107,138,.13);
      color:#fff4e6;
    }
    .main-grid{
      display:grid;
      grid-template-columns:minmax(0,1fr) 330px;
      gap:28px;
      align-items:start;
    }
    .toolbar{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      padding:16px;
      border:1px solid rgba(255,255,255,.07);
      border-radius:24px;
      background:rgba(24,18,26,.62);
      box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
      margin-bottom:22px;
    }
    .tag-scroll{
      display:flex;
      gap:10px;
      overflow:auto;
      scrollbar-width:none;
      padding-bottom:2px;
    }
    .tag-scroll::-webkit-scrollbar{display:none}
    .mini-search{
      min-width:238px;
      display:flex;
      align-items:center;
      gap:8px;
      padding:10px 12px;
      border:1px solid rgba(255,138,61,.16);
      border-radius:999px;
      background:rgba(0,0,0,.18);
      color:var(--muted);
      font-size:13px;
      white-space:nowrap;
    }
    .entry-list{
      display:grid;
      gap:18px;
    }
    .entry-card{
      position:relative;
      border:1px solid rgba(255,138,61,.16);
      border-radius:var(--radius);
      background:
        linear-gradient(135deg, rgba(33,23,36,.92), rgba(24,18,26,.84)),
        radial-gradient(circle at 18% 0%, rgba(255,107,138,.16), transparent 35%);
      box-shadow:0 16px 54px rgba(0,0,0,.25);
      padding:22px;
      overflow:hidden;
      transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease;
    }
    .entry-card:hover{
      transform:translateY(-3px);
      border-color:rgba(255,107,138,.42);
      box-shadow:0 26px 70px rgba(0,0,0,.34), 0 0 36px rgba(255,107,138,.12);
      background:
        linear-gradient(135deg, rgba(42,27,45,.96), rgba(24,18,26,.88)),
        radial-gradient(circle at 18% 0%, rgba(255,107,138,.2), transparent 38%);
    }
    .entry-card.featured{
      min-height:256px;
      display:grid;
      grid-template-columns:minmax(0,1fr) 210px;
      gap:22px;
      border-color:rgba(255,107,138,.28);
      background:
        radial-gradient(circle at 75% 24%, rgba(255,193,90,.16), transparent 34%),
        linear-gradient(135deg, rgba(50,31,50,.94), rgba(24,18,26,.92));
    }
    .entry-card:before{
      content:"";
      position:absolute;
      left:20px;
      right:20px;
      top:0;
      height:2px;
      background:linear-gradient(90deg, transparent, rgba(255,107,138,.7), rgba(255,193,90,.65), transparent);
      opacity:.65;
    }
    .badge{
      display:inline-flex;
      align-items:center;
      gap:7px;
      padding:6px 10px;
      border-radius:999px;
      border:1px solid rgba(255,193,90,.22);
      color:#ffd8a8;
      background:rgba(255,193,90,.075);
      font-size:12px;
      font-weight:900;
    }
    .card-title{
      margin:14px 0 8px;
      font-size:24px;
      line-height:1.25;
      font-weight:920;
      letter-spacing:-.02em;
    }
    .entry-card:not(.featured) .card-title{font-size:20px}
    .card-desc{
      color:var(--muted);
      margin:0;
      line-height:1.85;
      max-width:720px;
    }
    .meta-row{
      display:flex;
      flex-wrap:wrap;
      align-items:center;
      gap:10px;
      margin-top:18px;
      color:var(--muted-2);
      font-size:13px;
      font-weight:750;
    }
    .heat{
      height:8px;
      border-radius:999px;
      background:rgba(255,255,255,.075);
      overflow:hidden;
      margin-top:18px;
      max-width:420px;
    }
    .heat span{
      display:block;
      height:100%;
      border-radius:inherit;
      background:linear-gradient(90deg,var(--accent),var(--accent-2),var(--accent-3));
      box-shadow:0 0 18px rgba(255,107,138,.35);
    }
    .abstract-cover{
      min-height:190px;
      border-radius:24px;
      border:1px solid rgba(255,255,255,.08);
      background:
        radial-gradient(circle at 35% 24%, rgba(255,246,239,.18), transparent 10%),
        radial-gradient(circle at 78% 36%, rgba(255,107,138,.4), transparent 24%),
        radial-gradient(circle at 30% 88%, rgba(255,193,90,.24), transparent 32%),
        linear-gradient(145deg,#392036,#1d141f);
      position:relative;
      overflow:hidden;
      box-shadow:inset 0 0 45px rgba(255,255,255,.035);
    }
    .abstract-cover:before{
      content:"";
      position:absolute;
      inset:22px;
      border-radius:22px;
      background:
        repeating-linear-gradient(90deg, transparent 0 13px, rgba(255,255,255,.12) 14px 16px, transparent 17px 28px);
      opacity:.45;
      mask-image:linear-gradient(to bottom, transparent, #000 28%, #000 72%, transparent);
    }
    .abstract-cover:after{
      content:"18+";
      position:absolute;
      right:16px;
      top:16px;
      padding:6px 10px;
      border-radius:999px;
      color:#2a160a;
      background:linear-gradient(135deg,var(--accent-3),var(--accent-2));
      font-weight:950;
      font-size:12px;
    }
    .compact-card{
      display:grid;
      grid-template-columns:82px minmax(0,1fr) auto;
      gap:16px;
      align-items:center;
    }
    .thumb{
      width:82px;
      height:82px;
      border-radius:22px;
      flex:0 0 auto;
      border:1px solid rgba(255,255,255,.08);
      background:
        radial-gradient(circle at 30% 20%, rgba(255,193,90,.34), transparent 28%),
        radial-gradient(circle at 78% 62%, rgba(255,107,138,.33), transparent 30%),
        linear-gradient(145deg,#3b2137,#1d141f);
      position:relative;
      overflow:hidden;
    }
    .thumb:after{
      content:"";
      position:absolute;
      left:14px;
      right:14px;
      top:28px;
      height:28px;
      background:repeating-linear-gradient(90deg, rgba(255,255,255,.18) 0 3px, transparent 4px 9px);
      opacity:.55;
    }
    .side-stack{
      display:grid;
      gap:18px;
      position:sticky;
      top:94px;
    }
    .side-card{
      border:1px solid rgba(255,138,61,.16);
      border-radius:var(--radius);
      background:linear-gradient(145deg, rgba(42,27,45,.7), rgba(24,18,26,.8));
      padding:20px;
      box-shadow:0 18px 54px rgba(0,0,0,.22);
    }
    .side-card h2,.side-card h3{
      margin:0 0 12px;
      font-size:20px;
      line-height:1.3;
      font-weight:900;
    }
    .tip-list{
      display:grid;
      gap:12px;
      margin:0;
      padding:0;
      list-style:none;
    }
    .tip-list li{
      display:flex;
      gap:10px;
      color:var(--muted);
      font-size:14px;
      line-height:1.65;
    }
    .tip-list li:before{
      content:"";
      width:8px;
      height:8px;
      border-radius:999px;
      margin-top:8px;
      flex:0 0 auto;
      background:var(--accent-2);
      box-shadow:0 0 14px rgba(255,138,61,.75);
    }
    .bubble{
      position:relative;
      padding:15px;
      border-radius:22px 22px 22px 8px;
      border:1px solid rgba(255,107,138,.22);
      background:rgba(255,255,255,.045);
      color:#ead4d7;
      font-size:14px;
      line-height:1.75;
    }
    .avatar-stack{
      display:flex;
      align-items:center;
      margin-top:14px;
    }
    .avatar{
      width:38px;
      height:38px;
      border-radius:999px;
      border:2px solid var(--panel);
      margin-left:-9px;
      display:grid;
      place-items:center;
      font-size:12px;
      font-weight:950;
      color:#fff;
      background:linear-gradient(135deg,var(--accent),var(--accent-2));
      box-shadow:0 8px 20px rgba(0,0,0,.22);
    }
    .avatar:first-child{margin-left:0}
    .faq-wrap{
      display:grid;
      gap:12px;
      max-width:900px;
    }
    details.faq-item{
      border:1px solid rgba(255,138,61,.14);
      border-radius:22px;
      background:rgba(33,23,36,.68);
      overflow:hidden;
      transition:border-color .22s ease, background .22s ease;
    }
    details.faq-item:hover{
      border-color:rgba(255,107,138,.34);
      background:rgba(42,27,45,.74);
    }
    details.faq-item[open]{
      border-color:rgba(255,107,138,.42);
      box-shadow:0 0 30px rgba(255,107,138,.08);
    }
    .faq-item summary{
      list-style:none;
      cursor:pointer;
      padding:18px 20px;
      font-weight:900;
      color:#fff1e8;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
    }
    .faq-item summary::-webkit-details-marker{display:none}
    .faq-item summary:after{
      content:"+";
      width:26px;
      height:26px;
      display:grid;
      place-items:center;
      border-radius:999px;
      color:#2b160f;
      background:linear-gradient(135deg,var(--accent-3),var(--accent-2));
      flex:0 0 auto;
      font-weight:950;
    }
    .faq-item[open] summary:after{content:"–"}
    .faq-content{
      padding:0 20px 18px;
      color:var(--muted);
      border-left:2px solid var(--accent-2);
      margin-left:20px;
      padding-left:18px;
    }
    .cta-panel{
      border-radius:var(--radius-lg);
      border:1px solid rgba(255,138,61,.22);
      background:
        radial-gradient(circle at 12% 20%, rgba(255,107,138,.18), transparent 34%),
        radial-gradient(circle at 88% 30%, rgba(255,193,90,.14), transparent 30%),
        linear-gradient(135deg, rgba(50,31,50,.92), rgba(24,18,26,.96));
      box-shadow:var(--shadow);
      padding:34px;
      overflow:hidden;
      position:relative;
    }
    .cta-panel:after{
      content:"";
      position:absolute;
      right:28px;
      bottom:26px;
      width:220px;
      height:70px;
      opacity:.16;
      background:repeating-linear-gradient(90deg, transparent 0 12px, #fff 13px 16px, transparent 17px 28px);
      mask-image:linear-gradient(to top, #000, transparent);
    }
    .fixed-cta{
      position:fixed;
      left:0;
      right:0;
      bottom:0;
      z-index:60;
      background:rgba(16,13,18,.88);
      backdrop-filter:blur(18px);
      border-top:1px solid rgba(255,138,61,.28);
      box-shadow:0 -18px 48px rgba(0,0,0,.35);
    }
    .fixed-cta:before{
      content:"";
      position:absolute;
      left:0;
      right:0;
      top:-1px;
      height:1px;
      background:linear-gradient(90deg, transparent, var(--accent), var(--accent-2), var(--accent-3), transparent);
      box-shadow:0 0 18px rgba(255,107,138,.7);
    }
    .fixed-cta-inner{
      min-height:76px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
    }
    .footer{
      padding:54px 0 42px;
      border-top:1px solid rgba(255,255,255,.06);
      background:linear-gradient(180deg, rgba(16,13,18,.6), rgba(7,6,8,.92));
      color:var(--muted);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:minmax(0,1fr) auto;
      gap:36px;
      align-items:start;
    }
    .footer-links{
      display:flex;
      flex-wrap:wrap;
      justify-content:flex-end;
      gap:12px;
      max-width:360px;
    }
    .footer-links a{
      padding:9px 12px;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.06);
      color:#d9c7cc;
      background:rgba(255,255,255,.025);
      font-size:14px;
      font-weight:800;
      transition:background .22s ease, color .22s ease, border-color .22s ease;
    }
    .footer-links a:hover{
      color:#fff1e6;
      border-color:rgba(255,107,138,.28);
      background:rgba(255,107,138,.08);
    }
    .footer-wave{
      display:flex;
      align-items:end;
      gap:5px;
      height:32px;
      margin-top:18px;
      opacity:.75;
    }
    .footer-wave span{
      width:4px;
      border-radius:999px;
      background:linear-gradient(180deg,var(--accent),var(--accent-3));
      box-shadow:0 0 12px rgba(255,107,138,.45);
    }
    @media (max-width:1024px){
      .desktop-nav,.nav-cta{display:none}
      .mobile-toggle{display:grid;place-items:center}
      .mobile-menu.is-open{display:block}
      .main-grid{grid-template-columns:1fr}
      .side-stack{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}
      .entry-card.featured{grid-template-columns:1fr}
      .abstract-cover{min-height:150px}
    }
    @media (max-width:768px){
      body{padding-bottom:98px}
      .site-container{width:min(100% - 32px, var(--container))}
      .nav-wrap{height:64px}
      .brand-text{font-size:16px;max-width:210px;overflow:hidden;text-overflow:ellipsis}
      .brand-mark{width:34px;height:34px}
      .compact-head{padding:38px 0 24px}
      .section{padding:58px 0}
      .toolbar{display:grid;gap:12px}
      .mini-search{min-width:0;width:100%}
      .side-stack{grid-template-columns:1fr}
      .compact-card{grid-template-columns:66px minmax(0,1fr)}
      .compact-card .btn-secondary{grid-column:1/-1;width:100%}
      .thumb{width:66px;height:66px;border-radius:18px}
      .fixed-cta-inner{min-height:86px;align-items:stretch;flex-direction:column;justify-content:center;gap:10px;padding:10px 0}
      .fixed-cta .btn-primary{width:100%;min-height:44px}
      .footer-grid{grid-template-columns:1fr}
      .footer-links{justify-content:flex-start}
      .cta-panel{padding:24px}
    }
    @media (max-width:520px){
      h1{font-size:34px}
      .lead{font-size:15.5px}
      .entry-card{padding:18px;border-radius:24px}
      .card-title{font-size:21px}
      .entry-card:not(.featured) .card-title{font-size:18px}
      .pill-row{flex-wrap:nowrap;overflow:auto;padding-bottom:4px;scrollbar-width:none}
      .pill-row::-webkit-scrollbar{display:none}
      .count-ring{width:98px;height:98px}
    }
