/* ============================================================
 * 论坛首页 · 交易大厅版式（forum-home.css）
 * 来源：论坛首页-高保真视觉稿.html（2026-10-20 1:1 移植）
 * 作用域：.fhome（仅论坛首页使用，不与全站样式互相影响）
 * 注意：K线涨跌配色已按中文站点惯例调整为「涨红跌绿」
 * ============================================================ */
.fhome{
--navy-900:#0a1628; --navy-800:#10203a; --navy-700:#182a45;
    --gold:#c9a227; --gold-2:#d4a853; --goldbg:#fbf3df;
    --up:#2fd08e; --down:#e0575b;
    --text:#2a3544; --muted:#64748b; --muted2:#94a3b8;
    --border:#e2e8f0; --page:#eef2f7;
  background:#0a1424;
  color:#dbe4ef;
  font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
  line-height:1.6;
  display:flow-root; /* 阻止末尾 vip-band 的 margin-bottom 塌陷出容器，防止露出 body 白底长条（2026-10-20） */
}
.fhome *,.fhome *::before,.fhome *::after{box-sizing:border-box;}
.fhome h1,.fhome h2,.fhome h3,.fhome h4,.fhome h5,.fhome h6{margin:0;padding:0;color:inherit;} /* color:inherit 防全站 h1-h6{color:var(--ink-900)} 把深色 hero 里的标题涂黑（2026-10-20 字不显示修复） */
.fhome a{color:inherit;text-decoration:none;}
.fhome button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;}
.fhome .num{font-variant-numeric:tabular-nums;}
.fhome .wrap{max-width:1180px;margin:0 auto;padding:0 20px;}

.fhome .wrap{max-width:1180px; margin:0 auto; padding:0 20px;}
.fhome .nav{display:flex; gap:4px;}
.fhome .btn{display:inline-flex; align-items:center; justify-content:center; gap:6px; border:none; border-radius:9px; font-weight:600; transition:filter .15s;}
.fhome .btn:hover{filter:brightness(1.07);}
.fhome .btn-sm{font-size:12.5px; padding:7px 14px;}
.fhome .btn-ghost{background:transparent; color:#c6d3e4; border:1px solid rgba(255,255,255,.22);}
.fhome .btn-gold{background:linear-gradient(135deg,var(--gold-2),var(--gold)); color:#241a02;}
.fhome .btn-lg{font-size:15px; padding:12px 26px;}
.fhome .hero{
    background:
      radial-gradient(ellipse at 88% 10%, rgba(212,168,83,.17), transparent 46%),
      radial-gradient(ellipse at 4% 92%, rgba(47,208,142,.08), transparent 40%),
      linear-gradient(115deg,var(--navy-900) 0%,var(--navy-800) 58%,#0d1c33 100%);
    color:#fff; padding:34px 0 30px; position:relative; overflow:hidden;
  }
.fhome .hero::before{content:""; position:absolute; inset:0; background:repeating-linear-gradient(0deg,rgba(255,255,255,.022) 0 1px,transparent 1px 46px); pointer-events:none;}
.fhome .hero .wrap{display:grid; grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr); gap:34px; align-items:center; position:relative;}
.fhome .crumbs{font-size:12.5px; color:#8fa2bd; margin-bottom:14px;}
.fhome .crumbs b{color:#d7e2f0; font-weight:500;}
.fhome .floor-tag{display:inline-flex; align-items:center; gap:8px; font-size:11px; letter-spacing:2.5px; color:var(--gold-2); font-weight:700; margin-bottom:12px;}
.fhome .floor-tag .dot{width:8px; height:8px; border-radius:50%; background:var(--up); box-shadow:0 0 10px rgba(47,208,142,.9); animation:blink 2.2s ease-in-out infinite;}
@keyframes blink{0%,100%{opacity:1;} 50%{opacity:.35;}}
.fhome .hero h1{font-family:"Noto Serif SC","Songti SC",serif; font-size:40px; font-weight:900; line-height:1.28; margin-bottom:10px;}
.fhome .hero h1 em{font-style:normal; color:var(--gold-2);}
.fhome .hero .lead{color:#c6d3e4; font-size:14.5px; max-width:600px; margin-bottom:18px;}
.fhome .hero .lead b{color:#fff; font-weight:600;}
.fhome .hero-acts{display:flex; gap:12px; flex-wrap:wrap;}
.fhome .live-line{display:flex; align-items:center; gap:10px; flex-wrap:wrap; font-size:12.5px; color:#9fb0c6; margin-top:18px;}
.fhome .live-line .onl{color:var(--up); font-weight:700; font-variant-numeric:tabular-nums;}
.fhome .live-line .sep{opacity:.4;}
.fhome .panel{
    background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02));
    border:1px solid rgba(212,168,83,.3); border-radius:16px; padding:16px 18px 12px; position:relative;
    box-shadow:0 18px 50px rgba(0,0,0,.35);
  }
.fhome .panel .p-h{display:flex; align-items:baseline; gap:10px; margin-bottom:10px;}
.fhome .panel .p-h b{font-size:13.5px; color:#fff;}
.fhome .panel .p-h .p-sym{font-size:11px; color:#7f92ad; letter-spacing:1px;}
.fhome .panel .p-h .p-chg{margin-left:auto; font-size:12px; color:var(--up); font-weight:700;}
.fhome .panel .p-h .p-time{font-size:10.5px; color:#5d6f8a;}
.fhome .panel svg{display:block; width:100%; height:auto; aspect-ratio:560/200;}
.fhome .panel .p-foot{display:flex; justify-content:space-between; align-items:center; margin-top:8px; font-size:10.5px; color:#5d6f8a;}
.fhome .panel .p-foot .tag-2{color:#8fa2bd; border:1px solid rgba(212,168,83,.35); padding:1px 8px; border-radius:999px;}
.fhome .sect-strip{background:var(--navy-900); border:1px solid rgba(212,168,83,.24); border-radius:14px; margin-top:26px; position:relative; z-index:3; overflow:hidden;}
.fhome .sect-strip .ss-h{display:flex; align-items:center; gap:10px; padding:11px 18px; border-bottom:1px solid rgba(255,255,255,.07);}
.fhome .ss-h .ss-t{font-size:11px; letter-spacing:2.5px; color:var(--gold-2); font-weight:700;}
.fhome .ss-live{margin-left:auto; display:inline-flex; align-items:center; gap:6px; font-size:11px; color:#8fa2bd;}
.fhome .ss-live i{width:6px; height:6px; border-radius:50%; background:var(--up); box-shadow:0 0 6px rgba(47,208,142,.8); animation:blink 2.4s ease-in-out infinite;}
.fhome .ss-live b{color:var(--gold-2); font-weight:700;}
.fhome .ss-h .ss-all{font-size:11.5px; color:var(--gold-2); font-weight:600; cursor:pointer;}
.fhome .ss-grid{display:grid; grid-template-columns:repeat(6,1fr);}
.fhome .sect{position:relative; min-width:0; border-right:1px solid rgba(255,255,255,.06); cursor:pointer; transition:background .15s; padding:14px 14px 13px;}
.fhome .sect:last-child{border-right:none;}
.fhome .sect:hover{background:rgba(212,168,83,.1);}
.fhome .sect::before{content:""; position:absolute; top:0; left:14px; right:14px; height:2px; border-radius:0 0 2px 2px; background:linear-gradient(90deg,var(--gold-2),var(--gold)); opacity:0; transition:opacity .15s;}
.fhome .sect:hover::before{opacity:1;}
.fhome .sect .s-head{display:flex; align-items:center; justify-content:space-between; margin-bottom:9px;}
.fhome .sect .s-ic{width:30px; height:30px; border-radius:8px; display:flex; align-items:center; justify-content:center; background:rgba(212,168,83,.14); color:var(--gold-2);}
.fhome .s-live{display:inline-flex; align-items:center; gap:4px; font-size:10.5px; color:#7f92ad;}
.fhome .s-live i{width:6px; height:6px; border-radius:50%; background:var(--up); box-shadow:0 0 6px rgba(47,208,142,.8); animation:blink 2.4s ease-in-out infinite;}
.fhome .s-live b{color:#c9d5e4; font-weight:600;}
.fhome .sect .s-nm{font-size:13px; color:#fff; font-weight:600; display:flex; align-items:center; gap:6px;}
.fhome .sect .s-up{font-size:10px; color:var(--gold-2); background:rgba(212,168,83,.16); border-radius:999px; padding:0 7px; font-weight:700;}
.fhome .sect .s-up.new{color:#fff; background:linear-gradient(135deg,var(--gold-2),var(--gold));}
.fhome .sect .s-cnt{font-size:10.5px; color:#7f92ad; margin-top:3px;}
.fhome .sect .s-last{font-size:10.5px; color:#5d6f8a; margin-top:5px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.fhome .main{display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:22px; margin-top:26px; align-items:start;}
.fhome .card{background:linear-gradient(180deg,#12233e,#0f1d34); border:1px solid rgba(212,168,83,.22); border-radius:16px; padding:20px 22px; margin-bottom:20px; box-shadow:0 14px 34px rgba(10,22,40,.22);}
.fhome .sec-h{display:flex; align-items:baseline; gap:12px; margin-bottom:14px; padding-bottom:11px; border-bottom:1px solid rgba(255,255,255,.09);}
.fhome .sec-h .en{font-size:10.5px; letter-spacing:2.5px; color:var(--gold-2); font-weight:700; flex:none;}
.fhome .sec-h h2{font-family:"Noto Serif SC","Songti SC",serif; font-size:19px; font-weight:700; color:#fff;}
.fhome .sec-h .more{margin-left:auto; font-size:12.5px; color:var(--gold-2); font-weight:600; cursor:pointer;}
.fhome .sec-h .more:hover{text-decoration:underline;}
.fhome .feed{display:flex; flex-direction:column;}
.fhome .feed-row{
    display:flex; align-items:center; gap:12px; padding:12px 10px; border-radius:10px;
    border-bottom:1px solid rgba(255,255,255,.07); cursor:pointer; transition:background .12s; position:relative;
  }
.fhome .feed-row:last-child{border-bottom:none;}
.fhome .feed-row:hover{background:linear-gradient(90deg,rgba(212,168,83,.14),rgba(212,168,83,.03));}
.fhome .feed-row.pin{background:linear-gradient(90deg,rgba(212,168,83,.18),rgba(212,168,83,.05));}
.fhome .feed-row .f-time{flex:none; width:52px; font-size:11px; color:#7f92ad; font-variant-numeric:tabular-nums;}
.fhome .feed-row .f-tag{flex:none; font-size:10.5px; font-weight:600; padding:2px 9px; border-radius:6px; letter-spacing:.5px;}
.fhome .f-tag.gold{background:rgba(212,168,83,.16); color:var(--gold-2); border:1px solid rgba(212,168,83,.32);}
.fhome .f-tag.blue{background:rgba(37,99,235,.16); color:#7aa5ff; border:1px solid rgba(37,99,235,.35);}
.fhome .f-tag.red{background:rgba(224,87,91,.16); color:#ff8b8f; border:1px solid rgba(224,87,91,.35);}
.fhome .f-tag.grey{background:rgba(255,255,255,.07); color:#8fa2bd; border:1px solid rgba(255,255,255,.12);}
.fhome .feed-row .f-main{flex:1; min-width:0;}
.fhome .feed-row .f-title{font-size:14px; font-weight:600; color:#e8eef7; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.fhome .feed-row:hover .f-title{color:var(--gold-2);}
.fhome .feed-row .f-sub{font-size:11px; color:#7f92ad; margin-top:2px; display:flex; gap:8px; align-items:center;}
.fhome .feed-row .f-sub b{color:var(--gold-2); font-weight:600;}
.fhome .bbadge{display:inline-flex; align-items:center; gap:4px; font-size:10px; font-weight:700; padding:1px 7px; border-radius:6px; margin-left:6px; vertical-align:1px;}
.fhome .bbadge.hot{background:rgba(224,87,91,.16); color:#ff8b8f; border:1px solid rgba(224,87,91,.35);}
.fhome .bbadge.ess{background:rgba(212,168,83,.16); color:var(--gold-2); border:1px solid rgba(212,168,83,.32);}
.fhome .feed-row .f-q{flex:none; display:flex; gap:16px; align-items:center;}
.fhome .f-q .q{text-align:center; font-size:10.5px; color:#7f92ad;}
.fhome .f-q .q b{display:block; font-size:14px; color:#e8eef7; line-height:1.2; font-weight:700; font-variant-numeric:tabular-nums;}
.fhome .like-btn{display:inline-flex; align-items:center; gap:4px; font-size:11px; color:#8fa2bd; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.05); border-radius:999px; padding:4px 11px; cursor:pointer; transition:all .13s; font-family:inherit;}
.fhome .like-btn:hover{color:var(--gold-2); border-color:var(--gold-2);}
.fhome .like-btn.on{background:rgba(212,168,83,.2); color:var(--gold-2); border-color:var(--gold-2);}
.fhome .like-btn svg{flex:none;}
.fhome .side-card{background:linear-gradient(180deg,#12233e,#0f1d34); border:1px solid rgba(212,168,83,.22); border-radius:16px; padding:18px 20px; margin-bottom:20px; box-shadow:0 14px 34px rgba(10,22,40,.22);}
.fhome .side-card .s-t{font-size:10.5px; letter-spacing:2px; color:var(--gold-2); font-weight:700; margin-bottom:12px; display:flex; align-items:center; gap:8px;}
.fhome .side-card .s-t svg{color:var(--gold-2);}
.fhome .hot-list{display:flex; flex-direction:column;}
.fhome .hot-item{display:flex; gap:12px; align-items:center; padding:9px 6px; border-bottom:1px dashed rgba(255,255,255,.1); font-size:13px; border-radius:8px; cursor:pointer; transition:background .12s;}
.fhome .hot-item:last-child{border-bottom:none;}
.fhome .hot-item:hover{background:rgba(212,168,83,.1);}
.fhome .hot-item .no{flex:none; width:22px; height:22px; border-radius:6px; background:rgba(255,255,255,.07); color:#8fa2bd; font-size:11.5px; font-weight:800; display:flex; align-items:center; justify-content:center; font-variant-numeric:tabular-nums;}
.fhome .hot-item:nth-child(-n+3) .no{background:linear-gradient(135deg,var(--gold-2),var(--gold)); color:#241a02;}
.fhome .hot-item .nm{flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:#e8eef7;}
.fhome .hot-item:hover .nm{color:var(--gold-2);}
.fhome .hot-item .heat{flex:none; font-size:11px; color:#7f92ad; font-variant-numeric:tabular-nums;}
.fhome .rank-item{display:flex; gap:12px; align-items:center; padding:9px 6px; border-bottom:1px dashed rgba(255,255,255,.1); font-size:13px; border-radius:8px;}
.fhome .rank-item:last-child{border-bottom:none;}
.fhome .rank-item:hover{background:rgba(212,168,83,.1);}
.fhome .rank-item .r-no{flex:none; width:20px; font-size:11px; font-weight:800; color:#5d6f8a; text-align:center; font-variant-numeric:tabular-nums;}
.fhome .rank-item:nth-child(-n+3) .r-no{color:var(--gold-2);}
.fhome .rank-item .r-av{flex:none; width:30px; height:30px; border-radius:9px; background:linear-gradient(135deg,var(--gold-2),var(--gold)); color:#241a02; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:12px; font-family:"Noto Serif SC","Songti SC",serif;}
.fhome .rank-item .r-av.a{background:rgba(37,99,235,.18); color:#7aa5ff;}
.fhome .rank-item .r-nm{flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#e8eef7; font-weight:600;}
.fhome .rank-item .r-lv{flex:none; font-size:10px; color:var(--gold-2); background:rgba(212,168,83,.16); border:1px solid rgba(212,168,83,.32); border-radius:999px; padding:0 8px; font-weight:600;}
.fhome .rank-item .r-ct{flex:none; font-size:11px; color:#7f92ad; font-variant-numeric:tabular-nums;}
.fhome .t-empty{display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; padding:56px 20px; text-align:center;}
.fhome .t-empty svg{color:rgba(212,168,83,.5);}
.fhome .t-empty b{font-size:15px; color:#c9d5e4; font-weight:700;}
.fhome .t-empty p{font-size:12.5px; color:#7f92ad;}
.fhome .t-empty.sm{padding:26px 12px;}
.fhome .t-empty.sm b{font-size:13.5px;}
.fhome .t-empty.sm p{font-size:12px;}
.fhome .desk{
    background:
      radial-gradient(ellipse at 86% 0%, rgba(212,168,83,.13), transparent 45%),
      linear-gradient(140deg,var(--navy-900),#0f1d34);
    border:1px solid rgba(212,168,83,.32); border-radius:18px; overflow:hidden;
    margin-bottom:18px; color:#fff; box-shadow:0 18px 44px rgba(10,22,40,.28);
  }
.fhome .desk-h{display:flex; align-items:center; gap:14px; flex-wrap:wrap; padding:13px 22px; border-bottom:1px solid rgba(212,168,83,.26); background:rgba(255,255,255,.03);}
.fhome .desk-h .dh-l{display:flex; align-items:baseline; gap:10px;}
.fhome .desk-h .dh-l .en{font-size:10.5px; letter-spacing:2.5px; color:var(--gold-2); font-weight:700;}
.fhome .desk-h .dh-l b{font-family:"Noto Serif SC","Songti SC",serif; font-size:16px; font-weight:700;}
.fhome .desk-h .dh-r{margin-left:auto; display:flex; align-items:center; gap:18px; flex-wrap:wrap;}
.fhome .desk-h .dh-it{display:flex; flex-direction:column; gap:1px; align-items:flex-end;}
.fhome .desk-h .dh-it i{font-style:normal; font-size:10px; color:#7f92ad;}
.fhome .desk-h .dh-it b{font-size:13.5px; color:#e8eef7; font-weight:700; font-variant-numeric:tabular-nums;}
.fhome .desk-h .dh-it b.gold{color:var(--gold-2);}
.fhome .desk-h .dh-sep{width:1px; height:22px; background:rgba(255,255,255,.14);}
.fhome .desk-body{display:grid; grid-template-columns:repeat(3,1fr);}
.fhome .desk-col{padding:20px 22px 16px; border-right:1px solid rgba(255,255,255,.08);}
.fhome .desk-col:last-child{border-right:none;}
.fhome .desk-col .dc-t{display:flex; align-items:center; gap:8px; font-size:13.5px; font-weight:700; margin-bottom:13px; color:#e8eef7;}
.fhome .desk-col .dc-t svg{color:var(--gold-2); flex:none;}
.fhome .desk-col .dc-t em{font-style:normal; color:var(--gold-2);}
.fhome .signin .si-line{display:flex; align-items:flex-end; justify-content:space-between; gap:10px;}
.fhome .signin .si-days{display:flex; align-items:baseline; gap:5px; color:#7f92ad; font-size:12px;}
.fhome .signin .si-days b{color:#fff; font-size:40px; font-family:"Noto Serif SC","Songti SC",serif; font-weight:900; line-height:1; font-variant-numeric:tabular-nums;}
.fhome .signin .si-btn{background:linear-gradient(135deg,var(--gold-2),var(--gold)); color:#241a02; border:none; border-radius:9px; padding:9px 22px; font-size:13px; font-weight:700; cursor:pointer; font-family:inherit; transition:filter .13s;}
.fhome .signin .si-btn:hover{filter:brightness(1.08);}
.fhome .signin .si-btn.done{background:rgba(255,255,255,.08); color:#8fa2bd; border:1px solid rgba(255,255,255,.18); cursor:default;}
.fhome .signin .si-week{display:flex; gap:5px; margin-top:16px;}
.fhome .signin .si-week i{flex:1; height:6px; border-radius:3px; background:rgba(255,255,255,.12);}
.fhome .signin .si-week i.ok{background:linear-gradient(90deg,var(--gold-2),var(--gold));}
.fhome .signin .si-tip{font-size:11px; color:#b7a468; margin-top:12px; display:flex; align-items:center; gap:6px;}
.fhome .signin .si-tip b{color:var(--gold-2);}
.fhome .task-item{display:flex; align-items:center; gap:10px; padding:7.5px 0; border-bottom:1px dashed rgba(255,255,255,.1); font-size:13px;}
.fhome .task-item:last-child{border-bottom:none;}
.fhome .task-item .ti{flex:1; min-width:0;}
.fhome .task-item .ti b{display:block; color:#e8eef7; font-size:13px; font-weight:600;}
.fhome .task-item .ti span{font-size:10.5px; color:#7f92ad;}
.fhome .task-item .do{margin-left:auto; font-size:11px; color:var(--gold-2); font-weight:700; cursor:pointer; white-space:nowrap;}
.fhome .task-item .do.done{color:#7f92ad; cursor:default;}
.fhome .desk-prog{display:flex; align-items:center; gap:8px; margin-top:10px;}
.fhome .desk-prog .dp-track{flex:1; height:4px; border-radius:2px; background:rgba(255,255,255,.12); overflow:hidden;}
.fhome .desk-prog .dp-track i{display:block; height:100%; border-radius:2px; background:linear-gradient(90deg,var(--gold-2),var(--gold));}
.fhome .desk-prog span{font-size:10.5px; color:#7f92ad;}
.fhome .desk-prog b{color:var(--gold-2); font-weight:700;}
.fhome .achv-item{display:flex; align-items:center; gap:10px; padding:7.5px 0; border-bottom:1px dashed rgba(255,255,255,.1); font-size:13px;}
.fhome .achv-item:last-child{border-bottom:none;}
.fhome .achv-item .ai-ic{flex:none; width:28px; height:28px; border-radius:8px; background:rgba(255,255,255,.08); color:#7f92ad; display:flex; align-items:center; justify-content:center;}
.fhome .achv-item .ai-ic.done{background:rgba(212,168,83,.18); color:var(--gold-2);}
.fhome .achv-item .ai-t{flex:1; min-width:0;}
.fhome .achv-item .ai-t b{display:block; font-size:13px; color:#e8eef7; font-weight:600;}
.fhome .achv-item .ai-t span{font-size:10.5px; color:#7f92ad;}
.fhome .achv-item .ai-st{flex:none; font-size:10.5px; font-weight:700; color:var(--gold-2);}
.fhome .achv-item .ai-st.off{color:#5d6f8a;}
.fhome .desk-cta{display:flex; align-items:center; gap:22px; flex-wrap:wrap; padding:18px 24px; border-top:1px solid rgba(212,168,83,.26); background:rgba(212,168,83,.06);}
.fhome .desk-cta .dc-t{font-family:"Noto Serif SC","Songti SC",serif; font-size:17px; font-weight:700; flex:none;}
.fhome .desk-cta .dc-t em{font-style:normal; color:var(--gold-2);}
.fhome .desk-cta .dc-d{flex:1; min-width:220px; font-size:12.5px; color:#9fb0c6;}
.fhome .vip-band{
    background:
      radial-gradient(ellipse at 12% 20%, rgba(212,168,83,.2), transparent 45%),
      linear-gradient(120deg,var(--navy-900),#14263f);
    border:1px solid rgba(212,168,83,.35); border-radius:20px;
    padding:32px 36px; margin:8px 0 32px; color:#fff; display:flex; align-items:center; gap:28px; flex-wrap:wrap;
  }
.fhome .vip-band .vb-t{flex:1; min-width:280px;}
.fhome .vip-band .vb-t .en{font-size:11px; letter-spacing:2.5px; color:var(--gold-2); font-weight:700; margin-bottom:6px;}
.fhome .vip-band .vb-t h3{font-family:"Noto Serif SC","Songti SC",serif; font-size:22px; font-weight:700; margin-bottom:6px;}
.fhome .vip-band .vb-t h3 em{font-style:normal; color:var(--gold-2);}
.fhome .vip-band .vb-t p{font-size:13px; color:#b9c6d8; max-width:600px;}
.fhome .vip-band .vb-btns{display:flex; gap:12px; flex-wrap:wrap;}
.fhome #fhToast{
    position:fixed; left:50%; bottom:34px; transform:translateX(-50%) translateY(20px);
    background:var(--navy-900); color:#fff; font-size:13px; padding:10px 22px; border-radius:10px;
    border:1px solid rgba(212,168,83,.4); opacity:0; pointer-events:none; transition:all .25s; z-index:2000;
  }
.fhome #fhToast.show{opacity:1; transform:translateX(-50%) translateY(0);}
@media (max-width:1020px){
  .fhome .hero .wrap{grid-template-columns:1fr; gap:24px;}
  .fhome .panel{max-width:560px;}
  .fhome .ss-grid{grid-template-columns:repeat(3,1fr);}
  .fhome .sect{border-bottom:1px solid rgba(255,255,255,.06);}
  .fhome .main{grid-template-columns:minmax(0,1fr);}
  .fhome .engage{grid-template-columns:1fr;}
  .fhome .desk-body{grid-template-columns:1fr;}
  .fhome .desk-col{border-right:none; border-bottom:1px solid rgba(255,255,255,.08);}
  .fhome .desk-col:last-child{border-bottom:none;}
  .fhome .desk-h .dh-r{width:100%; margin-left:0; justify-content:space-between;}
}
@media (max-width:560px){
  .fhome .hero{padding:28px 0 24px;}
  .fhome .hero h1{font-size:30px;}
  .fhome .nav{display:none;}
  .fhome .ss-grid{grid-template-columns:repeat(2,1fr);}
  .fhome .feed-row .f-time{display:none;}
  .fhome .feed-row .f-q .q.r{display:none;}
  .fhome .card{padding:16px 14px;}
  .fhome .f-q{gap:10px;}
}

/* 今日话题条（设计稿内联样式落地） */
.fhome .topic{display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin:22px 0 18px; background:linear-gradient(90deg,rgba(212,168,83,.16),rgba(212,168,83,.04)); border:1px solid rgba(212,168,83,.3); border-left:4px solid var(--gold-2); border-radius:12px; padding:14px 18px; font-size:13.5px; color:#c9d5e4;}
.fhome .topic .tp-t{font-size:10.5px; letter-spacing:2px; font-weight:700; color:var(--gold-2);}
.fhome .topic b{color:#e8eef7;}
.fhome .topic .tp-go{margin-left:auto; color:var(--gold-2); font-weight:700; cursor:pointer;}
.fhome .topic .tp-go:hover{text-decoration:underline;}

/* ============================================================
 * 论坛分区列表页 / 帖子详情页（2026-10-20 新增，同 .fhome 作用域）
 * 复用首页设计 token：深蓝底、金线、serif 标题、tabular-nums
 * ============================================================ */

/* ---- Hero 标题降档（详情页标题较长）---- */
.fhome .hero h1.t-sm{font-size:31px; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;}
.fhome .hero .lead .cat-chip{color:var(--gold-2); font-weight:600;}

/* ---- Hero 面板：近 7 日发帖量柱状图（SVG 服务端渲染）---- */
.fhome .panel .p-bars{display:block; width:100%; height:auto; aspect-ratio:560/200;}
.fhome .panel .p-h .p-sum{margin-left:auto; font-size:12px; color:var(--gold-2); font-weight:700; font-variant-numeric:tabular-nums;}

/* ---- 排序 Tab（服务端排序，a 链接直跳）---- */
.fhome .tabs{display:flex; gap:2px; border-bottom:1px solid rgba(255,255,255,.09); margin-bottom:4px; padding:0 2px; overflow-x:auto;}
.fhome .tab{display:inline-flex; align-items:center; gap:7px; font-size:13px; font-weight:600; color:#8fa2bd; padding:11px 15px; border-bottom:2px solid transparent; margin-bottom:-1px; cursor:pointer; transition:color .13s; white-space:nowrap;}
.fhome .tab svg{opacity:.75;}
.fhome .tab:hover{color:#e8eef7;}
.fhome .tab.on{color:var(--gold-2); border-bottom-color:var(--gold-2);}
.fhome .tab.on svg{opacity:1;}

/* ---- 帖子行（分区列表页）---- */
.fhome .plist{display:flex; flex-direction:column;}
.fhome .prow{display:flex; align-items:flex-start; gap:14px; padding:15px 10px; border-bottom:1px solid rgba(255,255,255,.07); border-radius:10px; transition:background .12s; cursor:pointer; position:relative;}
.fhome .prow:last-child{border-bottom:none;}
.fhome .prow:hover{background:linear-gradient(90deg,rgba(212,168,83,.12),rgba(212,168,83,.03));}
.fhome .prow .p-av{flex:none; width:38px; height:38px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:15px; font-family:"Noto Serif SC","Songti SC",serif; background:linear-gradient(135deg,var(--gold-2),var(--gold)); color:#241a02;}
.fhome .prow .p-av.r-admin{background:linear-gradient(135deg,#60a5fa,#2563eb); color:#fff;}
.fhome .prow .p-av.r-vip{background:linear-gradient(135deg,#a78bfa,#7c3aed); color:#fff;}
.fhome .prow .p-av.r-pro{background:linear-gradient(135deg,#2fd08e,#059669); color:#fff;}
.fhome .prow .p-main{flex:1; min-width:0;}
.fhome .prow .p-title{font-size:14.5px; font-weight:600; color:#e8eef7; line-height:1.55;}
.fhome .prow:hover .p-title{color:var(--gold-2);}
.fhome .prow .p-ex{font-size:12px; color:#7f92ad; margin-top:3px; line-height:1.65; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.fhome .prow .p-meta{display:flex; align-items:center; gap:8px; flex-wrap:wrap; font-size:11px; color:#7f92ad; margin-top:7px;}
.fhome .prow .p-meta .who{color:#a9b8cc; font-weight:600;}
.fhome .prole{font-size:10px; font-weight:700; padding:0 7px; border-radius:999px; letter-spacing:.5px; line-height:16px;}
.fhome .prole.r-admin{background:rgba(59,130,246,.16); color:#7aa5ff; border:1px solid rgba(59,130,246,.4);}
.fhome .prole.r-vip{background:rgba(167,139,250,.16); color:#c4b5fd; border:1px solid rgba(167,139,250,.4);}
.fhome .prole.r-pro{background:rgba(47,208,142,.14); color:#5ee0ad; border:1px solid rgba(47,208,142,.35);}
.fhome .prow .p-stats{flex:none; display:flex; gap:18px; align-items:center; padding-top:2px;}
.fhome .p-stats .ps{text-align:center; font-size:10.5px; color:#7f92ad;}
.fhome .p-stats .ps b{display:block; font-size:14px; color:#e8eef7; font-weight:700; line-height:1.25; font-variant-numeric:tabular-nums;}
.fhome .p-stats .ps.hot b{color:var(--gold-2);}

/* ---- 分页 ---- */
.fhome .pger{display:flex; gap:6px; justify-content:center; align-items:center; padding:20px 0 6px; flex-wrap:wrap;}
.fhome .pger a,.fhome .pger span{min-width:32px; height:32px; padding:0 9px; display:inline-flex; align-items:center; justify-content:center; border-radius:8px; font-size:12.5px; font-weight:600; color:#8fa2bd; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.1); font-variant-numeric:tabular-nums; transition:all .13s; cursor:pointer;}
.fhome .pger a:hover{color:var(--gold-2); border-color:var(--gold-2);}
.fhome .pger .cur{background:linear-gradient(135deg,var(--gold-2),var(--gold)); color:#241a02; border-color:transparent; cursor:default;}
.fhome .pger .dots{background:none; border-color:transparent; cursor:default;}

/* ---- 侧栏：分区导航 ---- */
.fhome .catlist{display:flex; flex-direction:column;}
.fhome .catlist a{display:flex; align-items:center; gap:10px; padding:9px 8px; border-radius:9px; font-size:13px; color:#a9b8cc; transition:background .12s; cursor:pointer;}
.fhome .catlist a:hover{background:rgba(212,168,83,.1); color:#e8eef7;}
.fhome .catlist a.on{background:rgba(212,168,83,.14); color:var(--gold-2); font-weight:600;}
.fhome .catlist .cic{flex:none; width:26px; height:26px; border-radius:7px; display:flex; align-items:center; justify-content:center; background:rgba(255,255,255,.06); color:#8fa2bd;}
.fhome .catlist a.on .cic{background:rgba(212,168,83,.2); color:var(--gold-2);}
.fhome .catlist .cn{flex:1; min-width:0; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
.fhome .catlist .cc{flex:none; font-size:11px; color:#5d6f8a; font-variant-numeric:tabular-nums;}

/* ---- 侧栏：统计行 ---- */
.fhome .stat-rows{display:flex; flex-direction:column;}
.fhome .stat-row{display:flex; justify-content:space-between; align-items:center; padding:8.5px 0; border-bottom:1px dashed rgba(255,255,255,.1); font-size:12.5px;}
.fhome .stat-row:last-child{border-bottom:none;}
.fhome .stat-row .k{color:#7f92ad;}
.fhome .stat-row .v{color:#e8eef7; font-weight:700; font-variant-numeric:tabular-nums;}
.fhome .stat-row .v.gold{color:var(--gold-2);}

/* ---- 金色 CTA 卡 ---- */
.fhome .cta-card{background:radial-gradient(ellipse at 85% 0%, rgba(212,168,83,.22), transparent 55%), linear-gradient(150deg,#1a2a47,#13233d); border:1px solid rgba(212,168,83,.4); border-radius:16px; padding:20px 22px; margin-bottom:20px; box-shadow:0 14px 34px rgba(10,22,40,.28);}
.fhome .cta-card .cc-t{font-family:"Noto Serif SC","Songti SC",serif; font-size:16px; font-weight:700; color:#fff; margin-bottom:8px;}
.fhome .cta-card .cc-t em{font-style:normal; color:var(--gold-2);}
.fhome .cta-card p{font-size:12.5px; color:#9fb0c6; line-height:1.75; margin-bottom:14px;}
.fhome .cta-card p b{color:var(--gold-2);}

/* ---- 帖子详情：楼主卡 ---- */
.fhome .pd{padding:22px 24px 20px;}
.fhome .pd-tag{display:inline-flex; align-items:center; gap:6px; font-size:10.5px; font-weight:600; padding:2px 10px; border-radius:6px; background:rgba(212,168,83,.16); color:var(--gold-2); border:1px solid rgba(212,168,83,.32); margin-bottom:12px; cursor:pointer;}
.fhome .pd-tag:hover{background:rgba(212,168,83,.26);}
.fhome .pd-meta{display:flex; align-items:center; gap:14px; flex-wrap:wrap; font-size:12px; color:#7f92ad; padding-bottom:14px; border-bottom:1px solid rgba(255,255,255,.09);}
.fhome .pd-meta .who{display:inline-flex; align-items:center; gap:6px; color:#c9d5e4; font-weight:600;}
.fhome .pd-meta .who svg{color:var(--gold-2);}
.fhome .pd-meta .m{display:inline-flex; align-items:center; gap:5px; font-variant-numeric:tabular-nums;}
.fhome .pd-meta .m svg{color:#5d6f8a;}
.fhome .pd-body{font-size:14.5px; color:#c9d5e4; line-height:1.95; padding:16px 2px 4px; word-break:break-word; white-space:pre-wrap;}
.fhome .pd-acts{display:flex; gap:10px; flex-wrap:wrap; padding-top:14px; border-top:1px solid rgba(255,255,255,.07); margin-top:12px;}
.fhome .pbtn{display:inline-flex; align-items:center; gap:6px; font-size:12.5px; font-weight:600; color:#a9b8cc; background:rgba(255,255,255,.05); border:1px solid rgba(255,255,255,.14); border-radius:999px; padding:7px 15px; cursor:pointer; transition:all .13s; font-family:inherit;}
.fhome .pbtn:hover{color:var(--gold-2); border-color:var(--gold-2);}
.fhome .pbtn.on{background:rgba(212,168,83,.2); color:var(--gold-2); border-color:var(--gold-2);}
.fhome .pbtn.gold{background:linear-gradient(135deg,var(--gold-2),var(--gold)); color:#241a02; border-color:transparent;}
.fhome .pbtn.gold:hover{filter:brightness(1.08); color:#241a02;}
.fhome .pbtn svg{flex:none;}
.fhome .pbtn .lnum{font-variant-numeric:tabular-nums;}

/* ---- 帖子详情：回复列表 ---- */
.fhome .rep{display:flex; gap:13px; padding:15px 0; border-bottom:1px solid rgba(255,255,255,.07);}
.fhome .rep:last-child{border-bottom:none;}
.fhome .rep .r-av{flex:none; width:34px; height:34px; border-radius:9px; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:14px; font-family:"Noto Serif SC","Songti SC",serif; background:rgba(255,255,255,.08); color:#a9b8cc;}
.fhome .rep .r-av.bot{background:linear-gradient(135deg,var(--gold-2),var(--gold)); color:#241a02;}
.fhome .rep .r-av.r-admin{background:linear-gradient(135deg,#60a5fa,#2563eb); color:#fff;}
.fhome .rep .r-av.r-vip{background:linear-gradient(135deg,#a78bfa,#7c3aed); color:#fff;}
.fhome .rep .r-av.r-pro{background:linear-gradient(135deg,#2fd08e,#059669); color:#fff;}
.fhome .rep .r-body{flex:1; min-width:0;}
.fhome .rep .r-top{display:flex; align-items:center; gap:8px; flex-wrap:wrap; font-size:12.5px;}
.fhome .rep .r-top b{color:#e8eef7; font-weight:600;}
.fhome .rep .r-top time{font-size:11px; color:#5d6f8a;}
.fhome .rep .r-botb{font-size:10px; font-weight:700; color:var(--gold-2); background:rgba(212,168,83,.16); border:1px solid rgba(212,168,83,.32); border-radius:999px; padding:0 7px; line-height:16px;}
.fhome .rep .r-text{font-size:13.5px; color:#c9d5e4; line-height:1.8; margin-top:6px; word-break:break-word; white-space:pre-wrap;}
.fhome .rep .r-acts{display:flex; gap:10px; margin-top:8px;}
.fhome .rep .r-acts button{display:inline-flex; align-items:center; gap:5px; font-size:11.5px; color:#7f92ad; background:none; border:none; cursor:pointer; font-family:inherit; padding:2px 4px; border-radius:6px; transition:color .13s;}
.fhome .rep .r-acts button:hover{color:var(--gold-2);}
.fhome .rep .r-acts button.on{color:var(--gold-2);}
.fhome .rep .r-acts .lnum{font-variant-numeric:tabular-nums;}

/* ---- 帖子详情：回复框 ---- */
.fhome .repbox h3{font-family:"Noto Serif SC","Songti SC",serif; font-size:16px; font-weight:700; color:#fff; margin-bottom:12px; display:flex; align-items:baseline; gap:10px;}
.fhome .repbox h3 .en{font-size:10.5px; letter-spacing:2.5px; color:var(--gold-2); font-weight:700; font-family:"Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;}
.fhome .ta{width:100%; min-height:120px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.14); border-radius:12px; padding:14px 16px; font-size:13.5px; color:#e8eef7; line-height:1.7; resize:vertical; font-family:inherit; outline:none; transition:border-color .15s;}
.fhome .ta:focus{border-color:var(--gold-2); background:rgba(255,255,255,.06);}
.fhome .ta::placeholder{color:#5d6f8a;}
.fhome .rbfoot{display:flex; align-items:center; gap:14px; flex-wrap:wrap; margin-top:12px;}
.fhome .rbfoot .tip{font-size:11.5px; color:#7f92ad;}
.fhome .rbfoot .tip b{color:var(--gold-2);}

/* ---- 通知条 ---- */
.fhome .notice{display:flex; align-items:center; gap:10px; font-size:13px; border-radius:12px; padding:13px 16px; margin-bottom:16px; border:1px solid rgba(212,168,83,.4); background:rgba(212,168,83,.1); color:#e8c97a;}
.fhome .notice.err{border-color:rgba(224,87,91,.45); background:rgba(224,87,91,.12); color:#ff9ba0;}
.fhome .notice.lock{border-color:rgba(255,255,255,.18); background:rgba(255,255,255,.05); color:#9fb0c6;}
.fhome .notice a{color:var(--gold-2); font-weight:700; text-decoration:underline;}
.fhome .notice b{font-weight:800;}

/* ---- Hero 面板：帖子数据行 ---- */
.fhome .panel .pd-rows{display:flex; flex-direction:column; padding:2px 0;}
.fhome .panel .pd-row{display:flex; justify-content:space-between; align-items:baseline; padding:9.5px 0; border-bottom:1px dashed rgba(255,255,255,.1); font-size:12.5px;}
.fhome .panel .pd-row:last-child{border-bottom:none;}
.fhome .panel .pd-row .k{color:#8fa2bd;}
.fhome .panel .pd-row .v{color:#fff; font-weight:700; font-size:15px; font-variant-numeric:tabular-nums;}
.fhome .panel .pd-row .v.gold{color:var(--gold-2);}

/* ---- 侧栏：作者卡 ---- */
.fhome .author-card .a-top{display:flex; align-items:center; gap:12px; margin-bottom:14px;}
.fhome .author-card .a-av{flex:none; width:46px; height:46px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:19px; font-family:"Noto Serif SC","Songti SC",serif; background:linear-gradient(135deg,var(--gold-2),var(--gold)); color:#241a02;}
.fhome .author-card .a-name{font-size:14.5px; font-weight:700; color:#fff; display:flex; align-items:center; gap:7px; flex-wrap:wrap;}
.fhome .author-card .a-desc{font-size:11px; color:#7f92ad; margin-top:3px;}
.fhome .author-card .a-stats{display:grid; grid-template-columns:repeat(3,1fr); gap:8px; text-align:center;}
.fhome .author-card .a-stats b{display:block; font-size:16px; color:var(--gold-2); font-weight:800; font-variant-numeric:tabular-nums;}
.fhome .author-card .a-stats span{font-size:10.5px; color:#7f92ad;}

/* ---- 响应式（沿用首页断点）---- */
@media (max-width:1020px){
  .fhome .prow .p-stats{gap:14px;}
  .fhome .hero h1.t-sm{font-size:28px;}
}
@media (max-width:560px){
  .fhome .prow{flex-wrap:wrap;}
  .fhome .prow .p-stats{width:100%; justify-content:flex-start; gap:26px; padding-top:10px; margin-left:52px;}
  .fhome .pd{padding:16px 14px;}
  .fhome .rep .r-av{width:28px; height:28px; font-size:12px; border-radius:8px;}
  .fhome .pd-meta{gap:10px;}
  .fhome .hero h1.t-sm{font-size:25px;}
  .fhome .author-card .a-stats b{font-size:15px;}
}
