/* 工具 11 · 基金估值
   独立视觉：深蓝金融终端 + 金色刻度，红涨绿跌（A 股习惯），等宽数字表格。 */
.fe {
    --a1: #264b7c; --a1b: #d3a044; --a1s: #e7eef8; --a1i: #1b3c68;
    --a2: #7fb0ec; --a2b: #ecc679; --a2s: rgba(127, 176, 236, .15); --a2i: #a9cdf5;
    --h15-h1: clamp(30px, 3.6vw, 42px);
}
.fe .fe-h1 { letter-spacing: -.02em; }
.fe-hero {
    border-color: #1c3557;
    background: radial-gradient(620px 240px at 88% -10%, rgba(211, 160, 68, .2), transparent 72%), linear-gradient(118deg, #132a49 0%, #1b3c66 100%);
    color: #e8f0fb;
}
.fe-hero::before { background: linear-gradient(180deg, #d3a044, #7fb0ec); }
.fe-hero .h15-h1, .fe-hero .h15-sub, .fe-hero .h15-eyebrow, .fe-hero .h15-hero-meta { color: #e8f0fb; }
.fe-hero .h15-sub strong { color: #f4d08c; }
.fe-hero .h15-eyebrow { background: rgba(255, 255, 255, .08); border-color: rgba(255, 255, 255, .22); }
.fe-hero .h15-hero-meta { border-top-color: rgba(255, 255, 255, .2); }
.fe-hero .h15-btn { background: #ecc679; color: #152a44; }
.fe-hero .h15-btn--ghost { background: transparent; color: #e8f0fb; border-color: rgba(232, 240, 251, .4); }
:root[data-theme="dark"] .fe .fe-hero { background: linear-gradient(118deg, #0c1929 0%, #122540 100%); }
:root[data-theme="dark"] .fe .fe-hero .h15-btn { color: #152a44; }
.fe-quick { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.fe-quick-est { font-size: var(--h15-fs-13); color: #d5e4f7; }
.fe-quick-est b { font-size: 20px; color: #f4d08c; }
.fe-ticker { position: absolute; right: 32px; top: 30px; font-family: var(--h15-font-num); font-size: 13px; letter-spacing: .2em; color: rgba(236, 198, 121, .5); }
@media (max-width: 620px) { .fe-ticker { display: none; } }

.fe-kpi-panel { margin-bottom: 18px; }
.fe-kpis { grid-template-columns: repeat(4, minmax(0, 1fr)); }
@media (max-width: 700px) { .fe-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.fe-kpis .h15-kpi { border-color: var(--h15-line); background: var(--h15-card-2); }
.fe-kpis .h15-kpi-v { font-size: var(--h15-fs-22); }
.fe-kpi-panel .h15-note { margin-top: 14px; }
.fe-up { color: var(--h15-up) !important; }
.fe-down { color: var(--h15-down) !important; }

.fe-table-panel { margin-bottom: 18px; }
.fe-tbl { min-width: 760px; }
.fe-tbl tbody tr.is-bad { background: rgba(192, 69, 59, .08); }
.fe-tbl td.fe-name { font-weight: 650; }
.fe-tbl .fe-code { font-family: var(--h15-font-num); color: var(--h15-ink-3); }
.fe-tbl button { padding: 3px 9px; border: 1px solid var(--h15-line); border-radius: 999px; background: var(--h15-card); color: var(--h15-ink-3); font-family: inherit; font-size: var(--h15-fs-11); cursor: pointer; }
.fe-add-row { display: grid; grid-template-columns: 1.1fr 1.5fr 1fr 1.2fr 1.2fr auto; gap: 8px; margin-top: 16px; }
@media (max-width: 860px) { .fe-add-row { grid-template-columns: repeat(2, minmax(0, 1fr)); } .fe-add-row .h15-btn { grid-column: 1 / -1; } }
.fe-esc-label { display: flex; align-items: center; gap: 7px; margin: 16px 0 6px; }
.fe-esc-label .h15-select { width: 120px; padding: 5px 8px; }
.fe-faq .h15-faq-item { border-left: 3px solid var(--h15-accent-soft); }
.fe-report-pre { margin: 0; white-space: pre-wrap; font-family: var(--h15-font-num); font-size: var(--h15-fs-12); line-height: 1.9; }
