/* roulang page: index */
:root{
  --c-blue:#1e5bd6;
  --c-deep:#0a2a5e;
  --bg-mist:#f4f7fd;
  --card-white:#ffffff;
  --txt-main:#0f2338;
  --txt-weak:#5b6b84;
  --stroke:#e2eaf6;
  --r-lg:16px;
  --elev:0 10px 26px rgba(19,50,105,.08);
  --gap-x:24px;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--bg-mist);color:var(--txt-main);font-family:"PingFang SC","Hiragino Sans GB","Microsoft YaHei",system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.72;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
ul,ol{margin:0;padding:0;list-style:none}
h1,h2,h3,h4,p{margin:0}
button,input{font:inherit}
:focus-visible{outline:2px solid #9dbdf7;outline-offset:2px}

.bxtmzv-wrap{width:min(1200px,100% - 48px);margin-inline:auto}

/* 顶栏 */
.bxtmzv-top{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.93);backdrop-filter:blur(10px);border-bottom:1px solid var(--stroke)}
.bxtmzv-top-in{display:flex;align-items:center;gap:18px;min-height:68px}
.bxtmzv-logo{display:inline-flex;align-items:center;gap:10px;font-size:19px;font-weight:700;letter-spacing:.4px;color:var(--c-deep);white-space:nowrap}
.bxtmzv-logo i{display:block;width:30px;height:30px;border-radius:9px;background:linear-gradient(135deg,var(--c-blue),#5f97f4)}
.bxtmzv-menu{display:flex;gap:2px;margin-left:auto;overflow-x:auto;scrollbar-width:none}
.bxtmzv-menu::-webkit-scrollbar{display:none}
.bxtmzv-menu a{display:flex;align-items:center;min-height:44px;padding:0 13px;border-radius:10px;font-size:15px;color:var(--txt-weak);white-space:nowrap;transition:background .2s,color .2s}
.bxtmzv-menu a:hover{background:#eef3fd;color:var(--c-blue)}

/* 首屏 */
.bxtmzv-hero{padding:46px 0 52px;background:linear-gradient(180deg,#ffffff 0%,var(--bg-mist) 100%)}
.bxtmzv-hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:46px;align-items:center}
.bxtmzv-eyebrow{display:inline-block;margin-bottom:14px;padding:5px 12px;border-radius:999px;background:#e8f0fe;color:var(--c-blue);font-size:13px;font-weight:600;letter-spacing:.4px}
.bxtmzv-hero h1{font-size:44px;line-height:1.18;letter-spacing:-.8px;margin-bottom:14px}
.bxtmzv-hero h1 em{font-style:normal;color:var(--c-blue)}
.bxtmzv-sub{font-size:17px;color:var(--txt-weak);margin-bottom:16px}
.bxtmzv-lead{font-size:15px;line-height:1.9;color:var(--txt-weak)}
.bxtmzv-search{display:flex;gap:10px;margin:24px 0 18px;max-width:520px}
.bxtmzv-search input{flex:1;min-width:0;min-height:48px;padding:0 16px;border:1px solid var(--stroke);border-radius:12px;background:#fff;color:var(--txt-main)}
.bxtmzv-search input:focus{border-color:var(--c-blue);outline:none;box-shadow:0 0 0 3px rgba(30,91,214,.14)}
.bxtmzv-search button{min-height:48px;padding:0 22px;border:0;border-radius:12px;background:var(--c-blue);color:#fff;font-weight:600;cursor:pointer;transition:background .2s}
.bxtmzv-search button:hover{background:#1749ad}
.bxtmzv-hero-btns{display:flex;gap:12px;flex-wrap:wrap}
.bxtmzv-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 22px;border-radius:12px;background:var(--c-blue);color:#fff;font-weight:600;box-shadow:0 6px 16px rgba(30,91,214,.24);transition:transform .2s,box-shadow .2s}
.bxtmzv-btn:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(30,91,214,.3)}
.bxtmzv-btn-ghost{background:#fff;color:var(--c-deep);border:1px solid var(--stroke);box-shadow:var(--elev)}
.bxtmzv-btn-ghost:hover{box-shadow:0 14px 28px rgba(19,50,105,.14)}
.bxtmzv-hero-visual{position:relative;border-radius:22px;overflow:hidden;box-shadow:0 24px 60px rgba(12,40,90,.18)}
.bxtmzv-hero-visual img{width:100%;aspect-ratio:4/3;object-fit:cover}
.bxtmzv-hero-note{position:absolute;left:16px;right:16px;bottom:16px;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,.95);box-shadow:0 8px 22px rgba(12,40,90,.16)}
.bxtmzv-tag{display:inline-block;font-size:12px;font-weight:600;color:var(--c-blue);background:#e8f0fe;padding:3px 9px;border-radius:999px}
.bxtmzv-hero-note p{margin:8px 0 10px;font-size:14px;color:var(--txt-main)}
.bxtmzv-count{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13px;color:var(--txt-weak)}
.bxtmzv-count a{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:9px;background:var(--c-deep);color:#fff;font-size:13px;font-weight:600}

/* 通用板块 */
.bxtmzv-sec{padding:54px 0}
.bxtmzv-sec-alt{background:#fff}
.bxtmzv-sec-head{max-width:780px;margin-bottom:26px}
.bxtmzv-sec-head h2{font-size:26px;line-height:1.35;letter-spacing:-.3px;margin-bottom:10px}
.bxtmzv-sec-head p{font-size:15px;line-height:1.85;color:var(--txt-weak)}
.bxtmzv-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap-x)}
.bxtmzv-card{background:var(--card-white);border:1px solid var(--stroke);border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--elev);transition:transform .22s,box-shadow .22s}
.bxtmzv-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(19,50,105,.14)}
.bxtmzv-thumb{position:relative;aspect-ratio:3/4;overflow:hidden;background:#e8eefb}
.bxtmzv-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.bxtmzv-card:hover .bxtmzv-thumb img{transform:scale(1.04)}
.bxtmzv-badge{position:absolute;top:10px;left:10px;padding:3px 9px;border-radius:999px;background:rgba(10,42,94,.86);color:#fff;font-size:12px;letter-spacing:.3px}
.bxtmzv-score{position:absolute;right:10px;bottom:10px;padding:3px 9px;border-radius:999px;background:rgba(255,255,255,.95);color:#c2410c;font-size:13px;font-weight:700}
.bxtmzv-card-body{padding:14px 15px 16px}
.bxtmzv-card-body h3{font-size:16px;margin-bottom:6px}
.bxtmzv-card-body p{font-size:14px;line-height:1.65;color:var(--txt-weak)}

/* 内容日历 */
.bxtmzv-cal{display:grid;grid-template-columns:repeat(7,1fr);gap:14px}
.bxtmzv-cal li{padding:16px 14px;background:#fff;border:1px solid var(--stroke);border-radius:14px;box-shadow:var(--elev)}
.bxtmzv-cal b{display:block;margin-bottom:6px;font-size:14px;color:var(--c-blue)}
.bxtmzv-cal span{font-size:14px;line-height:1.65;color:var(--txt-weak)}

/* 专题 */
.bxtmzv-topic{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--gap-x)}
.bxtmzv-topic li{padding:24px 22px;border:1px solid var(--stroke);border-radius:var(--r-lg);background:linear-gradient(160deg,#ffffff,#eef4ff);box-shadow:var(--elev)}
.bxtmzv-topic h3{font-size:18px;margin-bottom:8px}
.bxtmzv-topic p{font-size:14px;line-height:1.75;color:var(--txt-weak)}
.bxtmzv-topic .bxtmzv-tag{margin-top:14px}

/* 解读 */
.bxtmzv-note{display:grid;gap:16px}
.bxtmzv-note article{padding:20px 22px;background:#fff;border:1px solid var(--stroke);border-left:3px solid var(--c-blue);border-radius:12px;box-shadow:var(--elev)}
.bxtmzv-note h3{font-size:17px;margin-bottom:8px}
.bxtmzv-note p{font-size:14.5px;line-height:1.8;color:var(--txt-weak)}

/* 排行榜 */
.bxtmzv-rank{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}
.bxtmzv-rank li{display:flex;align-items:center;gap:12px;padding:12px 15px;background:#fff;border:1px solid var(--stroke);border-radius:12px}
.bxtmzv-rank b{flex:0 0 26px;width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:#eef3fd;color:var(--c-blue);font-size:13px}
.bxtmzv-rank li:nth-child(-n+3) b{background:var(--c-blue);color:#fff}
.bxtmzv-rank .nm{flex:1;font-size:15px;font-weight:600}
.bxtmzv-rank .cat{padding:2px 8px;border-radius:6px;background:#f2f6fd;color:var(--txt-weak);font-size:12px}
.bxtmzv-rank .sc{font-size:13px;font-weight:700;color:#c2410c}

/* 动态 */
.bxtmzv-feed{display:grid;gap:12px}
.bxtmzv-feed li{display:flex;gap:16px;align-items:baseline;padding:14px 18px;background:#fff;border:1px solid var(--stroke);border-radius:12px}
.bxtmzv-feed time{font-size:13px;color:var(--c-blue);white-space:nowrap;font-weight:600}
.bxtmzv-feed span{font-size:14.5px;line-height:1.7;color:var(--txt-weak)}

/* 观察条 */
.bxtmzv-bars{display:grid;gap:16px;padding:26px 24px;background:#fff;border:1px solid var(--stroke);border-radius:var(--r-lg);box-shadow:var(--elev)}
.bxtmzv-bars .row{display:grid;grid-template-columns:92px 1fr;align-items:center;gap:14px;font-size:14px;color:var(--txt-weak)}
.bxtmzv-bars .track{height:10px;border-radius:999px;background:#eef3fd;overflow:hidden}
.bxtmzv-bars .fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--c-blue),#6ea3f8)}

/* 保障 */
.bxtmzv-guard{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.bxtmzv-guard li{padding:22px 18px;text-align:center;background:#fff;border:1px solid var(--stroke);border-radius:14px;box-shadow:var(--elev)}
.bxtmzv-guard svg{width:26px;height:26px;margin:0 auto 10px;stroke:var(--c-blue);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.bxtmzv-guard h3{font-size:15px;margin-bottom:6px}
.bxtmzv-guard p{font-size:14px;line-height:1.65;color:var(--txt-weak)}

/* 问答 */
.bxtmzv-faq{display:grid;gap:12px;max-width:880px}
.bxtmzv-faq details{padding:16px 20px;background:#fff;border:1px solid var(--stroke);border-radius:12px;box-shadow:var(--elev)}
.bxtmzv-faq summary{font-size:15.5px;font-weight:600;cursor:pointer;list-style:none}
.bxtmzv-faq summary::-webkit-details-marker{display:none}
.bxtmzv-faq summary::before{content:"＋";color:var(--c-blue);margin-right:8px;font-weight:700}
.bxtmzv-faq details[open] summary::before{content:"－"}
.bxtmzv-faq p{margin-top:10px;font-size:14.5px;line-height:1.8;color:var(--txt-weak)}

/* 订阅条 */
.bxtmzv-sub{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:38px 36px;border-radius:20px;color:#fff;background-image:linear-gradient(115deg,rgba(9,33,74,.94),rgba(30,91,214,.86)),url("/assets/images/backpic/back-3.webp");background-size:cover;background-position:center;box-shadow:0 24px 50px rgba(12,40,90,.22)}
.bxtmzv-sub h2{font-size:24px;margin-bottom:10px}
.bxtmzv-sub p{font-size:14.5px;line-height:1.8;color:rgba(255,255,255,.86);max-width:640px}
.bxtmzv-sub-form{display:flex;gap:10px;flex-wrap:wrap}
.bxtmzv-sub-form input{min-height:48px;min-width:220px;padding:0 16px;border:0;border-radius:12px;background:rgba(255,255,255,.94);color:var(--txt-main)}
.bxtmzv-sub-form button{min-height:48px;padding:0 24px;border:0;border-radius:12px;background:#fff;color:var(--c-deep);font-weight:700;cursor:pointer}

/* 页脚 */
.bxtmzv-foot{background:#08192e;color:#b8c7dc;padding:50px 0 24px}
.bxtmzv-foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:34px}
.bxtmzv-foot h3{color:#fff;font-size:15px;margin-bottom:12px}
.bxtmzv-foot ul{display:grid;gap:9px;font-size:14px}
.bxtmzv-foot a{transition:color .2s}
.bxtmzv-foot a:hover{color:#fff}
.bxtmzv-foot-about p{font-size:14px;line-height:1.8;max-width:320px}
.bxtmzv-copy{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-top:34px;padding-top:18px;border-top:1px solid rgba(255,255,255,.12);font-size:13px;color:#8fa2bd}

@media (max-width:1024px){
  .bxtmzv-hero h1{font-size:36px}
  .bxtmzv-hero-grid{grid-template-columns:1fr;gap:32px}
  .bxtmzv-grid-3{grid-template-columns:repeat(2,1fr)}
  .bxtmzv-cal{grid-template-columns:repeat(4,1fr)}
  .bxtmzv-topic{grid-template-columns:1fr}
  .bxtmzv-rank{grid-template-columns:1fr}
  .bxtmzv-guard{grid-template-columns:repeat(2,1fr)}
  .bxtmzv-sub{grid-template-columns:1fr;padding:30px 26px}
  .bxtmzv-foot-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:768px){
  .bxtmzv-sec{padding:42px 0}
  .bxtmzv-sec-head h2{font-size:22px}
  .bxtmzv-hero{padding:34px 0 40px}
  .bxtmzv-hero h1{font-size:31px}
  .bxtmzv-lead{font-size:14.5px}
  .bxtmzv-cal{grid-template-columns:repeat(3,1fr)}
  .bxtmzv-menu a{padding:0 11px;font-size:14px}
}
@media (max-width:520px){
  .bxtmzv-wrap{width:min(1200px,100% - 32px)}
  .bxtmzv-logo{font-size:17px}
  .bxtmzv-hero h1{font-size:27px;letter-spacing:-.4px}
  .bxtmzv-search{flex-direction:column}
  .bxtmzv-search button{width:100%}
  .bxtmzv-grid-3{grid-template-columns:repeat(2,1fr);gap:12px}
  .bxtmzv-card-body{padding:11px 12px 13px}
  .bxtmzv-card-body h3{font-size:14.5px}
  .bxtmzv-card-body p{font-size:14px}
  .bxtmzv-cal{grid-template-columns:repeat(2,1fr)}
  .bxtmzv-guard{grid-template-columns:1fr}
  .bxtmzv-bars .row{grid-template-columns:76px 1fr}
  .bxtmzv-foot-grid{grid-template-columns:1fr;gap:24px}
  .bxtmzv-sub-form input{min-width:0;width:100%}
  .bxtmzv-sub-form button{width:100%}
  .bxtmzv-hero-note{position:static;border-radius:0 0 18px 18px;box-shadow:none;background:#fff}
  .bxtmzv-hero-visual{border-radius:18px;box-shadow:var(--elev)}
}
