/* roulang page: index */
:root{
  --v-ink:#15171c;
  --v-mute:#6d727b;
  --v-bg:#f7f4ef;
  --v-card:#ffffff;
  --v-line:#e7e1d8;
  --v-main:#d8352a;
  --v-main-d:#b32a21;
  --v-aux:#e8b23c;
  --v-r:16px;
  --v-sh:0 10px 26px rgba(21,23,28,.07);
  --v-gap:22px;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;background:var(--v-bg);color:var(--v-ink);font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei","Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3,p,ul,ol{margin:0;padding:0}
ul,ol{list-style:none}
button,input{font:inherit}
:focus-visible{outline:2px solid var(--v-main);outline-offset:3px;border-radius:6px}

/* 顶栏 */
.libvxac-top{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--v-line)}
.libvxac-topin{max-width:1160px;margin:0 auto;padding:12px 20px;display:flex;align-items:center;gap:16px}
.libvxac-logo{display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px;letter-spacing:.02em;flex:none}
.libvxac-logomark{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;color:#fff;font-size:15px;font-weight:600;background:linear-gradient(140deg,var(--v-main),#ef7a3e)}
.libvxac-nav{display:flex;gap:4px;margin-left:auto;overflow-x:auto;scrollbar-width:none}
.libvxac-nav::-webkit-scrollbar{display:none}
.libvxac-nav a{display:flex;align-items:center;min-height:44px;padding:0 14px;border-radius:999px;font-size:15px;color:var(--v-mute);white-space:nowrap;transition:background .2s,color .2s}
.libvxac-nav a:hover{background:#f0ece5;color:var(--v-ink)}
.libvxac-nav a.is-on{background:var(--v-ink);color:#fff}

/* 首屏 */
.libvxac-hero{position:relative;overflow:hidden;background:#0c0e13;color:#fff}
.libvxac-heroimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.libvxac-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,11,16,.86),rgba(9,11,16,.7) 55%,rgba(9,11,16,.92))}
.libvxac-heroin{position:relative;z-index:2;max-width:1160px;margin:0 auto;padding:64px 20px 52px}
.libvxac-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;letter-spacing:.1em;color:#ffce8c;border:1px solid rgba(255,206,140,.4);border-radius:999px;padding:5px 14px;margin-bottom:20px}
.libvxac-h1{font-size:44px;line-height:1.24;letter-spacing:-.02em;max-width:16em}
.libvxac-h1 span{color:var(--v-aux)}
.libvxac-lead{margin-top:16px;font-size:18px;color:#dfdbd4;max-width:38em}
.libvxac-intro{margin-top:16px;font-size:15px;line-height:1.95;color:#a9a49c;max-width:46em}
.libvxac-acts{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.libvxac-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;border-radius:11px;background:var(--v-main);color:#fff;font-weight:600;font-size:15px;transition:transform .2s,background .2s}
.libvxac-btn:hover{background:var(--v-main-d);transform:translateY(-1px)}
.libvxac-btn--ghost{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.32)}
.libvxac-btn--ghost:hover{background:rgba(255,255,255,.2)}
.libvxac-sub{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:26px;max-width:560px}
.libvxac-sublabel{width:100%;font-size:13px;color:#8f8a84;letter-spacing:.08em}
.libvxac-sub input{flex:1 1 240px;min-height:46px;padding:0 15px;border-radius:11px;border:1px solid rgba(255,255,255,.26);background:rgba(255,255,255,.1);color:#fff;font-size:15px}
.libvxac-sub input::placeholder{color:#8f8a84}
.libvxac-sub button{min-height:46px;padding:0 22px;border:0;border-radius:11px;background:var(--v-aux);color:#241a05;font-weight:700;font-size:15px;cursor:pointer;transition:filter .2s}
.libvxac-sub button:hover{filter:brightness(1.08)}
.libvxac-road{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:38px}
.libvxac-road li{display:flex;flex-direction:column;gap:3px;padding-top:13px;border-top:2px solid rgba(255,255,255,.2);font-size:14px}
.libvxac-road li.is-now{border-top-color:var(--v-aux)}
.libvxac-road li span{font-size:12px;letter-spacing:.12em;color:#8f8a84}
.libvxac-road li strong{font-size:15px;font-weight:600;color:#fff}
.libvxac-road li em{font-style:normal;font-size:12px;color:#ffce8c}

/* 板块骨架 */
.libvxac-sec{padding:58px 20px}
.libvxac-in{max-width:1160px;margin:0 auto}
.libvxac-sec--alt{background:#fff;border-top:1px solid var(--v-line);border-bottom:1px solid var(--v-line)}
.libvxac-sec--dark{background:#14161c;color:#e8e5df}
.libvxac-head{max-width:720px;margin-bottom:28px}
.libvxac-kicker{font-size:13px;font-weight:600;letter-spacing:.16em;color:var(--v-main);margin-bottom:8px}
.libvxac-head h2{font-size:27px;line-height:1.4;letter-spacing:-.01em}
.libvxac-head p{margin-top:10px;font-size:15px;color:var(--v-mute)}
.libvxac-sec--dark .libvxac-kicker{color:var(--v-aux)}
.libvxac-sec--dark .libvxac-head h2{color:#fff}
.libvxac-sec--dark .libvxac-head p{color:#9aa0aa}

/* 卖点三连 */
.libvxac-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--v-gap)}
.libvxac-trioitem{background:var(--v-card);border:1px solid var(--v-line);border-radius:var(--v-r);padding:24px;box-shadow:var(--v-sh)}
.libvxac-trioitem h3{font-size:18px;margin-bottom:8px}
.libvxac-trioitem p{font-size:15px;color:var(--v-mute)}

/* 入口矩阵 */
.libvxac-entries{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.libvxac-entry{background:var(--v-bg);border-radius:var(--v-r);padding:20px 22px;border:1px solid var(--v-line)}
.libvxac-entry h3{font-size:17px;margin-bottom:6px}
.libvxac-entry p{font-size:14px;color:var(--v-mute)}

/* 卡片墙 */
.libvxac-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--v-gap)}
.libvxac-card{background:var(--v-card);border:1px solid var(--v-line);border-radius:var(--v-r);overflow:hidden;box-shadow:var(--v-sh);transition:transform .24s,box-shadow .24s}
.libvxac-card:hover{transform:translateY(-3px);box-shadow:0 16px 34px rgba(21,23,28,.13)}
.libvxac-poster{position:relative;aspect-ratio:4/5;overflow:hidden;background:#e9e4dc}
.libvxac-poster img{width:100%;height:100%;object-fit:cover}
.libvxac-badge{position:absolute;left:10px;top:10px;padding:4px 10px;border-radius:999px;background:rgba(12,14,19,.84);color:#fff;font-size:12px;letter-spacing:.04em}
.libvxac-score{position:absolute;right:10px;bottom:10px;padding:3px 9px;border-radius:8px;background:var(--v-aux);color:#221a06;font-weight:700;font-size:13px}
.libvxac-cbody{padding:16px}
.libvxac-name{font-size:16px;font-weight:600;line-height:1.5}
.libvxac-meta{margin-top:6px;font-size:14px;color:var(--v-mute);line-height:1.7}

/* 专题 */
.libvxac-topics{display:grid;gap:16px}
.libvxac-topic{display:grid;grid-template-columns:112px 1fr;gap:16px;align-items:center;background:var(--v-card);border:1px solid var(--v-line);border-radius:var(--v-r);padding:14px;box-shadow:var(--v-sh);transition:transform .24s}
.libvxac-topic:hover{transform:translateX(3px)}
.libvxac-topic .libvxac-poster{width:112px;aspect-ratio:3/4;border-radius:11px}
.libvxac-topic .libvxac-cbody{padding:0}

/* 资讯 */
.libvxac-news{display:grid;gap:16px}
.libvxac-newsin{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center;background:var(--v-card);border:1px solid var(--v-line);border-radius:var(--v-r);padding:14px;box-shadow:var(--v-sh)}
.libvxac-newsthumb{aspect-ratio:16/10;border-radius:11px;overflow:hidden;background:#e9e4dc}
.libvxac-newsthumb img{width:100%;height:100%;object-fit:cover}
.libvxac-tag{display:inline-block;font-size:12px;padding:3px 10px;border-radius:999px;background:#f2ece2;color:#8a6a2c;margin-bottom:6px}

/* 数据面板 */
.libvxac-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.libvxac-stat{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.11);border-radius:var(--v-r);padding:22px}
.libvxac-stat h3{font-size:17px;color:#fff;margin-bottom:8px}
.libvxac-stat p{font-size:14px;color:#9aa0aa}

/* 排行榜 */
.libvxac-rank{display:grid;grid-template-columns:repeat(2,1fr);gap:10px 26px}
.libvxac-rankrow{display:flex;align-items:center;gap:14px;padding:12px 14px;background:var(--v-card);border:1px solid var(--v-line);border-radius:12px}
.libvxac-rankrow b{flex:none;width:26px;font-size:15px;color:var(--v-main);font-weight:700}
.libvxac-rankrow .libvxac-name{font-size:15px;flex:1 1 auto}
.libvxac-rankrow .libvxac-flag{flex:none;font-size:12px;color:var(--v-mute);background:#f2ece2;border-radius:999px;padding:3px 9px}

/* 高分好评 */
.libvxac-picks{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.libvxac-pick{display:flex;gap:14px;align-items:flex-start;background:var(--v-card);border:1px solid var(--v-line);border-radius:var(--v-r);padding:18px}
.libvxac-pick b{flex:none;font-size:15px;color:var(--v-main);background:#fdf0ee;border-radius:9px;padding:4px 9px}
.libvxac-pick h3{font-size:16px;margin-bottom:4px}
.libvxac-pick p{font-size:14px;color:var(--v-mute)}

/* 口碑 */
.libvxac-voices{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.libvxac-voice{background:var(--v-card);border:1px solid var(--v-line);border-radius:var(--v-r);padding:22px;box-shadow:var(--v-sh)}
.libvxac-voice p{font-size:15px;color:#3d414a}
.libvxac-voice span{display:block;margin-top:12px;font-size:13px;color:var(--v-mute)}

/* 问答 */
.libvxac-faq{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.libvxac-faqitem{background:var(--v-card);border:1px solid var(--v-line);border-radius:var(--v-r);padding:20px 22px}
.libvxac-faqitem h3{font-size:16px;margin-bottom:8px}
.libvxac-faqitem p{font-size:14px;color:var(--v-mute)}

/* 联系 */
.libvxac-contact{display:grid;grid-template-columns:1.1fr .9fr;gap:34px;align-items:center}
.libvxac-contactlist{display:grid;gap:14px;margin-top:22px}
.libvxac-contactlist li{background:var(--v-card);border:1px solid var(--v-line);border-radius:12px;padding:16px 18px}
.libvxac-contactlist h3{font-size:15px;margin-bottom:4px}
.libvxac-contactlist p{font-size:14px;color:var(--v-mute)}
.libvxac-contactimg{border-radius:var(--v-r);overflow:hidden;box-shadow:var(--v-sh);aspect-ratio:4/3}
.libvxac-contactimg img{width:100%;height:100%;object-fit:cover}

/* 页脚 */
.libvxac-foot{background:#101218;color:#9aa0aa;padding:52px 20px 26px}
.libvxac-footin{max-width:1160px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.libvxac-fcol h3{font-size:15px;color:#fff;margin-bottom:12px}
.libvxac-fcol li,.libvxac-fcol p{font-size:14px;line-height:1.9}
.libvxac-fcol a{display:inline-flex;align-items:center;min-height:36px;transition:color .2s}
.libvxac-fcol a:hover{color:#fff}
.libvxac-copy{max-width:1160px;margin:34px auto 0;padding-top:18px;border-top:1px solid rgba(255,255,255,.1);font-size:13px;color:#767c86}

@media (max-width:1024px){
  .libvxac-h1{font-size:36px}
  .libvxac-grid,.libvxac-trio,.libvxac-entries,.libvxac-stats,.libvxac-voices{grid-template-columns:repeat(2,1fr)}
  .libvxac-rank,.libvxac-picks,.libvxac-faq{grid-template-columns:1fr}
  .libvxac-contact{grid-template-columns:1fr;gap:24px}
  .libvxac-footin{grid-template-columns:repeat(2,1fr)}
  .libvxac-road{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:768px){
  .libvxac-sec{padding:44px 18px}
  .libvxac-heroin{padding:48px 18px 42px}
  .libvxac-h1{font-size:30px}
  .libvxac-lead{font-size:16px}
  .libvxac-intro{font-size:14px}
  .libvxac-head h2{font-size:22px}
  .libvxac-newsin{grid-template-columns:1fr}
  .libvxac-newsthumb{aspect-ratio:16/9}
  .libvxac-topic{grid-template-columns:88px 1fr}
  .libvxac-topic .libvxac-poster{width:88px}
}
@media (max-width:520px){
  .libvxac-topin{padding:10px 14px;gap:10px}
  .libvxac-logo{font-size:16px}
  .libvxac-nav a{padding:0 11px;font-size:14px}
  .libvxac-grid,.libvxac-trio,.libvxac-entries,.libvxac-stats,.libvxac-voices{grid-template-columns:1fr}
  .libvxac-h1{font-size:26px}
  .libvxac-acts .libvxac-btn{flex:1 1 100%}
  .libvxac-road{grid-template-columns:1fr;gap:12px}
  .libvxac-footin{grid-template-columns:1fr;gap:22px}
  .libvxac-rankrow{flex-wrap:wrap;gap:8px}
  .libvxac-pick{flex-direction:column;gap:8px}
}
