/* roulang page: index */
:root{
      --bg:#080708;
      --bg-2:#101014;
      --card:#151317;
      --card-2:#1a161d;
      --text:#f8f5f2;
      --muted:#b8b0ae;
      --soft:#817978;
      --primary:#d946ef;
      --primary-2:#8b2bd1;
      --cyan:#22f2a6;
      --amber:#ffb86b;
      --danger:#ff7b8a;
      --line:rgba(255,255,255,.10);
      --line-strong:rgba(217,70,239,.42);
      --shadow:0 24px 80px rgba(217,70,239,.14),0 1px 0 rgba(255,255,255,.06) inset;
      --shadow-cyan:0 0 36px rgba(34,242,166,.16);
      --radius-xl:28px;
      --radius-lg:22px;
      --radius-md:16px;
      --container:1200px;
      --font:"PingFang SC","Microsoft YaHei","Noto Sans SC","Helvetica Neue",Arial,sans-serif;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:var(--font);
      color:var(--text);
      background:
        radial-gradient(circle at 18% 6%,rgba(217,70,239,.18),transparent 34%),
        radial-gradient(circle at 88% 18%,rgba(34,242,166,.10),transparent 30%),
        linear-gradient(180deg,var(--bg),var(--bg-2) 42%,#09080a);
      line-height:1.75;
      overflow-x:hidden;
    }
    body:before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      opacity:.18;
      background-image:
        linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.04) 1px, transparent 1px);
      background-size:44px 44px;
      mask-image:linear-gradient(to bottom,black,transparent 82%);
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    .container{width:min(var(--container),calc(100% - 64px));margin-inline:auto}
    .section{padding:96px 0}
    .section-tight{padding:68px 0}
    .eyebrow{
      display:inline-flex;align-items:center;gap:8px;
      padding:8px 12px;border:1px solid rgba(255,184,107,.42);
      color:var(--amber);background:rgba(255,184,107,.08);
      border-radius:999px;font-size:13px;font-weight:700;letter-spacing:.02em;
    }
    .badge,.tag{
      display:inline-flex;align-items:center;gap:7px;
      border:1px solid var(--line);background:rgba(255,255,255,.045);
      color:var(--muted);border-radius:999px;padding:7px 11px;
      font-size:13px;line-height:1.2;white-space:nowrap;
    }
    .tag.pink{color:#f5c3ff;border-color:rgba(217,70,239,.36);background:rgba(217,70,239,.09)}
    .tag.cyan{color:#b9ffe3;border-color:rgba(34,242,166,.38);background:rgba(34,242,166,.08)}
    .tag.amber{color:#ffd8aa;border-color:rgba(255,184,107,.42);background:rgba(255,184,107,.09)}
    h1,h2,h3,p{margin-top:0}
    h1{
      max-width:820px;
      font-size:clamp(34px,5.2vw,64px);
      line-height:1.08;
      letter-spacing:-.05em;
      font-weight:850;
      margin-bottom:22px;
    }
    h2{
      font-size:clamp(28px,3.3vw,42px);
      line-height:1.16;
      letter-spacing:-.035em;
      font-weight:820;
      margin-bottom:16px;
    }
    h3{font-size:21px;line-height:1.35;font-weight:760;margin-bottom:10px}
    p{color:var(--muted);font-size:16px}
    .lead{font-size:18px;max-width:720px;color:#d0c9c6}
    .neon-word{
      color:var(--text);
      text-decoration:underline;
      text-decoration-color:rgba(217,70,239,.72);
      text-decoration-thickness:5px;
      text-underline-offset:-2px;
      text-decoration-skip-ink:none;
    }
    .site-header{
      position:sticky;top:0;z-index:50;
      background:rgba(8,7,8,.92);
      backdrop-filter:blur(14px);
      border-bottom:1px solid var(--line);
    }
    .site-header:after{
      content:"";display:block;height:1px;
      background:linear-gradient(90deg,transparent,rgba(217,70,239,.68),rgba(34,242,166,.42),transparent);
      opacity:.65;
    }
    .nav{
      min-height:76px;
      display:flex;align-items:center;justify-content:space-between;gap:22px;
    }
    .logo{
      display:flex;align-items:center;gap:12px;min-width:0;
      font-weight:850;letter-spacing:-.03em;
    }
    .logo-mark{
      width:38px;height:38px;border-radius:14px;
      display:grid;place-items:center;
      color:#101014;font-weight:900;
      background:linear-gradient(135deg,var(--cyan),var(--primary));
      box-shadow:0 0 28px rgba(217,70,239,.28);
      flex:0 0 auto;
    }
    .logo-text{display:flex;flex-direction:column;line-height:1.18;min-width:0}
    .logo-title{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:330px}
    .logo-sub{font-size:11px;color:var(--muted);font-weight:700;letter-spacing:.08em}
    .nav-links{display:flex;align-items:center;gap:6px}
    .nav-links a{
      position:relative;
      padding:10px 12px;border-radius:999px;color:var(--muted);
      font-size:14px;font-weight:700;transition:.22s ease;
    }
    .nav-links a:after{
      content:"";position:absolute;left:18px;right:18px;bottom:4px;height:2px;
      background:var(--primary);border-radius:999px;transform:scaleX(0);transition:.22s ease;
      box-shadow:0 0 12px rgba(217,70,239,.7);
    }
    .nav-links a:hover{color:var(--cyan);background:rgba(255,255,255,.05)}
    .nav-links a.active{color:var(--text);background:rgba(217,70,239,.09)}
    .nav-links a.active:after{transform:scaleX(1)}
    .nav-actions{display:flex;align-items:center;gap:10px}
    .age-pill{
      border:1px solid rgba(255,184,107,.45);
      color:var(--amber);background:rgba(255,184,107,.08);
      padding:8px 11px;border-radius:999px;font-size:13px;font-weight:800;
    }
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:9px;
      min-height:44px;padding:0 18px;border-radius:999px;border:1px solid transparent;
      color:var(--text);font-size:15px;font-weight:800;cursor:pointer;
      transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background .22s ease;
    }
    .btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary-2));box-shadow:0 0 28px rgba(217,70,239,.20)}
    .btn-secondary{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.16)}
    .btn-warning{background:rgba(255,184,107,.12);border-color:rgba(255,184,107,.42);color:#ffd7aa}
    .btn:hover{transform:translateY(-2px) scale(1.02)}
    .btn-primary:hover{box-shadow:0 0 34px rgba(217,70,239,.38)}
    .btn-secondary:hover{border-color:rgba(34,242,166,.54);box-shadow:var(--shadow-cyan)}
    .btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
      outline:3px solid rgba(34,242,166,.42);outline-offset:3px;
    }
    .mobile-menu{display:none}
    .hero{padding:88px 0 56px}
    .hero-grid{display:grid;grid-template-columns:7fr 5fr;gap:34px;align-items:center}
    .hero-copy{
      position:relative;
      padding:18px 0;
    }
    .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0 22px}
    .trust-row{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}
    .dashboard{
      position:relative;
      border:1px solid var(--line);
      background:linear-gradient(180deg,rgba(26,22,29,.98),rgba(15,13,16,.98));
      border-radius:var(--radius-xl);
      padding:24px;
      box-shadow:var(--shadow);
      overflow:hidden;
    }
    .dashboard:before{
      content:"";position:absolute;inset:auto -25% -35% -10%;height:210px;
      background:radial-gradient(circle,rgba(217,70,239,.20),transparent 58%);
      pointer-events:none;
    }
    .dash-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}
    .status-dot{width:10px;height:10px;border-radius:50%;background:var(--cyan);box-shadow:0 0 16px var(--cyan)}
    .metric-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
    .metric{
      position:relative;
      border:1px solid var(--line);border-radius:20px;
      background:rgba(255,255,255,.035);
      padding:16px;min-height:126px;overflow:hidden;
    }
    .metric strong{display:block;font-size:30px;line-height:1;font-weight:850;color:var(--text);margin:10px 0}
    .metric span{font-size:13px;color:var(--muted);font-weight:700}
    .bar{height:7px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden;margin-top:14px}
    .bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--primary),var(--cyan))}
    .section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:34px}
    .section-head p{max-width:600px;margin-bottom:0}
    .bento{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-auto-rows:minmax(190px,auto);gap:18px}
    .card{
      position:relative;border:1px solid var(--line);background:var(--card);
      border-radius:var(--radius-lg);padding:24px;box-shadow:0 1px 0 rgba(255,255,255,.04) inset;
      transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
      overflow:hidden;
    }
    .card:hover{transform:translateY(-4px);border-color:var(--line-strong);box-shadow:var(--shadow)}
    .card:before{
      content:"";position:absolute;left:20px;right:20px;top:0;height:2px;
      background:linear-gradient(90deg,var(--primary),transparent,var(--cyan));opacity:.7;
    }
    .bento-large{grid-row:span 2;padding:32px;background:linear-gradient(145deg,#1f1724,var(--card) 62%)}
    .icon{
      width:46px;height:46px;border-radius:16px;margin-bottom:18px;
      display:grid;place-items:center;background:rgba(217,70,239,.12);
      border:1px solid rgba(217,70,239,.28);font-size:22px;
    }
    .mini-lines{display:grid;gap:10px;margin-top:24px}
    .mini-lines span{height:10px;border-radius:999px;background:linear-gradient(90deg,rgba(217,70,239,.45),rgba(34,242,166,.18),transparent)}
    .mini-lines span:nth-child(2){width:78%}.mini-lines span:nth-child(3){width:54%}
    .category-strip{display:flex;gap:10px;overflow:auto;padding-bottom:8px;margin-bottom:22px}
    .content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
    .cover{
      height:118px;border-radius:18px;margin-bottom:18px;border:1px solid var(--line);
      background:
        radial-gradient(circle at 24% 30%,rgba(217,70,239,.45),transparent 32%),
        radial-gradient(circle at 72% 58%,rgba(34,242,166,.24),transparent 30%),
        linear-gradient(135deg,#211827,#101014);
      position:relative;overflow:hidden;
    }
    .cover:after{
      content:"";position:absolute;inset:0;
      background:repeating-linear-gradient(135deg,rgba(255,255,255,.06) 0 1px,transparent 1px 14px);
      opacity:.35;
    }
    .card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:18px}
    .text-link{color:#dfffee;font-weight:800;text-decoration:underline;text-decoration-color:rgba(34,242,166,.45);text-underline-offset:5px}
    .compare{
      border:1px solid var(--line);
      border-radius:var(--radius-xl);
      background:
        linear-gradient(135deg,rgba(217,70,239,.08),transparent 35%),
        linear-gradient(225deg,rgba(34,242,166,.06),transparent 38%),
        var(--card-2);
      padding:24px;
      display:grid;grid-template-columns:1fr 1fr;gap:18px;
    }
    .compare-col{background:rgba(8,7,8,.36);border:1px solid var(--line);border-radius:22px;padding:24px}
    .list{list-style:none;padding:0;margin:18px 0 0;display:grid;gap:13px}
    .list li{display:flex;gap:11px;color:var(--muted)}
    .mark{width:22px;height:22px;display:grid;place-items:center;border-radius:50%;flex:0 0 auto;margin-top:2px;font-size:13px;font-weight:900}
    .mark.warn{background:rgba(255,184,107,.13);color:var(--amber)}
    .mark.ok{background:rgba(34,242,166,.13);color:var(--cyan)}
    .process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
    .step{padding:22px;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.035)}
    .step-num{font-size:13px;color:var(--cyan);font-weight:850;margin-bottom:8px}
    .faq-list{display:grid;gap:14px}
    details{
      border:1px solid var(--line);border-radius:20px;background:rgba(21,19,23,.86);
      padding:0;overflow:hidden;transition:border-color .22s ease;
    }
    details[open]{border-color:rgba(217,70,239,.38)}
    summary{
      list-style:none;cursor:pointer;padding:18px 22px;font-weight:800;color:var(--text);
      display:flex;justify-content:space-between;gap:18px;align-items:center;
    }
    summary::-webkit-details-marker{display:none}
    summary:after{content:"+";color:var(--primary);font-size:24px;line-height:1}
    details[open] summary:after{content:"–"}
    .faq-body{margin:0 22px 20px;padding:0 0 0 16px;border-left:3px solid var(--primary);color:var(--muted)}
    .cta-panel{
      display:grid;grid-template-columns:1.15fr .85fr;gap:20px;
      border:1px solid var(--line);border-radius:var(--radius-xl);
      background:linear-gradient(135deg,rgba(217,70,239,.10),rgba(34,242,166,.045)),var(--card);
      padding:28px;box-shadow:var(--shadow);
    }
    .form{display:grid;gap:14px}
    .form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
    label{display:grid;gap:7px;color:var(--text);font-size:14px;font-weight:800}
    input,select,textarea{
      width:100%;border:1px solid rgba(255,255,255,.14);background:#0d0c0f;
      color:var(--text);border-radius:16px;padding:13px 14px;transition:.2s ease;
    }
    textarea{min-height:112px;resize:vertical}
    input::placeholder,textarea::placeholder{color:#756f70}
    input:focus,select:focus,textarea:focus{border-color:rgba(34,242,166,.62);box-shadow:0 0 0 4px rgba(34,242,166,.08)}
    .privacy-card{border:1px solid rgba(34,242,166,.24);border-radius:22px;background:rgba(34,242,166,.055);padding:24px}
    .footer{
      border-top:1px solid var(--line);
      background:#070607;
      padding:44px 0 28px;
    }
    .footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:28px}
    .footer a{color:var(--muted);transition:.2s ease}
    .footer a:hover{color:var(--cyan);text-decoration:underline;text-underline-offset:5px}
    .footer-links{display:grid;gap:10px}
    .copyright{margin-top:28px;padding-top:20px;border-top:1px solid var(--line);color:#8f8785;font-size:13px}
    .sticky-cta{display:none}
    @media (max-width:1024px){
      .container{width:min(100% - 36px,var(--container))}
      .nav{min-height:auto;padding:14px 0;align-items:flex-start;flex-wrap:wrap}
      .nav-links{order:3;width:100%;overflow:auto;padding-bottom:6px}
      .nav-actions{margin-left:auto}
      .hero-grid,.cta-panel{grid-template-columns:1fr}
      .bento{grid-template-columns:1fr 1fr}
      .bento-large{grid-column:1/-1;grid-row:auto}
      .content-grid{grid-template-columns:1fr 1fr}
      .process-grid{grid-template-columns:1fr 1fr}
    }
    @media (max-width:768px){
      .section{padding:68px 0}.hero{padding:54px 0 34px}
      .logo-title{max-width:210px}
      .age-pill{display:none}
      .section-head{display:block}
      .metric-grid,.content-grid,.compare,.footer-grid,.form-row{grid-template-columns:1fr}
      .bento,.process-grid{grid-template-columns:1fr}
      .hero-actions .btn{flex:1 1 100%}
      .sticky-cta{
        display:flex;position:fixed;left:14px;right:14px;bottom:14px;z-index:60;
        justify-content:center;box-shadow:0 16px 44px rgba(0,0,0,.42);
      }
      body{padding-bottom:76px}
    }
    @media (max-width:520px){
      .container{width:calc(100% - 28px)}
      h1{font-size:32px}
      .nav-actions .btn-primary{display:none}
      .dashboard,.cta-panel{padding:18px;border-radius:22px}
      .card{padding:20px}
      .logo-mark{width:34px;height:34px;border-radius:12px}
      .logo-title{max-width:180px;font-size:13px}
    }

/* roulang page: category2 */
:root{
      --bg:#080708;
      --bg-2:#101014;
      --panel:#151317;
      --panel-2:#1A161D;
      --panel-3:#211B25;
      --text:#F8F5F2;
      --muted:#B8B0AE;
      --soft:#8F8785;
      --primary:#D946EF;
      --primary-2:#8B2BD6;
      --cyan:#22F2A6;
      --amber:#FFB86B;
      --danger:#FF6B8A;
      --border:rgba(255,255,255,.10);
      --border-strong:rgba(255,255,255,.18);
      --shadow:0 24px 80px rgba(217,70,239,.14),0 1px 0 rgba(255,255,255,.06) inset;
      --shadow-cyan:0 18px 60px rgba(34,242,166,.12);
      --radius-xl:28px;
      --radius-lg:22px;
      --radius-md:16px;
      --radius-sm:12px;
      --container:1180px;
      --ease:all .24s ease;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:"PingFang SC","Microsoft YaHei","Noto Sans SC","Helvetica Neue",Arial,sans-serif;
      color:var(--text);
      background:
        radial-gradient(circle at 12% 8%,rgba(217,70,239,.16),transparent 28%),
        radial-gradient(circle at 88% 20%,rgba(34,242,166,.10),transparent 26%),
        linear-gradient(180deg,var(--bg),var(--bg-2) 42%,#0B090D 100%);
      line-height:1.75;
      min-height:100vh;
      overflow-x:hidden;
    }
    body:before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      background:
        linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
      background-size:42px 42px;
      mask-image:linear-gradient(to bottom,rgba(0,0,0,.8),transparent 72%);
      z-index:-1;
    }
    a{color:inherit;text-decoration:none}
    img{max-width:100%;display:block}
    button,input,select,textarea{font:inherit}
    ::selection{background:rgba(217,70,239,.38);color:var(--text)}
    .container{
      width:min(var(--container),calc(100% - 64px));
      margin:0 auto;
    }
    .site-header{
      position:sticky;
      top:0;
      z-index:50;
      background:rgba(8,7,8,.92);
      backdrop-filter:blur(14px);
      border-bottom:1px solid var(--border);
      box-shadow:0 12px 34px rgba(0,0,0,.24);
    }
    .nav{
      min-height:78px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:22px;
    }
    .logo{
      display:flex;
      align-items:center;
      gap:12px;
      min-width:260px;
    }
    .logo-mark{
      width:42px;
      height:42px;
      border-radius:15px;
      display:grid;
      place-items:center;
      color:#0A090B;
      font-weight:900;
      font-size:24px;
      background:linear-gradient(135deg,var(--cyan),var(--primary));
      box-shadow:0 0 28px rgba(217,70,239,.34);
      flex:0 0 auto;
    }
    .logo-text{display:flex;flex-direction:column;line-height:1.2}
    .logo-title{
      max-width:300px;
      font-size:15px;
      font-weight:800;
      letter-spacing:-.02em;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
    }
    .logo-sub{
      margin-top:3px;
      font-size:12px;
      color:var(--muted);
    }
    .nav-links{
      display:flex;
      align-items:center;
      justify-content:center;
      gap:4px;
      flex:1;
    }
    .nav-links a{
      position:relative;
      padding:11px 14px;
      border-radius:999px;
      font-size:14px;
      color:var(--muted);
      transition:var(--ease);
      white-space:nowrap;
    }
    .nav-links a:after{
      content:"";
      position:absolute;
      left:18px;
      right:18px;
      bottom:5px;
      height:2px;
      border-radius:2px;
      background:transparent;
      transition:var(--ease);
    }
    .nav-links a:hover{
      color:var(--cyan);
      background:rgba(255,255,255,.05);
    }
    .nav-links a.active{
      color:var(--text);
      background:rgba(217,70,239,.08);
      text-shadow:0 0 18px rgba(217,70,239,.34);
    }
    .nav-links a.active:after{
      background:var(--primary);
      box-shadow:0 0 14px rgba(217,70,239,.9);
    }
    .nav-actions{
      display:flex;
      align-items:center;
      gap:12px;
    }
    .age-pill,.badge{
      display:inline-flex;
      align-items:center;
      gap:7px;
      padding:8px 12px;
      border-radius:999px;
      font-size:13px;
      font-weight:700;
      color:var(--amber);
      border:1px solid rgba(255,184,107,.36);
      background:rgba(255,184,107,.08);
      white-space:nowrap;
    }
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:44px;
      padding:12px 18px;
      border-radius:999px;
      border:1px solid transparent;
      font-weight:800;
      font-size:14px;
      cursor:pointer;
      transition:var(--ease);
      white-space:nowrap;
    }
    .btn-primary{
      color:var(--text);
      background:linear-gradient(135deg,var(--primary),var(--primary-2));
      box-shadow:0 0 0 1px rgba(255,255,255,.08) inset,0 16px 34px rgba(217,70,239,.22);
    }
    .btn-primary:hover{
      transform:translateY(-2px) scale(1.02);
      box-shadow:0 0 28px rgba(217,70,239,.36),0 16px 34px rgba(217,70,239,.26);
    }
    .btn-secondary{
      color:var(--text);
      background:rgba(255,255,255,.04);
      border-color:rgba(255,255,255,.16);
    }
    .btn-secondary:hover{
      border-color:rgba(34,242,166,.58);
      color:var(--cyan);
      transform:translateY(-2px);
      box-shadow:var(--shadow-cyan);
    }
    .btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
      outline:3px solid rgba(34,242,166,.42);
      outline-offset:3px;
    }
    main{overflow:hidden}
    .section{
      padding:92px 0;
      position:relative;
    }
    .section-tight{padding:64px 0}
    .breadcrumb{
      display:flex;
      align-items:center;
      gap:8px;
      color:var(--muted);
      font-size:14px;
      margin:28px 0 0;
      flex-wrap:wrap;
    }
    .breadcrumb a{
      color:var(--muted);
      border-bottom:1px solid transparent;
      transition:var(--ease);
    }
    .breadcrumb a:hover{
      color:var(--cyan);
      border-color:rgba(34,242,166,.45);
    }
    .hero{
      padding:52px 0 84px;
    }
    .hero-grid{
      display:grid;
      grid-template-columns:1.08fr .92fr;
      gap:42px;
      align-items:center;
    }
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      margin-bottom:18px;
      padding:8px 12px;
      border-radius:999px;
      border:1px solid rgba(34,242,166,.30);
      background:rgba(34,242,166,.07);
      color:var(--cyan);
      font-size:13px;
      font-weight:800;
    }
    h1,h2,h3,p{margin-top:0}
    h1{
      margin-bottom:20px;
      max-width:860px;
      font-size:clamp(34px,5vw,58px);
      line-height:1.08;
      letter-spacing:-.045em;
      font-weight:900;
    }
    h2{
      margin-bottom:16px;
      font-size:clamp(28px,3.6vw,40px);
      line-height:1.18;
      letter-spacing:-.03em;
      font-weight:850;
    }
    h3{
      margin-bottom:10px;
      font-size:21px;
      line-height:1.3;
      font-weight:800;
    }
    p{
      color:var(--muted);
      font-size:16px;
    }
    .lead{
      max-width:760px;
      font-size:18px;
      line-height:1.85;
      color:#D3CCCA;
      margin-bottom:28px;
    }
    .highlight{
      color:var(--text);
      background:linear-gradient(transparent 62%,rgba(217,70,239,.35) 0);
      padding:0 3px;
    }
    .hero-actions{
      display:flex;
      gap:14px;
      flex-wrap:wrap;
      margin:30px 0 22px;
    }
    .trust-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:22px;
    }
    .trust-row span{
      display:inline-flex;
      align-items:center;
      gap:6px;
      padding:8px 11px;
      border-radius:999px;
      border:1px solid var(--border);
      background:rgba(255,255,255,.035);
      color:var(--muted);
      font-size:13px;
    }
    .experience-panel{
      position:relative;
      border:1px solid rgba(34,242,166,.24);
      border-radius:var(--radius-xl);
      background:
        radial-gradient(circle at 86% 18%,rgba(34,242,166,.18),transparent 26%),
        linear-gradient(145deg,#17131A,#0F0D12);
      padding:26px;
      box-shadow:var(--shadow-cyan);
      overflow:hidden;
    }
    .experience-panel:before{
      content:"";
      position:absolute;
      inset:0;
      background:linear-gradient(120deg,transparent,rgba(255,255,255,.05),transparent);
      transform:translateX(-75%);
      opacity:.8;
    }
    .panel-top{
      display:flex;
      align-items:flex-start;
      justify-content:space-between;
      gap:16px;
      margin-bottom:22px;
      position:relative;
      z-index:1;
    }
    .panel-top strong{
      display:block;
      font-size:20px;
      margin-bottom:4px;
    }
    .status-dot{
      width:12px;
      height:12px;
      margin-top:8px;
      border-radius:50%;
      background:var(--cyan);
      box-shadow:0 0 18px rgba(34,242,166,.8);
    }
    .metric-list{
      display:grid;
      gap:16px;
      position:relative;
      z-index:1;
    }
    .metric{
      padding:16px;
      border:1px solid var(--border);
      border-radius:18px;
      background:rgba(255,255,255,.035);
    }
    .metric-head{
      display:flex;
      justify-content:space-between;
      gap:12px;
      color:var(--text);
      font-weight:800;
      margin-bottom:10px;
    }
    .metric-head span:last-child{color:var(--cyan)}
    .bar{
      height:8px;
      border-radius:999px;
      background:rgba(255,255,255,.08);
      overflow:hidden;
    }
    .bar i{
      display:block;
      height:100%;
      border-radius:999px;
      background:linear-gradient(90deg,var(--cyan),var(--primary));
      box-shadow:0 0 18px rgba(34,242,166,.34);
    }
    .section-head{
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:24px;
      margin-bottom:28px;
    }
    .section-head p{
      max-width:620px;
      margin-bottom:0;
    }
    .filter-strip{
      display:flex;
      gap:10px;
      flex-wrap:wrap;
      padding:12px;
      border:1px solid var(--border);
      border-radius:999px;
      background:rgba(255,255,255,.035);
      margin-bottom:26px;
    }
    .filter-strip a{
      padding:9px 13px;
      border-radius:999px;
      color:var(--muted);
      font-size:14px;
      transition:var(--ease);
    }
    .filter-strip a:hover,.filter-strip a.active{
      color:var(--text);
      background:rgba(34,242,166,.12);
      box-shadow:0 0 0 1px rgba(34,242,166,.22) inset;
    }
    .param-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:16px;
    }
    .param-card,.card{
      position:relative;
      border:1px solid var(--border);
      border-radius:var(--radius-lg);
      background:linear-gradient(180deg,var(--panel),var(--panel-2));
      padding:22px;
      box-shadow:0 1px 0 rgba(255,255,255,.05) inset;
      transition:var(--ease);
      overflow:hidden;
    }
    .param-card:before,.card:before{
      content:"";
      position:absolute;
      top:0;
      left:22px;
      right:22px;
      height:2px;
      background:linear-gradient(90deg,var(--cyan),transparent);
      opacity:.7;
    }
    .param-card:hover,.card:hover{
      transform:translateY(-4px);
      border-color:rgba(34,242,166,.40);
      box-shadow:var(--shadow-cyan);
    }
    .param-icon{
      width:48px;
      height:48px;
      display:grid;
      place-items:center;
      border-radius:16px;
      margin-bottom:18px;
      color:var(--cyan);
      background:rgba(34,242,166,.10);
      border:1px solid rgba(34,242,166,.18);
      font-size:22px;
    }
    .param-value{
      display:block;
      color:var(--text);
      font-size:32px;
      line-height:1;
      font-weight:900;
      letter-spacing:-.03em;
      margin-bottom:10px;
    }
    .timeline{
      position:relative;
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:18px;
      margin-top:26px;
    }
    .timeline:before{
      content:"";
      position:absolute;
      top:34px;
      left:6%;
      right:6%;
      height:1px;
      background:linear-gradient(90deg,transparent,rgba(34,242,166,.5),rgba(217,70,239,.4),transparent);
    }
    .step{
      position:relative;
      padding:20px;
      border:1px solid var(--border);
      border-radius:var(--radius-lg);
      background:rgba(21,19,23,.86);
      z-index:1;
      transition:var(--ease);
    }
    .step:hover{
      transform:translateY(-4px);
      border-color:rgba(217,70,239,.42);
    }
    .step-num{
      width:34px;
      height:34px;
      display:grid;
      place-items:center;
      margin-bottom:16px;
      border-radius:50%;
      color:#050505;
      background:linear-gradient(135deg,var(--cyan),var(--primary));
      font-weight:900;
      box-shadow:0 0 22px rgba(34,242,166,.26);
    }
    .split-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:22px;
      align-items:stretch;
    }
    .compare-card{
      min-height:100%;
      padding:28px;
      border-radius:var(--radius-xl);
      border:1px solid var(--border);
      background:linear-gradient(145deg,var(--panel),#100D12);
      transition:var(--ease);
    }
    .compare-card.featured{
      border-color:rgba(34,242,166,.28);
      background:
        radial-gradient(circle at 92% 14%,rgba(34,242,166,.12),transparent 32%),
        linear-gradient(145deg,#151317,#101014);
    }
    .compare-card:hover{
      transform:translateY(-4px);
      border-color:rgba(217,70,239,.38);
      box-shadow:var(--shadow);
    }
    .check-list{
      display:grid;
      gap:12px;
      margin:18px 0 0;
      padding:0;
      list-style:none;
    }
    .check-list li{
      display:flex;
      gap:10px;
      align-items:flex-start;
      color:#D7D0CD;
    }
    .check-list li:before{
      content:"✓";
      width:22px;
      height:22px;
      display:grid;
      place-items:center;
      flex:0 0 auto;
      border-radius:50%;
      color:#050505;
      background:var(--cyan);
      font-size:13px;
      font-weight:900;
      margin-top:3px;
    }
    .content-layout{
      display:grid;
      grid-template-columns:1fr 330px;
      gap:24px;
      align-items:start;
    }
    .card-grid{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:18px;
    }
    .card-cover{
      height:120px;
      margin:-2px -2px 18px;
      border-radius:18px;
      border:1px solid var(--border);
      background:
        radial-gradient(circle at 24% 28%,rgba(217,70,239,.36),transparent 28%),
        radial-gradient(circle at 80% 64%,rgba(34,242,166,.28),transparent 30%),
        linear-gradient(135deg,#241526,#111015);
      position:relative;
      overflow:hidden;
    }
    .card-cover:after{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px),
        linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px);
      background-size:26px 26px;
      opacity:.48;
    }
    .tag-row{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin:14px 0 18px;
    }
    .tag{
      display:inline-flex;
      align-items:center;
      padding:6px 9px;
      border-radius:999px;
      font-size:12px;
      color:var(--muted);
      border:1px solid var(--border);
      background:rgba(255,255,255,.035);
    }
    .tag.green{
      color:var(--cyan);
      border-color:rgba(34,242,166,.26);
      background:rgba(34,242,166,.07);
    }
    .tag.pink{
      color:#F4B2FF;
      border-color:rgba(217,70,239,.28);
      background:rgba(217,70,239,.08);
    }
    .side-panel{
      position:sticky;
      top:102px;
      border:1px solid rgba(255,184,107,.28);
      border-radius:var(--radius-xl);
      background:
        radial-gradient(circle at 100% 0,rgba(255,184,107,.16),transparent 35%),
        linear-gradient(180deg,var(--panel),#120F14);
      padding:24px;
      box-shadow:0 20px 60px rgba(255,184,107,.08);
    }
    .notice{
      padding:16px;
      border-radius:18px;
      border:1px solid rgba(255,184,107,.26);
      background:rgba(255,184,107,.08);
      color:#F4D0A9;
      font-size:14px;
      margin-top:18px;
    }
    .faq-list{
      display:grid;
      gap:14px;
      margin-top:28px;
    }
    details.faq-item{
      border:1px solid var(--border);
      border-radius:var(--radius-lg);
      background:rgba(21,19,23,.88);
      overflow:hidden;
      transition:var(--ease);
    }
    details.faq-item[open]{
      border-color:rgba(217,70,239,.38);
      box-shadow:var(--shadow);
    }
    .faq-item summary{
      list-style:none;
      cursor:pointer;
      padding:20px 22px;
      font-weight:800;
      color:var(--text);
      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:28px;
      height:28px;
      border-radius:50%;
      display:grid;
      place-items:center;
      color:var(--cyan);
      background:rgba(34,242,166,.08);
      border:1px solid rgba(34,242,166,.20);
      flex:0 0 auto;
      transition:var(--ease);
    }
    .faq-item[open] summary:after{
      content:"−";
      transform:rotate(180deg);
      color:var(--primary);
      background:rgba(217,70,239,.10);
      border-color:rgba(217,70,239,.24);
    }
    .faq-content{
      margin:0 22px 22px;
      padding:4px 0 4px 16px;
      border-left:3px solid var(--primary);
      color:var(--muted);
    }
    .cta{
      border:1px solid rgba(217,70,239,.30);
      border-radius:var(--radius-xl);
      background:
        radial-gradient(circle at 18% 20%,rgba(217,70,239,.22),transparent 30%),
        radial-gradient(circle at 86% 72%,rgba(34,242,166,.14),transparent 34%),
        linear-gradient(135deg,#171118,#0D0C10);
      padding:38px;
      display:grid;
      grid-template-columns:1fr auto;
      gap:28px;
      align-items:center;
      box-shadow:var(--shadow);
    }
    .cta p{margin-bottom:0;max-width:700px}
    .footer{
      padding:64px 0 30px;
      border-top:1px solid var(--border);
      background:#070607;
      color:var(--muted);
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.25fr .7fr 1fr;
      gap:42px;
      align-items:start;
    }
    .footer h3{
      color:var(--text);
      font-size:16px;
      margin-bottom:14px;
    }
    .footer p{
      margin-bottom:0;
      font-size:14px;
      line-height:1.8;
    }
    .footer-links{
      display:grid;
      gap:10px;
    }
    .footer-links a{
      color:var(--muted);
      font-size:14px;
      transition:var(--ease);
    }
    .footer-links a:hover{
      color:var(--cyan);
      transform:translateX(3px);
    }
    .copyright{
      margin-top:40px;
      padding-top:20px;
      border-top:1px solid var(--border);
      font-size:13px;
      color:var(--soft);
    }
    .mobile-sticky{
      display:none;
      position:fixed;
      left:14px;
      right:14px;
      bottom:14px;
      z-index:45;
      padding:10px;
      border:1px solid rgba(34,242,166,.28);
      border-radius:999px;
      background:rgba(8,7,8,.92);
      backdrop-filter:blur(14px);
      box-shadow:0 18px 44px rgba(0,0,0,.38);
    }
    .mobile-sticky a{
      width:100%;
    }
    @media (max-width:1024px){
      .container{width:min(100% - 40px,var(--container))}
      .nav{min-height:auto;padding:16px 0;align-items:flex-start;flex-wrap:wrap}
      .logo{min-width:auto;flex:1}
      .nav-links{
        order:3;
        width:100%;
        justify-content:flex-start;
        overflow-x:auto;
        padding:4px 0 2px;
        scrollbar-width:none;
      }
      .nav-links::-webkit-scrollbar{display:none}
      .nav-actions{margin-left:auto}
      .age-pill{display:none}
      .hero-grid,.content-layout{grid-template-columns:1fr}
      .side-panel{position:relative;top:auto}
      .param-grid,.timeline{grid-template-columns:repeat(2,1fr)}
      .timeline:before{display:none}
      .footer-grid{grid-template-columns:1fr 1fr}
      .footer-grid>div:first-child{grid-column:1/-1}
    }
    @media (max-width:768px){
      .section{padding:68px 0}
      .hero{padding:34px 0 66px}
      .section-head{display:block}
      .section-head p{margin-top:8px}
      .split-grid,.card-grid,.cta{grid-template-columns:1fr}
      .cta{padding:28px}
      .param-grid{grid-template-columns:1fr 1fr}
      .filter-strip{
        flex-wrap:nowrap;
        overflow-x:auto;
        border-radius:20px;
        scrollbar-width:none;
      }
      .filter-strip::-webkit-scrollbar{display:none}
      .footer-grid{grid-template-columns:1fr}
      .mobile-sticky{display:flex}
    }
    @media (max-width:520px){
      .container{width:calc(100% - 32px)}
      h1{font-size:32px;letter-spacing:-.035em}
      h2{font-size:26px}
      .logo-title{max-width:210px}
      .nav-actions .btn{display:none}
      .hero-actions .btn,.cta .btn{width:100%}
      .param-grid,.timeline{grid-template-columns:1fr}
      .experience-panel,.compare-card,.side-panel,.cta{border-radius:22px;padding:22px}
      .card{padding:18px}
      .trust-row span{width:100%;justify-content:center}
    }

/* roulang page: category1 */
:root{
      --bg:#080708;
      --bg-2:#101014;
      --panel:#151317;
      --panel-2:#1A161D;
      --text:#F8F5F2;
      --muted:#B8B0AE;
      --soft:#8F8786;
      --primary:#D946EF;
      --primary-2:#8B2BE2;
      --green:#22F2A6;
      --amber:#FFB86B;
      --danger:#FF6B8A;
      --border:rgba(255,255,255,.10);
      --border-strong:rgba(217,70,239,.42);
      --shadow:0 24px 80px rgba(217,70,239,.14), 0 1px 0 rgba(255,255,255,.06) inset;
      --shadow-green:0 18px 54px rgba(34,242,166,.12);
      --radius-lg:28px;
      --radius-md:22px;
      --radius-sm:16px;
      --container:1200px;
      --font:"PingFang SC","Microsoft YaHei","Noto Sans SC","Helvetica Neue",Arial,sans-serif;
    }

    *{box-sizing:border-box;}
    html{scroll-behavior:smooth;}
    body{
      margin:0;
      font-family:var(--font);
      color:var(--text);
      background:
        radial-gradient(circle at 8% 12%, rgba(217,70,239,.16), transparent 34%),
        radial-gradient(circle at 92% 8%, rgba(34,242,166,.10), transparent 28%),
        linear-gradient(180deg, #080708 0%, #101014 48%, #080708 100%);
      line-height:1.75;
      overflow-x:hidden;
    }
    body:before{
      content:"";
      position:fixed;
      inset:0;
      pointer-events:none;
      z-index:-1;
      background-image:
        linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.028) 1px, transparent 1px);
      background-size:56px 56px;
      mask-image:linear-gradient(to bottom, rgba(0,0,0,.8), transparent 78%);
    }
    a{color:inherit;text-decoration:none;}
    img{max-width:100%;display:block;}
    button,input,textarea,select{font:inherit;}
    button{cursor:pointer;}
    ::selection{background:rgba(217,70,239,.36);color:var(--text);}
    .container{
      width:min(var(--container), calc(100% - 64px));
      margin:0 auto;
    }

    .site-header{
      position:sticky;
      top:0;
      z-index:100;
      background:rgba(8,7,8,.92);
      backdrop-filter:blur(14px);
      border-bottom:1px solid rgba(255,255,255,.09);
      box-shadow:0 12px 36px rgba(0,0,0,.28);
    }
    .nav{
      min-height:82px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:22px;
    }
    .logo{
      display:flex;
      align-items:center;
      gap:12px;
      min-width:240px;
    }
    .logo-mark{
      width:42px;
      height:42px;
      border-radius:14px;
      display:grid;
      place-items:center;
      color:#0D0B0D;
      font-weight:900;
      background:linear-gradient(135deg, var(--green), var(--primary));
      box-shadow:0 0 28px rgba(217,70,239,.34);
      flex:0 0 auto;
    }
    .logo-text{display:flex;flex-direction:column;line-height:1.15;min-width:0;}
    .logo-title{
      color:var(--text);
      font-weight:820;
      font-size:15px;
      max-width:310px;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
    }
    .logo-sub{
      margin-top:4px;
      color:var(--muted);
      font-size:12px;
      letter-spacing:.08em;
    }
    .nav-links{
      display:flex;
      align-items:center;
      justify-content:center;
      gap:4px;
      padding:8px;
      border:1px solid rgba(255,255,255,.08);
      border-radius:999px;
      background:rgba(255,255,255,.025);
    }
    .nav-links a{
      position:relative;
      padding:10px 15px;
      border-radius:999px;
      color:var(--muted);
      font-size:14px;
      font-weight:650;
      transition:color .25s ease, background .25s ease, box-shadow .25s ease;
      white-space:nowrap;
    }
    .nav-links a:hover{
      color:var(--green);
      background:rgba(255,255,255,.055);
    }
    .nav-links a.active{
      color:var(--text);
      background:rgba(217,70,239,.12);
      box-shadow:0 0 22px rgba(217,70,239,.18);
    }
    .nav-links a.active:after{
      content:"";
      position:absolute;
      left:18px;
      right:18px;
      bottom:3px;
      height:2px;
      border-radius:999px;
      background:var(--primary);
      box-shadow:0 0 12px rgba(217,70,239,.9);
    }
    .nav-actions{
      display:flex;
      align-items:center;
      gap:12px;
      flex:0 0 auto;
    }
    .age-pill,.badge{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 12px;
      border-radius:999px;
      border:1px solid rgba(255,184,107,.46);
      color:var(--amber);
      background:rgba(255,184,107,.08);
      font-size:13px;
      font-weight:760;
      white-space:nowrap;
    }
    .badge.green{
      color:var(--green);
      border-color:rgba(34,242,166,.42);
      background:rgba(34,242,166,.08);
    }
    .badge.purple{
      color:#F3B6FF;
      border-color:rgba(217,70,239,.42);
      background:rgba(217,70,239,.10);
    }
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:44px;
      padding:12px 20px;
      border-radius:999px;
      border:1px solid transparent;
      font-weight:780;
      color:var(--text);
      transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
      text-align:center;
      white-space:nowrap;
    }
    .btn:hover{transform:translateY(-2px) scale(1.01);}
    .btn:active{transform:translateY(0) scale(.99);}
    .btn:focus-visible,
    .faq-question:focus-visible,
    input:focus-visible,
    select:focus-visible,
    textarea:focus-visible{
      outline:0;
      box-shadow:0 0 0 4px rgba(34,242,166,.18), 0 0 0 1px var(--green);
    }
    .btn-primary{
      background:linear-gradient(135deg, var(--primary), var(--primary-2));
      box-shadow:0 0 28px rgba(217,70,239,.22);
    }
    .btn-primary:hover{box-shadow:0 0 34px rgba(217,70,239,.40);}
    .btn-secondary{
      background:rgba(255,255,255,.035);
      border-color:rgba(255,255,255,.16);
      color:var(--text);
    }
    .btn-secondary:hover{
      border-color:rgba(34,242,166,.52);
      box-shadow:0 0 26px rgba(34,242,166,.12);
    }

    main{position:relative;}
    .section{
      padding:92px 0;
    }
    .section.tight{padding:64px 0;}
    .section-head{
      max-width:760px;
      margin-bottom:34px;
    }
    .section-kicker{
      display:inline-flex;
      color:var(--green);
      font-size:14px;
      font-weight:820;
      letter-spacing:.12em;
      text-transform:uppercase;
      margin-bottom:12px;
    }
    h1,h2,h3,p{margin-top:0;}
    h1{
      font-size:clamp(34px, 5vw, 58px);
      line-height:1.08;
      letter-spacing:-.06em;
      font-weight:900;
      margin-bottom:20px;
    }
    h2{
      font-size:clamp(28px, 3vw, 40px);
      line-height:1.16;
      letter-spacing:-.04em;
      font-weight:850;
      margin-bottom:14px;
    }
    h3{
      font-size:21px;
      line-height:1.32;
      font-weight:790;
      margin-bottom:10px;
    }
    p{
      color:var(--muted);
      font-size:16px;
    }
    .lead{
      font-size:18px;
      line-height:1.85;
      color:#D5CFCD;
      max-width:760px;
    }
    .text-highlight{
      color:var(--text);
      background:linear-gradient(transparent 66%, rgba(217,70,239,.36) 66%);
    }

    .breadcrumb{
      display:flex;
      flex-wrap:wrap;
      align-items:center;
      gap:10px;
      color:var(--soft);
      font-size:14px;
      margin-bottom:26px;
    }
    .breadcrumb a{
      color:var(--muted);
      border-bottom:1px solid transparent;
      transition:color .2s ease,border-color .2s ease;
    }
    .breadcrumb a:hover{
      color:var(--green);
      border-color:rgba(34,242,166,.5);
    }
    .breadcrumb span:last-child{color:var(--text);}

    .hero{
      padding:64px 0 86px;
      position:relative;
      overflow:hidden;
    }
    .hero:after{
      content:"";
      position:absolute;
      width:560px;
      height:560px;
      right:-180px;
      top:40px;
      border-radius:50%;
      background:
        radial-gradient(circle, rgba(217,70,239,.20), transparent 58%),
        repeating-conic-gradient(from 18deg, rgba(255,255,255,.045) 0deg 8deg, transparent 8deg 16deg);
      filter:blur(.2px);
      opacity:.65;
      z-index:-1;
    }
    .hero-grid{
      display:grid;
      grid-template-columns:1.04fr .96fr;
      gap:38px;
      align-items:center;
    }
    .hero-copy{
      padding:34px 0;
    }
    .hero-badges{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-bottom:24px;
    }
    .hero-actions{
      display:flex;
      flex-wrap:wrap;
      gap:14px;
      margin-top:30px;
    }
    .trust-row{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:24px;
      color:var(--muted);
      font-size:14px;
    }
    .trust-row span{
      padding:7px 10px;
      border:1px solid rgba(255,255,255,.10);
      border-radius:999px;
      background:rgba(255,255,255,.035);
    }

    .filter-panel{
      border:1px solid rgba(255,255,255,.11);
      border-radius:var(--radius-lg);
      background:
        linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,.02)),
        var(--panel);
      box-shadow:var(--shadow);
      padding:24px;
      position:relative;
      overflow:hidden;
    }
    .filter-panel:before{
      content:"";
      position:absolute;
      inset:0 0 auto 0;
      height:4px;
      background:linear-gradient(90deg, var(--primary), var(--green), var(--amber));
    }
    .panel-top{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
      margin-bottom:18px;
    }
    .panel-title{
      font-size:18px;
      font-weight:830;
    }
    .search-box{
      position:relative;
      margin:18px 0;
    }
    .search-box input{
      width:100%;
      min-height:54px;
      border-radius:18px;
      border:1px solid rgba(255,255,255,.12);
      background:#0E0D10;
      color:var(--text);
      padding:0 18px 0 46px;
      transition:border-color .2s ease, box-shadow .2s ease;
    }
    .search-box:before{
      content:"⌕";
      position:absolute;
      left:18px;
      top:50%;
      transform:translateY(-50%);
      color:var(--green);
      font-size:20px;
    }
    .quick-filters{
      display:flex;
      flex-wrap:wrap;
      gap:10px;
      margin-top:18px;
    }
    .filter-chip{
      border:1px solid rgba(255,255,255,.11);
      background:rgba(255,255,255,.035);
      color:var(--muted);
      padding:9px 12px;
      border-radius:999px;
      font-size:13px;
      transition:all .22s ease;
    }
    .filter-chip:hover,.filter-chip.active{
      color:var(--text);
      border-color:rgba(217,70,239,.45);
      background:rgba(217,70,239,.12);
      box-shadow:0 0 18px rgba(217,70,239,.12);
    }
    .mini-stats{
      display:grid;
      grid-template-columns:repeat(2,1fr);
      gap:12px;
      margin-top:20px;
    }
    .mini-stat{
      padding:16px;
      border-radius:18px;
      background:rgba(0,0,0,.22);
      border:1px solid rgba(255,255,255,.09);
    }
    .mini-stat strong{
      display:block;
      color:var(--text);
      font-size:24px;
      line-height:1.1;
      margin-bottom:5px;
    }
    .mini-stat span{color:var(--muted);font-size:13px;}

    .tag-cloud-wrap{
      display:grid;
      grid-template-columns:1fr 380px;
      gap:24px;
      align-items:stretch;
    }
    .card{
      position:relative;
      padding:24px;
      border-radius:var(--radius-md);
      background:linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.016)), var(--panel);
      border:1px solid var(--border);
      box-shadow:0 1px 0 rgba(255,255,255,.05) inset;
      transition:transform .24s ease,border-color .24s ease,box-shadow .24s ease;
      overflow:hidden;
    }
    .card:hover{
      transform:translateY(-4px);
      border-color:var(--border-strong);
      box-shadow:var(--shadow);
    }
    .tag-cloud{
      display:flex;
      flex-wrap:wrap;
      gap:12px;
      align-content:flex-start;
    }
    .cloud-tag{
      display:inline-flex;
      align-items:center;
      border-radius:999px;
      border:1px solid rgba(255,255,255,.12);
      background:rgba(255,255,255,.035);
      color:var(--text);
      padding:10px 15px;
      font-weight:760;
      transition:transform .2s ease, border-color .2s ease, background .2s ease;
    }
    .cloud-tag:hover{
      transform:translateY(-2px);
      border-color:rgba(34,242,166,.48);
      background:rgba(34,242,166,.075);
    }
    .cloud-tag.size-lg{font-size:20px;color:#F7C4FF;border-color:rgba(217,70,239,.35);}
    .cloud-tag.size-md{font-size:17px;color:#BDFDE1;border-color:rgba(34,242,166,.32);}
    .cloud-tag.size-sm{font-size:14px;color:#FFD9AA;border-color:rgba(255,184,107,.30);}

    .rank-list{
      display:grid;
      gap:14px;
    }
    .rank-item{
      padding:15px;
      border-radius:18px;
      background:rgba(0,0,0,.22);
      border:1px solid rgba(255,255,255,.08);
    }
    .rank-head{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:14px;
      margin-bottom:10px;
    }
    .rank-name{
      display:flex;
      align-items:center;
      gap:10px;
      font-weight:790;
    }
    .rank-no{
      width:28px;
      height:28px;
      display:grid;
      place-items:center;
      border-radius:9px;
      background:rgba(217,70,239,.13);
      color:#F3B6FF;
      font-size:13px;
      font-weight:900;
    }
    .rank-value{color:var(--green);font-weight:820;font-size:13px;}
    .bar{
      height:8px;
      border-radius:999px;
      background:rgba(255,255,255,.08);
      overflow:hidden;
    }
    .bar span{
      display:block;
      height:100%;
      border-radius:inherit;
      background:linear-gradient(90deg, var(--primary), var(--green));
      box-shadow:0 0 18px rgba(34,242,166,.34);
    }

    .index-layout{
      display:grid;
      grid-template-columns:1fr 320px;
      gap:24px;
      align-items:start;
    }
    .content-grid{
      display:grid;
      grid-template-columns:repeat(2, minmax(0,1fr));
      gap:18px;
    }
    .content-card{
      min-height:240px;
      display:flex;
      flex-direction:column;
      justify-content:space-between;
    }
    .abstract-cover{
      height:92px;
      border-radius:18px;
      margin-bottom:18px;
      border:1px solid rgba(255,255,255,.10);
      background:
        radial-gradient(circle at 18% 28%, rgba(217,70,239,.46), transparent 26%),
        radial-gradient(circle at 82% 30%, rgba(34,242,166,.36), transparent 24%),
        linear-gradient(135deg, rgba(255,184,107,.12), rgba(217,70,239,.08) 55%, rgba(34,242,166,.10));
      position:relative;
      overflow:hidden;
    }
    .abstract-cover:after{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(120deg, transparent 0 20%, rgba(255,255,255,.07) 20% 21%, transparent 21% 48%, rgba(255,255,255,.05) 48% 49%, transparent 49%),
        repeating-linear-gradient(0deg, rgba(255,255,255,.045) 0 1px, transparent 1px 12px);
      opacity:.7;
    }
    .card-tags{
      display:flex;
      flex-wrap:wrap;
      gap:8px;
      margin:14px 0 18px;
    }
    .tag{
      display:inline-flex;
      align-items:center;
      padding:6px 9px;
      border-radius:999px;
      background:rgba(255,255,255,.05);
      color:var(--muted);
      border:1px solid rgba(255,255,255,.08);
      font-size:12px;
      font-weight:720;
    }
    .tag.hot{color:#F4B9FF;border-color:rgba(217,70,239,.30);background:rgba(217,70,239,.08);}
    .tag.safe{color:#B8FFE3;border-color:rgba(34,242,166,.28);background:rgba(34,242,166,.07);}
    .tag.warn{color:#FFD6A2;border-color:rgba(255,184,107,.28);background:rgba(255,184,107,.07);}
    .card-link{
      display:inline-flex;
      align-items:center;
      gap:8px;
      color:var(--green);
      font-weight:820;
      border-bottom:1px solid rgba(34,242,166,.32);
      width:max-content;
      transition:gap .2s ease,color .2s ease;
    }
    .card-link:hover{gap:12px;color:var(--text);}

    .side-note{
      position:sticky;
      top:104px;
    }
    .note-list{
      display:grid;
      gap:12px;
      margin:18px 0 0;
      padding:0;
      list-style:none;
    }
    .note-list li{
      display:flex;
      gap:10px;
      color:var(--muted);
      font-size:14px;
    }
    .note-list li:before{
      content:"✓";
      width:22px;
      height:22px;
      flex:0 0 auto;
      display:grid;
      place-items:center;
      border-radius:8px;
      color:#09110D;
      background:var(--green);
      font-weight:900;
      line-height:1;
      margin-top:2px;
    }

    .process-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:16px;
      counter-reset:step;
    }
    .process-card{
      counter-increment:step;
      padding-top:58px;
    }
    .process-card:before{
      content:"0" counter(step);
      position:absolute;
      top:18px;
      left:22px;
      color:var(--green);
      font-weight:900;
      font-size:22px;
      letter-spacing:-.04em;
      text-shadow:0 0 18px rgba(34,242,166,.28);
    }

    .faq-wrap{
      display:grid;
      gap:14px;
      max-width:920px;
    }
    .faq-item{
      border:1px solid rgba(255,255,255,.10);
      border-radius:20px;
      background:rgba(21,19,23,.82);
      overflow:hidden;
    }
    .faq-question{
      width:100%;
      border:0;
      color:var(--text);
      background:transparent;
      min-height:62px;
      padding:18px 22px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      text-align:left;
      font-weight:800;
    }
    .faq-icon{
      width:30px;
      height:30px;
      border-radius:50%;
      display:grid;
      place-items:center;
      border:1px solid rgba(217,70,239,.34);
      color:#F4B9FF;
      flex:0 0 auto;
      transition:transform .25s ease;
    }
    .faq-answer{
      max-height:0;
      opacity:0;
      overflow:hidden;
      transition:max-height .3s ease, opacity .3s ease;
    }
    .faq-answer-inner{
      margin:0 22px 22px;
      padding:16px 0 0 18px;
      border-left:3px solid var(--primary);
      color:var(--muted);
    }
    .faq-item.open .faq-answer{
      max-height:220px;
      opacity:1;
    }
    .faq-item.open .faq-icon{transform:rotate(45deg);}

    .cta{
      padding:40px;
      border-radius:var(--radius-lg);
      background:
        radial-gradient(circle at 12% 10%, rgba(217,70,239,.24), transparent 28%),
        radial-gradient(circle at 88% 18%, rgba(34,242,166,.18), transparent 28%),
        linear-gradient(135deg, rgba(255,255,255,.06), rgba(255,255,255,.02)),
        var(--panel-2);
      border:1px solid rgba(255,255,255,.12);
      box-shadow:var(--shadow);
      display:grid;
      grid-template-columns:1fr auto;
      gap:28px;
      align-items:center;
    }
    .cta p{margin-bottom:0;}
    .cta-actions{
      display:flex;
      gap:12px;
      flex-wrap:wrap;
      justify-content:flex-end;
    }

    .footer{
      padding:58px 0 30px;
      border-top:1px solid rgba(255,255,255,.10);
      background:#080708;
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.25fr .8fr 1fr;
      gap:34px;
      align-items:start;
    }
    .footer h3{
      font-size:17px;
      margin-bottom:14px;
    }
    .footer p{
      font-size:14px;
      color:var(--muted);
      margin-bottom:0;
    }
    .footer-links{
      display:grid;
      gap:10px;
    }
    .footer-links a{
      color:var(--muted);
      font-size:14px;
      transition:color .2s ease, transform .2s ease;
    }
    .footer-links a:hover{
      color:var(--green);
      transform:translateX(4px);
    }
    .copyright{
      margin-top:36px;
      padding-top:22px;
      border-top:1px solid rgba(255,255,255,.08);
      color:var(--soft);
      font-size:13px;
      text-align:center;
    }
    .mobile-sticky{
      display:none;
      position:fixed;
      left:12px;
      right:12px;
      bottom:12px;
      z-index:120;
      padding:10px;
      border-radius:999px;
      background:rgba(8,7,8,.92);
      border:1px solid rgba(255,255,255,.12);
      box-shadow:0 18px 52px rgba(0,0,0,.45);
      backdrop-filter:blur(12px);
      gap:10px;
    }
    .mobile-sticky a,.mobile-sticky span{
      flex:1;
      min-height:42px;
      padding:9px 12px;
      border-radius:999px;
      display:grid;
      place-items:center;
      font-size:13px;
      font-weight:800;
      text-align:center;
    }
    .mobile-sticky span{
      color:var(--amber);
      border:1px solid rgba(255,184,107,.34);
      background:rgba(255,184,107,.08);
    }
    .mobile-sticky a{
      background:linear-gradient(135deg, var(--primary), var(--primary-2));
      color:var(--text);
    }

    @media (max-width:1080px){
      .container{width:min(var(--container), calc(100% - 40px));}
      .nav{min-height:auto;padding:16px 0;align-items:flex-start;flex-wrap:wrap;}
      .logo{min-width:0;flex:1;}
      .nav-links{
        order:3;
        width:100%;
        justify-content:flex-start;
        overflow-x:auto;
        border-radius:18px;
        scrollbar-width:none;
      }
      .nav-links::-webkit-scrollbar{display:none;}
      .hero-grid,.tag-cloud-wrap,.index-layout{grid-template-columns:1fr;}
      .side-note{position:relative;top:auto;}
      .process-grid{grid-template-columns:repeat(2,1fr);}
      .cta{grid-template-columns:1fr;}
      .cta-actions{justify-content:flex-start;}
    }
    @media (max-width:768px){
      .container{width:calc(100% - 36px);}
      .section{padding:68px 0;}
      .hero{padding:38px 0 64px;}
      .nav-actions{width:100%;justify-content:space-between;}
      .age-pill{font-size:12px;}
      .nav-actions .btn{padding:10px 14px;font-size:13px;}
      .logo-title{max-width:230px;}
      .content-grid,.mini-stats,.process-grid,.footer-grid{grid-template-columns:1fr;}
      .filter-panel,.card,.cta{padding:20px;}
      .footer{padding-bottom:88px;}
      .mobile-sticky{display:flex;}
    }
    @media (max-width:520px){
      .container{width:calc(100% - 28px);}
      h1{font-size:32px;letter-spacing:-.04em;}
      h2{font-size:26px;}
      .hero-actions .btn,.cta-actions .btn{width:100%;}
      .panel-top{align-items:flex-start;flex-direction:column;}
      .quick-filters,.hero-badges{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;}
      .filter-chip,.badge{flex:0 0 auto;}
      .logo-mark{width:38px;height:38px;}
      .logo-title{font-size:14px;max-width:190px;}
      .nav-links a{padding:9px 12px;font-size:13px;}
    }

/* roulang page: category3 */
:root{
  --bg:#080708;
  --bg2:#101014;
  --panel:#151317;
  --panel-2:#1A161D;
  --line:rgba(255,255,255,.10);
  --line-strong:rgba(217,70,239,.42);
  --text:#F8F5F2;
  --muted:#B8B0AE;
  --purple:#D946EF;
  --purple-deep:#7A1FA2;
  --green:#22F2A6;
  --amber:#FFB86B;
  --shadow:0 24px 80px rgba(217,70,239,.14);
  --shadow-soft:0 12px 32px rgba(0,0,0,.32);
  --radius-xl:28px;
  --radius-lg:22px;
  --radius-md:16px;
  --radius-pill:999px;
  --container:1200px;
  --gap:24px;
  --space-1:8px;
  --space-2:12px;
  --space-3:16px;
  --space-4:20px;
  --space-5:28px;
  --space-6:36px;
  --space-7:48px;
  --space-8:64px;
  --space-9:88px;
  --font-cn:"PingFang SC","Microsoft YaHei","Noto Sans SC","Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:var(--font-cn);
  color:var(--text);
  background:
    radial-gradient(1200px 700px at 8% 0%, rgba(217,70,239,.13), transparent 58%),
    radial-gradient(900px 560px at 95% 12%, rgba(34,242,166,.08), transparent 52%),
    linear-gradient(180deg, #090709 0%, #0c0b0f 38%, #080708 100%);
  min-height:100vh;
  line-height:1.75;
  letter-spacing:.2px;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.02) 1px, transparent 1px);
  background-size:56px 56px;
  mask-image:linear-gradient(180deg, rgba(0,0,0,.75), transparent 96%);
  opacity:.22;
  z-index:0;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
::selection{background:rgba(217,70,239,.28);color:var(--text)}
.container{
  width:min(var(--container), calc(100% - 64px));
  margin-inline:auto;
  position:relative;
  z-index:1;
}
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  backdrop-filter:blur(14px);
  background:rgba(8,7,8,.92);
  border-bottom:1px solid rgba(255,255,255,.06);
}
.site-header::after{
  content:"";
  display:block;
  height:2px;
  background:linear-gradient(90deg, transparent, rgba(217,70,239,.85), rgba(34,242,166,.65), transparent);
  opacity:.8;
}
.nav{
  min-height:84px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.logo{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}
.logo-mark{
  width:42px;
  height:42px;
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#fff;
  font-weight:800;
  background:linear-gradient(135deg, rgba(217,70,239,.95), rgba(122,31,162,.95));
  box-shadow:0 0 0 1px rgba(255,255,255,.08) inset, 0 14px 32px rgba(217,70,239,.18);
  flex:0 0 auto;
}
.logo-text{display:flex;flex-direction:column;line-height:1.1;min-width:0}
.logo-title{
  font-size:15px;
  font-weight:800;
  letter-spacing:.3px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.logo-sub{
  margin-top:6px;
  color:var(--muted);
  font-size:12px;
  letter-spacing:.7px;
}
.nav-links{
  display:flex;
  align-items:center;
  gap:6px;
  padding:8px;
  border-radius:999px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.06);
}
.nav-links a{
  position:relative;
  padding:12px 16px;
  border-radius:999px;
  color:var(--muted);
  font-size:14px;
  font-weight:650;
  transition:transform .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
}
.nav-links a:hover{
  color:var(--text);
  background:rgba(255,255,255,.05);
  transform:translateY(-1px);
}
.nav-links a.active{
  color:var(--text);
  background:rgba(217,70,239,.12);
  box-shadow:0 0 0 1px rgba(217,70,239,.26) inset, 0 0 28px rgba(217,70,239,.12);
}
.nav-links a.active::after{
  content:"";
  position:absolute;
  left:18px;
  right:18px;
  bottom:7px;
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg, var(--purple), var(--green));
  box-shadow:0 0 14px rgba(217,70,239,.42);
}
.nav-actions{
  display:flex;
  align-items:center;
  gap:12px;
  flex:0 0 auto;
}
.age-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  color:#23120a;
  background:linear-gradient(135deg, #ffcc86, var(--amber));
  font-size:13px;
  font-weight:800;
  box-shadow:0 10px 24px rgba(255,184,107,.18);
  white-space:nowrap;
}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:46px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid transparent;
  font-weight:750;
  font-size:14px;
  letter-spacing:.2px;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, background .18s ease, color .18s ease;
  user-select:none;
}
.btn:hover{transform:translateY(-1px) scale(1.01)}
.btn:active{transform:translateY(0) scale(.99)}
.btn:focus-visible,
.nav-links a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
summary:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(34,242,166,.22), 0 0 0 1px rgba(34,242,166,.35) inset;
}
.btn-primary{
  color:#fff;
  background:linear-gradient(135deg, var(--purple), #7c1fd1 60%, #4e147e);
  box-shadow:0 14px 36px rgba(217,70,239,.22);
}
.btn-primary:hover{
  box-shadow:0 0 28px rgba(217,70,239,.36), 0 18px 40px rgba(217,70,239,.20);
}
.btn-secondary{
  color:var(--text);
  background:rgba(255,255,255,.03);
  border-color:rgba(255,255,255,.16);
}
.btn-secondary:hover{
  border-color:rgba(34,242,166,.52);
  background:rgba(34,242,166,.06);
}
.btn-amber{
  color:#25130b;
  background:linear-gradient(135deg, #ffd79f, var(--amber));
  box-shadow:0 12px 28px rgba(255,184,107,.14);
}
.page{
  padding:28px 0 0;
}
.hero{
  padding:var(--space-8) 0 var(--space-9);
}
.hero-grid{
  display:grid;
  grid-template-columns: 1.25fr .95fr;
  gap:28px;
  align-items:stretch;
}
.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:999px;
  color:#ffe0b8;
  background:rgba(255,184,107,.08);
  font-size:13px;
  font-weight:700;
  letter-spacing:.5px;
}
.eyebrow .dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--amber);
  box-shadow:0 0 0 6px rgba(255,184,107,.12);
}
h1,h2,h3,p{margin:0}
h1{
  margin-top:18px;
  font-size:clamp(32px, 5vw, 60px);
  line-height:1.08;
  letter-spacing:-.8px;
  font-weight:800;
  max-width:12.5em;
}
h2{
  font-size:clamp(26px, 3.5vw, 38px);
  line-height:1.16;
  font-weight:780;
  letter-spacing:-.4px;
}
h3{
  font-size:22px;
  line-height:1.25;
  font-weight:720;
}
.subhead{
  margin-top:18px;
  max-width:46em;
  color:var(--muted);
  font-size:17px;
  line-height:1.8;
}
.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:28px;
}
.trust-row{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:22px;
}
.tag{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.03);
  color:#ddd8d6;
  font-size:13px;
  line-height:1;
}
.tag strong{color:var(--text)}
.tag.green{border-color:rgba(34,242,166,.22);background:rgba(34,242,166,.08)}
.tag.purple{border-color:rgba(217,70,239,.24);background:rgba(217,70,239,.08)}
.tag.amber{border-color:rgba(255,184,107,.28);background:rgba(255,184,107,.08)}
.panel{
  background:linear-gradient(180deg, rgba(26,22,29,.94), rgba(21,19,23,.98));
  border:1px solid var(--line);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-soft);
  overflow:hidden;
}
.panel-head{
  padding:22px 22px 14px;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.panel-title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.panel-kicker{
  color:var(--muted);
  font-size:13px;
  letter-spacing:.5px;
}
.panel-badge{
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
  color:#fff;
  background:rgba(34,242,166,.12);
  border:1px solid rgba(34,242,166,.24);
}
.panel-body{padding:22px}
.metric-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
}
.metric{
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
}
.metric .label{
  color:var(--muted);
  font-size:13px;
}
.metric .value{
  margin-top:8px;
  font-size:28px;
  font-weight:800;
  letter-spacing:-.5px;
}
.metric .value span{
  color:var(--green);
  font-size:14px;
  font-weight:700;
  margin-left:6px;
}
.metric .bar{
  margin-top:12px;
  height:8px;
  border-radius:999px;
  background:rgba(255,255,255,.06);
  overflow:hidden;
}
.metric .bar > i{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg, var(--purple), var(--green));
  box-shadow:0 0 18px rgba(34,242,166,.18);
}
.signal-box{
  margin-top:14px;
  padding:16px;
  border-radius:18px;
  background:
    radial-gradient(circle at top right, rgba(34,242,166,.12), transparent 56%),
    rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
}
.signal-box .mini{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  color:var(--muted);
  font-size:13px;
}
.signal-line{
  margin-top:12px;
  display:flex;
  align-items:flex-end;
  gap:6px;
  height:54px;
}
.signal-line span{
  flex:1;
  border-radius:10px 10px 4px 4px;
  background:linear-gradient(180deg, rgba(217,70,239,.92), rgba(34,242,166,.56));
  opacity:.92;
}
.signal-line span:nth-child(1){height:24%}
.signal-line span:nth-child(2){height:55%}
.signal-line span:nth-child(3){height:40%}
.signal-line span:nth-child(4){height:78%}
.signal-line span:nth-child(5){height:64%}
.signal-line span:nth-child(6){height:90%}
.signal-note{
  margin-top:12px;
  color:var(--muted);
  font-size:13px;
  line-height:1.7;
}
.section{
  padding:var(--space-9) 0;
  position:relative;
}
.section-head{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:28px;
}
.section-head p{
  max-width:48em;
  color:var(--muted);
  font-size:16px;
}
.chip-row{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:22px;
}
.chip{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 14px;
  border-radius:999px;
  color:var(--text);
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.09);
  font-size:13px;
  font-weight:650;
}
.chip.active{
  background:rgba(217,70,239,.12);
  border-color:rgba(217,70,239,.28);
  box-shadow:0 0 0 1px rgba(217,70,239,.12) inset;
}
.bento-grid{
  display:grid;
  grid-template-columns: 1.2fr .8fr .8fr;
  gap:18px;
}
.bento-large{
  grid-row:span 2;
  padding:26px;
  min-height:290px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  background:
    radial-gradient(circle at top right, rgba(217,70,239,.14), transparent 44%),
    linear-gradient(180deg, rgba(21,19,23,.98), rgba(26,22,29,.96));
}
.bento-large .icon{
  width:54px;height:54px;border-radius:18px;
  display:grid;place-items:center;
  background:rgba(217,70,239,.12);
  border:1px solid rgba(217,70,239,.24);
  color:#fff;
  font-size:24px;
}
.bento-large p,
.card p,
.compare-card p,
.tiny-card p,
.faq summary,
.timeline-item p{
  color:var(--muted);
}
.bento-stack{
  display:grid;
  gap:18px;
}
.tiny-card,
.card,
.compare-card,
.faq,
.timeline-card,
.note-card,
.form-card{
  background:linear-gradient(180deg, rgba(26,22,29,.96), rgba(21,19,23,.98));
  border:1px solid var(--line);
  border-radius:var(--radius-lg);
  box-shadow:var(--shadow-soft);
}
.tiny-card{
  padding:20px;
  min-height:136px;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.tiny-card:hover,
.card:hover,
.compare-card:hover,
.timeline-card:hover,
.note-card:hover,
.form-card:hover{
  transform:translateY(-4px);
  border-color:var(--line-strong);
  box-shadow:var(--shadow);
}
.tiny-card .top,
.card .top,
.compare-card .top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.kit{
  width:40px;height:40px;border-radius:14px;
  display:grid;place-items:center;
  background:rgba(34,242,166,.10);
  border:1px solid rgba(34,242,166,.18);
  color:var(--green);
  font-size:18px;
  flex:0 0 auto;
}
.kit.purple{background:rgba(217,70,239,.10);border-color:rgba(217,70,239,.18);color:#efc2ff}
.kit.amber{background:rgba(255,184,107,.10);border-color:rgba(255,184,107,.22);color:#ffd4a4}
.tiny-card h3,
.card h3,
.compare-card h3,
.timeline-card h3,
.note-card h3,
.form-card h3{
  font-size:18px;
}
.bento-meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin-top:16px;
}
.meta-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  color:#dfd8d6;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  font-size:12px;
}
.card-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:18px;
}
.card{
  padding:22px;
  min-height:220px;
}
.card strong{
  display:block;
  margin-top:12px;
  font-size:30px;
  line-height:1;
  letter-spacing:-.6px;
}
.card .desc{
  margin-top:12px;
  color:var(--muted);
  font-size:14px;
}
.compare-wrap{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.compare-card{
  padding:24px;
}
.compare-card.bad{
  background:
    radial-gradient(circle at top left, rgba(255,184,107,.08), transparent 42%),
    linear-gradient(180deg, rgba(26,22,29,.96), rgba(21,19,23,.98));
}
.compare-card.good{
  background:
    radial-gradient(circle at top right, rgba(34,242,166,.10), transparent 38%),
    linear-gradient(180deg, rgba(26,22,29,.96), rgba(21,19,23,.98));
}
.compare-list{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:grid;
  gap:12px;
}
.compare-list li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:#eae5e2;
  font-size:15px;
}
.compare-list .bullet{
  width:18px;height:18px;border-radius:50%;
  display:grid;place-items:center;
  margin-top:2px;
  flex:0 0 auto;
}
.bad .bullet{
  background:rgba(255,184,107,.14);
  color:var(--amber);
}
.good .bullet{
  background:rgba(34,242,166,.14);
  color:var(--green);
}
.checklist-grid{
  display:grid;
  grid-template-columns:repeat(5, minmax(0,1fr));
  gap:16px;
}
.check-card{
  padding:20px;
  min-height:220px;
  display:flex;
  flex-direction:column;
  gap:14px;
  position:relative;
  overflow:hidden;
}
.check-card::before,
.timeline-card::before,
.note-card::before{
  content:"";
  position:absolute;
  left:0;top:0;right:0;
  height:2px;
  background:linear-gradient(90deg, transparent, rgba(217,70,239,.88), rgba(34,242,166,.68), transparent);
  opacity:.85;
}
.check-no{
  width:36px;height:36px;border-radius:12px;
  display:grid;place-items:center;
  background:rgba(217,70,239,.12);
  border:1px solid rgba(217,70,239,.22);
  color:#fff;
  font-size:14px;
  font-weight:800;
}
.check-card ul{
  margin:0;
  padding:0;
  list-style:none;
  display:grid;
  gap:10px;
}
.check-card li{
  display:flex;
  gap:10px;
  color:var(--muted);
  font-size:14px;
  line-height:1.6;
}
.check-card li::before{
  content:"";
  width:8px;height:8px;
  margin-top:8px;
  border-radius:50%;
  background:var(--green);
  box-shadow:0 0 0 4px rgba(34,242,166,.10);
  flex:0 0 auto;
}
.check-card.amber li::before{background:var(--amber);box-shadow:0 0 0 4px rgba(255,184,107,.10)}
.timeline{
  display:grid;
  grid-template-columns:repeat(4, minmax(0,1fr));
  gap:16px;
}
.timeline-card{
  padding:22px;
  position:relative;
}
.timeline-step{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#efe9e7;
  font-size:13px;
  font-weight:700;
  letter-spacing:.4px;
}
.timeline-step .num{
  width:28px;height:28px;border-radius:10px;
  display:grid;place-items:center;
  background:rgba(34,242,166,.12);
  border:1px solid rgba(34,242,166,.22);
  color:var(--green);
  font-weight:800;
}
.timeline-card p{margin-top:12px;font-size:14px;line-height:1.72}
.faq-list{
  display:grid;
  gap:14px;
}
.faq{
  overflow:hidden;
}
.faq summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:20px 22px;
  cursor:pointer;
  font-size:16px;
  font-weight:700;
}
.faq summary::-webkit-details-marker{display:none}
.faq summary .plus{
  width:28px;height:28px;border-radius:10px;
  display:grid;place-items:center;
  color:var(--text);
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  transition:transform .2s ease, background .2s ease;
  flex:0 0 auto;
}
.faq[open] summary .plus{
  transform:rotate(45deg);
  background:rgba(217,70,239,.12);
}
.faq .content{
  padding:0 22px 22px;
  border-left:3px solid rgba(217,70,239,.78);
  margin-left:22px;
  padding-left:18px;
  color:var(--muted);
  font-size:15px;
  line-height:1.78;
}
.cta{
  padding-bottom:var(--space-9);
}
.cta-box{
  background:
    radial-gradient(circle at top left, rgba(217,70,239,.12), transparent 40%),
    radial-gradient(circle at bottom right, rgba(34,242,166,.10), transparent 40%),
    linear-gradient(180deg, rgba(26,22,29,.98), rgba(18,16,20,.98));
  border:1px solid rgba(255,255,255,.10);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow);
  padding:30px;
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:24px;
  align-items:start;
}
.cta-box p{
  margin-top:14px;
  color:var(--muted);
  font-size:16px;
  line-height:1.8;
}
.form-card{
  padding:24px;
}
.form-grid{
  display:grid;
  gap:14px;
  margin-top:18px;
}
.field{
  display:grid;
  gap:8px;
}
.field label{
  font-size:13px;
  color:#e9e2e0;
  font-weight:650;
}
.field input,
.field select,
.field textarea{
  width:100%;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:#111015;
  color:var(--text);
  padding:14px 16px;
  outline:none;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.field input::placeholder,
.field textarea::placeholder{
  color:#8f8785;
}
.field input:focus,
.field select:focus,
.field textarea:focus{
  border-color:rgba(34,242,166,.42);
  box-shadow:0 0 0 3px rgba(34,242,166,.16);
  background:#131218;
}
.field textarea{
  min-height:108px;
  resize:vertical;
}
.form-note{
  margin-top:14px;
  color:var(--muted);
  font-size:13px;
  line-height:1.7;
}
.note-card{
  padding:24px;
  background:
    linear-gradient(180deg, rgba(26,22,29,.96), rgba(21,19,23,.98));
}
.note-list{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:grid;
  gap:12px;
}
.note-list li{
  display:flex;
  gap:10px;
  align-items:flex-start;
  color:var(--muted);
  font-size:14px;
  line-height:1.65;
}
.note-list i{
  width:18px;height:18px;border-radius:50%;
  display:grid;place-items:center;
  background:rgba(34,242,166,.12);
  border:1px solid rgba(34,242,166,.18);
  color:var(--green);
  font-style:normal;
  font-size:12px;
  margin-top:2px;
  flex:0 0 auto;
}
.footer{
  margin-top:0;
  padding:44px 0 28px;
  border-top:1px solid rgba(255,255,255,.08);
  background:linear-gradient(180deg, rgba(10,9,10,.7), rgba(8,7,8,.98));
  position:relative;
  z-index:1;
}
.footer-grid{
  display:grid;
  grid-template-columns:1.25fr .8fr .95fr;
  gap:24px;
  align-items:start;
}
.footer h3{
  font-size:16px;
  margin-bottom:14px;
}
.footer p{
  color:var(--muted);
  font-size:14px;
  line-height:1.8;
}
.footer-links{
  display:grid;
  gap:10px;
}
.footer-links a{
  color:#ded8d5;
  font-size:14px;
  width:max-content;
  transition:color .18s ease, transform .18s ease;
}
.footer-links a:hover{
  color:var(--green);
  transform:translateX(2px);
}
.copyright{
  margin-top:24px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.08);
  color:var(--muted);
  font-size:13px;
  line-height:1.7;
}
.mobile-sticky-cta{
  display:none;
}
.small-muted{
  color:var(--muted);
  font-size:13px;
}
.section-split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.flush{
  margin-top:0;
}
.kicker-title{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}
.kicker-title .line{
  width:38px;height:1px;background:linear-gradient(90deg, var(--purple), transparent);
}
.soft-box{
  padding:18px;
  border-radius:18px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.08);
}
.soft-box h3{font-size:17px}
.soft-box p{font-size:14px;color:var(--muted);margin-top:8px}
@media (max-width: 1180px){
  .hero-grid,
  .cta-box,
  .footer-grid,
  .compare-wrap,
  .section-split{
    grid-template-columns:1fr;
  }
  .bento-grid{
    grid-template-columns:1fr 1fr;
  }
  .bento-large{grid-column:1 / -1;grid-row:auto;min-height:auto}
  .checklist-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
  .timeline{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
  .card-grid{
    grid-template-columns:1fr 1fr;
  }
}
@media (max-width: 1024px){
  .nav{
    flex-wrap:wrap;
    padding:14px 0;
  }
  .nav-links{
    order:3;
    width:100%;
    overflow-x:auto;
    justify-content:flex-start;
    padding:8px 6px;
    scrollbar-width:none;
  }
  .nav-links::-webkit-scrollbar{display:none}
  .nav-actions{
    margin-left:auto;
  }
  .hero{
    padding-top:56px;
  }
}
@media (max-width: 768px){
  .container{width:min(var(--container), calc(100% - 36px))}
  .hero,
  .section,
  .cta{
    padding-top:56px;
    padding-bottom:56px;
  }
  h1{font-size:clamp(32px, 9vw, 40px)}
  h2{font-size:clamp(26px, 7vw, 32px)}
  .metric-grid,
  .card-grid,
  .checklist-grid,
  .timeline,
  .bento-grid{
    grid-template-columns:1fr;
  }
  .nav-actions{
    width:100%;
    justify-content:space-between;
    flex-wrap:wrap;
  }
  .age-pill{order:1}
  .nav-actions .btn{order:2}
  .btn{min-height:44px}
  .panel-body,.panel-head,.card,.compare-card,.tiny-card,.timeline-card,.check-card,.note-card,.form-card{
    padding:18px;
  }
  .hero-actions .btn,
  .cta-box .btn{
    width:100%;
  }
  .chip-row{
    overflow-x:auto;
    padding-bottom:2px;
    flex-wrap:nowrap;
    scrollbar-width:none;
  }
  .chip-row::-webkit-scrollbar{display:none}
  .chip{white-space:nowrap}
}
@media (max-width: 520px){
  .container{width:min(var(--container), calc(100% - 28px))}
  .site-header{position:sticky}
  .nav{gap:14px}
  .logo-mark{width:38px;height:38px;border-radius:12px}
  .logo-title{font-size:14px}
  .logo-sub{font-size:11px}
  .nav-links a{padding:10px 12px;font-size:13px}
  .age-pill{font-size:12px;padding:9px 12px}
  .hero{padding-top:42px}
  .subhead{font-size:15px}
  .mobile-sticky-cta{
    display:flex;
    position:fixed;
    left:12px;
    right:12px;
    bottom:12px;
    gap:10px;
    z-index:60;
    padding:10px;
    border-radius:20px;
    background:rgba(8,7,8,.92);
    border:1px solid rgba(255,255,255,.08);
    backdrop-filter:blur(14px);
    box-shadow:0 16px 40px rgba(0,0,0,.42);
  }
  .mobile-sticky-cta .btn{
    flex:1;
    min-height:44px;
    font-size:13px;
    padding:0 12px;
  }
  .footer{padding-bottom:104px}
}
