
/* ═══════ 版块页 ═══════ */
.fb-page{margin-top:0}
/* 版块横幅 */
.fb-banner{position:relative;overflow:hidden;width:100vw;margin-left:calc(50% - 50vw);background:radial-gradient(120% 170% at 50% -30%,#5b62d6 0%,#3636bd 42%,#1b1560 100%);box-shadow:0 18px 46px rgba(30,28,110,.32);color:#fff;margin-bottom:18px;padding:26px var(--nq-hero-pad,24px) 22px}
.fb-banner::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 26px),repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 26px);pointer-events:none;mask-image:linear-gradient(115deg,transparent 30%,#000 100%);-webkit-mask-image:linear-gradient(115deg,transparent 30%,#000 100%)}
.fb-orb{position:absolute;border-radius:50%;pointer-events:none}
.fb-orb.o1{width:230px;height:230px;right:-70px;top:-120px;background:radial-gradient(circle at 35% 65%,rgba(170,160,255,.5),rgba(170,160,255,0) 68%)}
.fb-orb.o2{width:150px;height:150px;right:200px;bottom:-85px;background:radial-gradient(circle at 60% 40%,rgba(90,80,230,.55),rgba(90,80,230,0) 70%)}
.fb-b-top{position:relative;display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.fb-bico{width:64px;height:64px;border-radius:16px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;font-size:32px;flex:none;box-shadow:0 6px 18px rgba(0,0,0,.18)}
.fb-b-info{flex:1;min-width:220px}
.fb-b-info h1{margin:0;font-size:22px;letter-spacing:1.5px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.fb-b-info h1 small{font-size:11px;font-weight:600;letter-spacing:2px;color:rgba(255,255,255,.75);background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:2.5px 11px}
.fb-b-info p{margin:7px 0 0;font-size:13px;color:rgba(255,255,255,.75)}
.fb-b-stats{position:relative;display:flex;align-items:stretch;margin-top:18px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.16);border-radius:13px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:9px 6px;width:fit-content}
.fb-bstat{text-align:center;min-width:86px;padding:2px 14px;position:relative}
.fb-bstat + .fb-bstat::before{content:'';position:absolute;left:0;top:6px;bottom:6px;width:1px;background:rgba(255,255,255,.18)}
.fb-bstat b{display:block;font-size:19px;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.3}
.fb-bstat span{font-size:11.5px;color:rgba(255,255,255,.68);letter-spacing:1px}
.fb-b-act{position:relative;margin-top:16px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.fb-back{font-size:12.5px;color:rgba(255,255,255,.65);text-decoration:none}
.fb-back:hover{color:#fff}
.fb-post{display:inline-flex;align-items:center;gap:6px;background:#fff;color:var(--primary);font-weight:700;font-size:13.5px;border-radius:999px;padding:8px 22px;text-decoration:none;box-shadow:0 6px 16px rgba(0,0,0,.22);transition:transform .15s}
.fb-post:hover{transform:translateY(-2px)}
/* 双栏骨架 */
.fb-grid{display:grid;grid-template-columns:minmax(0,1fr) 296px;gap:16px;align-items:start}
.fb-main{display:flex;flex-direction:column;gap:12px}
/* tab 行 */
.fb-tabs{background:var(--card);border:1px solid var(--border);border-radius:13px;padding:6px 10px;display:flex;gap:4px;flex-wrap:wrap}
.fb-tabs a{padding:7.5px 16px;border-radius:9px;font-size:13.5px;color:var(--muted);text-decoration:none;transition:all .15s}
.fb-tabs a:hover{color:var(--primary);background:rgba(52,102,255,.06)}
.fb-tabs a.on{color:#fff;background:linear-gradient(95deg,var(--primary),#5c85ff);font-weight:600;box-shadow:0 3px 10px rgba(43,86,212,.28)}
/* 主题行 */
.fb-item{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:15px 18px;display:flex;gap:13px;align-items:flex-start;position:relative;overflow:hidden;transition:transform .15s ease,box-shadow .15s ease}
.fb-item::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--primary),#7ea8ff);opacity:0;transition:opacity .15s}
.fb-item:hover{transform:translateX(3px);box-shadow:0 8px 22px rgba(20,40,90,.09)}
.fb-item:hover::before{opacity:1}
.fb-item.pinned::before{background:linear-gradient(180deg,#e54d42,#f06552);opacity:1}
.fb-title{font-size:15.5px;font-weight:600;line-height:1.45;color:var(--text);text-decoration:none;display:block}
.fb-title:hover{color:var(--primary)}
.fb-badges{display:inline-flex;gap:5px;margin-right:7px;vertical-align:1px}
.fb-badge{display:inline-block;font-size:10.5px;font-weight:700;color:#fff;border-radius:5px;padding:1.5px 6.5px;line-height:1.5;letter-spacing:.5px}
.fb-badge.pin{background:linear-gradient(95deg,#e54d42,#f06552)}
.fb-badge.ess{background:linear-gradient(95deg,#e8940a,#f2a93b)}
.fb-meta{display:flex;align-items:center;gap:9px;margin-top:7px;font-size:12.5px;color:var(--muted);flex-wrap:wrap}
.fb-meta a{color:var(--muted);text-decoration:none}
.fb-meta a:hover{color:var(--primary)}
.fb-nums{margin-left:auto;display:flex;gap:14px;font-variant-numeric:tabular-nums;white-space:nowrap}
/* 右侧栏 */
.fb-side{display:flex;flex-direction:column;gap:14px}
.fb-card{background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden}
.fb-card-h{padding:13px 18px 0;font-size:14.5px;font-weight:700;display:flex;align-items:center;gap:7px}
.fb-card-h::before{content:'';width:4px;height:14px;border-radius:2px;background:linear-gradient(180deg,var(--primary),#7ea8ff)}
.fb-statlist{padding:10px 18px 14px;display:flex;flex-direction:column;gap:9px}
.fb-statrow{display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}
.fb-statrow b{color:var(--text);font-variant-numeric:tabular-nums}
.fb-hotlist{padding:8px 12px 12px;display:flex;flex-direction:column}
.fb-hotrow{display:flex;align-items:center;gap:10px;padding:8px 6px;text-decoration:none;border-radius:9px;transition:background .15s}
.fb-hotrow:hover{background:rgba(52,102,255,.05)}
.fb-hotrow i{font-style:normal;width:18px;text-align:center;font-size:13px;font-weight:800;color:var(--muted);flex:none}
.fb-hotrow:nth-child(1) i{color:#e0564b}.fb-hotrow:nth-child(2) i{color:#e8940a}.fb-hotrow:nth-child(3) i{color:#e6a23c}
.fb-hotrow span{flex:1;min-width:0;font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fb-hotrow:hover span{color:var(--primary)}
.fb-hotrow em{font-style:normal;font-size:11.5px;color:var(--muted);flex:none;font-variant-numeric:tabular-nums}
/* 手机端 */
@media (max-width:820px){
  .fb-grid{grid-template-columns:minmax(0,1fr)}
  .fb-side{order:2}
  .fb-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .fb-banner{padding:20px}
}
