:root{--nf-bg:#f5f5f7;--nf-ink:#1d1d1f;--nf-mute:#86868b;--nf-line:rgba(0,0,0,.08);--nf-card:#fff;--nf-gold:#a78b4a;--nf-red:#b42318;--nf-green:#0f7b3d;color-scheme:light}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--nf-bg:#0b0b0d;--nf-ink:#f5f5f7;--nf-mute:#a1a1a6;--nf-line:rgba(255,255,255,.14);--nf-card:#1c1c1e;--nf-gold:#e8c84a;--nf-red:#ff6b6b;--nf-green:#34c759;color-scheme:dark}}
:root[data-theme="dark"]{--nf-bg:#0b0b0d;--nf-ink:#f5f5f7;--nf-mute:#a1a1a6;--nf-line:rgba(255,255,255,.14);--nf-card:#1c1c1e;--nf-gold:#e8c84a;--nf-red:#ff6b6b;--nf-green:#34c759;color-scheme:dark}
:root[data-theme="light"]{--nf-bg:#f5f5f7;--nf-ink:#1d1d1f;--nf-mute:#86868b;--nf-line:rgba(0,0,0,.08);--nf-card:#fff;--nf-gold:#a78b4a;--nf-red:#b42318;--nf-green:#0f7b3d;color-scheme:light}
html,body{margin:0;background:var(--nf-bg);color:var(--nf-ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","PingFang SC","Hiragino Sans GB",sans-serif;-webkit-font-smoothing:antialiased}
.wui-app,.nf{max-width:1180px;margin:0 auto;padding:52px 28px 88px}
.nf-kicker{margin:0;font-size:11px;letter-spacing:.32em;text-transform:uppercase;color:var(--nf-gold);font-weight:600}
.nf h1{margin:6px 0 8px;font-size:clamp(40px,6vw,64px);font-weight:600;letter-spacing:-.038em;line-height:1.02}
.nf-sub{margin:0;color:var(--nf-mute);font-size:15px;font-weight:400}
.nf-top{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}
.nf-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.nf-layout{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:4px 0 18px}
.nf-layout[hidden]{display:none}
.nf-layout-title{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--nf-mute);font-weight:600;padding-bottom:8px}
.nf-segwrap{display:flex;flex-direction:column;align-items:flex-end;gap:5px}
.nf-seglab{font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--nf-mute);font-weight:600}
.nf-seg{display:flex;background:rgba(120,120,128,.12);border-radius:9px;padding:2px}
.nf-seg button{border:0;background:transparent;color:var(--nf-ink);min-width:36px;height:28px;border-radius:7px;font-size:13px;font-weight:600;cursor:pointer}
.nf-seg button.is-on{background:var(--nf-card);box-shadow:0 1px 2px rgba(0,0,0,.12)}
.nf-btn{border:0;background:transparent;color:var(--nf-ink);font-size:14px;padding:8px 12px;border-radius:980px;cursor:pointer}
.nf-btn:hover{background:rgba(120,120,128,.12)}
.nf-go{background:var(--nf-ink);color:var(--nf-bg);padding:8px 16px;font-weight:600}
.nf-go:disabled{opacity:.45}
.nf-hero{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--nf-line);border-radius:20px;overflow:hidden;margin:40px 0 28px}
.nf-hero button{border:0;background:var(--nf-card);text-align:left;padding:22px 18px 20px;cursor:pointer;color:inherit}
.nf-hero button:hover,.nf-hero button.is-on{background:color-mix(in srgb,var(--nf-card) 92%, var(--nf-gold))}
.nf-hero .k{font-size:12px;color:var(--nf-mute);margin-bottom:6px}
.nf-hero .v{font-size:clamp(22px,2.4vw,30px);font-weight:600;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.nf-hero .d{font-size:12px;margin-top:4px;font-variant-numeric:tabular-nums}
.nf-hero .up{color:var(--nf-red)}.nf-hero .down{color:var(--nf-green)}
.nf-macrobar{background:var(--nf-card);border:1px solid var(--nf-line);border-radius:16px;overflow:hidden;margin:0 0 28px}
.nf-macrobar[hidden]{display:none}
.nf-mb-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px}
.nf-mb-title{font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--nf-mute);font-weight:600}
.nf-mb-toggle{border:0;background:rgba(120,120,128,.12);color:var(--nf-ink);font-size:12px;padding:4px 12px;border-radius:8px;cursor:pointer}
.nf-mb-toggle:hover{background:rgba(120,120,128,.22)}
.nf-mb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--nf-line);border-top:1px solid var(--nf-line)}
.nf-mb-grid[hidden]{display:none}
.nf-mb{border:0;background:var(--nf-card);text-align:left;padding:14px 16px;cursor:pointer;color:inherit;min-width:0}
.nf-mb:hover{background:color-mix(in srgb,var(--nf-card) 92%, var(--nf-gold))}
.nf-mb-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0}
.nf-mb-name{font-size:12px;color:var(--nf-mute);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nf-mb-date{font-size:11px;color:var(--nf-mute);font-variant-numeric:tabular-nums;white-space:nowrap;flex-shrink:0}
.nf-mb-num{display:flex;align-items:baseline;gap:8px;margin-top:6px;min-width:0}
.nf-mb-val{font-size:22px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.nf-mb-chg{font-size:12px;color:var(--nf-mute);font-variant-numeric:tabular-nums}
.nf-nav{display:flex;gap:4px;border-bottom:1px solid var(--nf-line);margin-bottom:28px;overflow-x:auto}
.nf-nav button{border:0;background:none;color:var(--nf-mute);padding:10px 14px 12px;font-size:15px;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap}
.nf-nav button.is-on{color:var(--nf-ink);font-weight:600;border-bottom-color:var(--nf-ink)}
.nf-grid{display:grid;gap:28px 20px}
.nf-grid.price[data-cols="1"]{grid-template-columns:1fr}
.nf-grid.price[data-cols="2"]{grid-template-columns:1fr 1fr}
.nf-grid.price[data-cols="3"]{grid-template-columns:1fr 1fr 1fr}
.nf-grid.complex{grid-template-columns:1fr;margin-top:36px}
.nf-fig{min-width:0}
.nf-fig h3{margin:0 0 8px;font-size:17px;font-weight:600;letter-spacing:-.02em;display:flex;align-items:baseline;flex-wrap:wrap;gap:0 8px}
.nf-fig h3 span{color:var(--nf-mute);font-weight:400;font-size:13px}
.nf-fig-date{margin-left:auto;white-space:nowrap;font-variant-numeric:tabular-nums}
.nf-fig-src{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px;font-weight:500;border:1px solid var(--nf-line);border-radius:8px;padding:1px 8px;flex-shrink:0}
.nf-fig-mom{white-space:nowrap;font-variant-numeric:tabular-nums;font-size:11px;font-weight:600;border:1px solid var(--nf-line);border-radius:8px;padding:1px 8px;flex-shrink:0}
.nf-fig h3 .nf-fig-mom{color:var(--nf-mute)}
.nf-fig h3 .nf-fig-mom.wui-up{color:var(--nf-red);border-color:color-mix(in srgb,var(--nf-red) 40%,transparent)}
.nf-fig h3 .nf-fig-mom.wui-down{color:var(--nf-green);border-color:color-mix(in srgb,var(--nf-green) 40%,transparent)}
.nf-fig-end{margin-left:auto}
.nf-fig-note{margin:0 0 8px;font-size:12px;line-height:1.5;color:var(--nf-mute)}
.nf-stale-var{display:inline-block;margin:0 0 10px;font-size:12px;font-weight:500;line-height:1.5;color:var(--nf-gold);border:1px solid color-mix(in srgb,var(--nf-gold) 42%,transparent);background:color-mix(in srgb,var(--nf-gold) 12%,var(--nf-card));border-radius:8px;padding:4px 10px;font-variant-numeric:tabular-nums}
.nf-chart{width:100%}
.nf-grid.price[data-cols="1"] .nf-chart{height:460px}
.nf-grid.price[data-cols="2"] .nf-chart{height:340px}
.nf-grid.price[data-cols="3"] .nf-chart{height:280px}
.nf-grid.complex .nf-chart{height:460px}
.nf-opt{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:36px}
.nf-foot{margin-top:56px;color:var(--nf-mute);font-size:12px;line-height:1.7;text-align:center}
.nf-diag{margin:18px auto 0;max-width:760px;text-align:left}
.nf-diag[hidden]{display:none}
.nf-diag summary{cursor:pointer;list-style:none;display:flex;align-items:baseline;justify-content:center;gap:4px;font-size:12px;color:var(--nf-mute);user-select:none;-webkit-user-select:none}
.nf-diag summary::-webkit-details-marker{display:none}
.nf-diag summary::before{content:"▸ "}
.nf-diag[open] summary::before{content:"▾ "}
.nf-diag summary:hover{color:var(--nf-ink)}
.nf-diag-count{color:var(--nf-red);font-weight:600}
.nf-diag-count.is-ok{color:var(--nf-green)}
.nf-diag-body{margin-top:10px;border:1px solid var(--nf-line);border-radius:12px;background:var(--nf-card);padding:10px 14px 12px}
.nf-diag-tip{margin:0 0 8px;font-size:11px;line-height:1.6;color:var(--nf-mute)}
.nf-diag-row{display:flex;align-items:baseline;gap:10px;font-size:12px;padding:3px 0;flex-wrap:wrap;min-width:0}
.nf-diag-row+.nf-diag-row{border-top:1px solid var(--nf-line)}
.nf-diag-file{font-variant-numeric:tabular-nums;min-width:128px;color:var(--nf-ink);white-space:nowrap;flex-shrink:0}
.nf-diag-state{flex-shrink:0;font-size:11px;padding:0 8px;border-radius:6px;border:1px solid var(--nf-line);white-space:nowrap}
.nf-diag-row.is-ok .nf-diag-state{color:var(--nf-green);border-color:color-mix(in srgb,var(--nf-green) 40%,transparent)}
.nf-diag-row.is-bad .nf-diag-state{color:var(--nf-red);border-color:color-mix(in srgb,var(--nf-red) 40%,transparent)}
.nf-diag-row.is-bad .nf-diag-file{color:var(--nf-red)}
.nf-diag-note{color:var(--nf-mute);min-width:0;flex:1;word-break:break-word;font-variant-numeric:tabular-nums}
.nf-hero .wui-empty{grid-column:1/-1}
@media(max-width:840px){
  .nf-hero{grid-template-columns:1fr 1fr}
  .nf-mb-grid{grid-template-columns:1fr 1fr}
  .nf-grid.price[data-cols="2"],.nf-grid.price[data-cols="3"]{grid-template-columns:1fr}
  .nf-grid.complex{grid-template-columns:1fr}
  .nf-grid.price .nf-chart,.nf-grid.complex .nf-chart{height:320px}
  .nf-opt{grid-template-columns:1fr}
}
@media(max-width:560px){.nf-hero{grid-template-columns:1fr}.nf-mb-grid{grid-template-columns:1fr}.nf h1{font-size:36px}}
.nf-stale{margin:0 0 10px;font-size:13px;font-weight:500;color:var(--nf-ink)}
.nf-badge{position:fixed;right:18px;bottom:18px;z-index:60;max-width:calc(100vw - 36px)}
.nf-badge[hidden]{display:none}
.nf-badge-chip{display:block;border:1px solid var(--nf-line);background:var(--nf-card);color:var(--nf-mute);font-size:12px;line-height:1.45;padding:7px 14px;border-radius:980px;cursor:pointer;max-width:100%;text-align:left;font-variant-numeric:tabular-nums;box-shadow:0 4px 18px rgba(0,0,0,.16)}
.nf-badge-chip:hover{color:var(--nf-ink)}
.nf-badge-pop{position:absolute;right:0;bottom:100%;width:min(320px,calc(100vw - 36px));max-height:min(60vh,420px);overflow:auto;background:var(--nf-card);border:1px solid var(--nf-line);border-radius:14px;padding:12px 14px;box-shadow:0 12px 40px rgba(0,0,0,.28);display:none}
.nf-badge:hover .nf-badge-pop,.nf-badge.is-open .nf-badge-pop{display:block}
.nf-b-tip{margin:0 0 8px;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--nf-mute);font-weight:600}
.nf-b-row{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:3px 0;font-size:12px}
.nf-b-name{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--nf-mute)}
.nf-b-date{flex-shrink:0;font-variant-numeric:tabular-nums;color:var(--nf-ink)}
.nf-b-row.is-lag .nf-b-date{color:var(--nf-gold);font-weight:600}
.nf-pos{color:var(--nf-red)}
.nf-neg{color:var(--nf-green)}
.nf-na{color:var(--nf-mute)}
.nf-tabhead{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:0 0 18px}
.nf-th-main{display:flex;flex-direction:column;gap:4px;min-width:0}
.nf-th-title{font-size:22px;font-weight:600;letter-spacing:-.02em}
.nf-th-meta{font-size:12px;color:var(--nf-mute);line-height:1.5}
.nf-th-seg{flex-shrink:0}
.nf-sec{background:var(--nf-card);border:1px solid var(--nf-line);border-radius:16px;padding:18px 18px 16px;margin:0 0 20px;min-width:0}
.nf-sec h3{margin:0 0 12px;font-size:17px;font-weight:600;letter-spacing:-.02em;display:flex;align-items:baseline;flex-wrap:wrap;gap:0 8px}
.nf-sec h3>span{color:var(--nf-mute);font-weight:400;font-size:13px}
.nf-sec-date{margin-left:auto;white-space:nowrap;font-variant-numeric:tabular-nums}
.nf-sec-note{margin:12px 0 0;font-size:12px;line-height:1.6;color:var(--nf-mute)}
.nf-fl-sum{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;background:var(--nf-line);border:1px solid var(--nf-line);border-radius:16px;overflow:hidden;margin:0 0 20px}
.fs-cell{background:var(--nf-card);padding:12px 14px;min-width:0;display:flex;flex-direction:column;gap:4px}
.fs-cell i{font-style:normal;font-size:11px;color:var(--nf-mute)}
.fs-cell b{font-size:17px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.fs-cell em{font-style:normal;font-size:11px;color:var(--nf-mute);font-variant-numeric:tabular-nums}
.nf-moves{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.mv-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--nf-line);font-size:13px;flex-wrap:wrap}
.mv-row:last-child{border-bottom:0}
.mv-side{flex-shrink:0;font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--nf-line)}
.mv-side.s-long{color:var(--nf-red);border-color:color-mix(in srgb,var(--nf-red) 40%,transparent)}
.mv-side.s-short{color:var(--nf-green);border-color:color-mix(in srgb,var(--nf-green) 40%,transparent)}
.mv-name{min-width:72px}
.mv-chg{font-variant-numeric:tabular-nums;margin-left:auto}
.mv-val{color:var(--nf-mute);font-variant-numeric:tabular-nums;flex-shrink:0}
.nf-mix-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.nf-mix{border:1px solid var(--nf-line);border-radius:12px;padding:12px 14px;min-width:0}
.nf-mix h4{margin:0 0 10px;font-size:14px;font-weight:600}
.mix-kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px 12px}
.mk{display:flex;align-items:baseline;justify-content:space-between;gap:8px;min-width:0}
.mk i{font-style:normal;font-size:11px;color:var(--nf-mute);white-space:nowrap}
.mk b{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.mix-note{margin:10px 0 0;font-size:11px;line-height:1.5;color:var(--nf-gold)}
.mix-seats{margin:10px 0 0}
.mix-seats summary{cursor:pointer;font-size:12px;color:var(--nf-mute);list-style:none}
.mix-seats summary::-webkit-details-marker{display:none}
.mix-seats summary::before{content:"▸ "}
.mix-seats[open] summary::before{content:"▾ "}
.seat-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;max-height:132px;overflow:auto}
.seat-tag{font-size:11px;padding:2px 8px;border-radius:8px;border:1px solid var(--nf-line);color:var(--nf-mute);white-space:nowrap}
.nf-fl-note .nf-note-p{margin:0 0 10px;font-size:12px;line-height:1.7;color:var(--nf-mute)}
.ok{display:flex;flex-direction:column;gap:3px;min-width:0}
.ok i{font-style:normal;font-size:11px;color:var(--nf-mute)}
.ok b{font-size:15px;font-weight:600;font-variant-numeric:tabular-nums}
.ov-chart{height:230px}
.ov-noseries{margin:0;font-size:12px;color:var(--nf-mute)}
.nf-sec h3 .nf-live-badge{font-size:11px;color:var(--nf-gold);border:1px solid color-mix(in srgb,var(--nf-gold) 42%,transparent);border-radius:8px;padding:1px 8px;flex-shrink:0;white-space:nowrap}
.nf-flash-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.nf-fl-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 14px;margin:0 0 12px}
.fk{display:flex;flex-direction:column;gap:3px;min-width:0}
.fk i{font-style:normal;font-size:11px;color:var(--nf-mute)}
.fk b{font-size:15px;font-weight:600}
.nf-win{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.win-chip{font-size:11px;color:var(--nf-mute);border:1px solid var(--nf-line);border-radius:999px;padding:3px 10px;font-variant-numeric:tabular-nums}
.nf-ev{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.nf-ev li{display:flex;gap:10px;align-items:flex-start}
.nf-ev li.is-bull .ev-dir{color:var(--nf-red);border-color:color-mix(in srgb,var(--nf-red) 40%,transparent)}
.nf-ev li.is-bear .ev-dir{color:var(--nf-green);border-color:color-mix(in srgb,var(--nf-green) 40%,transparent)}
.ev-dir{flex-shrink:0;font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--nf-line)}
.ev-score{flex-shrink:0;font-size:12px;font-variant-numeric:tabular-nums;color:var(--nf-mute);padding-top:2px}
.ev-text{margin:0;font-size:13px;line-height:1.65;min-width:0}
.ev-text mark.ev-kw{background:transparent;color:var(--nf-green);font-weight:650;padding:0}
.nf-ev-empty{color:var(--nf-mute);font-size:13px}
.nf-ta{margin:0 0 28px}
.nf-ta-sum{display:flex;gap:12px 32px;flex-wrap:wrap;margin:0 0 14px}
.ta-sum-cell{display:flex;flex-direction:column;gap:3px}
.ta-sum-cell i{font-style:normal;font-size:11px;color:var(--nf-mute)}
.ta-sum-cell b{font-size:20px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.nf-ta-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ta-blk{border:1px solid var(--nf-line);border-radius:12px;padding:10px 12px;min-width:0}
.ta-blk h4{margin:0 0 8px;font-size:12px;font-weight:600;color:var(--nf-mute)}
.ta-lines{display:flex;flex-direction:column;gap:4px}
.ta-line{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0}
.ta-line i{font-style:normal;font-size:11px;color:var(--nf-mute);white-space:nowrap}
.ta-line b{font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.ta-sub{margin:8px 0 0;font-size:11px;line-height:1.5;color:var(--nf-mute)}
.nf-ta-note{margin:12px 0 0;font-size:12px;line-height:1.6;color:var(--nf-mute)}
@media(max-width:840px){
  .nf-fl-sum{grid-template-columns:repeat(2,1fr)}
  .nf-mix-grid{grid-template-columns:1fr}
  .nf-ov-grid{grid-template-columns:1fr}
  .nf-flash-grid{grid-template-columns:1fr}
  .nf-ta-grid{grid-template-columns:1fr}
  .nf-tabhead{flex-direction:column;align-items:flex-start}
}
@media(max-width:560px){
  .nf-ov-kpis,.nf-fl-kpis{grid-template-columns:repeat(2,1fr)}
  .mix-kpis{grid-template-columns:1fr}
}
.nf-flow-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 14px}
.nf-flow-lab{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--nf-mute);font-weight:600}
.nf-flow-hint{font-size:11px;color:var(--nf-mute)}
.nf-matrix-wrap{overflow-x:auto}
.nf-matrix{min-width:900px}
.nf-matrix th,.nf-matrix td{white-space:nowrap}
.nf-matrix tbody tr{cursor:pointer}
.nf-matrix tbody tr:hover{background:color-mix(in srgb,var(--nf-card) 93%,var(--nf-gold))}
.nf-matrix tbody tr.is-cur{background:color-mix(in srgb,var(--nf-gold) 12%,var(--nf-card))}
.fs-kind{display:inline-block;margin-left:6px;font-size:10px;font-weight:400;color:var(--nf-mute);border:1px solid var(--nf-line);border-radius:6px;padding:0 5px;vertical-align:1px;white-space:nowrap}
.nf-seatq-row{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 12px}
.nf-seatq-input{flex:1 1 240px;min-width:0;border:1px solid var(--nf-line);background:var(--nf-card);color:var(--nf-ink);border-radius:9px;padding:8px 12px;font-size:14px;font-family:inherit}
.nf-seatq-input:focus{outline:none;border-color:color-mix(in srgb,var(--nf-gold) 60%,transparent)}
.nf-seatq-tip{margin:0 0 10px;font-size:13px;line-height:1.6}
.nf-iv-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin:0 0 16px}
.nf-iv-cell{border:1px solid var(--nf-line);border-radius:12px;padding:10px 12px;min-width:0;display:flex;flex-direction:column;gap:6px}
.nf-iv-cell i{font-style:normal;font-size:11px;color:var(--nf-mute);display:flex;justify-content:space-between;gap:6px;font-variant-numeric:tabular-nums}
.nf-iv-main{display:flex;align-items:baseline;gap:8px;min-width:0}
.nf-iv-main b{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums;letter-spacing:-.01em}
.nf-iv-lab{font-size:10px;color:var(--nf-mute);border:1px solid var(--nf-line);border-radius:6px;padding:0 6px;white-space:nowrap;flex-shrink:0}
.nf-iv-sub{font-size:11px;color:var(--nf-mute);font-variant-numeric:tabular-nums;line-height:1.6}
.nf-iv-month{font-size:10px;color:var(--nf-mute);font-variant-numeric:tabular-nums}
.nf-iv-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.nf-iv-grid .nf-sec{margin:0}
.iv-chart{height:230px}
.nf-daily-chips{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.nf-daily-chip{border:1px solid var(--nf-line);background:transparent;color:var(--nf-mute);font-size:12px;padding:4px 12px;border-radius:999px;cursor:pointer;font-variant-numeric:tabular-nums;font-family:inherit}
.nf-daily-chip.is-on{color:var(--nf-ink);border-color:color-mix(in srgb,var(--nf-gold) 60%,transparent);background:color-mix(in srgb,var(--nf-gold) 10%,var(--nf-card));font-weight:600}
.nf-daily-text{margin:0;font-size:13px;line-height:1.8;white-space:pre-wrap;word-break:break-word;color:var(--nf-ink);max-height:520px;overflow:auto;border:1px solid var(--nf-line);border-radius:10px;padding:14px 16px}
.nf-daily-empty{margin:0;color:var(--nf-mute);font-size:13px}
.nf-daily-doc{margin:8px 0 0;font-size:11px;color:var(--nf-mute)}
.nf-rep-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.nf-rep-item{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid var(--nf-line);font-size:13px}
.nf-rep-item:last-child{border-bottom:0}
.nf-rep-date{flex-shrink:0;color:var(--nf-mute);font-variant-numeric:tabular-nums;font-size:12px}
.nf-rep-title{min-width:0;flex:1 1 260px;font-weight:500;color:var(--nf-ink)}
.nf-rep-link{color:var(--nf-gold);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--nf-gold) 40%,transparent)}
.nf-rep-link:hover{text-decoration:underline}
.nf-rep-tag{flex-shrink:0;font-size:11px;color:var(--nf-mute);border:1px solid var(--nf-line);border-radius:8px;padding:1px 8px;white-space:nowrap}
.nf-rep-note{flex-basis:100%;font-size:11px;color:var(--nf-mute);line-height:1.5}
.nf-rep-empty{margin:0;color:var(--nf-mute);font-size:13px}
.nf-rep-reason{margin:8px 0 0;font-size:12px;line-height:1.6;color:var(--nf-mute)}
@media(max-width:840px){
  .nf-iv-strip{grid-template-columns:1fr 1fr}
  .nf-iv-grid{grid-template-columns:1fr}
  .nf-iv-grid .nf-sec{margin:0 0 14px}
}
@media(max-width:560px){
  .nf-iv-strip{grid-template-columns:1fr}
  .nf-rep-item{flex-direction:column;align-items:flex-start;gap:4px}
  .nf-rep-title{flex-basis:auto}
  .nf-rep-note{flex-basis:auto}
}

/* 宏观页：一行两张、压缩图高；每张图配 AI 解读块 */
.nf-grid.complex[data-cols="2"]{grid-template-columns:1fr 1fr}
.nf-grid.complex[data-cols="2"] .nf-chart{height:220px}
.nf-fig-ai{margin:0 0 8px;padding:8px 10px;border:1px solid var(--nf-line);border-left:2px solid var(--nf-gold);border-radius:10px;background:color-mix(in srgb,var(--nf-card) 96%,var(--nf-gold));font-size:12px;line-height:1.6}
.nf-fig-ai-t{display:inline-block;font-size:11px;font-weight:600;color:var(--nf-gold);margin-right:8px}
.nf-fig-ai-p{margin:2px 0 0;color:var(--nf-ink)}
.nf-fig-ai-tag{display:inline-block;margin-top:4px;font-size:11px;color:var(--nf-mute)}
@media(max-width:840px){.nf-grid.complex[data-cols="2"]{grid-template-columns:1fr}.nf-grid.complex[data-cols="2"] .nf-chart{height:260px}}

/* 波动率双线扫描：可靠度标记 */
.nf-g{font-weight:600}
.nf-g.a{color:#c0392b}
.nf-g.b{color:#b8860b}
.nf-g.c{color:var(--nf-mute,#777)}
.nf-scan .nf-list{overflow-x:auto}
.nf-upcoming .nf-btnrow{margin-top:8px}
.nf-shalong .nf-qr{align-items:flex-start}
/* 课程页 · 每节试看播放器（有 trial_video_file 才渲染，没有则整块不出现） */
.nf-course-trial{margin:12px 0 4px}
.nf-course-trial video{display:block;width:100%;max-width:560px;border-radius:10px;background:#000}
.nf-course-card .nf-course-trial video{max-width:420px}
.nf-course-trial-cap{margin:6px 0 0;font-size:12px;color:var(--nf-mute)}

/* 数据审核小组（综合栏目报告 + 卡片延迟徽标） */
.nf-audit-chips{display:flex;flex-wrap:wrap;gap:8px;margin:4px 0 12px}
.nf-audit-chip{padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent}
.nf-audit-chip.ok{color:#1a7f37;background:rgba(26,127,55,.10);border-color:rgba(26,127,55,.25)}
.nf-audit-chip.dl{color:#9a6700;background:rgba(154,103,0,.10);border-color:rgba(154,103,0,.30)}
.nf-audit-chip.st{color:#b42318;background:rgba(180,35,24,.10);border-color:rgba(180,35,24,.30)}
.nf-audit-table{width:100%;border-collapse:collapse;font-size:13px}
.nf-audit-table th{text-align:left;color:var(--nf-mute);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--nf-line);white-space:nowrap}
.nf-audit-table td{padding:6px 8px;border-bottom:1px solid var(--nf-line);vertical-align:top}
.nf-audit-table td.num{white-space:nowrap}
.nf-audit-table tr:hover td{background:rgba(127,127,127,.06)}
.nf-audit-badge{display:inline-block;padding:1px 8px;border-radius:4px;font-size:12px;font-weight:600;white-space:nowrap}
.nf-audit-badge.dl{color:#9a6700;background:rgba(154,103,0,.12)}
.nf-audit-badge.st{color:#b42318;background:rgba(180,35,24,.12)}
.nf-audit-flag{border-color:rgba(180,35,24,.45)!important;color:#b42318!important}
