/* roulang page: index */
:root{
      --bg:#0F0D0E;
      --bg-soft:#171315;
      --paper:#FFFDF9;
      --paper-warm:#F7F2EC;
      --text:#211A1D;
      --muted:#8B7C80;
      --light:#F8F3EF;
      --line:rgba(33,26,29,.10);
      --line-dark:rgba(255,255,255,.10);
      --rose:#B84A62;
      --rose-deep:#9F3E56;
      --champagne:#D8B98C;
      --taupe:#C9B8A8;
      --radius-xl:34px;
      --radius-lg:24px;
      --radius-md:18px;
      --shadow-soft:0 24px 70px rgba(33,26,29,.14);
      --shadow-card:0 16px 46px rgba(33,26,29,.10);
      --container:1200px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;
      color:var(--text);
      background:var(--paper);
      line-height:1.75;
      text-rendering:optimizeLegibility;
      -webkit-font-smoothing:antialiased;
    }
    a{color:inherit;text-decoration:none}
    img,svg{max-width:100%;display:block}
    button,input{font:inherit}
    ::selection{background:rgba(184,74,98,.22)}
    .site-container{width:min(var(--container),calc(100% - 40px));margin-inline:auto}
    .skip-link{position:absolute;left:-999px;top:12px;background:var(--rose);color:#fff;padding:10px 14px;border-radius:999px;z-index:100}
    .skip-link:focus{left:16px}
    .site-header{
      position:sticky;top:0;z-index:50;
      background:rgba(255,253,249,.86);
      backdrop-filter:blur(18px);
      border-bottom:1px solid rgba(33,26,29,.08);
    }
    .nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:22px}
    .brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:-.02em;color:var(--text);white-space:nowrap}
    .brand-mark{
      width:42px;height:42px;border-radius:16px;
      background:radial-gradient(circle at 35% 30%,#F7D9C5 0 18%,transparent 19%),
                 linear-gradient(135deg,var(--rose),#4A2530 72%);
      box-shadow:0 12px 30px rgba(184,74,98,.25);
      position:relative;
    }
    .brand-mark:after{
      content:"";position:absolute;left:16px;top:12px;
      border-left:12px solid #fff;border-top:8px solid transparent;border-bottom:8px solid transparent;
      filter:drop-shadow(0 3px 6px rgba(0,0,0,.16));
    }
    .brand span:last-child{font-size:20px}
    .nav-links{display:flex;align-items:center;gap:8px}
    .nav-link{
      padding:10px 15px;border-radius:999px;font-size:15px;color:#4B3E42;
      transition:.2s ease;
    }
    .nav-link:hover,.nav-link:focus{background:rgba(184,74,98,.10);color:var(--rose-deep);outline:none}
    .nav-link.active{background:#211A1D;color:#fff}
    .nav-actions{display:flex;align-items:center;gap:12px}
    .search-box{
      width:210px;height:42px;border:1px solid rgba(33,26,29,.10);
      background:rgba(247,242,236,.8);border-radius:999px;
      display:flex;align-items:center;gap:8px;padding:0 14px;color:var(--muted);
    }
    .search-box input{width:100%;border:0;background:transparent;outline:0;color:var(--text);font-size:14px}
    .search-box:focus-within{border-color:rgba(184,74,98,.45);box-shadow:0 0 0 4px rgba(184,74,98,.10)}
    .btn{
      display:inline-flex;align-items:center;justify-content:center;gap:8px;
      border:0;border-radius:999px;padding:13px 20px;font-weight:700;
      cursor:pointer;transition:.22s ease;line-height:1;white-space:nowrap;
    }
    .btn-primary{background:var(--rose);color:#fff;box-shadow:0 14px 34px rgba(184,74,98,.28)}
    .btn-primary:hover,.btn-primary:focus{background:var(--rose-deep);transform:translateY(-2px);outline:none}
    .btn-dark{background:var(--text);color:#fff}
    .btn-dark:hover,.btn-dark:focus{background:#3A2A2F;transform:translateY(-2px);outline:none}
    .btn-ghost{background:rgba(255,255,255,.10);color:var(--light);border:1px solid rgba(255,255,255,.14)}
    .btn-ghost:hover,.btn-ghost:focus{background:rgba(255,255,255,.18);transform:translateY(-2px);outline:none}
    .btn-light{background:#fff;color:var(--text);box-shadow:0 14px 34px rgba(33,26,29,.12)}
    .btn-light:hover,.btn-light:focus{transform:translateY(-2px);box-shadow:0 18px 44px rgba(33,26,29,.16);outline:none}
    .mega{position:relative}
    .mega-panel{
      position:absolute;right:0;top:calc(100% + 16px);width:640px;
      opacity:0;visibility:hidden;transform:translateY(10px);
      transition:.2s ease;background:rgba(255,253,249,.96);
      border:1px solid rgba(33,26,29,.09);border-radius:28px;
      box-shadow:var(--shadow-soft);padding:18px;display:grid;grid-template-columns:1fr 1.1fr;gap:14px;
    }
    .mega:hover .mega-panel,.mega:focus-within .mega-panel{opacity:1;visibility:visible;transform:translateY(0)}
    .mega-card{border-radius:22px;padding:16px;background:var(--paper-warm);border:1px solid rgba(33,26,29,.06)}
    .mega-card.dark{background:linear-gradient(135deg,#211A1D,#4C2430);color:#fff}
    .mega-card strong{display:block;margin-bottom:8px}
    .mega-card p{font-size:13px;color:var(--muted);margin:0}
    .mega-card.dark p{color:rgba(255,255,255,.72)}
    .mobile-toggle{display:none}
    .mobile-menu{display:none}
    .hero{
      position:relative;overflow:hidden;background:
      radial-gradient(circle at 78% 18%,rgba(184,74,98,.30),transparent 30%),
      radial-gradient(circle at 20% 0%,rgba(216,185,140,.22),transparent 28%),
      linear-gradient(135deg,#0F0D0E 0%,#171315 52%,#25191D 100%);
      color:var(--light);
      padding:92px 0 64px;
    }
    .hero:before{
      content:"";position:absolute;inset:0;
      background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
      background-size:56px 56px;mask-image:linear-gradient(to bottom,#000,transparent 82%);
      pointer-events:none;
    }
    .hero-grid{position:relative;display:grid;grid-template-columns:1fr 1.1fr;gap:54px;align-items:center}
    .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.12);color:#F1D7C4;font-size:14px;margin-bottom:18px}
    .eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--champagne);box-shadow:0 0 18px var(--champagne)}
    h1{font-size:clamp(38px,5.4vw,70px);line-height:1.08;font-weight:850;letter-spacing:-.055em;margin:0 0 22px}
    .hero-sub{font-size:18px;color:rgba(248,243,239,.78);max-width:580px;margin:0 0 28px}
    .hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:30px}
    .trust-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:560px}
    .trust-item{padding:14px;border-radius:18px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10)}
    .trust-item b{display:block;font-size:20px;color:#fff;line-height:1.1}
    .trust-item span{font-size:13px;color:rgba(248,243,239,.62)}
    .video-stage{position:relative;min-height:520px}
    .video-card{
      position:relative;overflow:hidden;border-radius:38px;border:1px solid rgba(255,255,255,.12);
      background:
        radial-gradient(circle at 24% 22%,rgba(216,185,140,.40),transparent 22%),
        radial-gradient(circle at 76% 38%,rgba(184,74,98,.38),transparent 30%),
        linear-gradient(135deg,#34272B,#120F10 66%);
      box-shadow:0 34px 90px rgba(0,0,0,.42);
      min-height:460px;padding:24px;display:flex;flex-direction:column;justify-content:space-between;
    }
    .video-card:after{
      content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.58),transparent 48%);
      pointer-events:none;
    }
    .cover-lines{position:absolute;inset:0;opacity:.28;background-image:repeating-linear-gradient(135deg,rgba(255,255,255,.20) 0 1px,transparent 1px 18px)}
    .play{
      position:absolute;left:50%;top:48%;transform:translate(-50%,-50%);
      width:86px;height:86px;border-radius:50%;background:rgba(255,255,255,.90);
      display:flex;align-items:center;justify-content:center;z-index:2;
      box-shadow:0 20px 50px rgba(0,0,0,.28);
    }
    .play:before{content:"";margin-left:6px;border-left:22px solid var(--rose);border-top:14px solid transparent;border-bottom:14px solid transparent}
    .stage-top,.stage-bottom{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:12px}
    .badge{display:inline-flex;align-items:center;gap:6px;padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.16);color:#fff;font-size:13px}
    .badge.dark{background:rgba(33,26,29,.06);border-color:rgba(33,26,29,.08);color:var(--text)}
    .stage-title{position:relative;z-index:2}
    .stage-title h2{font-size:30px;line-height:1.2;margin:0 0 8px;color:#fff;font-weight:800}
    .stage-title p{margin:0;color:rgba(255,255,255,.68)}
    .progress{height:6px;border-radius:999px;background:rgba(255,255,255,.18);overflow:hidden;width:160px}
    .progress i{display:block;width:68%;height:100%;background:linear-gradient(90deg,var(--champagne),var(--rose));border-radius:999px}
    .float-card{
      position:absolute;z-index:3;background:rgba(255,253,249,.94);color:var(--text);
      border:1px solid rgba(255,255,255,.40);box-shadow:0 18px 54px rgba(0,0,0,.24);
      border-radius:22px;padding:15px;backdrop-filter:blur(16px);
    }
    .float-card.one{right:-18px;top:52px;width:190px}
    .float-card.two{left:-14px;bottom:78px;width:210px}
    .float-card.three{right:38px;bottom:4px;width:170px}
    .float-card b{display:block;font-size:22px;line-height:1.1}
    .float-card span{font-size:13px;color:var(--muted)}
    .section{padding:96px 0}
    .section.alt{background:var(--paper-warm)}
    .section.dark{background:var(--bg);color:var(--light)}
    .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:34px}
    .section-kicker{color:var(--rose);font-weight:800;font-size:14px;margin-bottom:8px}
    .section-title{font-size:clamp(30px,4vw,46px);line-height:1.18;font-weight:850;letter-spacing:-.04em;margin:0}
    .section-desc{max-width:560px;color:var(--muted);margin:10px 0 0;font-size:16px}
    .dark .section-desc{color:rgba(248,243,239,.66)}
    .featured-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:18px}
    .video-item{
      border-radius:28px;overflow:hidden;background:#fff;border:1px solid rgba(33,26,29,.08);
      box-shadow:var(--shadow-card);transition:.22s ease;display:flex;flex-direction:column;
    }
    .video-item:hover{transform:translateY(-4px);box-shadow:0 24px 64px rgba(33,26,29,.16)}
    .video-item.large{grid-row:span 2}
    .thumb{
      position:relative;min-height:170px;overflow:hidden;
      background:
        radial-gradient(circle at 28% 22%,rgba(216,185,140,.70),transparent 22%),
        radial-gradient(circle at 76% 38%,rgba(184,74,98,.50),transparent 28%),
        linear-gradient(135deg,#34282C,#171315);
    }
    .large .thumb{min-height:360px}
    .thumb:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.55),transparent 55%)}
    .thumb-pattern{position:absolute;inset:0;background-image:linear-gradient(120deg,rgba(255,255,255,.16) 0 1px,transparent 1px 22px);transition:.28s ease}
    .video-item:hover .thumb-pattern{transform:scale(1.03)}
    .thumb .badge{position:absolute;left:14px;top:14px;z-index:2}
    .thumb .time{position:absolute;right:14px;bottom:14px;z-index:2;color:#fff;background:rgba(0,0,0,.45);border-radius:999px;padding:5px 9px;font-size:12px}
    .item-body{padding:18px}
    .item-body h3{font-size:20px;line-height:1.35;margin:0 0 8px;font-weight:800;letter-spacing:-.02em}
    .item-body p{margin:0 0 14px;color:var(--muted);font-size:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
    .meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#9A8A8E;font-size:13px;border-top:1px solid rgba(33,26,29,.07);padding-top:12px}
    .text-link{display:inline-flex;align-items:center;gap:6px;color:var(--rose-deep);font-weight:800;font-size:14px;transition:.2s ease}
    .text-link:hover,.text-link:focus{gap:10px;outline:none}
    .channel-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(280px,1fr);gap:18px;overflow-x:auto;padding:4px 2px 18px;scroll-snap-type:x mandatory}
    .channel-card{
      scroll-snap-align:start;min-height:250px;border-radius:30px;padding:24px;
      background:#fff;border:1px solid rgba(33,26,29,.08);
      box-shadow:var(--shadow-card);position:relative;overflow:hidden;transition:.22s ease;
    }
    .channel-card:hover{transform:translateY(-4px)}
    .channel-card:before{content:"";position:absolute;right:-42px;top:-42px;width:150px;height:150px;border-radius:50%;background:rgba(184,74,98,.12)}
    .channel-card .icon{width:54px;height:54px;border-radius:20px;background:linear-gradient(135deg,var(--rose),#49252F);display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:22px}
    .channel-card h3{font-size:24px;margin:0 0 8px;font-weight:850}
    .channel-card p{color:var(--muted);margin:0 0 20px;font-size:15px}
    .review-row{display:flex;gap:18px;overflow-x:auto;padding-bottom:16px;scroll-snap-type:x mandatory}
    .review-card{
      flex:0 0 360px;scroll-snap-align:start;border-radius:28px;padding:24px;
      background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.10);
    }
    .review-top{display:flex;align-items:center;gap:12px;margin-bottom:14px}
    .avatar{width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--champagne),var(--rose))}
    .stars{color:#E7C58F;letter-spacing:2px;font-size:13px}
    .review-card p{color:rgba(248,243,239,.72);margin:0}
    .assurance-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
    .assurance-item{
      padding:20px;border-radius:24px;background:#fff;border:1px solid rgba(33,26,29,.08);
      transition:.22s ease;
    }
    .assurance-item:hover{transform:translateY(-3px);box-shadow:var(--shadow-card)}
    .assurance-item .mini-icon{width:36px;height:36px;border-radius:14px;background:rgba(184,74,98,.10);color:var(--rose);display:flex;align-items:center;justify-content:center;margin-bottom:12px}
    .assurance-item b{display:block;margin-bottom:4px}
    .assurance-item span{font-size:13px;color:var(--muted)}
    .insight-wrap{display:grid;grid-template-columns:.95fr 1.05fr;gap:22px;align-items:stretch}
    .insight-panel{
      border-radius:34px;padding:30px;background:linear-gradient(135deg,#211A1D,#462530);
      color:#fff;min-height:360px;position:relative;overflow:hidden;
    }
    .insight-panel:after{content:"";position:absolute;right:-70px;bottom:-80px;width:240px;height:240px;border-radius:50%;background:rgba(216,185,140,.20)}
    .insight-panel h2{font-size:38px;line-height:1.18;margin:0 0 14px;font-weight:850}
    .insight-panel p{color:rgba(255,255,255,.72);margin:0 0 24px}
    .data-list{display:grid;gap:12px}
    .data-item{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:17px;border-radius:22px;background:#fff;border:1px solid rgba(33,26,29,.08)}
    .bar{height:8px;flex:1;border-radius:999px;background:#EFE6DE;overflow:hidden}
    .bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--rose),var(--champagne))}
    .faq-list{display:grid;gap:12px;max-width:900px;margin:0 auto}
    details{
      background:#fff;border:1px solid rgba(33,26,29,.08);border-radius:22px;
      box-shadow:0 10px 30px rgba(33,26,29,.06);overflow:hidden;
    }
    summary{
      cursor:pointer;list-style:none;padding:20px 22px;font-weight:800;
      display:flex;align-items:center;justify-content:space-between;gap:16px;
      transition:.2s ease;
    }
    summary::-webkit-details-marker{display:none}
    summary:after{content:"＋";color:var(--rose);font-size:22px;line-height:1}
    details[open] summary:after{content:"－"}
    summary:hover,summary:focus{background:rgba(184,74,98,.06);outline:none}
    details p{padding:0 22px 22px;margin:0;color:var(--muted)}
    .cta-band{
      border-radius:38px;padding:46px;
      background:
        radial-gradient(circle at 82% 20%,rgba(216,185,140,.28),transparent 28%),
        linear-gradient(135deg,#211A1D,#0F0D0E);
      color:#fff;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;
      box-shadow:0 30px 80px rgba(33,26,29,.26);
    }
    .cta-band h2{font-size:clamp(30px,4vw,44px);line-height:1.15;margin:0 0 10px;font-weight:850}
    .cta-band p{margin:0;color:rgba(255,255,255,.70);max-width:650px}
    .site-footer{background:#0F0D0E;color:rgba(248,243,239,.72);padding:62px 0 28px}
    .footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr 1fr;gap:34px;margin-bottom:36px}
    .footer-logo{display:flex;align-items:center;gap:12px;color:#fff;font-weight:850;font-size:20px;margin-bottom:14px}
    .footer-col h3{color:#fff;font-size:15px;margin:0 0 14px}
    .footer-col a{display:block;padding:5px 0;color:rgba(248,243,239,.66);transition:.2s ease}
    .footer-col a:hover,.footer-col a:focus{color:#fff;transform:translateX(3px);outline:none}
    .footer-note{border-top:1px solid rgba(255,255,255,.10);padding-top:22px;display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:13px;color:rgba(248,243,239,.52)}
    @media (max-width:1024px){
      .nav-links,.search-box,.desktop-cta{display:none}
      .mobile-toggle{display:inline-flex}
      .nav-wrap{height:68px}
      .mobile-menu{display:none;position:absolute;left:20px;right:20px;top:76px;background:rgba(255,253,249,.98);border:1px solid rgba(33,26,29,.10);box-shadow:var(--shadow-soft);border-radius:24px;padding:14px}
      .site-header.open .mobile-menu{display:block}
      .mobile-menu a{display:block;padding:13px 14px;border-radius:16px;color:var(--text);font-weight:700}
      .mobile-menu a.active{background:var(--text);color:#fff}
      .hero-grid,.insight-wrap{grid-template-columns:1fr}
      .video-stage{min-height:auto}
      .featured-grid{grid-template-columns:1fr 1fr}
      .video-item.large{grid-row:auto;grid-column:span 2}
      .assurance-grid{grid-template-columns:repeat(3,1fr)}
      .footer-grid{grid-template-columns:1fr 1fr}
      .cta-band{grid-template-columns:1fr}
    }
    @media (max-width:768px){
      .site-container{width:min(100% - 28px,var(--container))}
      .hero{padding:58px 0 44px}
      .trust-row{grid-template-columns:1fr}
      .float-card{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:auto!important;margin-top:12px}
      .video-card{min-height:360px;border-radius:28px}
      .play{width:70px;height:70px}
      .section{padding:70px 0}
      .section-head{display:block}
      .featured-grid{grid-template-columns:1fr}
      .video-item.large{grid-column:auto}
      .large .thumb{min-height:240px}
      .assurance-grid{grid-template-columns:1fr 1fr}
      .review-card{flex-basis:300px}
      .cta-band{padding:30px;border-radius:28px}
    }
    @media (max-width:520px){
      .brand span:last-child{font-size:17px}
      .btn{width:100%;padding:14px 18px}
      .hero-actions{display:grid;grid-template-columns:1fr}
      .stage-top{align-items:flex-start;flex-direction:column}
      .stage-bottom{align-items:flex-start;flex-direction:column}
      .assurance-grid{grid-template-columns:1fr}
      .footer-grid{grid-template-columns:1fr}
      .footer-note{display:block}
      .channel-strip{grid-auto-columns:86%}
    }

/* roulang page: category1 */
:root{
      --bg:#fffdf9;
      --bg-soft:#f7f2ec;
      --ink:#211a1d;
      --muted:#8b7c80;
      --deep:#0f0d0e;
      --deep-2:#171315;
      --line:rgba(33,26,29,.10);
      --line-light:rgba(255,255,255,.10);
      --rose:#b84a62;
      --rose-dark:#9f3e56;
      --champagne:#d8b98c;
      --warm:#c9b8a8;
      --radius-xl:34px;
      --radius-lg:24px;
      --radius-md:18px;
      --shadow:0 24px 70px rgba(33,26,29,.12);
      --shadow-soft:0 16px 38px rgba(33,26,29,.08);
      --container:1220px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;
      color:var(--ink);
      background:
        radial-gradient(circle at 12% 6%, rgba(184,74,98,.14), transparent 28%),
        radial-gradient(circle at 92% 18%, rgba(216,185,140,.22), transparent 30%),
        var(--bg);
      line-height:1.75;
      text-rendering:optimizeLegibility;
      overflow-x:hidden;
    }
    a{color:inherit;text-decoration:none}
    img,svg{display:block;max-width:100%}
    button,input{font:inherit}
    input{outline:none}
    ::selection{background:rgba(184,74,98,.22)}
    .site-container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}
    .site-header{
      position:sticky;
      top:0;
      z-index:50;
      background:rgba(255,253,249,.84);
      backdrop-filter:blur(18px);
      border-bottom:1px solid rgba(33,26,29,.08);
    }
    .nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
    .brand,.footer-logo{display:inline-flex;align-items:center;gap:12px;font-weight:800;letter-spacing:-.02em}
    .brand{font-size:20px;white-space:nowrap}
    .brand-mark{
      width:38px;
      height:38px;
      border-radius:15px;
      background:
        linear-gradient(135deg,rgba(255,255,255,.42),transparent 45%),
        linear-gradient(135deg,var(--rose),#5b2434 62%,var(--deep));
      position:relative;
      box-shadow:0 12px 28px rgba(184,74,98,.25);
      flex:none;
    }
    .brand-mark:after{
      content:"";
      position:absolute;
      left:15px;
      top:11px;
      border-left:11px solid #fff7ee;
      border-top:7px solid transparent;
      border-bottom:7px solid transparent;
      filter:drop-shadow(0 2px 5px rgba(0,0,0,.22));
    }
    .nav-links{display:flex;align-items:center;gap:6px;padding:6px;background:rgba(247,242,236,.74);border:1px solid rgba(33,26,29,.08);border-radius:999px}
    .nav-link{
      padding:10px 16px;
      border-radius:999px;
      color:#5e5357;
      font-weight:700;
      font-size:14px;
      transition:.2s ease;
      white-space:nowrap;
    }
    .nav-link:hover{color:var(--ink);background:rgba(255,255,255,.82)}
    .nav-link.active{color:#fff;background:var(--deep);box-shadow:0 10px 24px rgba(15,13,14,.16)}
    .nav-actions{display:flex;align-items:center;gap:12px}
    .search-box{
      width:176px;
      height:44px;
      display:flex;
      align-items:center;
      gap:8px;
      padding:0 14px;
      border:1px solid rgba(33,26,29,.10);
      border-radius:999px;
      background:rgba(255,255,255,.76);
      color:#7d7074;
      transition:.2s ease;
    }
    .search-box:focus-within{border-color:rgba(184,74,98,.55);box-shadow:0 0 0 4px rgba(184,74,98,.10)}
    .search-box input{width:100%;border:0;background:transparent;color:var(--ink);font-size:14px}
    .search-box input::placeholder{color:#9b8d90}
    .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:800;
      line-height:1;
      transition:transform .2s ease,box-shadow .2s ease,background .2s ease,border-color .2s ease,color .2s ease;
      cursor:pointer;
      white-space:nowrap;
    }
    .btn:hover{transform:translateY(-2px)}
    .btn:focus-visible{outline:3px solid rgba(184,74,98,.24);outline-offset:3px}
    .btn-primary{background:var(--rose);color:#fff;box-shadow:0 16px 34px rgba(184,74,98,.24)}
    .btn-primary:hover{background:var(--rose-dark);box-shadow:0 20px 42px rgba(184,74,98,.30)}
    .btn-dark{background:var(--deep);color:#fff}
    .btn-light{background:#fff8ed;color:var(--deep);border-color:rgba(255,255,255,.4)}
    .btn-ghost{background:rgba(255,255,255,.82);border-color:rgba(33,26,29,.10);color:var(--ink)}
    .btn-ghost:hover{border-color:rgba(184,74,98,.30);color:var(--rose-dark)}
    .mega{position:relative}
    .mega-panel{
      position:absolute;
      right:0;
      top:calc(100% + 14px);
      width:620px;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:14px;
      padding:14px;
      border-radius:28px;
      background:rgba(255,253,249,.96);
      border:1px solid rgba(33,26,29,.10);
      box-shadow:var(--shadow);
      opacity:0;
      transform:translateY(8px);
      pointer-events:none;
      transition:.18s ease;
    }
    .mega:hover .mega-panel,.mega:focus-within .mega-panel{opacity:1;transform:translateY(0);pointer-events:auto}
    .mega-card{padding:22px;border-radius:22px;background:var(--bg-soft);border:1px solid rgba(33,26,29,.08)}
    .mega-card strong{font-size:17px}
    .mega-card p{margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.7}
    .mega-card.dark{background:linear-gradient(145deg,var(--deep),#2a171d);color:#fff;border-color:rgba(255,255,255,.10)}
    .mega-card.dark p{color:#d8cdd0}
    .text-link{color:var(--rose-dark);font-weight:800;font-size:14px}
    .text-link:hover{color:var(--deep)}
    .mobile-toggle,.mobile-menu{display:none}
    .mobile-menu{
      padding:0 0 16px;
      grid-template-columns:1fr;
      gap:8px;
    }
    .mobile-menu a{
      padding:13px 16px;
      border-radius:16px;
      background:rgba(247,242,236,.9);
      font-weight:800;
      color:#574c50;
    }
    .mobile-menu a.active{background:var(--deep);color:#fff}
    .section{padding:92px 0}
    .section-tight{padding:66px 0}
    .eyebrow{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:8px 12px;
      border-radius:999px;
      background:rgba(184,74,98,.10);
      color:var(--rose-dark);
      font-size:13px;
      font-weight:900;
      letter-spacing:.02em;
    }
    .eyebrow:before{
      content:"";
      width:7px;
      height:7px;
      border-radius:999px;
      background:var(--rose);
      box-shadow:0 0 0 6px rgba(184,74,98,.12);
    }
    .hero{
      position:relative;
      padding:72px 0 56px;
      overflow:hidden;
    }
    .hero-shell{
      display:grid;
      grid-template-columns:1.02fr .98fr;
      gap:44px;
      align-items:center;
      min-height:620px;
    }
    .hero h1{
      margin:18px 0 0;
      font-size:clamp(40px,6vw,68px);
      line-height:1.08;
      letter-spacing:-.055em;
      font-weight:900;
      max-width:760px;
    }
    .hero-desc{
      margin:22px 0 0;
      max-width:650px;
      color:#6f6266;
      font-size:18px;
      line-height:1.9;
    }
    .hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
    .filter-bar{
      margin-top:34px;
      display:flex;
      flex-wrap:wrap;
      gap:10px;
    }
    .filter-pill{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:10px 14px;
      border-radius:999px;
      background:rgba(255,255,255,.76);
      border:1px solid rgba(33,26,29,.10);
      color:#5a4f53;
      font-weight:800;
      font-size:14px;
      transition:.2s ease;
    }
    .filter-pill:hover,.filter-pill.active{background:var(--deep);color:#fff;border-color:var(--deep);transform:translateY(-2px)}
    .visual-board{
      position:relative;
      border-radius:38px;
      padding:18px;
      background:
        radial-gradient(circle at 26% 10%, rgba(216,185,140,.35), transparent 34%),
        linear-gradient(145deg,#22191d,var(--deep));
      border:1px solid rgba(255,255,255,.10);
      box-shadow:0 34px 90px rgba(15,13,14,.28);
      color:#fff;
    }
    .screen{
      min-height:420px;
      border-radius:30px;
      overflow:hidden;
      position:relative;
      background:
        linear-gradient(135deg,rgba(184,74,98,.54),transparent 38%),
        radial-gradient(circle at 72% 28%,rgba(216,185,140,.46),transparent 30%),
        linear-gradient(145deg,#3a2029,#171315 70%);
    }
    .screen:before{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(120deg,rgba(255,255,255,.16),transparent 30%),
        repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 1px,transparent 1px 48px);
      opacity:.65;
    }
    .play{
      position:absolute;
      left:50%;
      top:48%;
      transform:translate(-50%,-50%);
      width:78px;
      height:78px;
      border-radius:999px;
      background:rgba(255,253,249,.92);
      display:grid;
      place-items:center;
      box-shadow:0 18px 50px rgba(0,0,0,.28);
    }
    .play:after{
      content:"";
      margin-left:5px;
      border-left:19px solid var(--rose);
      border-top:12px solid transparent;
      border-bottom:12px solid transparent;
    }
    .screen-info{
      position:absolute;
      left:22px;
      right:22px;
      bottom:22px;
      display:grid;
      gap:12px;
    }
    .progress{height:7px;border-radius:999px;background:rgba(255,255,255,.20);overflow:hidden}
    .progress span{display:block;width:68%;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--champagne),var(--rose))}
    .screen-meta{display:flex;justify-content:space-between;gap:12px;align-items:end}
    .screen-meta strong{font-size:24px;line-height:1.2}
    .screen-meta small{color:#ded3d4}
    .float-card{
      position:absolute;
      right:-18px;
      top:46px;
      width:168px;
      padding:16px;
      border-radius:22px;
      background:rgba(255,253,249,.94);
      color:var(--ink);
      box-shadow:var(--shadow-soft);
      border:1px solid rgba(33,26,29,.08);
    }
    .float-card.bottom{top:auto;right:auto;left:-22px;bottom:36px}
    .float-card b{font-size:26px;line-height:1}
    .float-card span{display:block;margin-top:6px;color:var(--muted);font-size:13px;font-weight:700}
    .panel{
      background:rgba(255,253,249,.78);
      border:1px solid var(--line);
      border-radius:var(--radius-xl);
      box-shadow:var(--shadow-soft);
    }
    .section-head{
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:24px;
      margin-bottom:30px;
    }
    .section-head h2{
      margin:12px 0 0;
      font-size:clamp(30px,4vw,46px);
      line-height:1.18;
      letter-spacing:-.04em;
      font-weight:900;
    }
    .section-head p{max-width:560px;color:var(--muted);margin:0;font-size:16px}
    .content-layout{
      display:grid;
      grid-template-columns:minmax(0,1fr) 330px;
      gap:24px;
      align-items:start;
    }
    .mosaic{
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:20px;
    }
    .small-grid{
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:20px;
    }
    .video-card{
      position:relative;
      overflow:hidden;
      border-radius:28px;
      background:rgba(255,255,255,.82);
      border:1px solid rgba(33,26,29,.09);
      box-shadow:0 18px 42px rgba(33,26,29,.07);
      transition:.24s ease;
    }
    .video-card:hover{transform:translateY(-5px);box-shadow:0 26px 64px rgba(33,26,29,.13)}
    .cover{
      position:relative;
      aspect-ratio:16/9;
      overflow:hidden;
      background:
        linear-gradient(135deg,rgba(184,74,98,.55),transparent 45%),
        radial-gradient(circle at 72% 18%,rgba(216,185,140,.52),transparent 28%),
        linear-gradient(145deg,#24181d,#5a2c39);
    }
    .cover.alt{
      background:
        linear-gradient(135deg,rgba(216,185,140,.45),transparent 38%),
        radial-gradient(circle at 68% 22%,rgba(184,74,98,.42),transparent 30%),
        linear-gradient(145deg,#171315,#3a242b);
    }
    .cover.soft{
      background:
        linear-gradient(145deg,#efe1d2,#b98a82),
        radial-gradient(circle at 68% 20%,rgba(255,255,255,.5),transparent 30%);
    }
    .cover:before{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(120deg,rgba(255,255,255,.16),transparent 34%),
        repeating-linear-gradient(45deg,rgba(255,255,255,.06) 0 1px,transparent 1px 14px);
      transform:scale(1);
      transition:.3s ease;
    }
    .video-card:hover .cover:before{transform:scale(1.03)}
    .card-body{padding:20px}
    .large-card .card-body{padding:26px}
    .large-card .cover{aspect-ratio:16/10}
    .badge{
      display:inline-flex;
      align-items:center;
      padding:7px 10px;
      border-radius:999px;
      background:rgba(184,74,98,.12);
      color:var(--rose-dark);
      font-size:12px;
      font-weight:900;
    }
    .badge.light{background:rgba(255,255,255,.18);color:#fff;border:1px solid rgba(255,255,255,.18)}
    .cover .badge{position:absolute;left:14px;top:14px;z-index:2}
    .video-card h3{margin:12px 0 0;font-size:22px;line-height:1.32;font-weight:900;letter-spacing:-.02em}
    .large-card h3{font-size:30px}
    .video-card p{margin:10px 0 0;color:var(--muted);font-size:14px;line-height:1.75}
    .meta-row{
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:10px;
      margin-top:18px;
      color:#7d7074;
      font-size:13px;
      font-weight:800;
    }
    .meta-row span{display:inline-flex;align-items:center;gap:6px}
    .meta-row span:before{
      content:"";
      width:6px;
      height:6px;
      border-radius:999px;
      background:var(--champagne);
    }
    .side-panel{
      position:sticky;
      top:100px;
      padding:22px;
      border-radius:30px;
      background:linear-gradient(180deg,#fffdf9,#f6eee7);
      border:1px solid rgba(33,26,29,.10);
      box-shadow:var(--shadow-soft);
    }
    .side-panel h3{font-size:23px;font-weight:900;letter-spacing:-.03em;margin:0 0 14px}
    .update-list{display:grid;gap:10px}
    .update-item{
      display:flex;
      gap:12px;
      align-items:center;
      padding:12px;
      border-radius:18px;
      background:rgba(255,255,255,.78);
      border:1px solid rgba(33,26,29,.07);
      transition:.2s ease;
    }
    .update-item:hover{transform:translateX(3px);border-color:rgba(184,74,98,.22)}
    .thumb{
      width:54px;
      height:42px;
      flex:none;
      border-radius:12px;
      background:linear-gradient(135deg,var(--rose),#24181d);
      position:relative;
      overflow:hidden;
    }
    .thumb:after{
      content:"";
      position:absolute;
      inset:9px 17px;
      border-left:10px solid rgba(255,255,255,.86);
      border-top:7px solid transparent;
      border-bottom:7px solid transparent;
    }
    .update-item strong{display:block;font-size:14px;line-height:1.35}
    .update-item small{display:block;margin-top:2px;color:var(--muted);font-weight:700}
    .recommend-strip{
      display:grid;
      grid-template-columns:repeat(3,1fr);
      gap:18px;
    }
    .path-card{
      padding:24px;
      border-radius:28px;
      background:rgba(255,253,249,.78);
      border:1px solid rgba(33,26,29,.09);
      box-shadow:var(--shadow-soft);
      transition:.24s ease;
    }
    .path-card:hover{transform:translateY(-5px);border-color:rgba(184,74,98,.24)}
    .path-card .num{font-size:34px;font-weight:900;color:var(--rose);line-height:1}
    .path-card h3{margin:16px 0 8px;font-size:22px;font-weight:900}
    .path-card p{margin:0;color:var(--muted);font-size:15px}
    .dark-section{
      background:
        radial-gradient(circle at 18% 20%,rgba(184,74,98,.22),transparent 34%),
        radial-gradient(circle at 85% 10%,rgba(216,185,140,.18),transparent 28%),
        var(--deep);
      color:#fff;
      border-radius:44px;
      margin-inline:auto;
      width:min(calc(100% - 28px),1320px);
      overflow:hidden;
    }
    .dark-section .section-head p{color:#d0c5c8}
    .rule-grid{
      display:grid;
      grid-template-columns:repeat(4,1fr);
      gap:16px;
    }
    .rule-card{
      padding:22px;
      border-radius:24px;
      background:rgba(255,255,255,.06);
      border:1px solid rgba(255,255,255,.10);
    }
    .rule-card strong{display:block;font-size:18px;margin-bottom:8px}
    .rule-card p{margin:0;color:#d8cdd0;font-size:14px;line-height:1.7}
    .faq-wrap{display:grid;grid-template-columns:.78fr 1.22fr;gap:28px;align-items:start}
    .faq-list{display:grid;gap:12px}
    details{
      border:1px solid rgba(33,26,29,.10);
      background:rgba(255,255,255,.78);
      border-radius:22px;
      padding:0 20px;
      box-shadow:0 12px 28px rgba(33,26,29,.05);
      transition:.2s ease;
    }
    details:hover{border-color:rgba(184,74,98,.24)}
    summary{
      list-style:none;
      cursor:pointer;
      padding:18px 0;
      font-weight:900;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:16px;
    }
    summary::-webkit-details-marker{display:none}
    summary:after{
      content:"+";
      width:28px;
      height:28px;
      border-radius:999px;
      display:grid;
      place-items:center;
      background:rgba(184,74,98,.10);
      color:var(--rose-dark);
      flex:none;
      transition:.2s ease;
    }
    details[open] summary:after{content:"−";background:var(--rose);color:#fff}
    details p{margin:0;padding:0 0 18px;color:var(--muted);font-size:15px}
    .cta{
      padding:44px;
      border-radius:38px;
      background:
        radial-gradient(circle at 75% 20%,rgba(216,185,140,.32),transparent 30%),
        linear-gradient(135deg,var(--deep),#311820);
      color:#fff;
      display:grid;
      grid-template-columns:1fr auto;
      gap:24px;
      align-items:center;
      box-shadow:0 28px 80px rgba(15,13,14,.22);
    }
    .cta h2{margin:0;font-size:clamp(30px,4vw,46px);line-height:1.18;font-weight:900;letter-spacing:-.04em}
    .cta p{margin:12px 0 0;color:#d8cdd0;max-width:700px}
    .site-footer{
      margin-top:88px;
      padding:62px 0 28px;
      background:var(--deep);
      color:#f8f3ef;
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.45fr .8fr .8fr 1fr;
      gap:34px;
      align-items:start;
    }
    .footer-logo{font-size:20px;margin-bottom:14px}
    .footer-col p{color:#c9bfc2;margin:0;line-height:1.8;font-size:14px}
    .footer-col h3{font-size:15px;margin:0 0 14px;color:#fff;font-weight:900}
    .footer-col a{
      display:block;
      color:#c9bfc2;
      margin:9px 0;
      font-size:14px;
      transition:.2s ease;
    }
    .footer-col a:hover{color:#fff;transform:translateX(3px)}
    .footer-note{
      margin-top:38px;
      padding-top:22px;
      border-top:1px solid rgba(255,255,255,.10);
      display:flex;
      justify-content:space-between;
      gap:16px;
      color:#a99fa2;
      font-size:13px;
      flex-wrap:wrap;
    }
    @media (max-width:1080px){
      .nav-links{display:none}
      .search-box{display:none}
      .desktop-cta{display:none}
      .mobile-toggle{display:inline-flex}
      .mobile-menu.open{display:grid}
      .hero-shell,.content-layout,.faq-wrap{grid-template-columns:1fr}
      .hero-shell{min-height:auto}
      .side-panel{position:relative;top:auto}
      .mosaic{grid-template-columns:1fr}
      .rule-grid{grid-template-columns:repeat(2,1fr)}
      .footer-grid{grid-template-columns:1fr 1fr}
      .cta{grid-template-columns:1fr}
      .mega-panel{display:none}
    }
    @media (max-width:760px){
      .site-container{width:min(calc(100% - 28px),var(--container))}
      .nav-wrap{height:66px}
      .brand{font-size:17px}
      .brand-mark{width:34px;height:34px;border-radius:13px}
      .hero{padding:46px 0 36px}
      .hero-desc{font-size:16px}
      .hero-actions .btn{width:100%}
      .filter-bar{flex-wrap:nowrap;overflow:auto;padding-bottom:4px}
      .filter-pill{white-space:nowrap}
      .visual-board{border-radius:28px;padding:12px}
      .screen{min-height:330px;border-radius:22px}
      .float-card{position:relative;right:auto;top:auto;left:auto;bottom:auto;width:auto;margin-top:12px}
      .float-card.bottom{left:auto;bottom:auto}
      .section{padding:66px 0}
      .section-tight{padding:48px 0}
      .section-head{display:block}
      .section-head p{margin-top:12px}
      .small-grid,.recommend-strip,.rule-grid{grid-template-columns:1fr}
      .large-card h3{font-size:24px}
      .footer-grid{grid-template-columns:1fr}
      .footer-note{display:grid}
      .cta{padding:28px;border-radius:28px}
      .dark-section{border-radius:30px;width:min(calc(100% - 16px),1320px)}
    }

/* roulang page: category2 */
:root{
      --bg:#0f0d0e;
      --bg-2:#171315;
      --paper:#fffdf9;
      --cream:#f7f2ec;
      --ink:#211a1d;
      --muted:#8b7c80;
      --soft:#c9b8a8;
      --gold:#d8b98c;
      --rose:#b84a62;
      --rose-dark:#9f3e56;
      --line:rgba(33,26,29,.1);
      --line-dark:rgba(255,255,255,.1);
      --shadow:0 24px 70px rgba(33,26,29,.14);
      --shadow-dark:0 28px 90px rgba(0,0,0,.35);
      --radius-xl:34px;
      --radius-lg:26px;
      --radius-md:18px;
      --ease:cubic-bezier(.2,.8,.2,1);
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth}
    body{
      margin:0;
      font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;
      color:var(--ink);
      background:
        radial-gradient(circle at 12% 5%, rgba(184,74,98,.14), transparent 34rem),
        radial-gradient(circle at 88% 12%, rgba(216,185,140,.18), transparent 32rem),
        var(--cream);
      line-height:1.75;
      text-rendering:optimizeLegibility;
      -webkit-font-smoothing:antialiased;
    }
    a{color:inherit;text-decoration:none}
    img,svg{display:block;max-width:100%}
    button,input{font:inherit}
    input{min-width:0}
    ::selection{background:rgba(184,74,98,.22)}
    .site-container{width:min(1180px, calc(100% - 40px));margin-inline:auto}
    .site-header{
      position:sticky;
      top:0;
      z-index:50;
      background:rgba(255,253,249,.82);
      backdrop-filter:blur(20px);
      border-bottom:1px solid rgba(33,26,29,.08);
      transition:box-shadow .25s var(--ease), background .25s var(--ease);
    }
    .nav-wrap{
      height:78px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:22px;
    }
    .brand,.footer-logo{
      display:inline-flex;
      align-items:center;
      gap:11px;
      font-weight:800;
      letter-spacing:-.02em;
      color:var(--ink);
      white-space:nowrap;
    }
    .brand{font-size:19px}
    .brand-mark{
      width:34px;
      height:34px;
      border-radius:13px;
      position:relative;
      flex:0 0 auto;
      background:
        linear-gradient(135deg, rgba(184,74,98,.95), rgba(216,185,140,.9)),
        var(--rose);
      box-shadow:0 12px 28px rgba(184,74,98,.26);
    }
    .brand-mark:after{
      content:"";
      position:absolute;
      left:13px;
      top:10px;
      border-left:10px solid #fffdf9;
      border-top:7px solid transparent;
      border-bottom:7px solid transparent;
      filter:drop-shadow(0 2px 4px rgba(0,0,0,.14));
    }
    .nav-links{
      display:flex;
      align-items:center;
      gap:8px;
      padding:6px;
      border:1px solid rgba(33,26,29,.08);
      border-radius:999px;
      background:rgba(255,255,255,.52);
    }
    .nav-link{
      padding:9px 15px;
      border-radius:999px;
      color:#5c5054;
      font-size:14px;
      font-weight:650;
      transition:background .2s var(--ease), color .2s var(--ease), transform .2s var(--ease);
    }
    .nav-link:hover{background:rgba(184,74,98,.08);color:var(--rose-dark);transform:translateY(-1px)}
    .nav-link.active{background:var(--ink);color:var(--paper);box-shadow:0 10px 26px rgba(33,26,29,.16)}
    .nav-actions{display:flex;align-items:center;gap:12px}
    .search-box{
      height:42px;
      width:178px;
      display:flex;
      align-items:center;
      gap:8px;
      padding:0 13px;
      color:var(--muted);
      border:1px solid rgba(33,26,29,.1);
      border-radius:999px;
      background:rgba(255,255,255,.65);
      transition:border .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease);
    }
    .search-box:focus-within{border-color:rgba(184,74,98,.42);box-shadow:0 0 0 4px rgba(184,74,98,.1);background:#fff}
    .search-box input{
      width:100%;
      border:0;
      outline:0;
      background:transparent;
      color:var(--ink);
      font-size:14px;
    }
    .search-box input::placeholder{color:#a99b9f}
    .btn{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:8px;
      min-height:42px;
      padding:11px 18px;
      border:1px solid transparent;
      border-radius:999px;
      font-size:14px;
      font-weight:750;
      line-height:1;
      cursor:pointer;
      transition:transform .2s var(--ease), box-shadow .2s var(--ease), background .2s var(--ease), color .2s var(--ease), border-color .2s var(--ease);
    }
    .btn:hover{transform:translateY(-2px)}
    .btn:active{transform:translateY(0)}
    .btn:focus-visible,.nav-link:focus-visible,.text-link:focus-visible,summary:focus-visible{
      outline:3px solid rgba(184,74,98,.22);
      outline-offset:3px;
    }
    .btn-primary{background:var(--rose);color:#fff;box-shadow:0 16px 34px rgba(184,74,98,.28)}
    .btn-primary:hover{background:var(--rose-dark);box-shadow:0 20px 42px rgba(159,62,86,.32)}
    .btn-dark{background:var(--ink);color:var(--paper)}
    .btn-dark:hover{background:#110d0f;box-shadow:0 16px 34px rgba(33,26,29,.18)}
    .btn-light{background:var(--paper);color:var(--ink)}
    .btn-light:hover{background:#fff;box-shadow:0 16px 34px rgba(0,0,0,.16)}
    .btn-ghost{border-color:rgba(33,26,29,.12);background:rgba(255,255,255,.54);color:var(--ink)}
    .btn-ghost:hover{border-color:rgba(184,74,98,.34);background:#fff;color:var(--rose-dark)}
    .mega{position:relative}
    .mega-panel{
      position:absolute;
      right:0;
      top:calc(100% + 14px);
      width:620px;
      display:grid;
      grid-template-columns:1fr 1fr;
      gap:14px;
      padding:14px;
      border:1px solid rgba(33,26,29,.1);
      border-radius:28px;
      background:rgba(255,253,249,.96);
      box-shadow:var(--shadow);
      opacity:0;
      visibility:hidden;
      transform:translateY(8px);
      transition:opacity .18s var(--ease), transform .18s var(--ease), visibility .18s var(--ease);
    }
    .mega:hover .mega-panel,.mega:focus-within .mega-panel{opacity:1;visibility:visible;transform:translateY(0)}
    .mega-card{
      min-height:190px;
      padding:22px;
      border-radius:22px;
      background:var(--cream);
      border:1px solid rgba(33,26,29,.08);
    }
    .mega-card strong{display:block;font-size:18px;margin-bottom:8px}
    .mega-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}
    .mega-card.dark{
      color:var(--paper);
      background:
        radial-gradient(circle at 85% 15%, rgba(216,185,140,.32), transparent 45%),
        linear-gradient(145deg, #211a1d, #0f0d0e);
      border-color:rgba(255,255,255,.1);
    }
    .mega-card.dark p{color:#d9ced1}
    .text-link{font-weight:750;color:var(--rose-dark);transition:color .2s var(--ease), transform .2s var(--ease)}
    .text-link:hover{color:var(--ink);transform:translateX(3px)}
    .mobile-toggle,.mobile-menu{display:none}
    .mobile-menu{
      padding:0 0 16px;
      gap:8px;
    }
    .mobile-menu a{
      display:block;
      padding:13px 14px;
      border-radius:16px;
      background:rgba(255,255,255,.56);
      color:#5c5054;
      font-weight:700;
    }
    .mobile-menu a.active{background:var(--ink);color:var(--paper)}
    main{overflow:hidden}
    .section{padding:92px 0}
    .section-tight{padding:64px 0}
    .kicker{
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:7px 12px;
      border:1px solid rgba(184,74,98,.18);
      border-radius:999px;
      color:var(--rose-dark);
      background:rgba(255,253,249,.64);
      font-size:13px;
      font-weight:800;
      letter-spacing:.04em;
    }
    .kicker:before{
      content:"";
      width:7px;height:7px;border-radius:50%;
      background:var(--rose);
      box-shadow:0 0 0 5px rgba(184,74,98,.12);
    }
    .hero{
      position:relative;
      padding:70px 0 88px;
      color:var(--paper);
      background:
        radial-gradient(circle at 70% 12%, rgba(216,185,140,.25), transparent 34rem),
        radial-gradient(circle at 15% 20%, rgba(184,74,98,.28), transparent 35rem),
        linear-gradient(135deg, #211a1d 0%, #0f0d0e 68%);
    }
    .hero:after{
      content:"";
      position:absolute;
      inset:auto 0 0;
      height:100px;
      background:linear-gradient(to bottom, transparent, rgba(247,242,236,.98));
      pointer-events:none;
    }
    .hero-grid{
      position:relative;
      z-index:1;
      display:grid;
      grid-template-columns:minmax(0,1.02fr) minmax(360px,.98fr);
      gap:42px;
      align-items:center;
    }
    .hero h1{
      margin:18px 0 18px;
      font-size:clamp(40px, 6vw, 72px);
      line-height:1.08;
      font-weight:850;
      letter-spacing:-.055em;
    }
    .hero p.lead{
      max-width:680px;
      color:#dfd4d2;
      font-size:18px;
      line-height:1.9;
    }
    .hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
    .hero-metrics{
      display:grid;
      grid-template-columns:repeat(3, minmax(0,1fr));
      gap:12px;
      margin-top:34px;
      max-width:640px;
    }
    .metric{
      padding:16px;
      border:1px solid rgba(255,255,255,.1);
      border-radius:20px;
      background:rgba(255,255,255,.06);
    }
    .metric strong{display:block;font-size:24px;line-height:1;color:#fff}
    .metric span{display:block;margin-top:8px;color:#c9b8a8;font-size:13px}
    .rank-stage{
      border:1px solid rgba(255,255,255,.11);
      border-radius:36px;
      padding:18px;
      background:linear-gradient(145deg, rgba(255,255,255,.09), rgba(255,255,255,.035));
      box-shadow:var(--shadow-dark);
    }
    .cover{
      position:relative;
      overflow:hidden;
      border-radius:28px;
      background:
        radial-gradient(circle at 24% 22%, rgba(216,185,140,.45), transparent 18%),
        radial-gradient(circle at 75% 35%, rgba(184,74,98,.35), transparent 22%),
        linear-gradient(135deg, #35272b, #120f10 65%);
      aspect-ratio:16/10;
      border:1px solid rgba(255,255,255,.1);
    }
    .cover:before{
      content:"";
      position:absolute;
      inset:0;
      background:
        linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px),
        linear-gradient(0deg, rgba(255,255,255,.045) 1px, transparent 1px);
      background-size:42px 42px;
      mask-image:linear-gradient(to bottom, rgba(0,0,0,.7), transparent 92%);
    }
    .cover:after{
      content:"";
      position:absolute;
      left:26px;right:26px;bottom:24px;height:5px;
      border-radius:999px;
      background:linear-gradient(90deg, var(--rose) 0 68%, rgba(255,255,255,.22) 68%);
    }
    .play{
      position:absolute;
      left:50%;
      top:50%;
      width:72px;
      height:72px;
      transform:translate(-50%,-50%);
      border-radius:50%;
      background:rgba(255,253,249,.92);
      box-shadow:0 20px 50px rgba(0,0,0,.28);
    }
    .play:after{
      content:"";
      position:absolute;
      left:30px;top:23px;
      border-left:20px solid var(--rose);
      border-top:13px solid transparent;
      border-bottom:13px solid transparent;
    }
    .rank-badge{
      position:absolute;
      left:22px;
      top:22px;
      display:inline-flex;
      align-items:center;
      gap:8px;
      padding:9px 12px;
      border-radius:999px;
      background:rgba(15,13,14,.72);
      color:#fff;
      font-weight:850;
      font-size:13px;
      backdrop-filter:blur(10px);
    }
    .hero-list{
      margin-top:14px;
      display:grid;
      gap:10px;
    }
    .mini-rank{
      display:grid;
      grid-template-columns:auto 1fr auto;
      gap:12px;
      align-items:center;
      padding:14px;
      border-radius:20px;
      border:1px solid rgba(255,255,255,.1);
      background:rgba(255,255,255,.06);
    }
    .mini-rank .num{
      width:34px;height:34px;border-radius:12px;
      display:grid;place-items:center;
      background:rgba(216,185,140,.16);
      color:var(--gold);
      font-weight:900;
    }
    .mini-rank strong{display:block;font-size:15px}
    .mini-rank span{display:block;font-size:12px;color:#cdbfc2}
    .hotline{
      width:82px;
      height:7px;
      border-radius:999px;
      background:rgba(255,255,255,.14);
      overflow:hidden;
    }
    .hotline i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--rose),var(--gold))}
    .section-head{
      display:flex;
      align-items:end;
      justify-content:space-between;
      gap:24px;
      margin-bottom:32px;
    }
    .section-head h2{
      margin:12px 0 0;
      font-size:clamp(30px,4vw,46px);
      line-height:1.14;
      font-weight:850;
      letter-spacing:-.045em;
    }
    .section-head p{max-width:560px;margin:0;color:var(--muted);font-size:16px}
    .rank-layout{
      display:grid;
      grid-template-columns:1fr 380px;
      gap:22px;
      align-items:start;
    }
    .rank-table{
      display:grid;
      gap:12px;
    }
    .rank-row{
      display:grid;
      grid-template-columns:54px 96px 1fr 120px;
      gap:16px;
      align-items:center;
      padding:14px;
      border:1px solid var(--line);
      border-radius:24px;
      background:rgba(255,253,249,.72);
      box-shadow:0 12px 36px rgba(33,26,29,.06);
      transition:transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease), background .22s var(--ease);
    }
    .rank-row:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:rgba(184,74,98,.18);background:#fffdf9}
    .rank-no{
      width:42px;height:42px;border-radius:15px;
      display:grid;place-items:center;
      background:var(--ink);
      color:#fff;
      font-weight:900;
    }
    .thumb{
      aspect-ratio:16/10;
      border-radius:16px;
      overflow:hidden;
      background:
        radial-gradient(circle at 30% 25%, rgba(216,185,140,.5), transparent 25%),
        radial-gradient(circle at 78% 68%, rgba(184,74,98,.42), transparent 24%),
        linear-gradient(135deg, #33262a, #151113);
      position:relative;
    }
    .thumb.alt{background:radial-gradient(circle at 25% 75%, rgba(184,74,98,.42), transparent 25%),linear-gradient(135deg,#44363a,#181315)}
    .thumb.light{background:radial-gradient(circle at 70% 25%, rgba(216,185,140,.5), transparent 22%),linear-gradient(135deg,#574146,#1b1517)}
    .thumb:after{
      content:"";
      position:absolute;
      left:12px;right:12px;bottom:10px;height:3px;
      border-radius:999px;
      background:rgba(255,255,255,.45);
    }
    .rank-info h3{margin:0;font-size:18px;line-height:1.35;font-weight:850;letter-spacing:-.02em}
    .rank-info p{margin:5px 0 0;color:var(--muted);font-size:14px;line-height:1.55}
    .meta-line{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}
    .badge,.tag{
      display:inline-flex;
      align-items:center;
      border-radius:999px;
      font-size:12px;
      font-weight:800;
      line-height:1;
    }
    .badge{padding:7px 9px;background:rgba(184,74,98,.1);color:var(--rose-dark)}
    .tag{padding:8px 11px;background:rgba(33,26,29,.06);color:#6e6265}
    .heat strong{display:block;text-align:right;font-size:18px;color:var(--rose-dark);line-height:1}
    .heat span{display:block;text-align:right;margin-top:6px;color:var(--muted);font-size:12px}
    .side-card{
      position:sticky;
      top:100px;
      padding:24px;
      border-radius:30px;
      color:var(--paper);
      background:
        radial-gradient(circle at 85% 15%, rgba(216,185,140,.28), transparent 40%),
        linear-gradient(145deg, #211a1d, #0f0d0e);
      box-shadow:var(--shadow-dark);
    }
    .side-card h3{font-size:24px;line-height:1.25;margin:0 0 10px;font-weight:850}
    .side-card p{color:#d9ced1;margin:0 0 20px}
    .trend-list{display:grid;gap:12px;margin-top:18px}
    .trend-item{
      padding:14px;
      border:1px solid rgba(255,255,255,.1);
      border-radius:18px;
      background:rgba(255,255,255,.055);
    }
    .trend-item strong{display:flex;justify-content:space-between;gap:10px;font-size:14px}
    .trend-bar{
      height:7px;
      margin-top:10px;
      border-radius:999px;
      background:rgba(255,255,255,.12);
      overflow:hidden;
    }
    .trend-bar i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--rose),var(--gold))}
    .update-section{
      background:var(--paper);
      border-top:1px solid rgba(33,26,29,.08);
      border-bottom:1px solid rgba(33,26,29,.08);
    }
    .update-grid{
      display:grid;
      grid-template-columns:repeat(3,minmax(0,1fr));
      gap:18px;
    }
    .update-card{
      position:relative;
      overflow:hidden;
      border:1px solid var(--line);
      border-radius:28px;
      background:#fff;
      box-shadow:0 16px 44px rgba(33,26,29,.07);
      transition:transform .22s var(--ease), box-shadow .22s var(--ease), border-color .22s var(--ease);
    }
    .update-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(184,74,98,.2)}
    .update-card:hover .card-art{transform:scale(1.035)}
    .card-art{
      height:172px;
      transition:transform .35s var(--ease);
      background:
        linear-gradient(135deg, rgba(184,74,98,.66), transparent 35%),
        radial-gradient(circle at 78% 18%, rgba(216,185,140,.62), transparent 26%),
        linear-gradient(135deg, #2d2326, #0f0d0e);
    }
    .card-body{padding:22px}
    .card-body h3{margin:12px 0 8px;font-size:21px;line-height:1.32;font-weight:850}
    .card-body p{margin:0;color:var(--muted);font-size:14px;line-height:1.75}
    .card-meta{
      display:flex;
      justify-content:space-between;
      gap:12px;
      margin-top:18px;
      padding-top:16px;
      border-top:1px solid rgba(33,26,29,.08);
      color:#75696c;
      font-size:13px;
      font-weight:700;
    }
    .channel-strip{
      display:grid;
      grid-template-columns:repeat(4,minmax(0,1fr));
      gap:14px;
    }
    .channel-card{
      min-height:154px;
      padding:22px;
      border-radius:26px;
      border:1px solid rgba(33,26,29,.08);
      background:rgba(255,253,249,.64);
      transition:transform .22s var(--ease), background .22s var(--ease), box-shadow .22s var(--ease);
    }
    .channel-card:hover{transform:translateY(-3px);background:#fff;box-shadow:0 18px 48px rgba(33,26,29,.08)}
    .channel-card span{
      width:38px;height:38px;border-radius:15px;
      display:grid;place-items:center;
      margin-bottom:14px;
      background:rgba(184,74,98,.1);
      color:var(--rose-dark);
      font-weight:900;
    }
    .channel-card h3{margin:0 0 8px;font-size:18px;font-weight:850}
    .channel-card p{margin:0;color:var(--muted);font-size:14px;line-height:1.7}
    .proof{
      color:var(--paper);
      background:
        radial-gradient(circle at 12% 15%, rgba(184,74,98,.18), transparent 36rem),
        linear-gradient(145deg, #171315, #0f0d0e);
    }
    .proof-grid{
      display:grid;
      grid-template-columns:1.1fr .9fr;
      gap:24px;
      align-items:stretch;
    }
    .proof-card{
      padding:30px;
      border:1px solid rgba(255,255,255,.09);
      border-radius:32px;
      background:rgba(255,255,255,.055);
    }
    .proof-card h2{font-size:clamp(30px,4vw,44px);line-height:1.15;font-weight:850;letter-spacing:-.045em;margin:0 0 16px}
    .proof-card p{color:#d8ced1;margin:0}
    .check-list{display:grid;gap:12px;margin-top:22px}
    .check-list li{
      list-style:none;
      display:flex;
      gap:10px;
      align-items:flex-start;
      color:#eee5e2;
    }
    .check-list li:before{
      content:"✓";
      flex:0 0 auto;
      width:24px;height:24px;border-radius:50%;
      display:grid;place-items:center;
      background:rgba(216,185,140,.16);
      color:var(--gold);
      font-weight:900;
    }
    .notice-card{
      display:grid;
      gap:14px;
      padding:30px;
      border-radius:32px;
      background:var(--paper);
      color:var(--ink);
    }
    .notice-card h3{margin:0;font-size:24px;font-weight:850}
    .notice-card p{margin:0;color:var(--muted)}
    .faq-wrap{
      max-width:920px;
      margin:0 auto;
    }
    .faq-list{display:grid;gap:12px;margin-top:28px}
    details{
      border:1px solid rgba(33,26,29,.1);
      border-radius:22px;
      background:rgba(255,253,249,.68);
      overflow:hidden;
      transition:background .2s var(--ease), border-color .2s var(--ease), box-shadow .2s var(--ease);
    }
    details[open]{background:#fff;border-color:rgba(184,74,98,.2);box-shadow:0 14px 38px rgba(33,26,29,.06)}
    summary{
      list-style:none;
      cursor:pointer;
      padding:20px 22px;
      display:flex;
      align-items:center;
      justify-content:space-between;
      gap:18px;
      font-weight:850;
      font-size:17px;
    }
    summary::-webkit-details-marker{display:none}
    summary:after{
      content:"+";
      width:28px;height:28px;border-radius:50%;
      display:grid;place-items:center;
      flex:0 0 auto;
      color:var(--rose-dark);
      background:rgba(184,74,98,.1);
      transition:transform .2s var(--ease);
    }
    details[open] summary:after{content:"−";transform:rotate(180deg)}
    details p{margin:0;padding:0 22px 22px;color:var(--muted);line-height:1.85}
    .cta-band{
      padding:34px;
      border-radius:36px;
      color:var(--paper);
      background:
        radial-gradient(circle at 84% 18%, rgba(216,185,140,.36), transparent 34%),
        linear-gradient(135deg, #211a1d, #0f0d0e);
      box-shadow:var(--shadow-dark);
      display:grid;
      grid-template-columns:1fr auto;
      gap:28px;
      align-items:center;
    }
    .cta-band h2{margin:0 0 10px;font-size:clamp(28px,4vw,44px);line-height:1.15;font-weight:850;letter-spacing:-.045em}
    .cta-band p{margin:0;color:#d8ced1}
    .cta-actions{display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end}
    .site-footer{
      padding:68px 0 28px;
      background:#0f0d0e;
      color:#d9ced1;
    }
    .footer-grid{
      display:grid;
      grid-template-columns:1.35fr .8fr .8fr 1.1fr;
      gap:34px;
    }
    .footer-col p{margin:14px 0 0;color:#a99b9f;font-size:14px;line-height:1.85}
    .footer-logo{color:#fff;font-size:19px}
    .footer-col h3{margin:0 0 14px;color:#fff;font-size:15px;font-weight:850}
    .footer-col a{
      display:block;
      width:max-content;
      max-width:100%;
      margin:9px 0;
      color:#bfb2b5;
      font-size:14px;
      transition:color .2s var(--ease), transform .2s var(--ease);
    }
    .footer-col a:hover{color:#fff;transform:translateX(3px)}
    .footer-note{
      margin-top:42px;
      padding-top:22px;
      border-top:1px solid rgba(255,255,255,.09);
      display:flex;
      justify-content:space-between;
      gap:18px;
      flex-wrap:wrap;
      color:#8f8286;
      font-size:13px;
    }
    @media (max-width:1024px){
      .site-container{width:min(100% - 32px, 920px)}
      .nav-links{display:none}
      .search-box{width:160px}
      .desktop-cta{display:none}
      .mobile-toggle{display:inline-flex}
      .mobile-menu.open{display:grid}
      .mega-panel{display:none}
      .hero-grid,.rank-layout,.proof-grid{grid-template-columns:1fr}
      .side-card{position:relative;top:auto}
      .update-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
      .channel-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
      .footer-grid{grid-template-columns:1fr 1fr}
      .rank-row{grid-template-columns:46px 82px 1fr}
      .rank-row .heat{grid-column:3/4}
      .heat strong,.heat span{text-align:left}
    }
    @media (max-width:768px){
      .nav-wrap{height:68px}
      .brand{font-size:17px}
      .brand-mark{width:31px;height:31px;border-radius:12px}
      .search-box{display:none}
      .hero{padding:52px 0 70px}
      .hero h1{font-size:clamp(38px,11vw,52px)}
      .hero p.lead{font-size:16px}
      .hero-metrics{grid-template-columns:1fr}
      .section{padding:70px 0}
      .section-head{display:block}
      .section-head p{margin-top:14px}
      .rank-stage{border-radius:28px;padding:12px}
      .cover{border-radius:22px}
      .mini-rank{grid-template-columns:auto 1fr}
      .hotline{grid-column:2/3;width:100%}
      .rank-row{grid-template-columns:40px 1fr;gap:12px}
      .rank-row .thumb{grid-column:1/3;grid-row:1;height:auto}
      .rank-no{grid-row:2;width:38px;height:38px}
      .rank-info{grid-row:2}
      .rank-row .heat{grid-column:2/3}
      .update-grid,.channel-strip{grid-template-columns:1fr}
      .proof-card,.notice-card,.cta-band{border-radius:26px;padding:24px}
      .cta-band{grid-template-columns:1fr}
      .cta-actions{justify-content:flex-start}
      .footer-grid{grid-template-columns:1fr}
      .footer-note{display:grid}
    }
    @media (max-width:520px){
      .site-container{width:min(100% - 24px, 100%)}
      .nav-actions{gap:8px}
      .btn{width:auto;padding:11px 15px}
      .hero-actions .btn,.cta-actions .btn{width:100%}
      .metric{padding:14px}
      .rank-stage{margin-inline:-2px}
      .section-head h2{font-size:30px}
      summary{font-size:16px;padding:18px}
      details p{padding:0 18px 18px}
      .footer-col a{width:auto}
    }
